서버 관리 및 실습

72
WONKWANG UNIVERSITY 서서 서서 서 서서 4서 서서 서서서 서서 서서서 서 서서 서서서 서서서

Upload: jania

Post on 23-Jan-2016

95 views

Category:

Documents


0 download

DESCRIPTION

서버 관리 및 실습. 4 장 서버 구축을 위해 알아야 할 핵심 개념과 명령어. 3. 사용자 관리와 파일 속성. 파일과 디렉토리의 소유와 허가권 리눅스는 각각의 파일과 디렉토리마다 소유권 및 허가권의 속성이 있다 . “ls -l” 명령을 실행하면 다음과 같이 나타날 것이다 . 세 번째 나온 install.log 파일을 예로 그 의미를 살펴보자. 3. 사용자 관리와 파일 속성. 파일 이름. 마지막 변경 날짜 / 시간. 파일 크기 (Byte). 파일 소유 그룹 이름. 파일 소유자 이름. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 서버 관리 및 실습

WONKWANG UNIVERSITY

서버 관리 및 실습

4 장

서버 구축을 위해 알아야 할 핵심 개념과 명령어

Page 2: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

3. 사용자 관리와 파일 속성

파일과 디렉토리의 소유와 허가권 리눅스는 각각의 파일과 디렉토리마다 소유권 및 허가권의 속성이 있다 . “ls -l” 명령을 실행하면 다음과 같이 나타날 것이다 .

세 번째 나온 install.log 파일을 예로 그 의미를 살펴보자 .

2

Page 3: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

3. 사용자 관리와 파일 속성

- rw - r - - r - - 1 root root 73288 6 월 14 11:26 Install.log

3

파일 이름

마지막 변경 날짜 /시간

파일 크기(Byte)

파일 소유 그룹 이름

링크 수

파일 소유자 이름

파일 허가권

파일 유형

Page 4: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

3. 사용자 관리와 파일 속성

파일 유형 이 파일이 어떤 파일인지를 의미한다 . 디렉토리일 경우에는 ‘ d’,

일반적인 파일일 경우에는 ‘ -’ 가 표시된다 . 그 외에 b( 블록 디바이스 ), c( 문자 디바이스 ), l( 링크 ) 등이 있다 .

4

Page 5: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

3. 사용자 관리와 파일 속성

파일 허가권 파일 허가권은 “ rw –”, “r - -”, “r - -” 로 3 개씩 끊어서 읽으면 된다 . r 은 read, w 는 write, x 는 execute 의 약어다 . 첫 번째 “ rw-” 는 소유자의 파일 저근 권한을 , 두 번째의 “ r - -” 는

그룹의 파일 접근 권한을 , 세 번째의 “ r - -” 는 그 외의 사용자에 대한 파일 접근 권한을 의미한다 .

install.log 파일의 허가권을 숫자로 아래와 같이 표현할 수 있다 .

허가권이 6 이라는 숫자는 2 진수 110 이므로 rw- 로 표혈할 수 있고 , 그룹의 허가권인 4 라는 숫자는 2 진수 100 이므로 r— 로 , 그 외 사용자의 허가권인 4 라는 숫자도 동일하게 표현되는 것이다 .

5

소유자 그룹 그외 사용자

r w - r - - r - -

4 2 0 4 0 0 4 0 0

6 4 4

Page 6: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

3. 사용자 관리와 파일 속성

파일 허가권을 변경하는 명령어로는 “ chmod” 가 있다 . 이 명령은 root 사용자 또는 해당 파일의 소유자만이 실행할 수 있다 .

예를 들어 , “chmod 777 install.log” 명령을 실행하면 , install.log 파일은 모든 사용자가 읽고 , 쓰고 , 실행할 수 있는 파일이 되는 것이다 .

chmod 명령을 ‘ symbolic method’ 방식으로도 사용할 수 있다 . “chmod u + x < 파일명 >” 은 “ 소유자 (User) 에게 실행 (eXecute) 권한을 허가하라” 는 의미다 .

윈도우에서는 확장명이 exe 혹은 com 이어야만 실행 가능한 파일이지만 , 유닉스 / 리눅스에서는 파일의 허가권에 따라 실행 여부가 결정된다 . 그러므로 , 유닉스 / 리눅스에서는 실행 파일의 확장명이 별도로 존재하지 않는다 .

6

Page 7: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

3. 사용자 관리와 파일 속성

파일 소유권 파일 소유권 (ownership) 은 파일을 소유한 사용자와 그룹을 의미한다 .

install.log 파일은 root 라는 사용자가 소유자며 , 그룹도 root 로 되어 있다 .

파일의 소유권을 바꾸는 명령어로 chown 이 있으며 , “chown < 새로운 사용자명 > [.< 새로운 그룹명 >] < 파일명 >” 형식으로 사용하면 된다 .

