«Команда не найдена» при использовании sudo с nano

7014
Einzelkind

У меня проблема, когда я хочу редактировать файлы с nanoпомощью sudo. Когда я ввожу следующую команду:

sudo nano /etc/exports 

Я получил эту ошибку

sudo: nano: command not found 

Это возврат от echo $PATH:

/home/einzelkind/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games:/usr/lib/mit/bin:/usr/local/sbin 

Я установил nanoтак:

  1. Загрузите пакет с wget https://nano-editor.org/dist/
  2. извлечь файлы с tar -xvJf
  3. ./configure --enable-utf8 --enable-nanorc
  4. sudo make
  5. sudo make install

Nano установлен в /usr/local/bin.

Как решить эту проблему?

0
Также см. Https://superuser.com/questions/927512/how-to-set-path-for-sudo-commands Hennes 6 лет назад 1

2 ответа на вопрос

1
jvb

Есть /usr/local/binв вашем $PATH? Тем не мение,

sudo /usr/local/bin/nano 

должно работать всегда, независимо от того, как $PATHнастроено.

`sudo / usr / local / bin / nano` работает! благодарю вас! Einzelkind 6 лет назад 0
0
Votar

Возможно, вместо того, чтобы echo $PATHпопробовать sudo echo $PATH
Кажется root, он использует другой пользовательский файл: https://unix.stackexchange.com/questions/83191/how-to-make-sudo-preserve-path

Кроме того, установка пакетов через менеджеры пакетов является, или, как я слышал, несколько раз, лучшим решением, чем сборка вручную. Не только из-за легкости удаления!
В зависимости от вашей системы может быть: apt-get, yumили pacman.

Ваша ссылка полезна, но команда `sudo echo $ PATH` - нет. Оболочка сначала раскрывает `$ PATH`, затем` sudo` получает * значение *. Kamil Maciorowski 6 лет назад 0
Ну, это приятно знать. Спасибо @KamilMaciorowski. Так что я думаю, что способ найти PATH для root - это сначала `su`, а затем` echo $ PATH`, хм? В любом случае, как подсказал @jvb, будет достаточно работы с абсолютным путем. Votar 6 лет назад 0

Похожие вопросы