Я чаще, чем хочу признаться, открываю конфигурацию как не-суперпользователь и буду вносить необходимые мне изменения. Как только я сохраняю в nano или vi, я получаю ошибки с правами доступа.
На этом этапе я перехожу в режим c / p foo, чтобы закрыть и снова открыть с помощью sudo
.
Есть ли способ перейти к суперпользователю, чтобы сохранить без закрытия и повторного открытия в vi или nano?
Я не знаю насчет nano, но знаю, что вы можете записать файл, к которому у вас нет разрешения, в vim. Попробуйте выполнить эту команду:
:w !sudo tee %
Это сохранит файл, даже если у вас нет на него разрешения. Натан Лонг дает прекрасное объяснение того, как это работает здесь , но я также дам краткое объяснение.
: w
не означает сохранить , это означает напишите . В этом случае : w! Foo
означает запись во внешнюю команду foo . В этом случае внешняя команда - sudo tee%
, где %
- это имя текущего файла. Tee будет записывать данные в указанный файл и STDOUT одновременно, и, поскольку мы запускаем его с помощью sudo, у него есть необходимые разрешения для записи файла.