예를 들어 , “chown fedora install.log” 는 install.log 파일의 소유자를 fedora 로 바꾸라는 의미고 , “chown fedora.fedora install.log” 는 파일의 그룹도 fedora 로 바꾸라는 의미다 .

7

Page 8: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

링크 파일의 링크는 하드 링크와 소프트 링크 두 가지가 있다 . 아래 그림을

보면 원본 파일이 inode1 을 사용하고 있을 때 , 하드 링크를 생성하면 하드 링크 파일만 하나 생성되며 같은 inode1 을 사용하게 된다 . 하드 링크를 생성하는 명령어는 “ ln < 링크 대상 파일명 > < 링크 파일명 >” 으로 하면 된다 .

3. 사용자 관리와 파일 속성

8

inode1

inode2

하드 링크 파일

원본 파일

심볼릭 링크 파일

원본 파일 데이터

원본 파일 포인터

디렉토리 inode 블록 Data 블록

Page 9: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

3. 사용자 관리와 파일 속성

이 원본에 대해서 심볼릭 링크를 생성하면 새로운 inode2 를 만들고 , 데이터는 원본 파일을 연결하게 되는 효과를 갖는다 . 일반적으로 사용자들이 주로 사용하는 링크는 심볼릭 링크를 사용하게 되며 , 윈도우의 바로 가기 아이콘도 심볼긱 링크에 해당한다 .

소프트 링크를 생성하는 명령어는 “ ln -s < 링크 대상 파일명 > < 링크 파일명 >” 으로 하면 된다 .

충분히 개념을 이해하지 못했다면 다음 실습을 통해 이해해 보도록 하자 .

9

Page 10: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

3. 사용자 관리와 파일 속성

하드 링크와 소프트 링크를 생성해 보자 . ( 실습 ) /root/linktest 디렉토리를 만들고 , 그 안에 basefile 이라는 파일을

만들다 .

10

Page 11: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

3. 사용자 관리와 파일 속성

하드 링크와 소프트 링크를 만들고 , inode 를 확인해 보자 . “ls -il” 옵션은 inode 번호를 제일 앞에 출력한다 .

결과를 살펴보면 원본 파일과 하드 링크 파일은 inode 번호 / 크기 / 파일 수정 시간이 모두 같으며 , 심볼릭 링크는 단지 원본 파일과 연결되어 있는 것을 볼 수 있다 .

11

Page 12: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

3. 사용자 관리와 파일 속성

원본 파일을 다른 곳으로 이동시켜 보고 하드 링크와 심볼릭 링크를 확인해 보자 .

결과를 보면 , “ 하드 링크와 소프트 링크의 비교” 그림에서 보았듯이 하드 링크는 디렉토리에서 원본 파일이 없어져도 아무런 이상이 없고 , 소프트 링크는 디렉토리에서 원본 파일이 없어지면 연결이 끊어지게 되는 것이다 .

12

Page 13: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

3. 사용자 관리와 파일 속성

다시 원본 파일을 현재 디렉토리에 가져와서 다시 확인해 보면 심볼릭 링크가 원상으로 복구됨을 확인할 수 있다 .

13

Page 14: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

RPM 의 개념과 활용 RPM(Redhat Package Manger)

기존의 리눅스는 새로운 프로그램을 설치하는 것이 꽤 어려워서 , 초보자는 프로그램을 설치하는 것조차도 어렵다고 느꼈다 .

이러한 점을 개선하여 레드햇 사에서 윈도우의 setup.exe 와 비슷하게 프로그램을 설치한 후에 바로 실행할 수 있는 설치 파일을 제작하게 되었다 .

이것이 *.rpm 이며 , 이를 ‘패키지’라고 부른다 .

파일의 의미 페도라 설치 CD 를 확인하면 , Fedora/RPMS/ 디렉토리에 많은 rpm 파일이

존재하는 것을 확인할 수 있다 . 이 파일의 의미는 다음과 같다 . < 패키지 이름 > < 버전 > < 릴리즈 번호 >.< 아키텍처 >.rpm

예를 들어 , 페도라의 기본 웹 브라우저인 firefox-1.0.4-4.i386.rpm 을 살펴보자 .

패키지 이름 : firefox 프로그램의 이름 버전 : 1.0.4 대개 3 자리 수로 구성되며 , 높을수록

최신 버전 릴리즈 번호 : 4 문제점을 개선할 때마다 붙이는 번호 아키텍처 : i386 CPU 즉 , 이 파일이 설치 가능한 CPU 를 의미

14

Page 15: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

아키텍처 부분에 올 수 있는 것은 다음과 같다 . i386, i486, i586, i686 인텔 또는 AMD 계열의 CPU alpha/sparc/ia64 해당 CPU 를 의미 src 소스 파일 패키지 , 설치 후에

