Page 1 sur 1

[rm] ma propre commande

Publié : mar. 13 juin 2017, 15:37
par kunsochi
Yop,

je souhaite améliorer ma commande rm présent sur mon pc. En gros, je voudrais que lorsque je fais :

Code : Tout sélectionner

rm monficiher
il met tous les adresses mémoires à 0 où avant il y avait mon fichier.
Je pensais faire mon programme en C.

Mais comment récupérer la première et dernière adresse mémoire de l'emplacement de mon fichier ?

Re: [rm] ma propre commande

Publié : mar. 13 juin 2017, 15:54
par benjarobin
Bonjour,
Pourquoi réinventer la roue (au risque de la faire carrée) ? Tu as déjà un programme qui existe : wipe
Sinon tu as 2 solutions: mmap le fichier + memset + msync
Ou: Open + fstaf pour obtenir la taille, write autant de fois nécessaire avec un buffer de 0, fsync

Re: [rm] ma propre commande

Publié : mar. 13 juin 2017, 15:57
par kunsochi
benjarobin a écrit : mar. 13 juin 2017, 15:54 Bonjour,
Pourquoi réinventer la roue (au risque de la faire carrée) ? Tu as déjà un programme qui existe : wipe
Je ne connaissais pas ce programme.
Merci beaucoup !

Re: [rm] ma propre commande

Publié : mar. 13 juin 2017, 16:17
par waitnsea
Bonjour,
Il y a aussi shred

Re: [rm] ma propre commande

Publié : mar. 13 juin 2017, 16:30
par benjarobin
En effet il y a aussi shred qui est inclue dans coreutils
Voir https://wiki.archlinux.org/index.php/Se ... disk#shred

Re: [rm] ma propre commande

Publié : mar. 13 juin 2017, 21:58
par bobo
shred a une option --zero pour réécrire les bits « shredés » avec des zéros après un nombre déterminés d'écritures de valeurs aléatoires
man shred a écrit : -z, --zero
add a final overwrite with zeros to hide shredding