Ответ 1
Попробуйте выполнить команду
:w !sudo tee %
Объяснение
- : w - написать
- ! sudo - вызов команды оболочки sudo
- tee - вывод команды write (: w) перенаправляется с помощью tee
- % - текущее имя файла
Это происходит со мной все время. Я вхожу в систему как обычный пользователь и начинаю редактировать файл с помощью vim. После завершения редактирования, когда я пытаюсь сохранить файл, у меня недостаточно прав для сохранения файла. Мне нужно закрыть файл, войти в систему как пользователь root и снова начать редактирование. Ниже приведена ошибка в vim:
E45: 'readonly' option is set (add ! to override)
Или в обычном vi:
File is read only
Есть ли способ сохранить, не выходя из редактора?
Попробуйте выполнить команду
:w !sudo tee %
Объяснение
На самом деле, когда я пишу " vim имя файла " ошибка приходит, когда я пытаюсь сохранить файл
установлена опция "только для чтения" (добавить! для переопределения)
Чтобы преодолеть эту команду записи на этом пути sudo vim filename Это решит проблему. Теперь у вас есть привилегия sudo, которую вы можете легко использовать: x или: wq