별도로 컴파일 noarch 모든 CPU 에 설치 가능 (NO

ARCHitecture)

15

Page 16: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

자주 사용하는 rpm 의 사용법 설치

rpm –Uvh < 패키지 파일 > U : 기존에 패키지가 설치되지 않았다면 i 와 같이 일반적인 설치를

하고 , 기존에 패키지가 설치되어 있다면 업그레이드를 한다 . v : 설치 과정의 확인 h : 설치 진행 과정을 # 마크로 화면에 출력함

삭제 rpm -e < 패키지 파일 > : 여기서 e 는 Erase 의 약자

패키지 질의 rpm -qa < 패키지 이름 > : 시스템에 패키지가 설치되었는지 확인 rpm -qf < 패키지 이름 > : 이미 설치된 파일이 어느 패키지에 포함

된 것인지 확인 rpm -ql < 패키지 이름 > : 특정 패키지에 어떤 파일들이

포함되었는 지 확인 rpm -qi < 패키지 이름 > : 설치된 패키지의 상세 정보

16

Page 17: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

RPM 의 단점 기존의 리눅스 설치보다는 획기적으로 편리해지기는 했지만 , 단점이 있다 . 가장 큰 문제점은 ‘의존성’ 이다 . 예를 들어 firedox 를 설치할 경우 X 윈도우를 설치하지 않은 상태에서는

의존성의 문제로 설치가 되지 않는다 . 이러한 불편함 점을 해결한 것이 yum 명령이다 . 이는 뒤에서 살펴 본다 .

17

Page 18: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

rpm 패키지를 이용해서 프로그램을 설치해 보자 . ( 실습 ) 구굴에서 tftp rpm 을 다운로드 한다 .

다운로드된 rpm 패키지를 설치하자 . “ 다운로드” 폴더로 이동 한다 . “rpm –Uvh tftp-0.32-4.i386.rpm” 으로 파일 설치 . “rpm -qi tftp” 으로 설치한 프로그램의 정보를 확인한다 .

18

Page 19: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

YUM RPM 이 분명 유용하지만 , 의존성 문제로 불편한 점이 있다 . 이를 해결하기 위해서 제공되는 것이 YUM(Yellowdog Update Manager) YUM 은 RPM 과 별도의 것이라기 보다는 , RPM 패키지를 설치하는 편리한 툴이라고 생각하면 된다 .

YUM 의 개념 인터넷을 통하여 fedora 의 rpm 파일이 저장된 저장소에서 설치하려고 하는

rpm 파일과 해당 rpm 이 의존성을 가지는 다른 rpm 파일까지 모두 다운로드한 후에 자동으로 설치까지 해준다 .

인터넷을 통하므로 현재 사용하는 fedora 가 인터넷에 정상적으로 연결된 상태여야 한다 .

YUM 이 연결할 URL 은 /etc/yum.repos.d/ 디렉토리의 파일에 저장되어 있다 .

19

Page 20: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

YUM 사용법 설치

yum install < 패키지 이름 > 앞으로 설치시 사용할 명령은 “ yum -y install < 패키지 이름 >” 이다 . 인스톨시 설치여부를 묻는 질문에 무조건 “ yes” 를 답하게 하는 옵션이

‘– y’ 이다 .

업데이트 가능한 목록 보기 yum check-update

업데이트 yum update < 패키지 이름 > : 업데이트할게 있음 자동 설치

삭제 yum remove < 패키지 이름 >

정보 확인 yum info < 패키지 이름 >

로컬에서 설치 yum localinstall < 패키지 이름 > : 현재 디렉토리에 있는 rpm 파일

설치

20

Page 21: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

dovecot 패키지를 yum 명령으로 설치해 보자 . ( 실습 )

21

Page 22: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

y 를 눌르면 해당 패키지를 다운로드하여 자동으로 설치해 준다 . 다운로드 속도가 너무 느리다면 “ Ctrl” + “C” 를 눌러 준다 . 다른 미러 사이트에 접속하여 새로 다운로드 된다 .

22

Page 23: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

파일 압축과 파일 묶기 파일 압축

리눅스에서 가장 많이 보게 되는 압축 파일은 gz 또는 bz2 이다 .

gzip 확장명 gz 으로 압축을 하거나 풀어줌

[ 사용 예 ]

# gzip < 파일명 > : “ 파일명” 을 압축 파일인 “ < 파일명 >.gz” 으로 만듬

# gzip -d “< 파일명 >.gz” : “< 파일명 >.gz” 압축 파일을 일반 파일인 “ < 파일명 >” 으로 만들어줌

gunzip 확장명 gz 의 압축을 풀어줌 “gzip -d” 와 동일한 명령어

