Come leggere e scrivere HDD esterni con journaling HFS + in Ubuntu senza accesso a OS X?


162

Ho un HFS+ journaleddisco rigido esterno e devo poterlo scrivere su Ubuntu. Non ho accesso al mio Mac, è a migliaia di miglia di distanza e non avrò accesso ad esso per tre mesi.

Si può fare qualcosa senza perdere i dati sull'HDD?


cajaUtenti ubuntu-MATE : Qualunque soluzione al di sotto di voi scelga, fare un killall caja && caja .aiuto aiuterà a "ottenere le notizie, che la cartella ora è effettivamente scrivibile.
Frank Nocke,

Risposte:


171

Vedi Come montare una partizione HFS in Ubuntu come lettura / scrittura? - Super utente

Per citare dalla seconda / terza risposta in basso:

Innanzitutto, assicurati di aver installato hfsprogs. Esempio di comando di installazione:

sudo apt-get install hfsprogs

Quindi, montare o rimontare l'unità HFS +; i comandi devono essere i seguenti:

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

o

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

...

Infine, se l'unità è stata smontata in modo errato o è stata parzialmente danneggiata, eseguire fsck.hfsplus ... come tale:

sudo fsck.hfsplus -f /dev/sdXY

C'è una miniera d'oro di altre informazioni lì riguardo al montaggio di filesystem HFS +.


grazie, ci proverò. Le informazioni che ho scoperto sottolineavano che Ubuntu non era in grado di gestire journal htfs + drive, e diceva che doveva essere "ingiusto" in OSX. Non ho accesso a OSX per i prossimi tre mesi e quindi non posso invertire il journaling.
oppochips

1
Ho provato a ottenere sudo mount -t hfsplus -o force, rw / dev / sdb2 / media / sdb2 mount: / dev / sdb2 già montato o / media / sdb2 occupato mount: secondo mtab, / dev / sdb2 è montato su / media / 1ad12b58-c2f2-39d3-955f-54ea66a96b2b L'unità (un volume hfs + journaled) si monta in sola lettura. è possibile scrivergli senza dover annullare il journaling su mac os? Ho provato l'ultimo comando e ottengo ** Controllo del volume HFS Plus. fsck_hfs: il volume è registrato su giornale. Nessun controllo eseguito. fsck_hfs: utilizzare l'opzione -f per forzare il controllo.
oppochips

Dal link sopra pubblicato: "È necessario disattivare l'inserimento nel journal se si desidera scriverlo da Ubuntu. Ubuntu supporta solo la scrittura su volumi HFS + non registrati su giornale. Sul Mac: Apri Utility Disco in Applicazioni -> Utilità Seleziona il volume su cui disabilitare il journaling. Scegli Disabilita journaling dal menu File. (Nelle versioni successive di Mac OS dovrai tenere premuto il pulsante di opzione quando fai clic sul menu File. O se ti piace Apple + J) "I don ' t avere accesso a un mac ,, è possibile ottenere l'accesso in lettura e scrittura sull'unità senza perdere i dati? grazie b
oppochips

Dovresti provare: sudo mount -t hfsplus -o remount,force,rw /dev/sdXY /media/mntpoint(o tralasciarlo /dev/sdXYe puntarlo al punto in cui è attualmente montato). Lo modificherò nella mia risposta.
Richard,

1
Grazie. Cosa devo mettere al posto di "mountpoint"? Ho provato sdb2 e ottengo sudo mount -t hfsplus -o rimontaggio, force, rw / dev / sdb2 / media / dev / sdb2 mount: mount point / media / dev / sdb2 non esiste e poi ho provato sudo mount -t hfsplus -o rimonta, forza, rw / dev / sdb2 e ottiene:
oppochips

30

Questi passaggi funzionano per me (Ubuntu Studio 14.04):

sudo apt-get install hfsprogs

Verifica lo stato dell'unità:

sudo fsck.hfsplus -f /dev/sdXY

Smontaggio deivce:

sudo umount /media/sebastian/devicename

(crea una cartella per montare l'unità)

Montare l'unità con HFS + autorizzazioni di lettura / scrittura:

sudo mount -t hfsplus -o force,rw /dev/sdXY /home/sebastian/foldername

3
questo lo monta bene come una cartella, ma è ancora di sola lettura .... :( ... non riesco a trovare un modo semplice per superare le restrizioni del sistema hfs + journal
Amphibio

Questo funziona Ma perché ne abbiamo bisogno force?
qweruiop,

3
Ottengo il seguente errore: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 il

24

Ho avuto anche questo problema. Ho provato fsck.hfsplus, umountrimontare senza sudo mount -t hfsplus -o remount,force,rwnulla ha funzionato per me.

Ciò che ha funzionato per me è stato:

  1. smontare con sudo umount /media/myMountPoint
  2. eliminare il punto di montaggio con sudo rmdir
  3. ricreare il mount point con sudo mkdire
  4. rimontare con sudo mount -t hfsplus -o force,rw /dev/xxxx /media/myMountPoint

Spero che questo funzioni anche per voi ragazzi.


mi hai salvato la vita!
Alex Chan,

Questo ha funzionato per qualche motivo. Non ho idea del perché. La directory era vuota e la stava montando prima di eliminarla direttamente rocon force,rw. È stata rimossa e ricreata la directory.
Umar Ahmad il

Il motivo dietro "2" è probabilmente che la directory del mount point è 'user: user'. ( ls -l to verify). In other words: sudo chown -c root: root myMountPoint / `probabilmente lo risolverà anche. (smontare prima ancora necessario)
Frank Nocke

E per la mia esperienza: se non esegui i punti di mount sotto /media/<username>/ma altrove (mi piace /mnt), un MATE Ubuntu "intelligente", ad esempio, non cancella e (erroneamente) ricrea le tue cartelle di mount più e più volte. - Più facile per uno script di montaggio che dura ...
Frank Nocke il

12

Dal momento che non posso commentare (non abbastanza reputazione qui :). Pubblicherò questa risposta per sottolineare che la risposta sopra sembra essere per un hfs + HD che non è registrato. Il comando 'fsck.hfsplus' deve essere emesso con l'opzione '-f' per funzionare su un volume con journaling. Per evitare confusione, ho copiato il comando seguente:

$ sudo fsck.hfsplus /dev/sdXY

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

Questo verrebbe eseguito solo su un volume che non è stato pubblicato su journal. Anche con l'opzione '-f' su un volume con journaling questo controllo in sé non consentirà di montare / scrivere il volume rimontato. Credo che il journaling debba essere disattivato.

Non sembra esserci un codice stabile disponibile per disattivare il journaling da Linux. Vedi il link fornito da Richard: http://ubuntuforums.org/showthread.php?t=1420673

Se il journaling è disattivato e il disco inizialmente si monta come smontaggio e rimontaggio in sola lettura dovrebbe consentire la lettura / scrittura se il disco non è danneggiato. Se è danneggiato, è necessario eseguire fsck.hfsplus.


11

Prendendo in prestito dalla risposta precedente, i seguenti passaggi hanno funzionato per me. Speriamo che questo sia utile per gli altri:

  1. Collegare l'HDD esterno.

  2. Si noti che Ubuntu lo monta automaticamente ma è di sola lettura.

  3. Smonta l'unità (lo faccio semplicemente facendo clic sul pulsante di espulsione in Esplora file).

  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 il filesystem è registrato su giornale).

  6. Rimontare l'unità (lo faccio semplicemente facendo clic sull'unità in Esplora file).

  7. L'unità è ora di lettura-scrittura.


1
Quanto sopra è vero dato che il disco non ha il journaling abilitato.
Akostadinov,

2
Ho seguito i tuoi passaggi e tutto funziona come previsto fino a 6. Ma su 7 l'unità continua a essere di sola lettura.
Guilherme Salomé,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.