Получение настроек nano nanorc для работы с командой "sudo nano"
Кто-нибудь знает, как заставить работать настройки Nanorc (подсветка синтаксиса, мышь) при использовании экземпляра редактора "sudo nano"?
Он работает, как и ожидалось, когда не использует nano как суперпользователь, но не с sudo в миксе.
У меня есть все нужные настройки в ~/.nanorc, а также в /etc/nanorc, но при редактировании файла с помощью sudo ни одна из персонализированных настроек не применяется.
2 ответа
При использовании интерактивной оболочки, а затем с помощью sudo
выполнить команду, такую как nano
параметры текущего пользователя в специфических файлах конфигурации приложения не получены. Итак, в этом случае, ~/.nanorc
не получены, и настройки не читаются.
Такое же состояние возникает, когда пользователь использует su
переключиться на другого пользователя, в том числе root
, В обоих случаях вместо этого загружаются новые или эффективные пользовательские настройки. Итак, используя sudo nano
или используя su
становиться root
а затем выполняет nano
будет источником /root/.nanorc
для пользовательских настроек. Настройки в файле глобальной конфигурации, такие как /etc/nanorc
, влияет на всех пользователей в системе и должен использоваться только для установки глобальных настроек, которые файл пользователя может переопределить в любом случае.
Чтобы вызвать эффект, который вы ищете, вам нужно применить специальные настройки для /root/.nanorc
, Тогда когда ты sudo nano
настройки для root
будет применяться, а не настройки, найденные в ~/.nanorc
,
Вы можете сделать это, например:
sudo nano --rcfile ~/.nanorc <file-to-edit>
Чтобы сделать это более удобным, вы можете сделать:
alias sudo='sudo '
alias nano='nano --rcfile ~/.nanorc'
Первый псевдоним (для ) — это стандартный метод, позволяющий
sudo
для расширения псевдонимов пользователей.
С этими строками вы можете использовать
sudo nano <file-to-edit>
как обычно и ваш
$HOME/.nanorc
будет прочитан.