웹에서 다른 방법으로 웹 파일을 미러링하거나 백업할 수 있는 자습서가 너무 많습니다. 여기에서는 나중에 참조할 수 있도록 이 기사를 작성하고 여기에서는 매우 간단하고 다양한 명령을 사용할 것입니다. ~의 리눅스 웹사이트의 백업을 생성합니다. 이 튜토리얼은 "재동기화“.
당신의 거울을 만드는 목적 웹 서버 ~와 함께 재동기화 메인 웹 서버가 실패하면 백업 서버가 웹사이트의 다운타임을 줄이기 위해 인계받을 수 있습니다. 웹 서버 백업을 만드는 이 방법은 중소 규모의 웹 비즈니스에 매우 유용하고 효과적입니다.
rsync를 사용하여 웹 서버 백업을 생성할 때의 주요 이점은 다음과 같습니다.
웹 서버의 미러를 생성하기 위해 rsync 설정을 진행해 보겠습니다. 여기서는 두 개의 서버를 사용하겠습니다.
여기 이 경우 웹 서버 데이터의 webserver.example.com 에 미러링됩니다 backup.example.com. 그렇게 하려면 먼저 다음을 설치해야 합니다. 재동기화 다음 명령의 도움으로 두 서버 모두에서.
[[이메일 보호됨]]# yum install rsync [켜기] 빨간 모자기반 시스템] [[이메일 보호됨]]# apt-get install rsync [켜기 데비안 기반 시스템]
우리는 rsync를 설정할 수 있습니다 뿌리 사용자이지만 보안상의 이유로 기본 웹 서버에서 권한이 없는 사용자를 만들 수 있습니다. webserver.example.com rsync를 실행합니다.
[[이메일 보호됨]]# 사용자 텍민트를 추가합니다. [[이메일 보호됨]]# 암호 텍민트
여기에 사용자를 만들었습니다.텍민트"를 입력하고 사용자에게 암호를 할당했습니다.
백업 서버에서 rsync 설정을 테스트할 시간입니다(예: backup.example.com) 이렇게 하려면 다음 명령을 입력하십시오.
[[이메일 보호됨] www]# rsync -avzhe SSH [이메일 보호됨]::/var/www/ /var/www
[이메일 보호됨]님의 비밀번호: 증분 파일 목록을 수신 중입니다. 전송 128바이트 수신 32.67K 바이트 5.96K 바이트/초. 총 크기는 12.78M입니다. 속도 향상은 389.70입니다.
이제 rsync가 완벽하게 작동하고 데이터를 동기화하고 있음을 알 수 있습니다. 나는 "/var/www"전송; 필요에 따라 폴더 위치를 변경할 수 있습니다.
이제 rsync 설정이 완료되었으며 이제 설정할 시간입니다. 크론 rsync용. rsync를 사용할 것이므로 SSH 프로토콜에서 ssh는 인증을 요청하고 cron에 암호를 제공하지 않으면 작동하지 않습니다. cron이 원활하게 작동하려면 다음을 설정해야 합니다. 비밀번호 없는 SSH 로그인 rsync용.
여기 이 예에서는 다음과 같이 하고 있습니다. 뿌리 보존하기 위해 파일 소유권 또한 대체 사용자를 위해 할 수도 있습니다.
먼저 공공의 그리고 사적인 백업 서버에서 다음 명령을 사용하여 키(예: backup.example.com).
[[이메일 보호됨]]# ssh-keygen -t rsa -b 2048
이 명령을 입력할 때 암호를 제공하지 말고 Enter 키를 누르십시오. 빈 암호 rsync cron은 데이터 동기화를 위해 암호가 필요하지 않습니다.
공개/개인 rsa 키 쌍을 생성합니다. 키를 저장할 파일을 입력하십시오(/root/.ssh/id_rsa): 암호를 입력하십시오(암호가 없는 경우 비어 있음): 동일한 암호를 다시 입력하십시오: 귀하의 ID가 /root/.ssh/id_rsa에 저장되었습니다. 공개 키는 /root/.ssh/id_rsa.pub에 저장되었습니다. 주요 지문은 9a: 33:a9:5d: f4:e1:41:26:57:d0:9a: 68:5b: 37:9c: 23입니다. [이메일 보호됨]키의 randomart 이미지는 다음과 같습니다. +--[ RSA 2048]+ | .영형. | |.. | | ..++. | | o=E * | | .수오 | | =.오오 | | *. 오 | | 오 + | |.. | ++
이제 우리의 공공의 그리고 사적인 키가 생성되었으며 메인 웹 서버가 키를 사용할 수 있도록 메인 서버와 공유해야 합니다 이 백업 머신을 인식하고 동기화하는 동안 암호를 묻지 않고 로그인할 수 있습니다. 데이터.
[[이메일 보호됨] html]# ssh-copy-id -i /root/.ssh/id_rsa.pub [이메일 보호됨]
이제 "ssh '[이메일 보호됨]''를 입력하고 체크인 .ssh/authorized_keys.
[[이메일 보호됨] HTML]# [이메일 보호됨]
이제 키 공유가 끝났습니다. 대해 더 자세히 알기 위해 SSH 암호 덜 로그인, 당신은 그것에 대한 우리의 기사를 읽을 수 있습니다.
이를 위해 cron을 설정합시다. cron을 설정하려면 다음 명령으로 crontab 파일을 엽니다.
[[이메일 보호됨] ~]# crontab –e
기본 편집기로 편집할 /etc/crontab 파일을 엽니다. 여기 이 예에서는 데이터를 동기화하기 위해 5분마다 실행하는 cron을 작성하고 있습니다.
*/5 * * * * rsync -avzhe SSH [이메일 보호됨]:/var/www/ /var/www/
위의 cron 및 rsync 명령은 단순히 "/var/www/" 메인에서 웹 서버 에 백업 서버 마다 5 분. 필요에 따라 시간 및 폴더 위치 구성을 변경할 수 있습니다. 더 창의적이고 맞춤화하려면 재동기화 그리고 크론 명령에 대한 자세한 내용은 다음에서 확인할 수 있습니다.