Atascado en la pantalla azul después de ejecutar "rm *" en /

12

Accidentalmente ejecutado rm *en /y desde entonces soy incapaz de ver a mi escritorio. Todo lo que veo es una pantalla azul con equipo giratorio.

La ironía es que de alguna manera extrañé mi sistema operativo y otros CD que vinieron con mi Mac. Seguí este artículo sobre cómo iniciar en modo seguro, pero muestra la barra de progreso durante mucho tiempo y luego se queda atascado en la pantalla azul

Adjunto está la pantalla que veo en el arranque.

ingrese la descripción de la imagen aquí

Tampoco puedo entrar en modo seguro, entonces, ¿cómo puedo volver a un sistema que funcione?

PD: También me pregunto si podré volver a obtener la configuración de mi escritorio sin comprometer todas las configuraciones. Me preocupa especialmente el software instalado a través de Home Brew, bases de datos, etc. ¿Es posible restaurar o copiar archivos borrados mediante algún tipo de reparación a través de un CD? Mis archivos ocultos que infunden bash_profile, etc., también están allí. ¿Me puede guiar cómo debo proceder?

Actualizo Me conecto al modo único. Verificar imagen. ¿Qué hago ahora?

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

actualización # 3

ingrese la descripción de la imagen aquí

finalmente

ingrese la descripción de la imagen aquí

Volatil3
fuente
¿Recuerda el comando exacto que ejecuta, el usuario con el que inició sesión en ese momento y cualquier salida que generó el comando?
nohillside
¿Usó la -ropción (o la -Ropción)? Si no lo hiciste, eso no debería suceder.
0942v8653
No lo sé RAN rm con asterisco. Solo archivos eliminados. Todas las carpetas están allí porque incluso después de ejecutar comandos que estaba usando mi sistema de interfaz gráfica de usuario, sólo que no puedo usarlo después de reiniciar
Volatil3
@patrix solo hubo salida que decía que las carpetas no se eliminaron ya que eran directorio
Volatil3
2
Por el momento, su mayor preocupación es cómo volver a un sistema en funcionamiento, no si su instalación de homebrew sobrevivió.
nohillside

Respuestas:

24

Dependiendo de la configuración de su sistema y su comando, probablemente haya perdido solo algunos archivos, incluido uno esencial, carpetas y algunos enlaces simbólicos.

El uso del comando rm *, ejecutado por un administrador en la carpeta raíz, generalmente elimina solo el enlace simbólico / etc:

  • Arranque en modo de usuario único, verifique su sistema de archivos /sbin/fsck -fyy monte la lectura / escritura raíz con /sbin/mount -rw /. Luego, vuelva a crear el enlace simbólico / etc con ln -s /private/etc /etcy reinicie su Mac con shutdown -r now.

Usando el comando sudo rm *, ejecutado por un sudoer en la carpeta raíz, en una configuración estándar solo perderá el archivo 'mach_kernel' y los enlaces simbólicos 'etc', 'tmp' y 'var'.

(No se eliminaron otros archivos en el sistema de archivos) . Después de más investigaciones, resulta que algunos otros archivos y carpetas también se eliminan a menudo: una carpeta con el nombre de un sudoer (generalmente el nombre corto de su cuenta de administrador) en / private / var / db / sudo / y un archivo .state con un nombre arbitrario (el UID generado de su cuenta de administrador / sudoer) relacionado con otro archivo con el mismo nombre en / private / var / db / shadow / hash /. No puedo determinar si son eliminados por 'sudo', 'rm' o 'sudo rm'. Sin embargo, estos archivos y carpetas son de menor importancia.

fsevent

Lo he probado en una máquina virtual de servidor Mac OS X 10.6.8 casi vainilla.

Antes de ejecutar sudo rm *la carpeta raíz se ve así (archivos invisibles, carpetas y enlaces simbólicos incluidos) 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

Después de ejecutar sudo rm *solo un archivo y los enlaces simbólicos desaparecieron:

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

Al usar una configuración no estándar, también se eliminarán todos los demás archivos y enlaces simbólicos en la carpeta raíz (si es que existe alguno). Todas las carpetas no estándar (por ejemplo, / opt) sobreviven.

  • Si no eliminó el archivo del núcleo (lo cual es poco probable), intente arrancar en modo de usuario único y reconstruya los tres enlaces simbólicos eliminados con ln -s /.../folder /folder(por ejemplo ln -s /private/etc /etc)

  • Si tiene una copia de seguridad y eliminó el archivo del núcleo, intente restaurar el archivo mach_kernel, los enlaces simbólicos, la carpeta con su nombre de usuario administrador en ../sudo/ y el archivo de estado faltante. Necesita un disco duro de arranque / memoria USB para restaurar esos archivos de la copia de seguridad.

  • Si no tiene una copia de seguridad, intente copiar el archivo mach_kernel desde otra Mac con el mismo sistema (por ejemplo, 10.6.8). Recrea los enlaces simbólicos. Probablemente tengas que ajustar la propiedad y los permisos (ver listado).

    "mach_kernel" también está disponible en Mac OS X Combo Update 10.6.8 y probablemente en otros actualizadores combo como Mac OS X Combo Update 10.6.6 y Mac OS X Combo Update 10.6.7. Por lo tanto, también debería funcionar la actualización de su sistema dañado con el actualizador combinado desde una unidad de disco externa de arranque externa o conectada en modo de disco de destino a otra Mac.

    Después de restaurar el archivo del kernel y los enlaces simbólicos, puede iniciar en modo superusuario e ingresar mount -o rw,remount /y crear la carpeta que falta en / private / var / db / sudo / with mkdir /private/var/db/sudo/adminname. El archivo .state que falta se reconstruye solo.

Si ha ejecutado sudo rm -dR *, está condenado sin una copia de seguridad adecuada. Después, mi sistema no se pudo arrancar, pero solo se eliminaron 524 MB de 9860 MB después de las confirmaciones de anulación para '/System/Library/CoreServices/boot.efi' y '/ dev / fd / 4'.
En un segundo intento, obtuve 8445 MB de 9860 MB eliminados usando sudo rm -dR *. El primer intento también podría haber sido recuperable con la actualización combinada, los restos débiles del segundo intento seguramente no lo son.

klanomath
fuente
Todo esto es maravilloso, correcto e impresionante, pero mi experiencia es si / System o / Library fue golpeado, el sistema no puede arrancar ni pasar la pantalla gris. La pantalla azul durante el arranque significa que el sistema operativo se desprotegió, se inició correctamente (o más que nada) y se inició la fase del entorno de usuario de launchd. Una comprobación fácil para esto sería eliminar con mucho cuidado el archivo /var/db/.AppleSetupDone en modo de usuario único y luego ver si puede crear un nuevo usuario administrador y al menos realizar una copia de seguridad de Time Machine para ver qué archivos de usuario son recuperables .
bmike
@klanomath es interesante notar que rm * no eliminó los archivos de imagen en la raíz. Me pregunto porque.
Volatil3
@klanomath-rw-r-----@ 1 Adnan staff 2404856 Feb 26 21:33 mountain.jpg
Volatil3
@klanomath el archivo jpg se descargó de la red. Estaba conectado desde el mismo usuario que ejecutó el comando rm *.
Volatil3
1
@ Volatil3 Quizás rm simplemente dejó de eliminar archivos antes de llegar a mountain.jpg, y no logró eliminar todas esas carpetas. O la montaña era demasiado grande para ser eliminada. ;-) Al probar sudo rm -dR * en la raíz de mi máquina virtual, también obtuve algunos resultados inconsistentes: solo verifique la última parte de mi respuesta. En el primer intento, solo se eliminó el 7% del contenido, en el segundo intento, el 85%.
klanomath