Come riparare il file degli attributi estesi HFS +?


2

Esiste uno strumento in grado di riparare / ricostruire il file degli attributi estesi?

Per ora ho provato fsck_hfsda Mac OS X 10.6.3 Retail DVD, fsck.hfsplusda GParted 0.5.2 livecd e Paragon Partition Manager 11. Il tutto senza successo.

Questa pagina man afferma che fsck_hfsha -Run'opzione per specificare quali alberi B devono essere ricostruiti, ma non ho trovato alcun fsck_hfsbinario che accetti questa opzione.

Ora ho HDD con HFS + rotto collegato a VM in VirtualBox su rete (tramite il gate GEOM di FreeBSD), perché attualmente non ho un adattatore SATA-USB.


Super User non è un forum di discussione, dovresti invece aggiungere un commento alla tua risposta.
slhck,

Risposte:


2

Specificare l'opzione come

-Re

Se si comanda fsck_hfs senza alcuna opzione, l'elenco delle opzioni presentate in "utilizzo" potrebbe essere inferiore alle opzioni effettivamente accettate. Questo è, credo, un bug di documentazione .

Aggiornamento - 30/07/2011

Se l'opzione -R non è riconosciuta da fsck_hfs in Mac OS X 10.6.3, supponi che sia stata introdotta in una versione successiva di 10.6.x - per la pagina di manuale a cui fa riferimento il post di apertura, tra 10.5 e 10.6.6 non c'è nulla.

Snow Leopard nell'Apple Store (Regno Unito) rimane al 10.6.3, quindi se hai bisogno di supporti di avvio con la versione più capace di fsck_hfs dovrei raccomandare uno dei seguenti:

Per riferimento, ecco una trascrizione della 10.7 (Build 11A511):

[macbookpro08-centrim:~] gjp22% date
Sat 30 Jul 2011 08:25:39 BST
[macbookpro08-centrim:~] gjp22% uname -a
Darwin macbookpro08-centrim.home 11.0.0 Darwin Kernel Version 11.0.0: Sat Jun 18 12:56:35 PDT 2011; root:xnu-1699.22.73~1/RELEASE_X86_64 x86_64
[macbookpro08-centrim:~] gjp22% diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *320.1 GB   disk0
   1:                        EFI                         209.7 MB   disk0s1
   2:          Apple_CoreStorage                         318.1 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
   4:              Apple_Journal                         536.9 MB   disk0s4
   5:                  Apple_HFS scratchy                536.9 MB   disk0s5
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS speedy                 *317.8 GB   disk1
[macbookpro08-centrim:~] gjp22% sudo /sbin/fsck_hfs -R
/sbin/fsck_hfs: option requires an argument -- R
usage: fsck_hfs [-b [size] B [path] c [size] Edfglx m [mode] npqruy] special-device
  b size = size of physical blocks (in bytes) for -B option
  B path = file containing physical block numbers to map to paths
  c size = cache size (ex. 512m, 1g)
  E = exit on first major error
  d = output debugging info
  f = force fsck even if clean (preen only) 
  g = GUI output mode
  x = XML output mode
  l = live fsck (lock down and test-only)
  m arg = octal mode used when creating lost+found directory 
  n = assume a no response 
  p = just fix normal inconsistencies 
  q = quick check returns clean, dirty, or failure 
  r = rebuild catalog btree 
  u = usage 
  y = assume a yes response 
[macbookpro08-centrim:~] gjp22% sudo diskutil unmount /Volumes/scratchy
Volume scratchy on disk0s5 unmounted
[macbookpro08-centrim:~] gjp22% sudo /sbin/fsck_hfs -Re /dev/disk0s5
** /dev/rdisk0s5
   Executing fsck_hfs (version diskdev_cmds-540.1~34).
** Checking Journaled HFS Plus volume.
   The volume name is scratchy
** Checking extents overflow file.
** Checking catalog file.
** Rebuilding extents overflow B-tree.
** Rechecking volume.
** Checking Journaled HFS Plus volume.
   The volume name is scratchy
** Checking extents overflow file.
** Checking catalog file.
** Checking multi-linked files.
** Checking catalog hierarchy.
** Checking extended attributes file.
** Checking volume bitmap.
** Checking volume information.
   Invalid volume file count
   (It should be 336 instead of 226)
   Invalid volume directory count
   (It should be 37 instead of 52)
   Invalid volume free block count
   (It should be 124541 instead of 125082)
   Volume header needs minor repair
(2, 0)
** Repairing volume.
** Rechecking volume.
** Checking Journaled HFS Plus volume.
   The volume name is scratchy
** 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 scratchy was repaired successfully.
[macbookpro08-centrim:~] gjp22% sudo /sbin/fsck_hfs -fn /dev/disk0s5
** /dev/rdisk0s5 (NO WRITE)
   Executing fsck_hfs (version diskdev_cmds-540.1~34).
** Checking Journaled HFS Plus volume.
   The volume name is scratchy
** 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 scratchy appears to be OK.
[macbookpro08-centrim:~] gjp22% 

No, dice ancora "fsck_hfs: opzione illegale - R"
gelraen,

Sono curioso: perché desideri ricostruire questo particolare albero a B? La necessità di ricostruire è suggerita attivamente da qualcuno o qualcosa? O la ricostruzione è un tentativo di aggirare qualcosa che ti confonde?
Graham Perrin,

Volevo ricostruirlo perché era rotto e il sistema non è riuscito ad avviarsi.
Gelraen,

@gelraen grazie. Se è necessaria una ricostruzione, sarà automatizzata dal sistema. Regola empirica: se la ricostruzione automatica fallisce, tentare una ricostruzione manuale, usando la stessa fsck_hfsma avviata da un volume diverso, non avrà più probabilità di successo. Le versioni più moderne fsck_hfshanno requisiti di spazio libero meno rigorosi ma, tuttavia, se lo spazio libero non è adatto, la ricostruzione verrà rifiutata. Gli sviluppi in Lion consentono alcuni trucchi, discuti in Ask Different Chat se vuoi.
Graham Perrin,
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.