Não é possível ler o cartão SD na câmera digital, mas pode ler o cartão no leitor de cartões

2

quando eu conectei a câmera com o cartão sd ao pc, recebi as seguintes mensagens de erro:

Erro ao montar / dev / sdg1 em / media / chef / 3831-6263: Linha de comando 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 exfat 1.1.0 ' stderr: 'ERRO: o sistema de arquivos é maior que o dispositivo subjacente: 63847792640 > 63847792128.

Mas quando eu tirei o cartão SD, coloquei no leitor de cartão, não há problema em ler o conteúdo.

já fiz "sudo apt-get install exfat-fuse exfat-utils".

estou usando o Ubuntu 15.04. no entanto, quando eu estava usando 14.04. funciona bem com o cartão na câmera.

    
por Wood Tree 30.08.2015 / 22:11

2 respostas

2

Uma alternativa é compilar e instalar a última versão do exFAT. Foi assim que eu fiz isso.

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/

    
por Tom 24.05.2016 / 16:02
1

Este é um bug no fusível exfat. É corrigido em versões mais recentes do exfat ( link . Eu não sei quando esta versão acaba no Ubuntu. Não é em 15.10 ainda pelo menos.

Eu atualizei libexfat / mount.c com a alteração no github, que altera o erro para um aviso. Ou seja de (linha 255, mais ou menos):

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;
}

para

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

Para conseguir isso:

  1. sudo apt-get fonte exfat-fuse
  2. cd fuse-exfat-1.1.0 /
  3. edite libexfat / mount.c conforme descrito acima
  4. sudo apt-get build-dep exfat-fuse
  5. dpkg-buildpackage -rfakeroot -uc -b
  6. sudo dpkg -i ../ exfat-fuse_1.1.0-2_amd64.deb

E você está pronto e pode montar o cartão SD conforme o esperado.

Boa sorte!

    
por GMonell 27.01.2016 / 22:17