Como ler e escrever um disco rígido externo com registro em diário de HFS + no Ubuntu sem acesso ao OS X?

162

Eu tenho um HFS+ journaleddisco rígido externo e preciso poder gravá-lo no Ubuntu. Não tenho acesso ao meu Mac, fica a milhares de quilômetros de distância e não terei acesso a ele por três meses.

Qualquer coisa pode ser feita sem perder os dados no disco rígido?

oppochips
fonte
cajaUsuários do ubuntu-MATE : Qualquer que seja a solução abaixo, você killall caja && caja .ajudará o caja a receber as notícias de que a pasta agora é realmente gravável.
Frank Nocke 10/06

Respostas:

171

Consulte Como montar uma partição HFS no Ubuntu como leitura / gravação? - Superusuário

Para citar a segunda / terceira resposta abaixo:

Primeiro, verifique se você tem o hfsprogs instalado. Exemplo de comando de instalação:

sudo apt-get install hfsprogs

Em seguida, monte ou remonte a unidade HFS +; Os comandos precisam ser os seguintes:

sudo mount -t hfsplus -o force,rw /dev/sdXY /media/mntpoint

ou

sudo mount -t hfsplus -o remount,force,rw /mount/point

...

Por fim, se a unidade foi desmontada incorretamente ou ficou parcialmente corrompida, execute fsck.hfsplus ... como tal:

sudo fsck.hfsplus -f /dev/sdXY

Existe uma mina de ouro de outras informações sobre a montagem de sistemas de arquivos HFS +.

Richard
fonte
obrigado, vou tentar. As informações que eu encontrei apontaram que o ubuntu não podia lidar com htfs + drive com registro em diário e disseram que tinha que ser "não registrado em diário" no OSX. Não tenho acesso ao OSX nos próximos três meses e, portanto, não posso reverter o diário.
oppochips 14/08/13
1
Eu tentei obter o sudo mount -t hfsplus -o force, rw / dev / sdb2 / media / sdb2 mount: / dev / sdb2 já montado ou / media / sdb2 busy busy: de acordo com mtab, / dev / sdb2 está montado em / media / 1ad12b58-c2f2-39d3-955f-54ea66a96b2b A unidade (um volume hfs + diário) é montada como somente leitura. é possível escrever nele sem precisar desfazer o registro no diário no mac os? Tentei o último comando e obtive ** Verificando o volume do HFS Plus. fsck_hfs: o volume é registrado em diário. Nenhuma verificação realizada. fsck_hfs: use a opção -f para forçar a verificação.
oppochips 14/08/13
No link postado acima: "Você precisa desativar o registro no diário se desejar gravá-lo no Ubuntu. O Ubuntu só oferece suporte para gravação em volumes HFS + não registrados no diário. No Mac: Abra o Utilitário de Disco em Aplicativos -> Utilitários Selecione o volume para desativar o registro no diário. Escolha Desativar registro no diário no menu Arquivo (nas versões posteriores do Mac OS, mantenha o botão de opção pressionado ao clicar no menu Arquivo. Ou, se você gosta de Apple + J) não tem acesso a um mac ,, é possível obter acesso de leitura e gravação na unidade sem perder os dados? obrigado b
oppochips
Você deve tentar: sudo mount -t hfsplus -o remount,force,rw /dev/sdXY /media/mntpoint(ou deixar de fora /dev/sdXYe apontar para onde está montado no momento). Vou editar isso na minha resposta.
Richard
1
obrigado. O que preciso colocar em vez de "mountpoint"? Eu tentei o sdb2 e obtive o sudo mount -t hfsplus -o remount, force, rw / dev / sdb2 / media / dev / sdb2 mount: o ponto de montagem / media / dev / sdb2 não existe e tentei o sudo mount -t hfsplus -o remount, force, rw / dev / sdb2 e obteve:
oppochips
30

Estas etapas funcionam para mim (Ubuntu Studio 14.04):

sudo apt-get install hfsprogs

Verifique o status da unidade:

sudo fsck.hfsplus -f /dev/sdXY

Desmonte o dispositivo:

sudo umount /media/sebastian/devicename

(crie uma pasta para montar a unidade)

Monte a unidade com permissões de leitura / gravação HFS +:

