Bloccato sulla schermata blu dopo aver eseguito "rm *" in /


12

Ho eseguito accidentalmente rm *su /e da allora non sono in grado di vedere il mio desktop. Tutto quello che vedo è una schermata blu con attrezzatura da spinning.

L'ironia è che in qualche modo mi mancavano il mio sistema operativo e altri CD forniti con il mio Mac. Ho seguito questo articolo sull'avvio in modalità provvisoria ma mostra la barra di avanzamento per lungo tempo e poi rimango bloccato sulla schermata blu

In allegato è lo schermo che vedo all'avvio.

inserisci qui la descrizione dell'immagine

Non riesco nemmeno a entrare in modalità provvisoria, quindi come posso tornare a un sistema funzionante?

PS: Mi chiedo anche se sarò in grado di ripristinare nuovamente le impostazioni del desktop senza compromettere tutte le impostazioni? Sono particolarmente interessato al software installato tramite birra fatta in casa, database ecc. È possibile ripristinare o copiare i file cancellati mediante un qualche tipo di riparazione tramite CD ?. Ci sono anche i miei file nascosti che infondono bash_profile ecc. Puoi guidare come devo procedere?

aggiornamento Accedo alla modalità singola. Controlla l'immagine. Cosa faccio ora?

inserisci qui la descrizione dell'immagine

inserisci qui la descrizione dell'immagine

Update 3 #

inserisci qui la descrizione dell'immagine

infine

inserisci qui la descrizione dell'immagine


Ricordi il comando esatto che esegui, l'utente con cui hai effettuato l'accesso in quel momento e qualsiasi output generato dal comando?
Nohillside

Hai usato l' -ropzione (o l' -Ropzione)? In caso contrario, ciò non dovrebbe accadere.
0942v8653,

No lo so correva rm con l'asterisco. Solo i file rimossi. Tutte le cartelle sono lì perché anche dopo aver eseguito il comando stavo usando il mio sistema nella GUI, solo non posso usarlo dopo il riavvio
Volatil3

@patrix c'era solo l'output che diceva che le cartelle non erano state cancellate come erano directory
Volatil3

2
Al momento la tua più grande preoccupazione è come tornare a un sistema funzionante, non se l'installazione homebrew sia sopravvissuta.
Nohillside

Risposte:


24

A seconda della configurazione del sistema e del comando, probabilmente hai perso solo alcuni file, incluso uno essenziale, e cartelle e alcuni collegamenti simbolici.

L'uso del comando rm *- eseguito da un amministratore nella cartella principale - elimina di solito solo il collegamento simbolico / etc:

  • Avvia in modalità utente singolo, controlla il tuo file system con /sbin/fsck -fye monta root / scrivibile con root /sbin/mount -rw /. Quindi ricrea il sym-link / etc con ln -s /private/etc /etce riavvia il tuo Mac con shutdown -r now.

Usando il comando sudo rm *- eseguito da un sudoer nella cartella principale - in una configurazione standard perderai solo il file 'mach_kernel' e i collegamenti simbolici 'etc', 'tmp' e 'var'.

(Nessun altro file è stato eliminato nel file system) . Dopo ulteriori indagini si scopre che anche alcuni altri file e cartelle vengono eliminati spesso: una cartella con il nome di un sudoer (di solito il nome breve dell'account admin) in / private / var / db / sudo / e un file .state con un nome arbitrario (il UID generato dell'account admin / sudoer) relativo a un altro file con lo stesso nome in / private / var / db / shadow / hash /. Non riesco a determinare se vengono eliminati da 'sudo', 'rm' o 'sudo rm'. Questi file e cartelle sono tuttavia di minore importanza.

fsevent

L'ho testato su una VM Server Mac OS X 10.6.8 quasi vaniglia.

Prima di eseguire sudo rm *la cartella principale appare così - file invisibili, cartelle e collegamenti simbolici inclusi - con ls -la:

