Я навсегда изменил переменную PATH по ошибке, и сейчас я не могу войти в систему. Как изменить переменную PATH по умолчанию?


9

Я использовал sudo -H gedit /etc/environmentкоманду на терминале, чтобы навсегда изменить переменную PATH.

Чтобы исправить это, я нажал Ctrl+ Alt+ F1и использовал export PATHкоманду, но доступ был запрещен.

Многие команды (включая sudoи nano) не распознаются, поскольку новая переменная PATH не имеет /usr/bin. Я новичок в командах Linux.

Как я могу это исправить?


3
Также делайте резервные копии при редактировании системных файлов. Тогда вы только 1 mvот восстановления его;)
Rinzwind

3
Пожалуйста, не кросспост; Ваш вопрос подходит. Спросите Ubuntu лучше, чем Stack Overflow.
Edwinksl

Ответы:


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

9
На самом деле /usr/bin/sudo nano /etc/environmentдолжно быть достаточно (так как sudoиспользует его secure_pathвместо PATH)
SteelDriver

@steeldriver: Ах да, звучит правдоподобно. Пожалуйста, не стесняйтесь редактировать, если вы уверены. (Я не склонен проверять ...)
Гуннар Хьялмарссон

8

Возможные методы:

  • Сначала попытайтесь войти в систему, используя TTY (control-alt-f1).
  • Если это не работает, загрузитесь с живого DVD.

а затем использовать

sudo nano /etc/environment

из командной строки и исправьте свою ошибку. Сохраните и перезагрузитесь, чтобы проверить, что вы сделали правильно.


Если вам это нужно:

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

Я попробовал команду «sudo -H nano / etc / environment», и это был ответ: «sudo» доступно в «usr / bin / sudo». Невозможно найти команду, потому что «usr / bin» не включен в переменную PATH.
Света

Эй, спасибо, я использовал абсолютные пути для sudo и nano и решил это! :)
Света
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.