Come eseguire automaticamente la riparazione del disco su OS X dopo ogni crash del sistema?

0

Come eseguire automaticamente la riparazione del disco su OS X 10.8+ dopo ogni arresto anomalo del sistema?

Nota: non sto cercando una soluzione manuale.

    
posta sorin 12.04.2013 - 18:46
fonte

3 risposte

3

Non so se OS X esegue già alcuni controlli extra dopo interruzioni o panico del kernel. L'output di avvio dettagliato appariva lo stesso dopo un riavvio normale, un riavvio forzato e un panico del kernel:

IlvolumediOSXvieneverificatoall'avvioinmodalitàprovvisoria:

Intendi riparare l'unità, riparare il volume principale di OS X o eseguire fsck? link consiglia innanzitutto di avviarsi in modalità provvisoria (che include la riparazione del volume di OS X), o se ciò non funziona, riparare l'unità o il volume OS X da Utility Disco sulla partizione di ripristino. Dice che normalmente non è necessario eseguire fsck con volumi HFS + registrati su giornale.

Dalla pagina man diskutil:

repairDisk device
           Repair the partition map layout of a whole disk intended for
           booting or data use on a Macintosh.  The repairs further
           include, but are not limited to, the repair or creation of
           an EFI System Partition, the integrity of any Core Storage
           Physical Volume partitions, and the provisioning of space
           for boot loaders.  Ownership of the affected disk is
           required; it must be a whole disk and must have a partition
           map.

[...]

repairVolume device
           Repair the file system data structures of a volume.  The
           appropriate fsck program is executed and the volume is left
           mounted or unmounted at it was before the command.  Owner-
           ship of the affected disk is required.

Potresti provare a salvarlo come ~/Library/LaunchDaemons/repairdisk.plist , ma non so come eseguirlo solo dopo il riavvio non pulito (o perché sarebbe necessario).

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC -//Apple Computer//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd>
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>repairdisk</string>
    <key>ProgramArguments</key>
    <array>
        <string>bash</string>
        <string>-c</string>
        <string>yes | diskutil repairDisk /dev/disk0</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>

Visualizza diskutil list o df -h per l'identificatore del convertitore.

diskutil repairDisk /dev/disk0 ha mostrato un avvertimento come Repairing the partition map might erase disk0s1, proceed? (y/N) , dove disk0s1 è la partizione EFI. Ma sembrava fare le stesse operazioni di riparazione del disco da Utility Disco. repairVolume non può essere utilizzato con il volume di OS X dopo aver avviato da esso.

    
risposta data 13.04.2013 - 16:44
fonte
2

sudo nvram boot-args=-x renderebbe OS X sempre avviato in modalità provvisoria, che include un controllo e una riparazione del disco .

Modalità provvisoria disabilita tutti gli elementi di avvio, alcune estensioni del kernel e alcune periferiche, quindi probabilmente dovresti riavviare di nuovo in modalità normale la maggior parte del tempo.

sudo nvram -d boot-args elimina la variabile.

    
risposta data 12.04.2013 - 20:45
fonte
-4

Non so nulla, ma ho avuto una serie di arresti anomali. Ho preso un appuntamento al negozio Mac, ho portato i miei registri e mi hanno detto qual era il problema. Hanno anche detto che di solito non lo fanno a meno che tu non abbia un appuntamento. Sii gentile con loro e si piegheranno all'indietro per aiutarti.

    
risposta data 12.04.2013 - 20:07
fonte

Leggi altre domande sui tag