리눅스마스터1급 : 백업관련 명령어편 : rdist
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 2,617 조회
- 0 추천
- 목록
본문
리눅스마스터1급 : 백업관련 명령어편 : rdist
1) rdist의 정의
rdist 명령은 시스템 관리 및 전체 노드의 저장장치를 항상 동일하게 유지시키는 데 사용한다.
HOBAK 클러스터에서 rdist는 /etc/passwd, /etc/shadow, /etc/group 등을 전체 노드가 항상 일치하도록 하는데 사용되고 있다.
뿐만아니라 이러한 rdist 명령을 사용하여 소프트웨어의 설치가 대단히 용이해진다.
예를들어 전체 노드에 MPI를 인스톨한다면 세가지 방식을 생각할 수 있다.
∙각 노드에 MPI를 설치한다.
∙컨트롤머신에 인스톨한 다음에 이를 각 노드에 ftp혹은 rcp를 사용하여 복제한다.
∙rdist를 사용한다.
rdist는 앞의 두 가지 방식과 사용성에서 많은 차이가 있다.
파일 퍼미션, 생성 날짜 등의 메타정보를 일치 시켜 준다.
그리고 파일이 갱신 되었을 때 갱신된 파일만 전송한다.
수퍼 유저의 홈 디렉토리(/root)에 install_files이 존재하며 이파일의 내용은 다음과 같다.
|
|
|
| SYS_FILES = ( /usr/local/mpich /usr/local/ptools/* /etc/profile.d/* ) GET_ALL = ( node01 node02 node03 node04 node05 node06 node07 ) all : ${SYS_FILES} -> ${GET_ALL} \ |
|
|
|
|
위의 파일에서 SYS_FILES라는 필드가 복사하고자 하는 파일 혹은 디렉토리를 나타낸다.
여기에 여러개의 파일이나 디렉토리를 기록한다 GET_ALL이라는 필드는 파일이 전송 되어야 할 호스트 네임을 나타낸다.
여기서 node01 ~node07까지가 SYS_FILES에 있는 파일들을 전송받게 된다.
이와 같이 파일을 만들고 다음과 같이 실행한다.
|
|
|
| [root@sulinux /root]# rdist –f install_files |
|
|
|
|
이와 같이 실행할 경우 파일 혹은 디렉토리가 없을 경우 자동으로 생성하고 파일이나 디렉토리가 있는 경우 갱신된 파일만 업데이트 하게 된다.
만약 특정한 소프트웨어를 전체 노드에 설치 하고자 할 경우 컨트롤 머신에 인스톨한 후 SYS_FILES에 소프트웨가 설치된 디렉토리명을 작성후 rdist를 실행하면 된다.
다음은 특정 소프트웨어를 제거하거나 디렉토를 삭제하는 예이다.
|
|
|
| [root@sulinux /root]# pexec rpm –e AAAA [root@sulinux /root]# prm –rf directory_name |
|
|
|
|
2) 파일 복제
rdist는 시스템들간에 파일을 동기화 하고 중요한 파일들이 변경되지 않은 것을 확인하는 방법이다.
이것은 Berkeley rsh 프로토콜로 통신하는데 이는 곧 rsh의 강점과 약점을 가지고 있다는 뜻이다.
그러나 (V6.12에서 ) 전송을 위해 ssh를 사용할 수 있게 되는데 그러면 더욱 안전해진다.
3) 실행
복수의 시스템들사이에 파일을 복제, 변경되는 파일들을 갱신하면서 중요한 파일들의 변경 사항을 모니터 가능하다, 예를 들어 공격자가 서버에 있는 DNS구성 파일을 변경했는데, 이파일이 매일밤 rdist에 의해 올바른 설정으로 자동 변경되고 관리자는 이에 대하여 변경여부를 통보 받는다.
관련자료
-
이전
-
다음