.png)
저는 시스템 관리자가 아니기 때문에 관련된 도구에 대한 경험이 제한되어 있습니다. 비슷한 질문이 있다는 것을 알고 있지만 내 필요에 맞는 것을 찾을 수 없습니다.
비슷한 질문에서 누군가가 제안했습니다.백업2l하지만 구식으로 보이고 문서화도 잘 되어 있지 않습니다. (나는 다음과 같은 것이 필요합니다이것그러나 점진적)
그래서 저는 미리 조리된 최고의 솔루션이 무엇인지 이해하고 이 작업을 위한 간단한 bash 스크립트를 만들고 싶습니다. (불행히도 나는 bash에 능숙하지 않다)
표적
증분 백업을 하고 싶습니다.public_html내 사이트의 디렉토리.
매일 증분 백업을 저장하고 1개월만 저장한다는 아이디어입니다(단, 이전 달은 유지).
2015-10/ -> contains a full/incremental backup of last month
2015-11/ -> contains a full/incremental backup of current month
그래서 12월 초에2015-10삭제되고2015-12생성됩니다.
대본
저는 제한된 cli 도구(rsync/tar)와 16GB만 사용하는 공유 서버를 사용하고 있습니다.
마젠토 사이트를 백업해야 합니다.
코드가 호스팅되므로 미디어 폴더(제외 ) git
만 매일 백업하고 싶습니다.media/product/cache
지금은 이 스크립트를 사용하여 미디어 폴더의 일일 백업을 생성하고 있습니다(그러나 증분은 아님).
#!/bin/bash
# Daily backup script
# Create some needed variable
day=$(date +%F)
File="/home/me/backup/files_$day.tar.gz"
File_media="/home/me/backup/catalog_images_$day.tar.gz"
Folder="/home/me/"
Exclude_media_cache="public_html/media/catalog/product/cache"
# Backup Media
echo "-- Creating Catalog Image Backup ..."
tar -pczf $File_media -C $Folder public_html/media/catalog --exclude="$Exclude_media_cache"
답변1
이는 쉘 스크립트를 롤링하기에는 너무 일반적인 문제입니다. 해당 목적에 맞게 설계된 많은 도구 중 하나를 사용하십시오.
나는 추천한다rdiff-backup
그런 것들 때문에.
생성되는 증분 백업의 양을 제어하여 디스크 공간을 제어하려면 해당 --remove-older-than
플래그를 사용하십시오.