내 로컬 텍스트 편집기를 사용하여 원격 시스템의 시스템 파일(저장하려면 루트 필요)을 수정하려면 어떻게 해야 합니까?

내 로컬 텍스트 편집기를 사용하여 원격 시스템의 시스템 파일(저장하려면 루트 필요)을 수정하려면 어떻게 해야 합니까?

나는 최근 github의 Atom 텍스트 편집기와 사랑에 빠졌고 모든 로컬 코딩 및 구성에 그것을 사용하는 것을 좋아합니다.

저는 수십 대의 서버에 대한 Nagios 설치를 유지 관리하기 시작했고 SSH와 원격 vim을 사용하여 편집을 수행하는 데 지쳤다는 것을 깨달았습니다. 대신 Atom을 사용하고 싶습니다.

나는 이것을 수행하는 방법을 조사했습니다. 가장 큰 문제 중 하나는 Nagios 및 NRPE 구성 파일을 덮어쓰려면 su 권한이 필요하다는 것입니다. /etc/와 /usr/에 있는 파일을 편집하고 있습니다. 다양한 방법으로 로컬 Atom에서 파일을 열 수 있지만 절대 저장할 수 없습니다.

이 문제를 처리하기 위해 제가 생각할 수 있는 몇 가지 방법은 다음과 같습니다(어떤 방법이 가장 좋은 방법인지 알려주십시오. 또는 다른 아이디어가 있으면 듣고 싶습니다!).

  1. sftp를 사용하여 여기에서 파일을 편집해 볼 수 있습니다. (그런데 저장하려고 하면 루트 권한 문제가 생길 것 같은데요?)
  2. sshfs를 사용하여 로컬 컴퓨터에 서버를 마운트하고 그런 식으로 편집할 수 있습니다(여전히 권한 문제에 대해 확신하지 못하시나요?)
  3. 원격 컴퓨터의 사용자를 sudoers 파일에 추가하여 비밀번호 프롬프트 없이 전체 권한을 얻을 수 있습니다(그러나 이것이 안전한 생각이라고 생각하지 않으며 또한 실제로 저장하려면 어떤 형태의 sudo가 여전히 필요할 것 같습니다) ?)
  4. 파일을 복사하고 편집이 끝나면 rsync 명령을 사용하여 수동으로 다시 동기화하세요(이 방법은 다소 지루하지만 가장 유망해 보입니다).

나에게 도움이 될 수 있는 Atom 플러그인이 있는지 아시나요?

나는 이 일을 하고 싶은 첫 번째 사람이 아니라는 것을 안다. 검색을 좀 해보니 SSHFS 사용을 제안하는 사람들이 몇몇 있었는데, 현재 생각이 어떤지 알고 싶습니다.

감사해요!

답변1

우리 팀에서 하는 일은 puppet저장소에 저장된 구성을 사용하여 이러한 파일을 제어하는 ​​것 입니다 subversion. 모든 사람은 저장소 복사본을 로컬 컴퓨터로 체크아웃하고, 선호하는 편집기를 사용하여 변경한 다음 변경 사항을 커밋합니다. 변경 사항은 활성 컴퓨터 puppet(관리자 권한으로 실행)에 자동으로 적용됩니다.

이 정확한 도구 세트를 사용할 필요는 없지만 이 모델은 편집(모든 플랫폼에서 수행 가능)과 서버의 변경 사항 적용을 분리합니다. 나는 그것이 조던이 그의 논평에서 암시한 것이라고 생각한다.

이 설정을 사용하면 구성 파일의 버전 제어도 가능하며 이는 좋은 점입니다.

이는 현재 상황에 비해 과잉처럼 느껴질 수 있지만 설정이 확장될 예정이라면 지금부터 생각해야 합니다.

답변2

저는 NppFTP 플러그인이 있는 notepad++를 사용합니다. sftp를 사용하여 파일을 복사하도록 설정할 수 있으며, 파일을 저장할 때 다시 ftp를 사용하여 원격 서버에 파일을 저장합니다.

관련 정보