23

Page 24: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

bzip2 확장명 bz2 로 압축을 하거나 풀어줌

[ 사용 예 ]

# bzip2 < 파일명 > : “ 파일명” 을 압축 파일인 “ < 파일명 >.bz2” 로 만듬# bzip2 -d “< 파일명 >.bz2” : “< 파일명 >.bz2” 압축 파일을 일반 파일인

“ < 파일명 >” 으로 만들어줌

bunzip2 확장명 bz2 의 압축을 풀어줌 “bzip2 -d” 와 동일한 명령어

24

Page 25: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

파일 묶기 윈도우즈용 압축 프로그램을 생각해 보면 aaa, bbb 두 개 파일을 압축할 때 ccc.zip 이라는 1 개의 압축 파일이 생긴다 .

이는 파일 두 개를 하나의 파일로 묶인 후에 압축이 된 것이다 . 리눅스는 이와 달리 파일 압축과 파일 묶기는 원칙적으로 별개의

프로그램으로 수행하도록 되어 있다 . 사용자 편의성을 위해 한 번에 할 수 있는 옵션도 제공한다 . 파일 묶기의 명령어는 tar 이며 , 그 확장명도 tar 이다 .

25

Page 26: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

tar 확장명 tar 로 묶음 파일을 만들어 주거나 묶음을 풀어줌

[ 동작 ] c ( 새로운 묶음 ) x (묶인 파일을 풀어줌 ) r (묶음을 풀기 전에 묶인 경로를 보여줌 )

[ 옵션 ] f (필수 ) – 묶음 파일명 지정 v – visual 파일이 묶이거나 풀리는 과정을 보여줌 z – tar + gzip (GNU only) j – tar + bzip2 (GNU only)

26

Page 27: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

[ 사용 예 ]# tar cvf xinetd.tar /etc/xinetd.d/ : 생성# tar cvfz xinetd.tar.gz /etc/xinetd.d/ : 생성 + gzip 압축# tar cvfj xinetd.tar.bz2 /etc/xinetd.d/ : 생성 + bzip2 압축# tar tvf xinetd.tar /etc/xinetd.d/ : 확인# tar xvf xinetd.tar /etc/xinetd.d/ : 풀기# tar xvfz xinetd.tar.gz /etc/xinetd.d/ : gzip 압축 해제 + tar 풀기# tar xvfj xinetd.tar.bz2 /etc/xinetd.d/ : bzip2 압축 해제 + tar 풀기

27

Page 28: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

파일 위치 검색 리눅스에서 특정 파일의 위치를 검색하는 명령어는 아래와 같다 .

find [ 경로 ] [ 옵션 ] [ 조건 ] [action] [ 옵션 ] -name, -user( 소유자 ), -newer( 전 , 후 ), -perm( 허가권 ) [action] -print(GNU 는 디폴트 , 유닉스는 필수 입력 ), -exec [ 사용 예 ]

# find /etc -name “*.conf”

/etc 디렉토리 하위에 확장명이 “ .conf” 인 파일 검색# find /etc –user fedora

/home 디렉토리 하위에 소유자가 “ fedora” 인 파일 검색# find ~ -perm 644

현재 사용자의 홈 디렉토리 하위에 허가권이 644 인 파일 검색

28

Page 29: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

which < 실행 파일 이름 > PATH 에 설정된 디렉토리만 검색 절대 경로를 포함한 위치 검색

whereis < 실행 파일 이름 > 실행 파일 및 소스 , man 페이지 파일까지 검색

locate < 파일 이름 > 매우 빠르고 유용하지만 새로 설치된 파일들이 등록되어 있지 않을 때는 찾을

수 없음

29

Page 30: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

시스템 재설정 (system-config-xxx) 페도라의 X 윈도우 환경에서 제공해 주는 시스템의 재설정 명령어는

주로 “ system-config-xxx” 이다 .

30

Page 31: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

Vmware 에서 Fedora 9 의 기본 해상도인 800x600 을 1024x768로 변경해 보자 . ( 실습 ) 터미널에서 아래와 같이 입력해서 “ 화면 설정” 창이 나오면 변경한다 .

31

Page 32: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

아래와 같이 재시작이 필요하다는 메시지가 나온다 . 재부팅을 해보자 .

전체 화면으로 보고 싶다면 , Vmware 메뉴의 [view] -> [Full Screen] 을 선택하면 , 페도라가 전체 화면으로 보인다 .

32

Page 33: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

이렇게 system-config-display 로 설정한 설정 파일은 /etc/X11/xorg.conf에 저장된다 .

터미널에서 “ gedit /etc/X11/xorg.conf” 명령어로 파일을 열어보자 .

33

Page 34: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

날짜 설정 (system-config-date)

34

Page 35: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

