안녕하세요 HiDAN 입니다!
지난 포스팅에서는 rsync를 이용하여 Linux에서 시놀로지/헤놀로지 NAS로 데이터를 백업하는 방법을 알아보았는데요.
2025.02.19 - [IT/Server] - rsync를 통해 Linux에서 시놀로지/헤놀로지 NAS로 데이터 백업
rsync를 통해 Linux에서 시놀로지/헤놀로지 NAS로 데이터 백업
안녕하세요 HiDAN 입니다! 이번 포스팅에서는 rsync를 이용하여 Linux에서 시놀로지/헤놀로지 NAS로 데이터 백업하는 방법을 알아보겠습니다. 🖥️📂 1. Rsync란?Rsync(Remote Sync)는 파일 및 디렉토리를
hidan.tistory.com
이번에는 rysnc를 주기적으로 실행할 수 있도록 Crontab과 쉘 스크립트를 활용하여 백업 자동화 방법에 대해 소개해보겠습니다. ⏳💾
1. 자동 백업을 위한 쉘 스크립트 작성
우선, expect 모듈을 설치합니다.
sudo apt install expect
백업을 수행할 쉘 스크립트를 작성합니다.
nano ~/backup_rsync.sh
로그를 저장할 파일을 생성합니다.
touch backup_rsync.log
스크립트 내용을 추가 합니다.
#!/bin/bash
PW="NAS_Pasword"
SRC_DIR="/home/user/백업할데이터"
DST_DIR="user@NAS_IP::NetBackup/NAS경로"
expect <<EOF
spawn rsync -avzr -e ssh --delete ${SRC_DIR} ${DST_DIR}
expect "password"
send ${PW}
expect eof
EOF
쉘 스크립트에 실행 권한을 부여 합니다.
chmod +x ~/backup_rsync.sh
~/backup_rsync.sh 파일을 실행하면 백업이 정상적으로 수행됩니다.
~/backup_rsync.sh
2. Crontab을 이용한 자동 실행 설정
이제 쉘 스크립트를 매일 새벽 2시에 자동 실행되도록 설정해 보겠습니다.
crontab 편집을 열어주세요.
crontab -e
아래 내용을 추가해주세요.
0 2 * * * /home/user/backup_rsync.sh >> /home/user/backup_rsync.log 2>&1
crontab 설정이 정상적으로 적용되었는지 확인해보세요.
crontab -l
이제 백업 작업이 정상적으로 수행되었는지 확인하려면 로그 파일을 확인하면 됩니다.
tail -f /home/user/rsync_backup.log
3. 마무리
이제 rsync 백업을 Crontab과 쉘 스크립트를 활용하여 자동화할 수 있습니다! 🎉
💡 추가 팁
- 특정 요일에만 백업하고 싶다면 0 2 * * 1 (매주 월요일 새벽 2시 실행)과 같이 설정할 수 있습니다.
- --exclude 옵션을 활용하면 특정 폴더를 제외할 수도 있습니다.
더 궁금한 점이 있다면 댓글로 남겨 주세요! 😊