저는 SSH(또는 NFS)를 사용하여 Linux 시스템(노트북의 Arch Linux)을 동일한 네트워크의 원격 시스템에 백업하려고 합니다. 나는 rsync를 광범위하게 사용하여 /home 디렉토리를 ssh 및 NFS를 통해 문제 없이 원격 시스템에 백업합니다. 내가 하고 싶은 것은 내 랩톱에서 스크립트로 rsync 명령을 실행하고 /의 모든 내용(물론 알아낸 일부 디렉터리 제외)을 원격 시스템에 복사하는 것입니다.
내가 겪고 있는 문제는 권한에 관한 것입니다. SSH 서버(openssh, 우분투 서버 12.04 시스템에서 실행)에서 루트 로그인을 비활성화하고 비밀번호 인증을 비활성화하고 rsa 키 로그인을 활성화하여 랩탑에서 cron을 사용하여 백업 스크립트를 자동으로 실행할 수 있었습니다. 이제 /*(내 노트북) 아래의 모든 시스템 파일을 복사하려면 루트로 rsync를 실행해야 합니다. 이렇게 하면 SSH 서버에 루트로 액세스할 수 없기 때문에 문제가 발생합니다. NFS를 통해 이 작업을 수행하려고 하면 루트 사용자가 일반 사용자처럼 NFS 마운트에 액세스할 수 없기 때문에 또 다른 권한 문제가 발생합니다.
이 문제를 해결하는 방법에 대한 제안을 얻기 위해 여기에 글을 쓰고 있습니다. 나는 일반적으로 나에게 더 빠르게 작동하기 때문에 ssh를 통해 이 작업을 수행하는 것을 선호하지만 다른 방법이 작동하지 않으면 NFS 또는 심지어 Samba를 사용할 수도 있습니다(아직 시도하지 않았습니다).
답변1
글쎄, 문제는 루트와 루트에 키가 없기 때문에 귀하의 행동입니다.
sudo su
ssh-keygen
그런 다음 키를 백업 서버에 복사합니다.
마침내,
rsync [여기에 옵션 붙여넣기] /user@backup-server:/path/to/backups