Я часто использую nano
для быстрого редактирования по ssh. Если я объединю это с sudo
хотя мой .nano_history
файл становится нечитаемым для не-sudo
редактирование. Я получаю следующие предупреждения:
Error reading /home/user-name/.nano_history: Permission denied
Есть ли способ выплюнуть файл истории, чтобы я все еще мог получить доступ к своему не-sudo
история?
TIA
По умолчанию sudo
только повышает ваши привилегии, но сохраняет старую среду (не все, но по крайней мере $HOME
хранится). Таким образом, невозможно делать то, что вы хотите, по крайней мере, не возиться с псевдонимами bash ...
Самый простой способ избавиться от этой проблемы - просто chown
существующие файлы истории для вашего собственного пользователя. Тогда nano будет нормально работать как вы, так и как root. (Файлы истории только добавляются; они никогда не удаляются автоматически, поэтому право собственности остается.)
Попробуйте использовать -H
переключиться с помощью sudo. Эта опция устанавливает $ HOME переменная среды в домашний каталог целевого пользователя, обычно / корень. sudo -H nano <file>
будет использовать root .nano_history файл вместо вашего собственного.
Чтобы избежать подобных проблем с другими точечными файлами, я бы рекомендовал использовать sudo для входа в систему как суперпользователь, а не просто предоставлять привилегии текущему пользователю:
sudo su -
Обратите внимание, что некоторые магазины не одобряют использование суперпользователя, предпочитая схемы RBAC, но, судя по тому, как вы используете sudo, я предполагаю, что ваш не один из них.