웹마스터 팁

백업은 컴퓨터에서 가장 중요한 범주에 속하는 작업 중에 하나라고 생각한다.

서버관리자라면 당연히 이 백업에 신경써야 하며 철저히 관리 해야 한다.

리눅스에서는 어떤 작업에 대한 자동화툴을 제공하고 있는데 그중에 하나가 cron이라는 것이다. 데몬이 물론 실행되고 있어야 한다
ntsysv에서 cron데몬이 자동으로 실행되는지 검사해보자. 보통의 경우라면 되어 있을 것이다.

내가 사용하는 방법은 명령어를 스크립트로 만들어 놓고 cron에서 그 명령어를 주기적으로 실행시키는 방법이다.

/root아래에 backup.sh 이라는 파일을 만들어 놓고 백업 명령어를 다음과 같이 주었다.

#!/bin/bash
/usr/local/mysql/bin/mysqldump -uroot -p***** mysql > mysql_db_bak_$(date +%Y%m%d).sql
/usr/local/mysql/bin/mysqldump -uyanemone -p***** yanemone > yanemone_db_bak_$(date +%Y%m%d).sql
mv *.sql /backup
tar cvfpz /backup/html_bak.tar.gz /var/www/html
tar cvfpz /backup/yanemone_html_bak.tar.gz /home/yanemone/public_html
tar cvfpz /backup/dichang_html_bak.tar.gz /home/dichang/public_html

백업할 내용이라던지 파일 이름은 자신의 상황에 맞게 주면 되겠다.

이렇게 하고 나면 backup.sh파일을 chmod 100 backup.sh로 단단히 무장하라.

그리고 crontab -e 명령으로 cron 작업을 명시하자
그럼 vi가 열리면서 편집이 가능하다

00 06 * * * /root/backup.sh

를 추가하고 :x 로 저장하고 나오자.
위의 작업은 매일 새벽 6시에 /root/backup.sh을 실행하라 라는 말이다.

그리고 /var/spool/cron/root가 있는지 확인해보자. 있다면 정상적으로 수행할 것이다.

팁팁팁
이렇게 하면 cron의 결과를 cron 데몬이 root에게 친절하게도 메일을 자꾸 날려준다. (x10)
정말 귀찮고 용량도 만만치 않다.
안오게 할 수 있다.

/etc/crontab이라는 파일을 열어보자
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=ROOT
HOME=/

부분이 있다. MAILTO=ROOT를 다음과 같이 고쳐보자
MAILTO=""

그러면 이제 루트에게 메일 날리는 친절함은 베풀지 않을 것이다. (x23)

이상으로 cron작업을 이용한 자동 백업에 대해서 알아보았다.
다음편에는 다른 리눅스 서버에서 백업 받아 놓은 파일을 자동으로 가져와 저장하는 rsync에 대해서 알아보도록 하겠다
제목 글쓴이 날짜
리눅스 보안 : 기초적인 방화벽 : portsentry 설치하기 [2] 정인배 2002.11.29
cron을 이용한 자동 백업 받기 최종우 2002.12.02
cron과 rsync 그리고 replication 을 이용한 데이터 백업 [3] 최종우 2002.12.03
FTP 를 이용한 원격 백업 받기 [5] 최종우 2002.12.04
[계정삭제 스크립터] 편리님이 만드신 계정추가랑 연동됩니다. [4] file 김동현 2002.12.04
[FreeBSD] 자동으로 시간 맞추기.. [1] DeX™ 2002.12.04
계정 등록 스크립트 [8] 편리 2002.12.05
오래간만에 찾아뵙는군요^^ [2] Dopesoul 2002.12.08
Zend Optimizer Full Pass Setup [3] DukeEYS 2002.12.08
mod_gzip 적용시 php 인클루드를 실패해서 포기하신분 보세요 [2] DukeEYS 2002.12.08
apache2 + mod_jk 100번의 닭질 끝에 찾아가는 사이트 DukeEYS 2002.12.09
[FreeBSD] Proftp + MySQL 연동 설치하기 [2] file DeX™ 2002.12.09
레드햇(redhat)리눅스에서 rpm 관리 명령어 정인배 2002.12.09
srpms, alpha, i386 , i686 이 의미하는 것은? [1] Dopesoul 2002.12.12
누군가 우리서버를 공격하고 있을때 응급처치! [13] Dopesoul 2002.12.13
[re] 저의 최종의견 입니다. [5] Dopesoul 2002.12.17
SetEnvIf 와 SetEnvIfNocase 의 차이 [7] Dopesoul 2002.12.13
DeX 님의 시간 동기화 스크립트를 편하고 안정적으로 변경한 리눅스용! [4] Dopesoul 2002.12.13
리눅스 rpm 명령어 활용(1): MRTG 설치 정인배 2002.12.14
PHP 4.2.3 파워 설치 테크닉 (에러 0%에 도전) [2] 밍밍이 2002.12.17