키도드 설정 (system-config-keyboard)

35

Page 36: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

그 외의 설정 명령들 system-config-bind 네임 서버 설정 system-config-httpd 웹 서버 설정 system-config-language 언어 설정 system-config-lvm LVM 설정 system-config-mouse 마우스 설정 system-config-network 네트워크 환경 설정 system-config-nfs NFS 설정 system-config-packages 패키지 추가 설정 system-config-printer 프린터 설정 system-config-rootpassword ROOT 비밀번호 설정 system-config-samba Samba 서버 설정 system-config-firewall 보안 수준 및 방화벽 설정 system-config-soundcard 사운드 카드 설정 system-config-users 사용자 설정

36

Page 37: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

위 명령어를 입력해서 실행되지 않으면 , 해당 패키지가 설치되어 있지 않거나 버전이 업그레이드 되면서 변경된 명령이다 .

“yum -y install system-config-XXX” 명령으로 설치한 후에 실행하면 된다 .

버전이 업그레이드 되면서 변경된 명령어는 변경된 이름으로 이미 설치되었다는 메시지가 출력된다 . 이 메시지를 확인하여 변경된 이름으로 실행시키면 된다 .

system-config-securitylevel 이 system-config-firewall 로 변경되었음을 알 수 있다 .

37

Page 38: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

cron 과 at cron

주기적으로 반복되는 일을 자동적으로 실행될 수 있도록 설정해 놓는 것을 말한다 .

만약 회사에서 시스템의 사용이 가장 적은 새벽 5 시에 백업을 받아야 한다면 , 하루 이틀은 퇴근하지 않고 기다릴 수 있겠지만 , 매일 그래야 한다면 회사를 그만두는 것을 진지하게 고려하게 될 것이다 .

이때 유용한 데몬 ( 서비스 ) 은 crond 며 , 관련 파일은 /etc/crontab 이 있다 .

위 그림은 /etc/crontab 파일이 시간별 , 일별 , 주별 , 월별로 호출하는 디렉토리를 보여준다 .

38

/etc/crontab 파일

/etc/cron.hourly/ /etc/cron.daily/ /etc/cron.weekly/ /etc/cron.monthly/

시간별 일별 주별 월별

Page 39: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

/etc/crontab 의 내용은 아래와 같다 .

첫 행의 의미는 분 , 시 , 일 , 월 , 요일 , 권한 , 실행 명령 순으로 되어 있다 .

즉 , 01 분마다 , 모든 시에 , 모든 일에 , 모든 월에 , 모든 요일에 , root 권한으로 , /etc/cron.hourly/ 디렉토리의 파일을 실행” 이라고 해석할 수 있다 .

그러므로 이곳에 실행 가능한 파일을 넣어 놓는다면 매시간 01 분마다 실행될 것이다 .

0 은 일요일을 의미한다 . 0~6까지 일요일 ~ 토요일을 의미하게 된다 .

39

Page 40: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

at cron 은 주기적으로 반복되는 작업을 예약하는 것이지만 , at 은 일회성

작업을 예약하는 것이다 . 즉 , at 은 예약을 해 놓으면 한 번만 실행되고 소멸되는 것이다 . 명령어의 사용법은 아래와 같다 .

예약 : # at < 시간 >

# at 3:00am tomorrow 내일 새벽 3 시# at 11:00pm January 30 1 월 30 일 오후 11 시# at now +1 hours 1 시간 후

at> 프롬프트에 예약 명령어 입력후 , “Enter” 완료되면 “ Ctrl” + “D” 확인 : # at –l 취소 : # atrm < 작업 번호 >

40

Page 41: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

매월 15 일 새벽 3 시 1 분에 “ /home” 디렉토리와 그 하위 디렉토리를 /backup 디렉토리에 백업하도록 하자 . 서비스가 가동하는지 확인한다 . 기본적으로 가동 되어 있다 .

“gedit /etc/crontab” 으로 예약 파일을 열고 , 매월 수행하는 부분을 열어서 아래와 같이 수정한다 .

01 3 15 * * root run-parts /etc/cron.monthly

41

Page 42: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

/etc/cron.monthly/ 디렉토리에 메시지를 출력하는 스크립트 파일을 만들고 , 속성을 실행 가능하도록 바꿔준다 .

42

Page 43: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

abc.sh 의 내용을 아래와 같이 입력한다 . /backup-< 현재 날짜 >.tar.gz” 으로 /home 디렉토리 전체의 백업 파일을

생성하라는 의미다 . 셀 스크립트 문법이라 좀 생소하지만 , 간단하면서도 실무에서 유용하

다 .

43

Page 44: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

백업용 디렉토리를 생성해 주고 , crond 데몬을 재시작 한다 .

