¿Cómo puedo hacer que rm elimine de forma segura los elementos en macOS?

1

De acuerdo con la página rm man rm -P ... sobrescribe los elementos tres veces para eliminarlos de forma segura:

  

-P Sobrescribe los archivos normales antes de eliminarlos. Los archivos son
   sobrescrito tres veces, primero con el patrón de bytes 0xff,
   luego 0x00, y luego 0xff otra vez, antes de que se eliminen.

¿Es posible pasar elementos de eliminación segura con rm ... ?

Notas:

  • ¡No quiero usar srm ! Sólo necesito rm, por favor.
  • Uso un MacBook con un HDD y macOS 10.13.
pregunta ralff53ds 12.03.2018 - 12:47

2 respuestas

2

No, eso no es posible con el comando rm estándar.

Puede descargar el código fuente rm (rm.c) de opensource.apple.com y editar la función rm_overwrite () para hacer solo una pasada.

O podría usar un programa alternativo que sobrescriba el archivo, y luego usar rm para eliminarlo. Tal programa alternativo podría ser simplemente usar cat o dd para copiar bytes desde / dev / urandom o / dev / null sobre el archivo.

    
respondido por el jksoegaard 12.03.2018 - 13:59
2

No puede hacer que rm haga algo que no tiene la capacidad de hacer. Por otro lado, srm fue diseñado expresamente para este propósito. Entonces, ¿cómo consigues que rm haga algo que srm hace fuera de la caja?

Haz un alias

Si desea "usar" (el comando; no el programa real) rm para hacer una sola pasada, use un alias . Para hacer esto, deberá tener srm instalado en su sistema (disponible en MacPorts ).

$ alias rm="srm -s"

Ahora, cada vez que emita el comando rm , en realidad llamará a srm con el indicador -s para "sobrescritura de un solo pase".

Ejemplo de uso: suponga que tiene un directorio llamado foo con una cantidad de archivos que desea eliminar. Ejecute el comando

$ rm -rf foo

y lo que en realidad se ejecutará es:

$ srm -s -rf foo

Haz que el alias sea permanente

Edita tu ~/.bash_profile y agrega la entrada de alias. Reinicie su sesión de bash y el comando "one pass rm " ahora estará disponible.

    
respondido por el Allan 12.03.2018 - 16:48

Lea otras preguntas en las etiquetas