OSX: ¿sería posible crear un enlace simbólico que apunte a /dev/null, por ejemplo, un directorio de agujero negro?
Trabajo en una mesa de ayuda y necesitamos desinfectar un directorio en caso de que entren datos en algún momento. Contamos con algunas protecciones implementadas para mitigar la posibilidad de que los datos ingresen a este directorio, pero debido al flujo de trabajo y a cosas que no podemos controlar, a veces los datos terminan en este directorio.
Creo que sería perfecto que este directorio fuera un agujero negro. por ejemplo, un enlace simbólico que apunta a /dev/null
No estoy seguro de si esto es posible.
Gracias de antemano.
Respuesta1
Esto no es compatible desde el primer momento. Es posible vincular archivos a /dev/null pero no a directorios.
p.ej:
ln -s /dev/null ~/.bash_history
Quizás quieras investigarFUSIBLEpara hacer esto, pero es posible que tengas más suerte simplemente escribiendo un script según tus necesidades
Respuesta2
Una alternativa a las acciones de carpeta podría ser guardar un plist como este, por ejemplo ~/Library/LaunchAgents/test.plist
:
<?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>test</string>
<key>ProgramArguments</key>
<array>
<string>bash</string>
<string>-c</string>
<string>rm -rf ~/Documents/Black\ Hole/*</string>
</array>
<key>WatchPaths</key>
<array>
<string>~/Documents/Black Hole/</string>
</array>
</dict>
</plist>
Se puede cargar con launchctl load ~/Library/LaunchAgents/test.plist
o cerrando sesión y volviendo a iniciarla.
Respuesta3
Podrías crear un disco RAM de sólo lectura:
mydev=$(hdid -nomount ram://1024)
newfs_hfs "$mydev"
mkdir /path/to/readonlydir
mount -t hfs -r "$mydev" /path/to/readonlydir
Tenga en cuenta que esto es ligeramente diferente de lo que está solicitando: escribir en el directorio de montaje para un disco de solo lectura le dará un error, no simplemente desaparecerá silenciosamente el archivo.