한 달을 기다려서 결과를 보기 힘드니 , 날짜를 강제로 바꿔주자 . “date” 명령으로 “ 03 월 15 일 03 시 00 분 2009년” 으로 날짜를 강제로

바꿔주고 , crond 서비스를 재시작한다 . 1 분 정도 기다린 후에 설정된 내용이 잘 실행되었는지 확인해 보자 .

또 , 4 월로 시간을 바꿔주고 다시 실행해 본다 . 계속 백업된 데이터가 쌓이는 것을 확인 할 수 있다 .

44

Page 45: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

4. 관리 명령어

이번에는 내일새벽 4 시에 시스템을 최신 패키지로 업데이트하고 , 완료되면 시스템을 재부팅하는 것을 at 으로 예약 해 보자 .

“<EOT>” 부분은 “ Ctrl” + “D” 를 누르는 것이다 .

45

Page 46: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

네트워크 관련 필수 개념 후반부의 네트워크 서버 구축을 위한 최소한의 네트워크 관련 용어만

파악하도록 한다 .

IP 주소 각 컴퓨터의 네트워크 카드 (랜카드 ) 에 부여되는 중복되지 않는 유일한 주

소 . 4 바이트로 이루어져 있으며 , 각 자리는 0~255까지의 숫자가 올 수 있다 .

예 ) 페도라 서버의 IP 주소 :192.168.6.100

네트워크 주소 같은 네트워크에 속해 있는 공통된 주소 예를 들면 , 페도라 서버의 IP 주소는 192.168.6.100, 페도라 서버 B 는

192.168.6.200, 페도라 클라이언트는 192.168.6.201, 윈도우 클라이언트는 192.168.6.202 다 .

위 네 컴퓨터는 같은 네트워크에 있으며 , 서브넷 마스크로 C 클래스(255.255.255.0) 를 사용하므로 , 공통된 네트워크 주소는 192.168.6.0 이 된다 .

46

Page 47: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

브로드캐스트 내부 네트워크의 모든 컴퓨터가 듣게 되는 주소를 말한다 . 현재 주소의 제일 끝자리를 255 로 바꾼 주소다 .(C클래스의 경우 ) 위에서 예를 보인 네트워크의 브로드캐스트는 192.168.6.255 가 된다 .

게이트웨이 , 라우터 라우터 = 게이트웨이 네트워크 간에 데이터를 전송하는 컴퓨터 또는 장비를 말한다 . 내부간의 통신은 상관없으나 인터넷을 사용하기 위해서 외부로 접속하려면

반드시 게이트웨이의 IP 주소를 알아야 한다 . 게이트웨이를 별도로 추가하기 위한 명령어는 아래의 형식을 갖는다 .

# route add default gw < 게이트웨이 주소 > dev < 장치 이름 >

예를 들어 , 게이트웨이가 192.168.6.254 로 변경되었을 때는 다음 명령을 사용하면 된다 .

# route add default gw 192.168.6.254 dev eth0

47

Page 48: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

넷마스크 & 클래스 넷마스크 : 네트워크의 규모를 결정한다 . 본 교재에서는 사설 네트워크에서 C 클래스를 사용하므로 넷마스크

255.255.255.0 를 사용한다 .

DNS(Domain Name System) 서버 (네임 서버 ) 주소 인터넷을 사용할 때 www.daum.net 과 같은 URL 을 해당 컴퓨터의 IP

주소로 변환해 주는 서버 컴퓨터다 . DNS 서버의 주소를 사용하지 않거나 , 잘못 입력되어 있으면 정상적인 웹

서핑이 되지 않으므로 올바른 정보를 설정해야 한다 . 설정 파일은 /etc/resolv.conf 며 , 내용 중에 “ nameserver <DNS 서버 IP>”

로 설정되어 있다 . Vmware 를 사용하면 Vmware 가 게이트웨이 , DHCP 서버 , DNS 서버의 역할을 모두 맡는다 .

48

Page 49: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

리눅스에서의 네트워크 장치 이름 랜 카드 (네트워크 카드 ) 가 리눅스에 장착이 되었을 때 , 리눅스는 이 네트워크 장치를 eth0, eth1, 등으로 인식하게 된다 . 대개의 컴퓨터는 네트워크 카드를 1 개 또는 2 개를 설치하므로 세 번째 네트워크 장치를 의미하는 eth2 는 거의 사용할 일이 없다 .

중요한 네트워크 관련 명령어 네트워크와 관련된 명령어는 많이 있지만 , 주로 사용될 명령어는 몇 개

되지 않는다 .

system-config-network DHCP 클라이언트 또는 고정 IP 주소 사용 결정 IP 주소 , 서브넷 마스크 , 게이트 웨이 정보 입력 DNS 정보 입력 네트워크 카드 드라이버 설정 네트워크 장치 (eth0) 설정

