Na stałe przez pomyłkę zmieniłem zmienną PATH i nie mogę się teraz zalogować. Jak zmienić domyślną zmienną PATH?


9

Użyłem sudo -H gedit /etc/environmentpolecenia na terminalu, aby trwale zmienić moją zmienną PATH.

Aby to poprawić, nacisnąłem Ctrl+ Alt+ F1i użyłem export PATHpolecenia, ale odmówiono dostępu.

Wiele poleceń (w tym sudoi nano) nie jest rozpoznawanych, ponieważ nowa zmienna PATH nie ma /usr/bin. Jestem nowy w poleceniach Linuksa.

Jak mogę to naprawić?


3
Twórz kopie zapasowe również podczas edycji plików systemowych. W takim razie dzieli Cię tylko 1 mvod przywrócenia;)
Rinzwind

3
Proszę nie krzyżować; Twoje pytanie pasuje Zapytaj Ubuntu lepiej niż pasuje Przepełnienie stosu.
edwinksl

Odpowiedzi:


21
/usr/bin/sudo /bin/nano /etc/environment

9
W rzeczywistości /usr/bin/sudo nano /etc/environmentpowinno wystarczyć (ponieważ sudoużywa własnego secure_pathzamiast PATH)
steeldriver

@steeldriver: Ach, racja, brzmi prawdopodobne. Jeśli jesteś pewien, możesz edytować. (Nie jestem skłonny do testowania ...)
Gunnar Hjalmarsson

8

Możliwe metody:

  • 1. spróbuj zalogować się przy użyciu TTY (control-alt-f1).
  • Jeśli to nie działa, uruchom komputer z płyty DVD na żywo.

a następnie użyj

sudo nano /etc/environment

z wiersza poleceń i edytuj swój błąd. Zapisz i uruchom ponownie, aby przetestować to, co zrobiłeś, jest poprawne.


W razie potrzeby:

 $ more /etc/environment 
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

Próbowałem polecenia „sudo -H nano / etc / environment” i oto była odpowiedź: „sudo” jest dostępne w „usr / bin / sudo”. Nie można zlokalizować polecenia, ponieważ „usr / bin” nie jest uwzględniony w zmiennej PATH.
Swetha,

Hej dzięki, użyłem absolutnych ścieżek do sudo i nano i rozwiązałem to! :)
Swetha,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.