While I was adding Golang to the PATH my terminal (Konsole) suddenly stopped recognizing basic commands like nano and ls. I restared my PC and after logging back in (X11) KDE started throwing errors because it wasn’t able to find any program I tried to launch. Konsole is gone. I can’t open any program whatsoever (Firefox, Discover etc.). Trying to log in into Wayland just throws a black screen. After a few more reatarts I decided to use the terminal from the login screen, but it is broken as well. ls not found, nano and vim don’t exist. So far I can use pwd and cd.

What the hell is wrong here? Is it hardware failure (bad SSD)? Is there anything I can attempt to recover the system?

  • unmagical@lemmy.ml
    link
    fedilink
    arrow-up
    11
    ·
    5 months ago

    Did you accidentally replace your path rather than append to it? You might need to get a recovery drive, chroot in, and reset the path. Not sure what the actual value should be though.

  • RustyNova@lemmy.world
    link
    fedilink
    arrow-up
    5
    ·
    edit-2
    5 months ago

    I think I know what happened. Did you do something like PATH="/usr/bin/golang"?

    Because doing that overwrite your path variable. You need to set it like this:

    PATH="{PATH}:/usr/bin/golang" to append to the path.

    And well… I hope you got a backup of your /root/.bashrc or whatever you use as a terminal. Restoring it should fix it

    Edit: you should be able to use any program by appending /usr/bin/ to your commands, as long as it’s in this directory

    • some_random_nick@lemmy.worldOP
      link
      fedilink
      arrow-up
      1
      ·
      5 months ago

      You are right. I messed it up adn didn’t put $ infront of PATH… Luckily I found an stackoverflow post with a similar issue and it suggested setting PATH to the default PATH=/usr/bin:/usr/sbin that would alowe using commands again and it worked.

  • eldavi@lemmy.ml
    link
    fedilink
    English
    arrow-up
    2
    ·
    5 months ago

    in your shoes: i would switch to a virtual terminal to see if my path has been misconfigured.

    most distros have setup alt+ctrl+f1 through alt+ctrl+f7 to let you switch to a virtual terminal where it will give you a cli after you login. once you do; you can use either echo $PATH or env to inspect your environment configuration.

    if i’m right and based on your description; i would expect the same command not found message and you’ll need to restore it. you can restore it using either an environment skeleton (assuming your distro includes one) or you can get a basic one from a google search and reconstruct it.

    also if i 'm right: i recommend using a versioning system (eg git, svn, perforce, etc.) so that you can easily roll back in case you encounter something like this again.