49

Page 50: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

system-config-network-tui system-config-network 와 같은 명령어지만 텍스트 기반으로 작동한다 .

service network restart 네트워크의 설정을 변경한 후에 , 변경된 내용을 시스템에 적용하는

명령어다 .

ifconfig < 장치 이름 > 해당하는 장치의 IP 주소 설정 정보를 출력해 주는 명령어다 .

nslookup DNS 서버의 작동을 테스트하는 명령어다 .

ping 해당 컴퓨터가 네트워크에서 응답하는지를 테스트하는 간편한 명령어다 .

50

Page 51: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

네트워크 설정과 관련된 주요 파일 system-config-network 명령을 수행하고 나서 변경되는 관련

파일들이다 .

/etc/sysconfig/network 네트워크의 기본적인 정보가 설정되어 있는 파일

/etc/sysconfig/network-script/ifcfg-eth0 eth0 장치에 설정된 네트워크 정보가 모두 들어 있는 파일

/etc/resolv.conf DNS 서버 정보 및 호스트 이름이 들어 있는 파일

51

Page 52: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

네트워크 카드를 제거하고 새로 장착한 후에 정상적으로 네트워크가 될 수 있도록 설정해 보자 . 실제로 네트워크 카드에 문제가 발생할 경우에 사용할 수 있으며 , Vmware 에서도 “ 네트워크 카드의 Mac Address 가 충돌한다” 는 메시지가 나올 경우에 해결책으로 사용될 수 있다 . ( 실습 )

터미널을 열고 , “system-config-network” 명령을 입력한다 . “ 네트워크 설정”창이 나오면 “ 하드웨어” 탭을 클릭하고 , “eth0” 장치가

선택된 상태에서 “ 지우기” 아이콘을 누른다 . 경고 메시지에서는 모두 “ 예”를 클릭한다

52

Page 53: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

삭제된 후에 “ 새로 만들기” 아이콘을 클릭하고 , 하드웨어 타입에서 “ Ethernet” 을 선택한다 .

53

Page 54: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

네트워크 아답터 설정 창에서 , 아답터는 “ AMD PCnet32” 를 선택하고 , 나머지는 디폴트로 두고 “ 확인” 을 클릭한다 .

54

Page 55: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

“ 장치” 탭을 클릭하고 “ 새로 만들기” 버튼을 클릭한다 .

55

Page 56: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

“ 이더넷 연결” 을 선택하고 “ 앞으로” 클릭한다 .

56

Page 57: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

새로 만든 “ AMD PCnet32” 를 선택하고 “ 앞으로” 클릭한다 .

57

Page 58: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

IP 설정은 처음 리눅스를 설치했을 때와 동일하게 입력한다 .

58

Page 59: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

“ 적용” 을 클릭한다 .

59

Page 60: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

“DNS”탭으로 이동하고 “ 기본 DNS” 를 설정해 준다 .

[ 파일 ] -> [끝내기 ] 를 선택한다 . 저장하겠냐는 질문에 “ 예” 를 클릭한다 .

60

Page 61: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

“ifconfig eth0” 명령으로 네트워크가 잘 설정되었는지를 확인하자 .

61

Page 62: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

이번에는 system-config-network 명령으로 설정한 내용이 저장된 파일을 확인해 보도록 한다 .

“vi /etc/sysconfig/network” 파일을 열어서 확인해 보고 vi 를 종료한다 .

“vi /etc/sysconfig/network-scripts/ifcfg-eth0” 명령으로 파일을 열어서 확인 .

62

Page 63: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

위 과정을 텍스트 모드에서도 편집이 가능하다 .# ifconfig eth0 192.168.6.100 netmask 255.255.255.0 broadcase

192.168.6.255 up

# route add –net 192.168.6.0 netmask 255.255.255.0 eth0

# route add default gw 192.168.6.2 dev eth0

# service network restart

위의 명령어를 순서대로 입력하면 된다 .

63

Page 64: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

DNS 서버가 설정된 파일은 /etc/resolv.conf 이다 . “vi /etc/resolv.conf”로 열어 보도록 하자 .

64

Page 65: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

네트워크 설정이 정상적으로 설정이 되었다 . 이번에는 인터넷이 안될 경우에 DNS 서버의 고장 때문인지 아니면 다른 문제 때문인지를 확인해 보도록 하자 .

지금 하는 실습은 8 장에서 DNS 서버를 우리가 직접 구축한 후에 잘 작동하는지 테스트 할 때도 사용하는 방법이다 .

웹 브라우저를 실행해서 www.daum.net 에 접속해 보도록 하자 . 별 문제가 없다면 정상적으로 접속이 될 것이다 .

DNS 서버에 문제를 발생시키자 , /etc/resolv.conf 파일의 IP 주소를 엉뚱한 주소로 변경 시키자 .

