vim으로 원격 파일을 편집하는 방법을 설명하는 이 질문 을 찾았습니다 .
vim scp://user@myserver[:port]//path/to/file.txt
sudo
원격 호스트에서 루트를 통해 (을 통해 ) 이 작업을 수행 할 수 있습니까?
원격 호스트에서 루트 권한이있는 파일을 만들고 위와 같이 편집하려고했습니다. Vim은 내용을보고, 편집하고, 저장할 수 있지만 원격 호스트에는 아무런 변화가 없습니다 (vim이 임시 파일을 저장 한 다음 scp로 되돌려 놓기 때문일까요?)
사용자가 저장 한 파일로이 작업을 수행하면 예상대로 작동합니다.
내 SSH는 키를 사용하여 인증하고 원격 서버에는 sudo 액세스를위한 NOPASSWD가 있습니다.
이 질문 은 비슷하지만 투표가 가능한 유일한 대답은 꼭 사용하고 싶지 않은 꼭두각시를 사용합니다.
편집 : 아래의 @drewbenn의 의견에 따라 편집을위한 전체 프로세스는 다음과 같습니다.
vim scp://nagios//tmp/notouch
/tmp/notouch
루트가 소유 한 파일은 어디에 있습니까 , vim이 빨리 보여지는 것을 볼 수 있습니다
:!scp -q 'nagios:/tmp/notouch' '/tmp/vaHhwTl/0'
텍스트가있는 빈 검은 화면이 자동으로 사라집니다.
"/tmp/vaHhwTl/0" 1L, 12C
Press ENTER or type command to continue
Enter 키를 누르면 파일을 편집 할 수 있습니다
저장하면 시작과 같은 종류의 scp 명령이 팝업되어 빠르고 자동으로 사라집니다 (시간에 읽기가 어렵지만 scp 및 / tmp / ... 파일은 확실히 있습니다)
.vimrc
파일 로 인해 로컬 버전의 vim을 사용하고 싶습니다
ssh -t host sudo vim file
?
ssh
서버와 편집 (에이 파일을visudo
, 또는 무엇이든). 다른 것은 보안에 영향을 미칩니다.