Tuve un pequeño problema al ejecutar un script: este script lee un archivo de configuración en $HOME
, y tenía ~/Downloads
dentro.
En lugar de guardar un archivo dentro de ~/Downloads
cuando ejecuté el script, ya que lo ejecuté dentro de ~/Library
, creó ~/Library/~/Downloads
.
Dentro de ~/Library
, hice rm -rf ~
. Después de 1 o 2 segundos, me di cuenta de mi error y dejé de usar ˆ-C
. Estaba eliminando mi $HOME
.
Sé que algunos archivos fueron eliminados, pero no sé cuáles. Se eliminaron algunos archivos ocultos (bash_functions, bash_aliases) y tuve una copia de seguridad, pero no se realizó una copia de seguridad de algunos archivos en $HOME
.
Hice una verificación rápida en mis archivos (viendo las fechas modificadas de la carpeta en $HOME
), parecía bien, pero sé que no puedo confiar en mis ojos usando este enfoque.
Sé que si cambio un archivo dentro de una carpeta, Mac cambiará el indicador "modificado" para esa carpeta, pero solo si se cambió un elemento secundario directo de esa carpeta. Ejemplo:
~/Downloads
- file.txt
/Mp3
- music.mp3
Por lo tanto, si cambias file.txt
, a ~/Downloads
se le cambiará su marca, pero si cambias a music.mp3
, a ~/Downloads
no se le cambiará la bandera.
Aquí está el problema: no sé cómo rm -rf
comienza a eliminar mis archivos. ¿Es secuencial? ¿Está en un orden arbitrario? ¿Podría ser que comenzó a eliminar ~/Pictures/Wedding
y de repente se fue a hacer ~/Videos
? No lo sé. Creo que no se elimina de forma secuencial, por lo que ahora puedo tener un directorio realmente profundo sin archivos importantes después de mi error rm -rf
.
¿Hay algún lugar en la Mac donde se guardan todos los archivos eliminados con rm -rf
(solo los nombres de archivo)? No encontré nada de eso, así que lo hice
find ~ -type d -mtime -1 > modified_folders.txt
en mi terminal desde que cometí el error rm -rf
hoy. El resultado del comando find
, las carpetas modificadas (si elimina un archivo, la bandera modificada por Mac cambia la carpeta directa) parece no tener una estructura "arbitraria profunda" como ~/Pictures/Personal/Birthday/2010/Cake
... ¿puedo asumir entonces? rm -rf
no tocó los archivos incorrectos y pude detener el armageddon solo al detener rm -rf ~
después de 1-2s (¿así que eliminó solo algunos de los archivos ocultos en $HOME
)?
(Ya reinicié mi máquina, está funcionando bien. Estoy en Snow Leopard, así que tmutil no es una solución, creo ...)
(Ya sé que existen algunas soluciones para recuperar, como TestDisk , pero estoy intentando usarlo como último enfoque (si me equivoco en mis suposiciones sobre el fragmento de código find
).