65

Page 66: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

웹 브라우저를 닫고 다시 실행한 후에 , www.daum.net 에 다시 들어가 보자 . 접속할 수 없을 것이다 .

인터넷이 되지 않는다면 DNS 서버의 문제인지 , IP 설정이 잘못되어서인지를 바로 알기가 어렵다 . 그 중에서 DNS 서버가 원인을 발생시켰는지를 파악해 보도록 하자 .

우선 , /etc/resolv.conf 에 설정된 DNS 서버 외에 다른 DNS 서버의 주소를 알아내자 . 호스트 OS 의 명령 프롬프트에서 “ nslookup” 이라고 입력해서 나오는 주소도 DNS 서버의 주소다 .

66

Page 67: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

터미널에서 “ nslookup” 명령을 입력하자 . “server” 라고 입력해서 나온 결과가 현재 페도라 서버에 설정된 DNS 서버

다 .

위에서 변경했던 IP 로 결과가 나온다 . www.daum.net 를 입력한다 . 잠시 후에 , 아래와 같은 오류 메시지가 나온

다 . 현재 설정된 DNS 서버가 응답을 하지 않기 때문이다 .

67

Page 68: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

“server < 새로운 DNS 서버 주소 >” 로 DNS 서버를 변경하고 , 다시 www.daum.net 을 입력해 보자 . 새로운 DNS 주소는 호스트 OS 에서 확인한 IP 주소를 넣는다 .

이와 같이 DNS 서버를 변경하여 네트워크가 응답한다면 , /etc/resolv.conf에 설정된 DNS 서버에 문제가 있는 것이지 그 외의 네트워크 설정에는 문제가 없는 것이다 .

68

Page 69: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

5. 네트워크 관련 설정 및 명령어

/etc/resolv.conf 에 정상적으로 작동하는 DNS 서버의 주소를 입력한다 . IP 주소 , 게이트웨이 주소 등의 정보를 변경한 후에는 “ service

network restart” 를 해줘야 시스템에 적용되지만 , /etc/resolv.conf 의 “ nameserver” 부분을 수정한 후에는 이를 수행할 필요가 없다 .

그 이유는 웹 브라우저 또는 nslookup 에서 URL 을 조회하는 경우에 실시간으로 /etc/resolv.conf 파일을 열어서 확인하기 때문이다 .

69

Page 70: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

6. 파이프 , 필터 , 리다이렉션

리눅스의 기본 동작과 관련하여 아주 중요한 개념인 파이프와 필터 그리고 리다이렉션에 대해서 이해해 보도록 하자 .

파이프 (pipe) 두 프로그램을 연결해주는 연결 통로의 의미 “|” 문자를 사용함 (\ 키를 “ Shift” 와 함께 누른 글자 )

[ 사용 예 ]

# ls -l /etc | more

그냥 “ ls -l /etc” 명령을 입력하면 파일이 너무 많아서 , 페이지가 넘어 가므로 한 개 페이지씩 보겠다는 의미

70

Page 71: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

6. 파이프 , 필터 , 리다이렉션

필터 (filter) 필요한 것만 걸러주는 명령어 grep, tail, wc, sort, awt, sed 등 주로 파이프와 같이 사용된다 .

[ 사용 예 ]

# ps -ef | grep bash

: 그냥 “ ps -ef” 는 모든 프로세스 번호를 출력하므로 , “bash” 라는 글자가 들어간 프로세스만 출력

# rpm -qa | grep bind

: 설치된 패키지 중에서 “ bind” 라는 글자가 들어간 패키지를 출력 그냥 “ rpm -qa bind” 를 할 경우에는 “ bind-utils” 는 출력되지 않음

71

Page 72: 서버 관리 및 실습

WONKWANG UNIVERSITY Division of Information and e-Commerce - HCL

6. 파이프 , 필터 , 리다이렉션

리다이렉션 (redirection) 표준 입출력의 방향을 바꿔줌 표준 입력은 키보드 , 표준 출력은 모니터이지만 이를 파일로 처리하고 싶을

때 사용

[ 사용 예 ]

# ls -l > aa.lst

: ”ls -l” 의 결과를 화면에 출력하지 말고 , aa.lst 라는 파일에 쓰도록 한다 . 단 , aa.lst 파일이 기존에 있으면 덮어 쓴다 . (overwrite)

# ls -l >> aa.lst

: 위와 동일 . 단 , aa.lst 파일이 기존에 있으면 기존의 내용에 이어서 씀 . (append)

# sort < aa.lst

: aa.lst 파일을 정렬해서 화면에 출력한다 .

# sort < aa.lst > bb.lst

: aa.lst 파일을 정렬해서 , bb.lst 파일에 쓴다 .

72