5

Как я могу редактировать удаленный файл с помощью sudo?

У меня есть SSH / SCP доступ к удаленному серверу и без пароля sudo на нем.

Я хочу отредактировать /etc/some/file как удаленный root, поэтому я запустил:

  $ Vi scp://server/etc/some/file

Это не работает, однако, ссылаясь на то, что у меня недостаточно разрешений. Как я могу это сделать?

2 ответа2

0

Согласно этой вики-странице, вы должны указать свое имя пользователя и хост:

vim scp://user@server//etc/some/file

И спасибо за совет, я не знал, что vim способен редактировать файлы через scp.

0

Чтобы расширить мой комментарий ...

Vim не делает ничего такого на удаленной машине, независимо от того, какую учетную запись вы используете. Он ограничен загрузкой и выгрузкой: чтение удаленного файла означает загрузку файла во временную папку на локальном компьютере, запись удаленного файла означает загрузку локальной копии на удаленный компьютер.

Это означает, что вы не сможете выполнить sudo перед редактированием на удаленном компьютере.

Если учетная запись, используемая для записи / загрузки файла, не является root, вы не можете перезаписать файл, принадлежащий root. Это базовая безопасность UNIX / сервера.

Вместо этого зайдите на сервер по ssh и используйте там Vim или используйте фрагмент кода KL-7 с нужной учетной записью.

Смотрите :help netrw-xfer и :help netrw-quickmap для дополнительных функций, таких как листинг каталога. sudo видно.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .