작은숲:위키노트/리눅스 백업 스크립트: 두 판 사이의 차이

큰숲백과, 나무를 보지 말고 큰 숲을 보라.
잔글 (Utolee90님이 위키노트:리눅스 백업 스크립트 문서를 리눅스 백업 스크립트 문서로 이동했습니다: Move_Pages_by_removing_the_text_위키노트_via_pywikibot)
잔글 (Utolee90님이 리눅스 백업 스크립트 문서를 넘겨주기를 만들지 않고 작은숲:위키노트/리눅스 백업 스크립트 문서로 이동했습니다: 위키노트 문서 작은숲으로 이동)
 
(같은 사용자의 중간 판 5개는 보이지 않습니다)
1번째 줄: 1번째 줄:
[[위키노트:Apt-get 자동화 스크립트|Apt-get 자동화 스크립트]와 비슷하게 시스템 백업을 위해 만든 [[위키노트:셸 스크립트|셸 스크립트]]. <tt>cron</tt>에 등록해두고 매일 백업한다.
[[작은숲:위키노트/Apt-get 자동화 스크립트|Apt-get 자동화 스크립트]와 비슷하게 시스템 백업을 위해 만든 [[위키노트:셸 스크립트|셸 스크립트]]. <tt>cron</tt>에 등록해두고 매일 백업한다.
<code>backup.sh</code>
<code>backup.sh</code>
<source lang="sh">
<syntaxhighlight lang="sh">
#!/bin/sh
#!/bin/sh
#----------------------------------------------------------------------------
#----------------------------------------------------------------------------
56번째 줄: 56번째 줄:
df -h
df -h
exit 0
exit 0
</source>
</syntaxhighlight>
<code>/etc/cron.d/backup</code>
<code>/etc/cron.d/backup</code>
<source lang="sh">
<syntaxhighlight lang="sh">
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
MAILTO=root
5 5 * * *      root    test -x /root/bin/backup.sh && /root/bin/backup.sh
5 5 * * *      root    test -x /root/bin/backup.sh && /root/bin/backup.sh
# EOF
# EOF
</source>
</syntaxhighlight>
{{리눅스}}
{{리눅스}}
[[분류:공유]]
[[분류:위키노트/공유]]
[[분류:서버]]
[[분류:위키노트/서버]]
[[분류:리눅스]]{{퍼온문서|위키노트|{{#invoke:string|replace|{{PAGENAME}}|위키노트:|}}}}[[분류:위키노트에서 가져온 문서]]
[[분류:리눅스]]{{퍼온문서|위키노트|{{#invoke:string|replace|{{PAGENAME}}|위키노트:|}}}}[[분류:위키노트에서 가져온 문서]]

2022년 5월 7일 (토) 19:20 기준 최신판

[[작은숲:위키노트/Apt-get 자동화 스크립트|Apt-get 자동화 스크립트]와 비슷하게 시스템 백업을 위해 만든 셸 스크립트. cron에 등록해두고 매일 백업한다. backup.sh

#!/bin/sh
#----------------------------------------------------------------------------
# Copyright (c) 2005. Yoon, Hyunho <hhyoon@kldp.org>
# All rights reserved. Distributable under GPL.
# Please see http://www.gnu.org/copyleft/gpl.html
## Backup script
# $Id: BackupScript,v 1.1 2015/12/15 02:21:26 root Exp root $
#----------------------------------------------------------------------------
# configuration
DIR_BACKUP="/usr/backup"
STEP=3
#----------------------------------------------------------------------------
# backup $key $parent $src
backup()
{    echo "File Backup for $1 ..."
    i=`expr $STEP - 1`
    while [ $i -gt 0 ]
    do
        if [ -f "${DIR_BACKUP}/${1}.${i}.tar.gz" ]
        then
            next=`expr $i + 1`
            mv -f "${DIR_BACKUP}/${1}.${i}.tar.gz" "${DIR_BACKUP}/${1}.${next}.tar.gz"
                fi
        i=`expr $i - 1`
    done
        if [ -f "${DIR_BACKUP}/${1}.tar.gz" ]
        then
                mv -f "${DIR_BACKUP}/${1}.tar.gz" "${DIR_BACKUP}/${1}.1.tar.gz"
        fi
    FILE="${DIR_BACKUP}/${1}.tar.gz"
    cd $2
    tar zcpf $FILE $3
    chmod 600 $FILE
    sleep 1
}#----------------------------------------------------------------------------
# remove old files
find $DIR_BACKUP -mtime +${STEP} -exec rm -rf {} \;
sleep 2
#----------------------------------------------------------------------------
# etc backup
KEY="etc"
backup $KEY "/" "etc"
# mysql backup
KEY="mysql"
backup $KEY "/var/lib" "mysql"
# user backup
KEY="hhyoon"
backup $KEY "/usr/user" "hhyoon"
#----------------------------------------------------------------------------
echo
echo "Backup compleate!"
echo
df -h
exit 0

/etc/cron.d/backup

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
5 5 * * *       root    test -x /root/bin/backup.sh && /root/bin/backup.sh
# EOF
이 작은숲 문서의 출처는 위키노트의 위키노트/리눅스 백업 스크립트 문서입니다.