답변:
사용 C-x C-f
하고 입력 /su::/etc/hostname
하거나 /sudo::/etc/hostname
적용하십시오.
이것은 Emacs와 함께 배포되는 TRAMP 패키지를 사용합니다 . 이 패키지는 원격 파일,보다 일반적으로 Emacs가 직접 열 수없는 파일에 대한 액세스를 제공합니다.
/su:otheruser@localhost:
예를 들어,.
/sudo::
의 sudo:root@<hostname>:
find-file
트램과 함께 사용하십시오 . 프롬프트에서 /sudo::/etc/ssh/ssh_config
sudo와 서브 쉘을 사용하여 루트 권한으로 해당 파일을 엽니 다. sudo를 처음 사용하면 암호를 묻는 메시지가 표시되지만 해당 세션이 닫힐 때까지 기존 /sudo::
명령 을 접두어로 사용하여 해당 권한이있는 파일을 편집 할 수 있습니다 .
자세한 내용은 http://www.gnu.org/software/tramp/ 를 참조하십시오.
ivy
패키지 를 사용하고 counsel-find-file
를 바꾸도록 구성한 경우 find-file
, 미리 구성된 "ivy 조치"중 하나는 파일을 루트로 편집하는 것입니다. hydra
해당 작업 의 기본 키 입력은 r
입니다.
오늘날이 문제를 해결하는 많은 패키지가 있습니다 (2018 현재). 그들 중 일부는 다음과 같습니다.
sudo-edit
이미 열린 읽기 전용 파일에 대한 편집 권한을 전환 할 수 있습니다. 그냥 M-x sudo
과 암호를 입력하면됩니다. 이것을 몇 년 동안 사용한 후에, 나는 이것이 더 필요하다고 생각합니다. sudo-edit
파일을 다른 사용자로 열 수 있지만, 제공되지 않은 경우 sudo가 기본값입니다.dired-toggle-sudo
. 이 질문을 한 후에 찾은 첫 번째 패키지 솔루션 이었습니다 . Dired 지향적이므로 파일 지향 버전 을 선호하는 경우이 목록의 첫 번째 글 머리표를 참조하십시오.Helm을 사용하는 경우. 외부 패키지 / 추가 구성이 필요하지 않습니다. 그것은 즉시 작동합니다.
내부에서에 바인딩 된을 helm-find-files
호출 할 수 있습니다 . 세션의 파일 또는 디렉토리에서 작동합니다 .find file as root
C-c rhelm-find-files
루트 파일 / 디렉토리를 열 때마다 비밀번호를 입력하지 않으려면 다음 줄을 당신의~/.authinfo.gpg
machine localhost port sudo login root password xxxxxx
machine your_machine_name port sudo login root password xxxxx
::
?