首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能读取数码相机中的SD卡,但可以在cardreader中读取SD卡

不能读取数码相机中的SD卡,但可以在cardreader中读取SD卡
EN

Ask Ubuntu用户
提问于 2015-08-30 20:11:13
回答 2查看 1.3K关注 0票数 2

当我将相机与SD卡连接到我的PC上时,我收到了以下错误信息:

错误安装/dev/sdg1 1 at /media/厨师/3831-6263:命令行mount -t "exfat" -o "uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,iocharset=utf8,namecase=0,errors=remount-ro,umask=0077" "/dev/sdg1" "/media/chef/3831-6263"' exited with non-zero exit status 1: stdout: FUSE exFAT1.1.0‘stderr:’Error :文件系统大于底层设备: 63847792640 > 63847792128。

但是当我拿出SD卡并放入读卡器时,阅读内容是可以的。

我已经做过sudo apt-get install exfat-fuse exfat-utils了。

我用的是Ubuntu 15.04。当我使用14.04时。用相机里的卡片就行了。

EN

回答 2

Ask Ubuntu用户

发布于 2016-01-27 21:17:33

这是exfat保险丝中的一个漏洞。它在新版本的exfat (https://github.com/relan/exfat)中得到了修正。我不知道这个版本何时会在Ubuntu中结束。至少在15.10里还没有。

我用github中的更改修补了libexfat/mount.c,它将错误更改为警告。即从(第255行左右):

代码语言:javascript
复制
    if (le64_to_cpu(ef->sb->sector_count) * SECTOR_SIZE(*ef->sb) >
          exfat_get_size(ef->dev))
    {
        free(ef->zero_cluster);
        exfat_error("file system is larger than underlying device: "
                "%"PRIu64" > %"PRIu64,
                le64_to_cpu(ef->sb->sector_count) * SECTOR_SIZE(*ef->sb),
                exfat_get_size(ef->dev));
        exfat_close(ef->dev);
        free(ef->sb);
        return -EIO;
    }

代码语言:javascript
复制
    if (le64_to_cpu(ef->sb->sector_count) * SECTOR_SIZE(*ef->sb) >
            exfat_get_size(ef->dev))
    {
        /* this can cause I/O errors later but we don't fail mounting to let
           user rescue data */
        exfat_warn("file system is larger than underlying device: "
                "%"PRIu64" > %"PRIu64,
                le64_to_cpu(ef->sb->sector_count) * SECTOR_SIZE(*ef->sb),
                exfat_get_size(ef->dev));
    }
#endif

为了做到这一点:

代码语言:javascript
复制
sudo apt-get source exfat-fuse
cd fuse-exfat-1.1.0/

如上文所述编辑libexfat/mount.c

代码语言:javascript
复制
sudo apt-get build-dep exfat-fuse
dpkg-buildpackage -rfakeroot -uc -b
sudo dpkg -i ../exfat-fuse_1.1.0-2_amd64.deb

您已经完成并可以按预期安装SD卡。

祝好运!

票数 2
EN

Ask Ubuntu用户

发布于 2016-05-24 14:02:12

另一种方法是编译和安装exFAT的最新版本。我就是这么做的。

代码语言:javascript
复制
sudo apt-get install libfuse-dev
git clone https://github.com/relan/exfat.git
cd exfat/
autoreconf --install
./configure --prefix=/usr
sudo make install
sudo mount.exfat-fuse /dev/sdc1 /media/pd/
票数 2
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/667475

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档