drwxrwxr-t  32 root  admin      1156 25 Dez 11:55 .
drwxrwxr-t  32 root  admin      1156 25 Dez 11:55 ..
-rw-rw-r--   1 root  admin     15364  4 Jan 14:35 .DS_Store
drwx------   3 root  admin       102 10 Sep 01:37 .Spotlight-V100
d-wx-wx-wt   2 root  staff        68 10 Sep 01:23 .Trashes
----------   1 root  admin         0 23 Jun  2009 .file
drwx------  38 root  admin      1292  4 Jan 14:59 .fseventsd
-rw-------   1 root  wheel      4096 10 Sep 01:29 .hotfiles.btree
drwxr-xr-x@  2 root  wheel        68 18 Mai  2009 .vol
drwxrwxr-x+ 35 root  admin      1190 25 Dez 16:49 Applications
drwxrwxr-x@ 16 root  admin       544 25 Dez 12:04 Developer
drwxrwxr-t+  2 root  admin        68 10 Sep 01:37 Groups
drwxrwxr-t+ 65 root  admin      2210 25 Dez 12:02 Library
drwxr-xr-x@  3 root  wheel       102 26 Feb 20:43 Network
drwxr-xr-x   4 root  wheel       136 10 Sep 01:28 Shared Items
drwxr-xr-x   4 root  wheel       136 10 Sep 02:02 System
drwxr-xr-x+  5 root  admin       170 10 Sep 01:37 Users
drwxrwxrwt@  4 root  admin       136 26 Feb 20:43 Volumes
drwxr-xr-x@ 39 root  wheel      1326 10 Sep 02:09 bin
drwxrwxr-t@  2 root  admin        68 23 Jun  2009 cores
dr-xr-xr-x   3 root  wheel      4013 26 Feb 20:43 dev
lrwxr-xr-x@  1 root  wheel        11 10 Sep 01:26 etc -> private/etc
dr-xr-xr-x   2 root  wheel         1 26 Feb 20:43 home
-rw-r--r--@  1 root  wheel  20828964  8 Jun  2011 mach_kernel
dr-xr-xr-x   2 root  wheel         1 26 Feb 20:43 net
drwxr-xr-x@  6 root  wheel       204 10 Sep 01:28 private
drwxr-xr-x@ 68 root  wheel      2312 10 Sep 02:09 sbin
lrwxr-xr-x@  1 root  wheel        11 10 Sep 01:26 tmp -> private/tmp
drwxr-xr-x@ 14 root  wheel       476 25 Dez 11:57 usr
lrwxr-xr-x@  1 root  wheel        11 10 Sep 01:26 var -> private/var

Dopo aver eseguito sudo rm *solo un file e i collegamenti simbolici sono scomparsi:

drwxrwxr-t  28 root  admin   1020 26 Feb 19:41 .
drwxrwxr-t  28 root  admin   1020 26 Feb 19:41 ..
-rw-rw-r--   1 root  admin  21508 26 Feb 19:41 .DS_Store
drwx------   3 root  admin    102  9 Sep 23:37 .Spotlight-V100
d-wx-wx-wt   2 root  20        68  9 Sep 23:23 .Trashes
----------   1 root  admin      0 23 Jun  2009 .file
drwx------  38 root  admin   1292  4 Jan 13:59 .fseventsd
-rw-------   1 root  wheel   4096  9 Sep 23:29 .hotfiles.btree
drwxr-xr-x@  2 root  wheel     68 18 Mai  2009 .vol
drwxrwxr-x+ 35 root  admin   1190 25 Dez 15:49 Applications
drwxrwxr-x@ 16 root  admin    544 25 Dez 11:04 Developer
drwxrwxr-t+  2 root  admin     68  9 Sep 23:37 Groups
drwxrwxr-t+ 65 root  admin   2210 25 Dez 11:02 Library
drwxr-xr-x@  3 root  wheel    102 26 Feb 19:39 Network
drwxr-xr-x   4 root  wheel    136  9 Sep 23:28 Shared Items
drwxr-xr-x   4 root  wheel    136 10 Sep 00:02 System
drwxr-xr-x+  5 root  admin    170  9 Sep 23:37 Users
drwxrwxrwt@  4 root  admin    136 26 Feb 19:39 Volumes
drwxr-xr-x@ 39 root  wheel   1326 10 Sep 00:09 bin
drwxrwxr-t@  2 root  admin     68 23 Jun  2009 cores
dr-xr-xr-x   3 root  wheel   4013 26 Feb 19:39 dev
dr-xr-xr-x   2 root  wheel      1 26 Feb 19:39 home
dr-xr-xr-x   2 root  wheel      1 26 Feb 19:39 net
drwxr-xr-x@  6 root  wheel    204  9 Sep 23:28 private
drwxr-xr-x@ 68 root  wheel   2312 10 Sep 00:09 sbin
drwxr-xr-x@ 14 root  wheel    476 25 Dez 10:57 usr

