모든 작업이 원격 서버에 저장되기 때문에 매월, 매주 서버를 자동으로 백업하고 싶습니다. 내 서버는 Centos 5.5를 실행하고 있으며 온라인으로 검색하는 동안 rsync라는 도구를 발견했습니다. 터미널에서 다음 명령을 사용하여 수동으로 첫 번째 업데이트를 받았습니다.
sudo rsync -chavzP --stats USERNAME@IPADDRES: PATH_TO_BACKUP LOCAL_PATH_TO_BACKUP
그런 다음 해당 사용자의 비밀번호를 묻는 메시지가 표시됩니다. Bob은 제 삼촌입니다.
이렇게 하면 원격 서버에서 로컬 장치로 필요한 파일이 백업됩니다. 그런데 이를 자동화하는 방법을 아는 사람이 있습니까? 매주 일요일마다 이 스크립트를 자동으로 실행하는 것을 좋아하시나요?
편집하다
필요한 파일을 관리자에게 직접 백업한 다음 해당 파일을 원격 서버에서 로컬 서버로 복사해 달라고 요청했다는 사실을 잊어버렸습니다.
답변1
원격 서버에서 항상 작동하고 액세스할 수 있는 로컬 시스템으로 백업한다고 가정합니다.
서버에 공개 키 인증을 설정하는 것부터 시작하세요. 원격 서버에서
~# ssh-keygen
기본값을 수락하고 암호를 입력하지 마십시오. 그러면 키가 암호 없이 작동됩니다. 그럼 해
~# ssh-copy-id [email protected]
그리고 로컬 서버 사용자 비밀번호를 제공하십시오. 테스트해보세요:
~# ssh [email protected]
비밀번호 없이 로그인해야 합니다.
그런 다음 적절한 rsync 명령을 실행하는 원격 서버에 cron 작업을 추가합니다. 예를 들어:
~# vim /etc/cron.daily/backup
#!/bin/sh
rsync -avq /sourcedir1 /sourcedir2 [email protected]:/destinationdir
~# chmod 755 /etc/cron.daily/backup
먼저 -q 플래그 없이 라이브 쉘에서 명령을 테스트하여 모든 것이 정상인지 확인하십시오. 크론 작업은 매일 밤 실행됩니다. /etc/cron.weekly 등에 유사한 스크립트를 넣을 수 있습니다.
상황에 따라 전체 프로세스를 재개하고 로컬 시스템에 스크립트/크론작업을 설정할 수 있습니다.