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

9

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

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

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

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

Swetha
источник
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"
Rinzwind
источник
Я попробовал команду «sudo -H nano / etc / environment», и это был ответ: «sudo» доступно в «usr / bin / sudo». Невозможно найти команду, потому что «usr / bin» не включен в переменную PATH.
Света
Эй, спасибо, я использовал абсолютные пути для sudo и nano и решил это! :)
Света