반응형
서버의 프로그램 소스 중 최근 변경된 파일만 찾아서 압축 후 FTP로 해당 파일을 전송하는 쉘 스크립트입니다.
현재 디렉토리 경로 위에 있는 www 폴더의 파일 중 최근 3일 이내 수정된 것을 찾습니다.
이 때 session 폴더는 제외합니다.
대상이 되는 파일을 backup_target.txt에 저장합니다.
find ../www -type f -mtime -3 | grep -v session > backup_target.txt
backup_target.txt 내의 파일만 압축을 합니다.
tar cvfz backup_20210630 -T backup_target.txt
쉘스크립트로 백업하려는 서버를 ftp로 접속하여 방금 tar로 압축한 파일을 업로드하는 문법입니다.
{server ip} : 서버 아이피
{id} : 로그인 아이디
{password} : 비밀번호
ftp -v -n {server ip} << EOF
user {id} {password}
prompt
cd ../backup
put $BACKUP_FILE
bye
EOF
전체 shell script 내용입니다.
#!/bin/sh
BACKUP_FILE=backup_$(date '+%Y%m%d').tgz
TARGET_FILE=backup_target.txt
find ../www -type f -mtime -3 | grep -v session > $TARGET_FILE
tar cvfz $BACKUP_FILE -T $TARGET_FILE
ftp -v -n {server ip} << EOF
user {id} {password}
prompt
cd ../backup
put $BACKUP_FILE
bye
EOF
rm backup_*
백업한 서버는 backup이라는 폴더에 저장을 하였습니다.
실제로 반영의 backup 위의 www 폴더이므로 아래와 같이 압축해제를 합니다.
tar xvfz backup_20210630.tgz -C ../
반응형
'유용한 활용팁' 카테고리의 다른 글
PHP URL의 1%E2%80%8B 정규식 활용 유니코드 삭제 방법 (0) | 2021.10.03 |
---|---|
카페24 호스팅 서버 404, 403 에러 페이지 변경 방법 - .htaccess 이용 (0) | 2021.07.10 |
Adobe Creative Cloud 데스크탑 프로그램 제거 방법 (0) | 2021.06.25 |
.htaccess 이용하여 80 http를 강제로 https SSL로 변경 리다이렉트 방법 (0) | 2021.05.26 |
애플 아이폰8 액정 용인 수지 KT AS 서비스센터(분당 수내점)에서 사설보다 저렴하게 수리하기 feat. 수리보험, 멤버십 포인트 할인 (0) | 2021.05.23 |