I accidentally untarred archive intended to be extracted in root directory, which among others included some files for /etc directory.
I went on to rm -rv ~/etc, but I quickly typed rm -rv /etc instead, and hit enter, while using a root account.
OOOOOOOOOOOF!!
One trick I use, because I’m SUPER paranoid about this, is to mv things I intend to delete to /tmp, or make /tmp/trash or something.
That way, I can move it back if I have a “WHAT HAVE I DONE!?” moment, or it just deletes itself upon reboot.
Just get a cli trash tool and alias it to rm. Arch wiki
That’s certainly something you can do! I would personally follow the recommendation against aliasing rm though, either just using the trash tool’s auto complete or a different alias altogether.
Reason being as someone mentioned below: You don’t want to give yourself a false sense of security or complacency with such a dangerous command, especially if you use multiple systems.
I liken it to someone starting to handle weapons more carelessly because the one they have at home is “never loaded.” Better safe than sorry.
Lol we should have “rules of rm safety”:
- Assume rm is always sudo unless proven otherwise.
- (EDIT)Finger should be off the Enter key until you are certain you are ready to delete.
- Never point rm at something you aren’t willing to permanently destroy.
- Always be aware of your target directory, and what is recursively behind it!
I think this is the best approach. I’ve created a short alias for my trash tool and also aliased
rmto do nothing except print a warning. This way you train yourself to avoid using it. And if I really need it for some reason I can just type\rm.If you want to train yourself even more effectively you can also alias
rmto runslinstead :)you can also alias
rmto runslinstead :)Choo-choo!!
Hehe I just thought of a hilariously nefarious prank: alias ls to sl. 😂
Yeah, there’s no need to alias it. Trash-cli comes with its own
trashcommand.
Hey that’s a pretty good idea. I’m stealing that.
After being bitten by rm a few times, the impulse rises to alias the rm command so that it does an
“rm -i”or, better yet, to replace the rm command with a program that moves the files to be deleted to a special hidden directory, such as~/.deleted. These tricks lull innocent users into a false sense of security.I’ve read this somewhere too! Where are you quoting it from if I may ask?
But yes I also agree 💯%. rm should always be treated with respect and care by default rather than “customizing the danger away.”
Quoting from Linux Hater’s Handbook, lovely read
EDIT: UNIX Haters, not Linux hater, my bad
… is it the “UNIX-Hater’s Handbook” from 1994 with a parody of “The Scream” on the cover?
Yup, that one. It’s also available here, sans cover - https://web.mit.edu/~simsong/www/ugh.pdf
LOL nice, I’ll have to check it out. :) Thanks!
i always do “read;rm ./file” which gives me a second to confirm and also makes it so i don’t accidentally execute it out of my bash history with control-r
Also stealing this. What an awesome tip
This need’s to be higher in the comments!
Reminds me in the t-shirt: “don’t drink and root”
I fucking hate using
rmfor these very reasons.There’s another program called “trash-cli” that gives you a
trashcommand instead of going straight to deletion.I’m not sure why more distros don’t include it by default, or why more tutorials don’t mention it.
it could be worse:
rm -rv ~ /etcNext time:
ls ~/etc rm -rv !$Or press
alt+.to paste final argument of previous commandThis is also dangerous because you could run the second command by accident later when browsing command history
with tab you can expand the !$, should be a zsh thing
Genuinely curious… why using root for operations like these?
To feel the thrill
Be happy that you didn’t remeber the ~ and put a space between it and etc😃.
I am new to Linux and just getting somewhat comfortable as my daily driver, very proud of myself that I got the joke pretty quickly :)
Reminds me of when I had a rogue
~directory sitting in my own home directory (probably from a badly written script). Three seconds intorm -rf ~and me wondering why it was taking so long to complete, I CTRL+C, reboot, and pray.Alas, it was a reinstall for me that day (good excuse to distro hop, anyway). Really glad I don’t mount my personal NAS folder in my home directory anymore, holy shit.
Bruh
Sudo apt-get install /etc
Ok speaking of this, where do a distro’s config and boot scripts even come from? Are they in a package? Like on Debian so the .debs have metadata that can add cron jobs and such?
Yup
Ahh, the rites of passage!
Yeah, same thing like with unclosed bottles, cup too close to the table edge, etc.: Accidents that can hapen, will happen.
Better name them something else in your user dir.And yes, painful experience.
💀
Ohohoho man did you ever fuck up. I did that once too. I can’t remember how I fixed it. I think I had to reinstall the whole OS
Thank god you used -rv and not -rf 😂😂😂








