scp로 백업을 전송하는 스크립트, 용량이 큰 파일은 전송이 안됩니다.
작성자 정보
- 손남일 작성
- 작성일
컨텐츠 정보
- 3,610 조회
- 3 댓글
- 0 추천
- 목록
본문
로컬 pc에서 매일 생성한 tar.gz를 백업 서버로 scp를 사용해 매일 전송하는 스크립트를 짰습니다.
이상하게 백업 용량이 커지면 백업서버로 전송이 안되더군요.
스크립트를 사용했을 때에만 전송이 안되고
scp명령어만 사용했을 때에는 전송이 됩니다. 똑같은 파일이요.
이유가 뭘까요?
다음은 스크립트 전문입니다.
--------------------------------------------------------------------------------------------------------------
#!/bin/bash
DOW=`date +%a`
#월요일 full backupif [ "$DOW" = "Mon" ] ; then
#DIRNAME에 날짜를 저장하고, 이 파일을 참고해서 폴더 이름을 생성하도록 했습니다.
echo "`date +%y%m%d`">/backup/DIRNAME
rm -r /backup/`date -d '14 day ago' +%y%m%d`
if [ ! -d /backup/`cat /backup/DIRNAME` ] ; then
mkdir /backup/`cat /backup/DIRNAME`
fi
tar -g /backup/`cat /backup/DIRNAME`/snapshot -czpf /backup/`cat /backup/DIRNAME`/`date +%y%m%d_%a_%H%M`.tar.gz /home
scp -rp /backup/`cat /backup/DIRNAME` ID@server:/home/admin4/backup/admin5
#화요일에는 증분 백업else
#full backup에서 생성한 snapshot을 계속 보존해서 level 1 이 되도록 했습니다.
cp /backup/`cat /backup/DIRNAME`/snapshot /backup/`cat /backup/DIRNAME`/cp1
tar -g /backup/`cat /backup/DIRNAME`/snapshot -czpf /backup/`cat /backup/DIRNAME`/`date +%y%m%d_%a_%H%M`.tar.gz /home
scp -rp /backup/`cat /backup/DIRNAME`/`date +%y%m%d_%a_%H%M`.tar.gz ID@server:/home/admin4/backup/admin5/`cat /backup/DIRNAME`
관련자료
-
이전
-
다음
지유파파님의 댓글
- 지유파파
- 작성일
그 다음에는 아래쪽에 주석으로 처리하고 하나씩 실행되는 범위를 늘려가면서 찾으면 금방 찾으실 수 있을 것 같습니다.
손남일님의 댓글
- 손남일
- 작성일
지유파파님의 댓글의 댓글
- 지유파파
- 작성일
사견이지만, $DOW와 같이 변수명에 date값을 저장한 것과 같이
"cat /backup/DIRNAME" 값과 "date +%y%m%d_%a_%H%M" 값도 변수로 지정하여 사용하시면 위와 같은 에러 발생도 방지되고 쉘 가독성도 더 좋을 것 같습니다. ^^