작업 실패기)헤놀로지(dsm617)에서 시놀로지(dsm621-> dsm617) 마이그레이션 후 복원작업 준비 작업 실패기
컨텐츠 정보
- 9,560 조회
- 3 댓글
- 0 추천
- 목록
본문
헤놀로지(dsm617)에서 시놀로지(dsm621-> dsm617) 마이그레이션 후 복원작업 준비 작업
헤놀로지에서 시놀로지로 복원작업 진행 준비 합니다
헤놀로지 dsm617버전
백업 성공
시놀로지 dsm621 버전
헤놀로지 617 에서 시놀로지 621 버전으로 복원 실패
시놀로지 자체 백업 후 복원 이상 없음
문제는 dsm버전 차이로 발생 예상
버전을 동일 버전으로 마이그레이션 진행
터미널 활성화 ( ds712 )
putty 접속
nano edit 설치
마이그레이션 필요 617 버전으로 변경 작업
nano /etc.defaults/VERSION
변경버전
majorversion="6"
minorversion="1"
productversion="6.1.5"
buildphase="GM"
buildnumber="15254"
smallfixnumber="0"
packing="iSCSI"
packing_id="1"
builddate="2018/12/06"
buildtime="17:00:41"
변경후 617 버전으로 변경 작업 준비로 615버전으로 변경
저장 (ctrl + o ) 종료 ( ^x) 후 dsm 버전 제어판 확인
설정 변경
dsm업데이트 진행 합니다
dsm617 최종 버전까지 업데이트
ds712에 백업
이제 dsm712로 복원 진행
실패 했습니다
무엇이 문제인지 복원 실패 합니다 ...상기 마이그레이션은 관련 없으며 동일하게 전체 복원이 불가능
단 마린디비5,10 의 단독 복원
공유 폴도 없이는 복원 됩니다.
결론 : 동일버전 dsm 에 동일 설치 패키지와 동일하게 구성 되어있어야 응용프로그램만 복원 됩니다
다른 dsm버전은 복원불가( nas1의 vmwae ds3615 에서 ds712 시놀로지 조건 )
공유폴더와 응용프로그램 복원불가
단독 백원된 응용프로그램은 복원불가
-----
같은 버전 응용프로그램 복원 가능 ( nas1의 vmwae ds3615 에서 nas2의 vmwae ds3615)
공유폴더와 응용프로그램 복원불가
단독 백원된 응용프로그램은 복원가능 ( 아래 동일 설치된 응용프로그램 복원가능)
===> 공유폴더는 기본 설정을 모두 패키지 공유폴더 동일하게 설치후 ===> cloude 백원 복원 연동
응용프로그램(패키지)는 동일 설치후 단독 복원가능 합니다 ( hyperbackup)
cloud 공유폴더 동기화 백업이 모두 되었음
추가적으로 공유폴더에 작업스케쥴러에 아래 주사용 mysql db를 백업해 놓습니다.
mysqldump -uroot -p12345 11qkr > /volume1/web/g5s/data/mysql_db/11q_kr.sql
mysql -uroot -p12345 11qkr < /volume1/web/g5s/data/mysql_db/11q_kr.sql
===========================
rsync 로 백업 복원 준비가 호환성 있네요
rsync -avzO -e 'ssh -p22' /volume1/web shimss@192.168.0.28:/volume2/nas1_rsync_backup
성공
mysql백업_복원하기
DB 백업하기
형식) mysqldump -u사용자이름 -p비밀번호 데이터베이스이름 > 파일이름
$ mysqldump -uroot -p12345 mydb > ./backup.sql
☞ SSH(보안텔넷)에서 사용자이름 root, 비밀번호 12345으로 접속하여 mydb의 내용을 backup.sql 파일에 저장함
DB 복원하기
형식) mysql -u사용자아이디 -p비밀번호 데이터베이스이름 < 파일이름
$ mysql -uroot -p12345 mydb < ./backup.sql
☞ backup.sql의 내용을 mydb에 복원함
mysqldump -uroot -p12345 11qkr > /volume1/web/g5s/data/mysql_db/11q_kr.sql
mysql -uroot -p12345 11qkr < /volume1/web/g5s/data/mysql_db/11q_kr.sql
◎ ■ ▶ ☞ ♠ 정보찾아 공유 드리며 출처는 링크 참조 바랍니다. https://11q.kr ♠
관련자료
shimss@11q.kr님의 댓글
rsync -avzO -e 'ssh -p22' /volume1/web shimss@192.168.0.28:/volume2/nas1_rsync_backup
mysqldump -uroot -p12345 11qkr > /volume1/web/g5s/data/mysql_db/11q_kr.sql
mysql -uroot -p12345 11qkr < /volume1/web/g5s/data/mysql_db/11q_kr.sql
shimss@11q.kr님의 댓글
BY WPUSER01 · PUBLISHED 2014-03-01 · UPDATED 2017-01-27
rsync 사용하기 http://dev.jpblog.co.kr/21
Linux & Solaris 2009/08/04 05:34 posted by JP™
백업하기에 유용한 rsync에 대해서 올려봅니다~
백업에는 여러 가지가 있겠지만 여기선 간단히 cron을 이용한 rsync 백업에 대해 설명하겠습니다.rsync란?
rcp(remote file copy)의 강화형으로 “rsync 알고리즘” 이라는 원격상의 파일의 전송이나
동기화를 가장 빠른 속도로 구현하는 방법을 쓰는 오픈 소스 유틸리티로 GPL에 기초해
자유로이 이용이 가능합니다.1. rsync의 특징
1) 디렉토리 트리나 파일시스템 전체를 갱신할 수 있습니다
2) 옵션에 따라 소프트 링크나 파일 소유자, 퍼미션, 디바이스, 타임스태프 유지가
가능합니다.
3) 내부 파이프라인이 복잡한 파일의 레이턴시를 줄입니다.
4) 전송에 rsh, ssh 혹은 다이렉트 소켓을 쓰는것이 가능합니다.
5) 이상적 미러링을 가능케 하는 anonymous rsync를 지원합니다.
6) 특별한 권한 없이도 실행이 가능합니다.
2. rsync 설치
redhat 배포판 에는 rsync-2.x.x가 기본으로 설치되어 있습니다.
설치가 안 되어 있다면 http://rsync.samba.org/ftp/rsync/에서 최신버전을 다운받습니다.
1) 설치 확인(redhat 배포판의 경우)
# rpm -qa |grep rsync
rsync-2.5.6-20
위와 같이 해당 서버에 rsync가 설치되어 있는지를 확인합니다.
2) 소스 설치(소스로 설치하는 경우)
# tar zxvf rsync-2.4.6.tar.gz
# ./configure && make && make install
3. rsync 설정
rsync가 사용하는 프로토콜은 rsh나 ssh인데 이것을 원치 않는 경우는 873포트를 이용
할 수 있습니다. rsync가 873포트를 사용하느냐, rsh나 ssh를 사용하느냐에 따라 설정
내용이 약간 틀려집니다.
873포트를 사용할 경우 /etc/inetd.conf(redhat7.0 이전) or
/etc/xinetd.d/rsync(redhat7.0이후)을 설정하고 /etc/rsyncd.conf를 만들어 줍니다.
1) 873포트를 사용할 경우
가) /etc/inetd.conf 설정(redhat7.0 이전일 경우)
rsync stream tcp nowait root /usr/bin/rsync rsyncd –daemon
–> /etc/rc.d/init.d/inetd start 서비스를 restart 해준다.
나) /etc/xinetd.d/rsync 설정(redhat7.0 이후일 경우)
service rsync
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = –daemon
log_on_failure += USERID
}
–> /etc/rc.d/init.d/xinetd restart 서비스를 restart 해준다
다) /etc/services파일에도 아래와 갈은 내용이 없으면 추가해 주도록 한다.
phonebook 767/tcp
rsync 873/tcp
rsync 873/udp
telnets 992/tcp
라) 데몬확인(netstat -tap)
# netsyat -tap
tcp 0 0 linux4:32774 *:* LISTEN
tcp 0 0 *:rsync *:* LISTEN
tcp 0 0 *:sunrpc *:* LISTEN
마) /etc/rsyncd.conf
[www]
path = /home/www
comment = webserver1
uid = nobody
gid = nobody
use chroot = yes
read only = yes
hosts allow = 192.168.10.3
max connections = 3
timeout 600
[www] 서비스명
path 서비스할 디렉토리위치
comment 설명
uid 파일전송하는 사용자의 id. 기본값은 nobody
gid 파일전송하는 사용자의 그룹 id. 기본값은 nobody
use chroot 위의 path를 root 디렉토리로 사용. (보안상 필요)
read only 읽기전용(클라이언트에서 서버로 올리는 경우에는 read only=no 로 설정)
hosts allow 호스트별 접속허용. 기본값은 all host입니다. 접근 허용할 호스트의 ip를
적어주시면 됩니다.(보안상 필요)
max connections 동시접속자수.
timeout 클라이언트에서 접근시 타임아웃시간. anonymous 로 운영하는 경우 설정을
해야 클라이언트가 죽었을 때 서버에서 접속을 해제할 수 있음.
2) ssh, rsh 포트를 사용하는 경우
inetd나 xinetd를 수정하지 않아도 되고, /etc/rsyncd.conf를 만들어 주지 않아도
됩니다. 특별한 설정없이 클라이언트에서 사용하면 됩니다.
4. rsync의 사용법
우선 rsync서버설정이 된 것을 webserver1(www1.linuxone.co.kr)이라고 하고,
그 서버로부터 정보를 가져와 동기화 시킬 서버를 webserver2(www2.linuxone.co.kr)
라고 가정
1) 873포트 사용시
# rsync – 옵션 서버::디렉토리 동기화 위치
가) webserver2의 /home/www로 webserver1의 /home/www내용을 동기화 시키려고
한다면, 이렇게 하면 됩니다.
예) webserver2에서
# rsync -avz www1.linuxone.co.kr::/home/www /home/www
– avz옵션은 아래와 같습니다.
-a 는 archive mode (심볼릭 링크, 속성, 퍼미션, 소유권 등 보존)
-v verbose (상세하게 보여줌)
-z compress (전송시 압축을 함)
나) webserver2에서 webserver1의 내용을 가져오면서 webserver1에 없는
내용은 webserver2에서 삭제함
예) webserver2에서
# rsync -avz -delete www1.linuxone.co.kr::/home/www
2) ssh, rsh 사용시
클라이언트에서 다음과 같이 사용만 하면 됩니다.
# rsync – 옵션 -e ssh(rsh) 서버:디렉토리 동기화 위치
가) webserver2의 /home/www로 webserver1의 /home/www내용을 동기화 시키려고
한다면, 이렇게 하면 됩니다.
예) webserver2에서
# rsync -avz -e ssh www1.linuxone.co.kr:/home/www /home/www
나) ssh를 사용하려면 비밀번호를 입력해야하는데 이것은 인증키를 생성해서 번거로움을
없앨 수 있습니다.
예) ssh-keygen -d 라고한면
~/.ssh/id_dsa.pub 라는 파일이 생성됨
이걸 원본 데이터가 있는 서버에 저장함
scp -p .ssh/id_dsa.pub root@호스트명:~/.ssh/authorized_keys라고
등록하면 가능합니다.
※ crontab 에 다음과 같이 등록하면 더욱 좋습니다.
rsync -avPz –delete –stats -l -t -e ssh root@webserver1:/home/ /backup
– 저렇게 할 경우 압축을 하고, 퍼미션 및 소유권은 그대로 유지하며, 심벌릭 링크는
심벌릭 링크 그대로 백업하고, 전송 속도 및 시간을 출력해주고, 마지막에 전송된
상태를 출력 해줌.
–delete는 옵션은 원본에는 없지만 그 전에 받은 백업본에 있을 경우 삭제해줌.
그래서, 원본과 항상 똑같이 백업이 되도록 함
5. crontab에 등록
모든 내용을 crontab에 등록합니다.
# crontab -e
10 04 * * * “rsync -avz -e ssh www1.linuxone.co.kr:/home/www /home/www”
매일 04시 10분에 www1.linuxone.co.kr의 /home/www 를 자신의 home/www로
동기화 시킵니다.
6. rsync의 주요옵션
-v 진행상황을 상세히 보여줌
-r 지정한 디렉토리의 하위 디렉토리까지 재귀적으로 실행
-l 소프트링크 보존
-H 하드링크 보존
-p 버전속성 보존
-o 소유속성 보존(루트)
-g 그룹속성 보존
-t 타임스탬프 보존
-D 디바이스 파일보존(루트)
-z 데이터압축 전송
-u 추가된 파일만 전송
-b 낡은 파일은 ~가 붙음
-u 새로운 파일을 덮어쓰지 않음
-c 서버와 클라이언트 파일크기를 세밀히 체크
-e ssh(rsh) 전송암호화
–existing : 추가된 파일은 전송하지않고 갱신된 파일만 전송
–delete : 서버에 없는 파일은 클라이언트에서도 삭제
–exclude ‘PATTERN’ : 패턴과 맞는 파일만 전송
–stats : 결과를 보고
–daemon : 대몬모드로 운영함(이건 inetd.conf에 지정할 때 필요함)
※ 참고사항
☞ -e 옵션은 rsh나 ssh를 사용할 때 써주는 옵션입니다.
☞ 873포트를 사용할 때는 :: 두 개를, rsh나 ssh를 사용할 때는 : 한 개만 써줍니다.
☞ rsync -avz www1.linuxone.co.kr:home/www1/ /home/www2 의 내용은
☞ www1.linuxone.co.kr의/home/www1 안의 내용을 /home/www2 디렉토리로 옮기는
것인데 만약 /home/www1/ 라고하면 원래 www1은 그 디렉토리 자체까지 포함해서
가져옵니다. 그렇지만 www1 뒤에 / 가붙어서 /home/www1/ 라고 표시하면 그 디렉
토리안에 있는 내용만 가져옵니다.