sudo mount -t hfsplus -o force,rw /dev/sdXY /home/sebastian/foldername
Sebastian Carullo
fonte
3
isso monta tudo bem como uma pasta, mas ainda é somente leitura .... :( ... parece que não consegue encontrar uma maneira simples de superar as restrições do sistema hfs + journal
Amphibio
Isso funciona. Mas por que precisamos force?
precisa saber é o seguinte
3
Eu recebo o seguinte erro:mount: wrong fs type, bad option, bad superblock on /dev/sda2, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so.
Jamie Hutber
24

Eu tive esse problema também. Eu tentei fsck.hfsplus, umountremontar com sudo mount -t hfsplus -o remount,force,rwnada funcionou para mim.

O que funcionou para mim foi:

  1. desmontar com sudo umount /media/myMountPoint
  2. exclua o ponto de montagem com sudo rmdir
  3. recriar o ponto de montagem com sudo mkdire
  4. remontar com sudo mount -t hfsplus -o force,rw /dev/xxxx /media/myMountPoint

Espero que isso também funcione para vocês.

prumo
fonte
você salvou minha vida!
Alex Chan
Isso funcionou por algum motivo. Não faço ideia do porquê. O diretório estava vazio e montando-o antes de excluir o montado diretamente com roeven with force,rw. A remoção e a recriação do diretório fizeram isso.
Umar Ahmad
A razão por trás do '2.' Provavelmente, o diretório do ponto de montagem é 'user: user'. ( ls -l to verify). In other words: Sudo chown -c root:. Raiz myMountPoint / `provavelmente também corrigi-lo (desmontar antes ainda necessário)
Frank Nocke
E pelo meu esforço: se você não colocar seus pontos de montagem em /media/<username>/outros locais (como eu /mnt), um Ubuntu MATE "inteligente", por exemplo, não excluirá e (erroneamente) recriará suas pastas de montagem repetidamente. - Mais fácil para um script de montagem que dura ...
Frank Nocke 10/06
12

Desde que eu não posso comentar (não há reputação suficiente aqui :). Vou postar esta resposta para salientar que a resposta acima parece ser para um hfs + HD que não seja diário. O comando 'fsck.hfsplus' precisa ser emitido com a opção '-f' para trabalhar em um volume diário. Para evitar confusão, copiei o comando abaixo:

$ sudo fsck.hfsplus /dev/sdXY

** /dev/sdXY
[snip....]
** The volume ########### appears to be OK.

Isso seria executado apenas em um volume que não foi diário. Mesmo com a opção '-f' em um volume diário, essa verificação por si só não permitirá que o volume remontado seja montado como leitura / gravação. Eu acredito que o diário deve estar desligado.

Não parece haver código estável disponível para desativar o diário do linux. Veja o link fornecido por Richard: http://ubuntuforums.org/showthread.php?t=1420673

Se o diário estiver desativado e o disco for inicialmente montado como desmontagem e remontagem somente leitura, deverá permitir leitura / gravação se o disco não estiver danificado. Se estiver danificado, o fsck.hfsplus precisa ser executado.

Jonathan Gutow
fonte
11

Tomando emprestado da resposta anterior, as seguintes etapas funcionaram para mim. Espero que isso seja útil para outras pessoas:

  1. Conecte o disco rígido externo.

  2. Observe que o Ubuntu o monta automaticamente, mas é somente leitura.

  3. Desmonte a unidade (eu faço isso simplesmente clicando no botão ejetar no gerenciador de arquivos).

  4. sudo apt-get install hfsprogs

  5. $ sudo fsck.hfsplus /dev/sdXY 
    
    ** /dev/sdXY
    ** Checking HFS Plus volume.
    ** Detected a case-sensitive catalog.
    ** Checking Extents Overflow file.
    ** Checking Catalog file.
    ** Checking multi-linked files.
    ** Checking Catalog hierarchy.
    ** Checking Extended Attributes file.
    ** Checking volume bitmap.
    ** Checking volume information.
    ** The volume ########### appears to be OK.
    

    ( sudo fsck.hfsplus -f /dev/sdXYse o sistema de arquivos estiver registrado no diário).

  6. Remonte a unidade (eu faço isso simplesmente clicando na unidade no gerenciador de arquivos).

  7. A unidade agora está de leitura e gravação.

brianpeiris
fonte
1
O acima é verdade, dado que o disco não possui registro no diário ativado.
akostadinov
2
Eu segui seus passos e tudo funciona conforme o esperado até 6. Mas em 7 a unidade continua a ser somente leitura.
Guilherme Salomé