Utilizzando un'impostazione non standard verranno eliminati anche tutti gli altri file e collegamenti simbolici nella cartella principale (se presenti). Tutte le cartelle non standard (ad es. / Opt) sopravvivono.

  • Se non hai eliminato il file del kernel (il che è improbabile), prova ad avviare in modalità utente singolo e ricostruisci i tre collegamenti simbolici eliminati con ln -s /.../folder /folder(es. ln -s /private/etc /etc)

  • Se si dispone di un backup e si è eliminato il file del kernel, provare a ripristinare il file mach_kernel, i collegamenti simbolici, la cartella con il nome utente amministratore in ../sudo/ e il file di stato mancante. È necessario un disco rigido / chiavetta di avvio per ripristinare quei file dal backup.

  • Se non si dispone di un backup, provare a copiare il file mach_kernel da un altro Mac con lo stesso sistema (ad es. 10.6.8). Ricrea i link simbolici. Probabilmente devi regolare la proprietà e le autorizzazioni (vedi elenco).

    "mach_kernel" è disponibile anche nell'aggiornamento combinato 10.6.8 di Mac OS X e probabilmente in altri aggiornamenti combinati come l'aggiornamento combinato 10.6.6 di Mac OS X e l'aggiornamento combinato 10.6.7 di Mac OS X. Pertanto, anche l'aggiornamento del sistema danneggiato con l'aggiornamento combinato da una chiavetta di avvio esterna o collegato in modalità disco di destinazione a un altro Mac dovrebbe funzionare.

    Dopo aver ripristinato il file del kernel e i collegamenti simbolici, è possibile avviare la modalità super utente e immettere mount -o rw,remount /e creare la cartella mancante in / private / var / db / sudo / with mkdir /private/var/db/sudo/adminname. Il file .state mancante si ricostruisce da solo.

Se hai eseguito, sudo rm -dR *sei condannato senza un backup adeguato. Il mio sistema non è stato avviato in seguito, ma in modo sorprendente solo ~ 524 MB di 9860 MB sono stati eliminati dopo le conferme di override per '/System/Library/CoreServices/boot.efi' e '/ dev / fd / 4'.
In un secondo tentativo ho ottenuto 8445 MB di 9860 MB eliminati utilizzando sudo rm -dR *. Il primo tentativo potrebbe anche essere stato recuperato con l'aggiornamento combinato, i resti wimpy del secondo tentativo sicuramente non lo sono.


Tutto questo è meraviglioso, corretto e fantastico, ma la mia esperienza è che se / System o / Library sono stati colpiti, il sistema non può avviarsi o oltre lo schermo grigio. La schermata blu durante l'avvio significa che il sistema operativo è stato estratto, avviato correttamente (o per lo più) e la fase dell'ambiente di avvio di launchd è iniziata. Un semplice controllo per questo sarebbe quello di eliminare con molta attenzione il file /var/db/.AppleSetupDone in modalità utente singolo e quindi vedere se è possibile creare un nuovo utente amministratore e almeno eseguire un backup di Time Machine per vedere quali file utente sono salvabili .
bmike

@klanomath è interessante notare che rm * non ha rimosso i file di immagine dal root. Mi chiedo perché.
Volatil3,

@klanomath-rw-r-----@ 1 Adnan staff 2404856 Feb 26 21:33 mountain.jpg
Volatil3,

@klanomath il file jpg è stato scaricato dalla rete. Ho effettuato l'accesso dallo stesso utente che ha eseguito il comando rm *.
Volatil3,

1
@ Volatil3 Forse rm ha appena rinunciato all'eliminazione dei file prima di raggiungere mountain.jpg, non riuscendo a eliminare tutte quelle cartelle. Oppure la montagna era troppo grande per essere cancellata. ;-) Testando sudo rm -dR * nella radice della mia macchina virtuale ho anche ottenuto dei risultati incoerenti: basta controllare l'ultima parte della mia risposta. Nel primo tentativo è stato eliminato solo il 7% del contenuto, nel secondo tentativo l'85%.
klanomath,
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.