I’m working on a some materials for a class wherein I’ll be teaching some young, wide-eyed Windows nerds about Linux and we’re including a section we’re calling “foot guns”. Basically it’s ways you might shoot yourself in the foot while meddling with your newfound Linux powers.

I’ve got the usual forgetting the . in lines like this:

$ rm -rf ./bin

As well as a bunch of other fun stories like that one time I mounted my Linux home folder into my Windows machine, forgot I did that, then deleted a parent folder.

You know, the war stories.

Tell me yours. I wanna share your mistakes so that they can learn from them.

Fun (?) side note: somehow, my entire ${HOME}/projects folder has been deleted like… just now, and I have no idea how it happened. I may have a terrible new story to add if I figure it out.

  • Frater Mus
    link
    fedilink
    English
    47 months ago

    I have made countless mistakes since the 90s, mostly involving rm. The most recent one was yesterday when I was trying to rm files in a directory with lots of other unrelated files.

    I don’t remember the exact failure, but I was shooting for something like rm *lng and typo’ed rm *;ng (those chars are next to each other on the kb). This happily rm’ed * (d’oh!) then errored on the nonexistance ng. :-(

      • Frater Mus
        link
        fedilink
        English
        17 months ago

        In the past I’ve aliased rm to a wrapper that showed PWD and the files to be affected, slept a couple seconds in case I wanted to abort, then shredded smaller files, rm’ed big files, or placed in a Trash dir for certain kinds of files (.conf, .cfg, etc).

        I might try to find or rewrite it.

        • @[email protected]
          link
          fedilink
          27 months ago

          That sounds great but I don’t want to keep the ‘rm’ muscle memory in case I’m on another computer and delete something important. Having to use ‘trash’ instead makes you more conscious when it errors out.

    • @bitchkat
      link
      English
      17 months ago

      Dude, test those things with an echo command first.