Prevenir un rm * ?

Voila j’aimerai demander une confirmation quand un rm * est lancé car , j’ai eu la malencontreuse expérience suivante ou je voulais faire un rm *.wav et le . se situant prés de la touche enter sur le clavier numérique , ça a fait un rm *

C’etait sous FreeBSD mais je penses que l’astuce est valable sous BSD et sous Linux d’ou la question dans la sous section Linux.

Fait un alias rm=“rm -i”
Sinon sur Ubuntu, il detecte toujours le rm* et demande la confirmation (alors qu’il n’y a aucun alias sur rm et que le rm normal ne demande aucune confirmation)

et tu le mets dans ton .bashrc

Autre astuce au cas où, il y a toujours des irréductibles qui enlèvent les alias :grrr:

Créer dans tes répertoires un fichier espace-moins-i:
touch \ -i

Ca marche chez toi ? CHez moi si j’ai un repertoire avec un ou plusieurs fichiers \ -i* et que je fais un rm *, adieu les fichiers :slight_smile:

Tu as tout à fait raison, il faut créer un alias, très utile !

Je vous recommande d’installer le fameux petit paquet MC !
Pour Debian :
%su
//password
#apt-get install mc
//yes & installation with the sources !

On voit son système de manière transversale !

Y un truc qui s’appelle libtrash qui permet d’avoir une poubelle.

Attends, j’essaie…

[system panic] :paf:

Et dans le meme esprit, y a-t-il un prog pour faire un unrm (undelete) ?
J’en ai essayé qq uns, mais sans grande réussite !

mki2268: non.

Il y a éventuellement certains moyens avec d’anciens systèmes de fichiers (ext2) mais pas les nouveaux. Soit tu fais un rm, soit tu ne le fais pas.

Si tu utilises l’interface graphique, alors il y a une corbeille dans laquelle tu peux récupérer les fichiers supprimés

Techniquement, si. Si je ne me trompe pas, le rm supprime juste les inodes du fichier, mais pas le fichier en lui même, donc si la suppression est recente et que rien n’a été ré-écrit par dessus, tu pêux essayer de recup ton fichier avec des outils genre debugfs sous linux ou easyrecovery sous windows (je ne sais pas s’il gere l’ext3 par contre :/).
Mais ca reste très lourd comme solution: mieux vaut prevenir que guerrir :wink:

Clair que çà ne supprime pas l’information. C’est comme sous Win. L’info est toujours là tant qu’on écrit rien dans l’inode/cluster.

Pour vraiment virer, il faut faire un :
wipe *
:paf:

Ouai, ou:
for i in seq 1 40
dd if=/dev/urandom of=/dev/hda
:paf: (cherchez l’erreur :D)

le coup de batte dans le disque, c’est tout aussi efficace, et ça défoule plus :o [:yeoh]

rouch:
Le problème avec les fichiers journalisés c’est que tu perds la localisation de la précédante inode ET que cet inode est changée a priori, contrairement à des fichiers non journalisés ou l’inode reste le même à priori

libtrash vous avez testé ?
C’est ce que vous cherchez a mon avis :smiley:

Juste pour rire, tu peux faire : alias rm="cat /dev/null"