Montaggio della partizione HFS + su Arch Linux


22

Sto avendo dei problemi con il montaggio di una partizione hfs + su Arch Linux.

Quando eseguo sudo mount -t hfsplus /dev/sda2 /mnt/macottengo questo 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.

Esecuzione dmesg | taildà:

[ 6645.183965] cfg80211: Calling CRDA to update world regulatory domain
[ 6648.331525] cfg80211: Calling CRDA to update world regulatory domain
[ 6651.479107] cfg80211: Calling CRDA to update world regulatory domain
[ 6654.626663] cfg80211: Calling CRDA to update world regulatory domain
[ 6657.774207] cfg80211: Calling CRDA to update world regulatory domain
[ 6660.889864] cfg80211: Calling CRDA to update world regulatory domain
[ 6664.007521] cfg80211: Exceeded CRDA call max attempts. Not calling CRDA
[ 6857.870580] perf interrupt took too long (2503 > 2495), lowering kernel.perf_event_max_sample_rate to 50100
[11199.621246] hfsplus: invalid secondary volume header
[11199.621251] hfsplus: unable to find HFS+ superblock

C'è un modo per montare questa partizione?

MODIFICA :

Usando sudo mount -t hfsplus -o ro,loop,offset=409640,sizelimit=879631488 /dev/sda2 /mnt/macsi libera di hfsplus: invalid secondary volume headeradmesg | tail

Risposte:


36

E 'probabile che il volume HFS non è il montaggio perché la partizione HFS è avvolto in un volume CoreStorage (il default in quanto OS X 10.10). È possibile verificare se questo è il caso con l'uscita di fdisk -l: uscita fdisk

HFS + utilizza due header di volume, uno 1024 nel dispositivo e il 1024 secondario dall'estremità del dispositivo . Per le specifiche, quando si monta una partizione l'intestazione secondario dovrebbe essere ad essere esattamente 1024 byte dall'estremità della partizione, ma con CoreStorage avvolgendo il volume HFS che non è più il caso quindi interrompe. Puoi passare -o sizelimit=Na mountper specificare manualmente la dimensione del volume HFS e risolverlo, ma come si ottiene il valore magico N?

Il testdiskprogramma di utilità può eseguire la scansione per le partizioni, accennando a cui la partizione HFS finisce davvero. Diffidare - selezionando le opzioni sbagliate in TestDisk può danneggiare la tabella delle partizioni!

  1. Avviare TestDisk con testdisk /dev/sdX, e quindi OKper selezionare l'unità
  2. Selezionare Intelper MBR o EFI GPTper le unità GPT formattata
  3. Premere Analysee quindiQuick Search
  4. Dopo qualche istante dovrebbe stamparlo le partizioni trovate: risultati TestDisk

    La partizione indicato sembra terribilmente vicino (ma leggermente più piccolo) rispetto alla dimensione della partizione reale dei settori 623463232 riportato da fdisk -lprima.

    Poiché l'output TestDisk utilizza settori, dovremo moltiplicarlo per dimensione del settore logico del unità (in genere 512 o 4096 byte) per ottenere la dimensione del volume HFS in byte. Questo è il valore per Nuseremo per -o sizelimit=Nil montaggio del volume HFS.

    Se non si conosce dimensione del settore logico del vostro disco, controllare l'uscita del secondo prima il numero riportato dalla fdisk -lsulla linea illustrato di seguito:trovando dimensione dei settori logici del disco

  5. Premere qpiù volte per uscire dal programma

  6. Montare il disco: mount /dev/sdXn -t hfsplus -o ro,sizelimit=N

3
Da utente Edmonde : Questa ricetta lavorato molto per me, ma ho dovuto modificarlo utilizzando la dimensione del settore logico (il primo dei due numeri, nel mio caso 512 contro 4096) in contrasto con la dimensione del settore fisico per calcolare la dimensione totale del volume. Io non sono sicuro perché ma ha funzionato grande.
fixer1234

Questo risolto il mio problema. Altre risorse suggerito di usare un offsetparametro, che non ha funzionato in combinazione con questo, ma utilizzando solamente sizelimit impostata sul numero di byte (byte settori *) ha lavorato come un fascino, anche per le partizioni non CoreStorage
cdeszaq

Questo non funziona per me. Ottengo mount failed: Unknown error -1e nulla in dmesg. hfsplusè sicuramente caricato.
Dan

+1 fissato utilizzando del settore logico
Jake

1
Questa soluzione è stata lavorando bene per me fino a dopo un aggiornamento su OSX che si fermò questo lavoro. Chiunque altro ha avuto questo problema? Qualche consiglio?
Vik

2

Un'altra opzione è quella di sbarazzarsi di CoreStorage se una macchina OS X è a vostra disposizione. Questo sarebbe anche sbarazzarsi di decrittazione se si sta utilizzando e si dovrà attendere che il decrypt è finito (collegato all'alimentazione e l'avvio in OS X, anche di recupero).

Si avrebbe bisogno di avvio per un disco che non è quello in mente, preferibilmente recupero internet (se disponibile, Comando-Opzione-r al riavvio). Aprite il terminale e fare un:

diskutil cs list

L'output dovrebbe mostrare i volumi CoreStorage e tutti, uno di loro è il suo status devolvibili. Se indica Sì allora sarete in buona forma per procedere. Prossimo si dovrebbe eseguire:

diskutil cs revert /dev/ diskXsY

(Dove X è il numero di disco e Y è il numero di partizione).

Se non è stato cifrato dovrebbe già essere di nuovo ad un layout di partizione GPT standard e si può provare a montarlo di nuovo in Arch. Dovrebbe essere ancora journal che manterrà in sola lettura, se si vuole alternare che è possibile farlo in Utility Disco.

Se è stato crittografato, il processo richiederà un po 'di tempo, ma "diskutil cs list" mostrerà l'avanzamento in percentuale.

Ho avuto problemi di montaggio non CoreStorage HFS + unità e partizioni su Arch me stesso. alla fine mi mossi i dati, ripartizione come ext4 e spostare i dati di nuovo a loro.

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.