Ripristino del server Yosemite dopo aver scaricato i daemon di avvio

3

Quindi, mentre cercavo di correggere una directory aperta corrotta, mi sono imbattuto in una correzione che diceva di inserire questo comando ...

sudo launchctl unload -w /System/Library/LaunchDaemons/

org.openldap.slapd.plist

Dalla formattazione ho pensato che fossero due comandi separati, ma in realtà erano uno. Come puoi immaginare dopo aver digitato il "primo comando" il mio Mac Mini server si spegne e si riavvia, ma la barra di caricamento non viene superata a metà quando tenta di avviarsi.

C'è un modo per ripristinare i daemon di avvio dopo averli scaricati tutti? Qualsiasi aiuto è apprezzato.

    
posta Niuyoi 28.09.2015 - 11:17
fonte

3 risposte

4

Il comando sudo launchctl unload -w /System/Library/LaunchDaemons/ disabilita tutti i daemon di lancio che risiedono in / System / Library / LaunchDaemons / aggiungendo una chiave con il nome del daemon di lancio seguito da true in il file /var/db/com.apple.xpc.launchd/disabled.plist. Anche se il daemon di lancio ha una voce impostata su false (come com.apple.emond negli esempi di seguito) nel file in precedenza, verrà impostata su true . Disabled.plist sovrascrive tutte le impostazioni nei singoli file plist. I singoli file di avvio del demone di avvio in / Sistema / Libreria / LaunchDaemon / non verranno modificati.

Esempio prima dell'emissione del comando precedente:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>com.apple.AppleFileServer</key>
    <true/>
    <key>com.apple.hdiejectd</key>
    <false/>
    <key>com.apple.emond</key>
    <false/>

Esempio dopo l'emissione del comando precedente:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>com.apple.AppleFileServer</key>
    <true/>
    <key>com.apple.afpfs_checkafp</key>
    <true/>
    <key>com.apple.AirPlayXPCHelper</key>
    <true/>
    <key>com.apple.applessdstatistics</key>
    <true/>
    <key>com.apple.auditd</key>
    <true/>
    ...
    <key>com.apple.emond</key>
    <true/>
    ...

Quindi in sostanza devi rimuovere /var/db/com.apple.xpc.launchd/disabled.plist sul tuo volume principale o sostituirlo con una copia di backup:

  • È preferibile sostituire il file con una copia di backup perché potrebbe già avere alcune voci non predefinite per alcuni daemon di avvio impostati su true o false.
  • Se non si dispone di una copia di backup del file di avvio in modalità di recupero o ripristino Internet
  • Apri terminale
  • monta il tuo volume principale se non è già montato
  • inserisci cd /Volumes/[Name_Of_Your_Main_Volume]/var/db/com.apple.xpc.launchd/ per passare al volume principale
  • inserisci pwd per essere sicuro della tua directory di lavoro
  • rimuovi disabled.plist con rm disabled.plist
  • Per ricostruire il (auspicabilmente) standard disabled.plist scrivi o copia e incolla quanto segue usando nano o vi in un nuovo documento nello stesso posto dopo aver eseguito touch disabled.plist :

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.emond</key>
        <false/>
        <key>org.postfix.master</key>
        <true/>
        <key>com.apple.ftpd</key>
        <true/>
        <key>com.apple.usbmuxd</key>
        <false/>
        <key>com.apple.emlog</key>
        <false/>
        <key>com.apple.mrt</key>
        <false/>
        <key>com.apple.stackshot</key>
        <false/>
        <key>org.apache.httpd</key>
        <true/>
    </dict>
    </plist>
    

    Puoi farlo anche dopo, dopo aver riavviato il tuo volume principale con:

    sudo nano /var/db/com.apple.xpc.launchd/disabled.plist
    

    Dopo il riavvio il file dovrebbe essere stato ricostruito automaticamente (ma quasi vuoto) e non è necessario crearlo prima.

  • Inserisci exit
  • Riavvia il tuo volume principale

Questo ha funzionato per me (esplicitamente non eseguendo il comando launchctl load -w /System/Library/LaunchDaemons/ come proposto da Graham). Quindi il tuo chilometraggio può variare, perché hai eseguito il comando in precedenza.

    
risposta data 28.09.2015 - 13:26
fonte
0

Potrebbe essere necessaria un'unità USB per risolvere il problema se non si dispone di un backup completo del sistema.

  1. Avvia il ripristino o il ripristino Internet
  2. Utilizza l'utilità disco in fase di ripristino per partizionare l'USB / preparare l'installazione di OS X in USB.
  3. Usa il ripristino per installare OS X su USB
  4. Avviare da USB e quindi eseguire il backup dei file dall'unità principale che non ti puoi permettere di perdere.
  5. Scarica il programma di installazione del sistema operativo per il tuo sistema guasto ed eseguilo per riparare le modifiche al sistema.
risposta data 28.09.2015 - 12:46
fonte
0

Sistema di recupero

L'opzione migliore è utilizzare il Sistema di recupero di OS X

di OS X.

Per avviare il computer da Ripristino, riavvia il tuo Mac e tieni premuti i tasti Comando + R all'avvio:

OS X: About OS X Recovery

OS X Lion and later include OS X Recovery. This feature includes all of the tools you need to reinstall OS X, repair your disk, and even restore from a Time Machine backup.

In alternativa, la modalità utente singolo o la modalità disco di destinazione sono possibili.

Modalità utente singolo

Prova ad eseguire l'avvio in modalità utente singolo, Come avviare il tuo Mac in modalità utente singolo o dettagliato .

In modalità utente singolo trova e rimuovi i file plist che stanno dicendo a launchd di non caricare questi lavori.

La risposta di klanomath contiene istruzioni per la modifica del file di stato launchd persistente /var/db/com.apple.xpc.launchd/disabled.plist .

Modalità disco di destinazione

Un'altra opzione è quella di utilizzare Modalità disco di destinazione per accedere ai file del tuo Mac. In questa modalità, sarai in grado di trovare e rimuovere i file plist che stanno dicendo a launchd di non caricare questi lavori.

    
risposta data 28.09.2015 - 11:35
fonte

Leggi altre domande sui tag