UNIX-명령들 (others)

Download Report

Transcript UNIX-명령들 (others)

UNIX Administration
컴퓨터전자통신공학부 김광현
E-mail: [email protected]
URL: bravo.kwangju.ac.kr/~ghkim
목차










UNIX 소개
 Apache 웹 서버 설치 및 운영
UNIX 기본
 해킹 사례 분석 및 대책
UNIX 활용
System Administration
Boot and Shutdown
UNIX File System
Management
User and Group Management
Administration Commands
Installing Software
Backups and Restores
Network Management

광주대학교
UNIX Administration
2
UNIX 소개
UNIX 소개

UNIX의 정의





컴퓨터에서 프로그램을 실행시키고 자원을 관리하는 운영체제의 일종
주로 대형 서버나 Workstation 에서 사용됨
System V계열과 BSD계열이 있음
PC 에서 사용하는 Linux역시 UNIX 계열의 OS임
UNIX의 특징





Multi-user : 여러 사용자가 사용 가능하다.
Multi-tasking : 사용자가 여러 프로그램을 동시 실행 가능하다.
Multi-choice : 다양한 사용자 인터페이스 지원된다.
이식성(Portability)이 좋다.
컴퓨팅 환경의 확장이 용이하다.
광주대학교
UNIX Administration
4
UNIX 소개(cont.)

UNIX의 역사









1960년 대말 AT&T의 Bell 연구소와 MIT 대학 공동으로 Multics 운영
체제 개발
1969년 Bell 연구소 연구원 Thompson이 Ritchie의 도움으로 파일 유
틸리티(cp, mv) 및 Shell 명령어 해석기 개발
Multics와 유사한 발음으로 UNIX(Brian이 제안)라 명명함
1971년 Ritchie가 B를 기초로 프로그램 언어인 C 개발
1973년까지 기존의 UNIX를 C로 재작성
1970년대 Bell 연구소에서 대학에 UNIX를 저가로 판매
이후 여러 연구소와 단체가 UNIX에 중요한 기능을 추가
HP사와 SUN, DEC 등의 회사가 UNIX 개발에 참여
현재 PC 부터 Super-Computer까지 널리 보급됨
광주대학교
UNIX Administration
5
UNIX의 기본
UNIX의 기본 - login

login



Consol이나 Terminal을 이용해서 UNIX Server에 접속하는 과정
UNIX가 Multi-user환경이기 때문에 각각의 사용자들의 정보를 보호하
기 위함
login 과정

telnet <자신이 접속하고자 하는 서버 이름>


login: <사용자 계정>


예) telnet bravo
예) login : imp
Password: <사용자 계정 비밀번호>

광주대학교
예) password : (활성화 되지 않음 )
UNIX Administration
7
UNIX의 기본 – login (cont.)
UNIX OS 버전
login 프롬프트
Password 프롬프트
마지막 종료시간
접속 주소, 서버 환경
Root 메시지
자신의 banner 메시지
초기 프롬프트
광주대학교
UNIX Administration
8
UNIX의 기본 - Shell

Shell




DOS의 command.com과 비슷한 역할
프로그램으로 명령을 입력 받아 이를 해석하고 처리해 주는 역할을 수
행
UNIX는 Multi-choice 환경으로 사용자가 선택 가능함
Shell의 종류





C Shell – 현재 가장 많이 사용됨
Bourne Shell
Korn Shell
Bourne again Shell – Linux의 기본 Shell
tcsh
광주대학교
UNIX Administration
9
UNIX의 기본 – Shell(cont.)

자신의 Shell 알아보기

ps –f




sh : Bourne Shell
csh : C Shell
ksh : Korn Shell
사용자 환경 설정 파일(C Shell 인 경우)




.cshrc : DOS의 config.sys(여러 가지 초기화 명령)와 비슷함
.login : terminal setup 관련 내용이 들어있음
.profile : User만의 독특한 설정 파일
.logout : logout 할 때 행하고자 동작 명시
광주대학교
UNIX Administration
10
UNIX의 기본 – 환경 설정

기본적 .cshrc file 내용
.cshrc
광주대학교
UNIX Administration
11
UNIX의 기본 - 환경 설정(cont.)

기본적 .login file과 .profile내용
.login
.profile
광주대학교
UNIX Administration
12
UNIX의 기본 – 기본 명령어

passwd (change login passwd)




exit, logout


현재의 user name을 나타내 줌
who (who is logged in, what are they doing)


접속을 종료할 때 사용
whoami


패스워드를 바꾸는 명령
영문, 숫자를 섞어서 6~8자 내외
첫번째로 숫자나 특수문자가 올 수 없음
Username, 접속 방법, login time, 접속 IP Address 등
id

user id 와 user가 속한 group id를 알려줌
광주대학교
UNIX Administration
13
UNIX의 기본 – 기본 명령어(cont.)

cal [month] [year]


env


현재 자신의 directory 를 보여줌
cd (change working directory)




자신의 설정된 환경 변수들을 보여줌
pwd


% cal 12 1999 => 1999년 12월 달력을 보여줌
% cd => user의 Home directory로 이동
% cd .. => 현재 directory의 상위 directory로 이동
% cd [directory 경로] => 정해진 directory로 이동
ls (list contents of directory)

현재의 directory 내용을 보여줌(DOS의 dir 명령과 같다)

예) % ls [-option] [filename]
광주대학교
UNIX Administration
14
UNIX의 기본 – 기본 명령어(cont.)

option


-a : 숨겨진 파일(‘.’으로 시작하는 파일)까지 보여줌
-l : file에 대한 자세한 내용을 보여줌
-rw-r-- r-허가 상태


student
소유자
Group
3059
크기
8월 12일
생성된 날짜
12:24 pr
시간
root directory에서는 사용하지 말 것.
-s : file의 대략적인 크기를 보여줌
-t : 최근의 사용순서대로 정렬하여 보여줌


링크수
imp
-R : 하위 directory의 내용까지 보여줌


1
(최근에 사용한 file을 찾을 때)
option의 중복 사용 가능

광주대학교
예) % ls –alr
 숨겨진 file 까지 하위 directory의 내용까지 자세하게 보여줌
UNIX Administration
15
UNIX의 기본 – 기본 명령어(cont.)

date (date) : 시스템의 날짜와 시간의 표시

형식

기능

option






광주대학교
a
h
D
J
r
T
date [MMDDhhmm[YY]]
date [+format]
시스템의 현재 시간과 날짜를 표시한다. Superuser는 시간과
날짜를 변경시킬 수 있다. +format을 사용하여 date의 출력
형식을 명시할 수 있다.
abbreviated weekday-sun to Sat
abbreviated month-Jan to Dec
date in mm/dd/yy format
Julian date (001-366)
time in A.M/P.M notation
time in HH:MM:SS format
UNIX Administration
16
UNIX의 기본 – 기본 명령어(cont.)

예) % date
Weds May 24 14:23:45 KST 1995
% date 0524156
Weds May 24 15:36:00 KST 1995
% date “ +Date = %D Time = %T”
Date = 05/26/95 Time = 13:12:07

time (time) : 커맨드의 실행시간 표시


형식 time command
기능 command를 실행하고 아래와 같은 실행 시간을 표시함




real
user
sys
전체 실행시간의 Total
CPU의 활동 시간
커널의 활동 시간
예) % time cc average .c
4.3 real 1.2 user 1.4 sys
광주대학교
UNIX Administration
17
UNIX의 기본 – 기본 명령어(cont.)

touch (change file access and modification times)


file의 최종 수정시간을 변경시켜줌
예) % touch [filename]


du (disk usage)


현 directory의 하위 directory들이 사용하고 있는 디스크 용량을 보여
줌
option



만약 file name에 해당하는 file이 없는 경우 file 생성
-s : 사용 총량만을 알려줌
-a : 모든 file의 사용량을 알려줌
df (disk free)


디스크의 총량과 사용량 남은 량 들을 알려줌
-k option 사용 시 킬로바이트 단위로 보여줌
광주대학교
UNIX Administration
18
UNIX의 기본 – 기본 명령어(cont.)

chmod (change mode) : 파일 액세스 모드의 변경



형식 chmod mode files(s)
기능 파일의 사용 허가권(모드)를 변경한다.
option


mode
u
g
o
user
group
other
 +
add permission
 remove permission
 =
reset permission
permission set number

0
1
2
none
execute
write

4
read


광주대학교
a
all(ugo)
UNIX Administration
19
UNIX의 기본 – 기본 명령어(cont.)

access permission










r
w
x
l
s
t
u
g
o
read
write
execute
set locking privilege
set user or group ID mode
set sticky bit(save text) mode
user’s current permission
group’s current permission
other’s current permission
예) chmod 644 test
chmod 755 test
chmod a+x test
chmod o-w test
광주대학교
UNIX Administration
20
UNIX의 기본 – 기본 명령어(cont.)

umask (user mask) : 파일 생성시 허가권 요청에 대한 마스크 설정



형식 umask mask
기능 파일을 생성할 때 사용자가 요청하는 허가권에 대하여 시스템이 제한을
가하는 make값을 설정한다. 인수를 정하지 않으면 파일 생성 허가권의 현재
값을 표시한다.
option & mask





0
1
2
4
not to restrict any permission
to restrict execute permission
to restrict write permission
to restrict read permission
예)


광주대학교
umask
umake
22 test
000 test
UNIX Administration
21
UNIX의 기본 – 기본 명령어(cont.)

chown (change file ownership)



chgrp (change file group ownership)



File의 소유권을 다른 사람에게 넘겨주는 명령
예) % chown [소유자] [file name]
File의 소유권을 다른 그룹으로 넘겨주는 명령
예) % chgrp [group] [filename or directory]
cp (copy files)




File을 복사하는 명령
예) % cp [복사할 file name] [복사될 경로]
cp 명령은 Meta 문자(‘*’, ‘?’)를 사용 가능함
예) % cp test* ../
광주대학교
UNIX Administration
22
UNIX의 기본 – 기본 명령어(cont.)

mv (move file)


File을 옮기는 명령, 사용법은 cp와 같음.
Mv 명령으로 file명을 바꿀 수 있음


rm (remove)




File을 지우는 명령
예) % rm test*
rm –r option은 아주 강력하고도 위험한 명령임.
mkdir (make directory)


예) % mv test.file test.test
새로운 directory를 만드는 명령
rmdir (remove directory)

Directory를 삭제하는 명령
광주대학교
UNIX Administration
23
UNIX의 기본 – 기본 명령어(cont.)

chsh (change shell)



file (determine file type)



File의 종류가 무엇인지를 알려줍니다.
예) % file [filename]
head (display first few lines of files)



자신의 shell을 바꾸는 명령. 이 명령이 없는 경우도 있음.
‘sh’는 bourn shell, ‘ksh’은 korn shell, ‘csh’ 은 C shell로 바꿈
File의 처음 몇 개의 행을 보여주는 명령
예) % head [-n] [filename] -> ‘n’개의 line을 보여줌
tail (deliver the last part of a file)


File의 끝부터 몇 개의 행을 보여주는 명령
예) % tail [-n] [filename]
광주대학교
UNIX Administration
24
UNIX의 기본 – 기본 명령어(cont.)

cat (concatenate and display files)




File의 내용을 보여주는 명령.
별로 크기가 크지 않은 text file을 볼 때 사용
예) % cat test.file
option


광주대학교
% cat –s test.file : 공백라인을 삭제하고 보여줌
% cat –n test.file : 화면에 line number를 붙여줌
UNIX Administration
25
UNIX의 기본 – 기본 명령어(cont.)

more (browse or page through a text file)



File의 내용을 볼 때 사용하는 명령. File의 내용을 한 화면씩 보여줌.
스페이스바를 누르면 다음 화면이 스크롤 됨.
예) % more [option] [filename]
option







-s : 공백 line을 제거하고 보여줌
+n : ‘n’ line부터 보여줌
+/문자열 : 그 문자열이 있는 곳부터 보여줌
q : 종료
v : 현재 line에서 vi 편집기를 시작함
= : 현재의 line number를 알려줌
Ctrl-B : 한 화면 전으로 스크롤 됨
광주대학교
UNIX Administration
26
UNIX의 기본 – 기본 명령어(cont.)

pg (files perusal filter for CRTs)




more와 비슷한 기능을 제공. 이전 화면을 볼 수 있는 기능
Enter키를 누르면 다음 화면을 보여줌
예) % pg [option] [filename]
option










광주대학교
-s : 공벽 line 제거
+n : n번 line부터 보여줌
+/문자열 : 그 문자열이 있는 위치부터 보여줌
nl : n번 line을 보여줌
+nl : 현재부터 n행 후의 내용을 보여줌
-nl : n행 이전의 내용을 보여줌
/문자열 : 문자열 검색
// : 반복되는 패턴 검색
. : 현재 화면 재 출력
v : vi 편집기 실행
UNIX Administration
27
UNIX의 기본 – redirection & pipe

redirection


pipe


출력 방향을 변경시킴
한번에 여러가지 명령을 처리할수 있음
출력 방향 변경 (‘>’)

우선 file을 생성. ‘%’은 프롬프트임.




광주대학교
% touch test : 빈 file 생성
% cat test : 아무것도 나타나지 않음
% ls –al > test : 화면상엔 변화가 없음
% cat test : ??
UNIX Administration
28
UNIX의 기본 – redirection & pipe(cont.)

출력 방향 변경 추가 (‘>>’)




% ls –al >> test : 역시 화면 변화 없음
% cat test : test file에 내용 추가됨
% rm test* : test로 시작하는 모든 파일 지움
cat을 이용 edit하는 방법

% cat > test
이것은 test입니다. : 문자열 입력후 enter
^Ctrl-D


% cat test : ??
cat을 이용한 문자열 추가 방법

% cat >> test
이번엔 추가입니다. : 문자열 입력후 enter
^Ctrl-D

광주대학교
% cat test : 내용이 추가됨
UNIX Administration
29
UNIX의 기본 – redirection & pipe(cont.)


입력 방향 변경 (‘<‘)
wc(display a count of lines, words and characters in a file)

File안의 line수와 단어 수 그리고 문자의 수를 세를 명령

option : -l : line 수 –w : 단어의수 –c : 문자의 수




% wc test
% wc < test
% cat test | wc : 모든 line, 단어, 문자의 수가 출력됨
Pipe : 파이프

Pipe는 명령의 출력을 다른 명령으로 연결할 때에 사용됨



광주대학교
% who > wc –l
% ls –al
% who | wc –l
UNIX Administration
30
UNIX의 기본 – redirection & pipe(cont.)

uniq (report or filter out repeated lines in a file)


중복된 line, 공백 들을 제거하고 출력하는 명령
option






광주대학교
-d : 반복되는 line만 출력
-c : 중복된 횟수만 출력
-u : 반복되지 않은 line만 출력
% cat >> test
Hello
Enter
Enter
^Ctrl-D
% cat test
% uniq test
UNIX Administration
31
UNIX의 기본 – Meta Characters

Meta Charcters


다른 문자와는 다르게 독립적으로 다른 의미를 가지고 사용되는 문자
대표적 Meta Charcters









광주대학교
* ? [ ] : Wild card charcters
> >> < | : Redirection charcters
& : Background job charcters
$ : Shell 변수의 값을 이용할 때
% ls t* : ‘t’로 시작되는 모든 문자와 대체됨
% ls t? : ‘t’로 시작되는 두문자와 대체됨( ?가 하나의 문자 )
[a-r] : a에서 r까지의 문자와 대체됨
% game & : game을 백그라운드로 실행함
% echo $path : 환경변수 path의 값을 보여줌
UNIX Administration
32
UNIX의 기본 – 추가 명령어

man (find and display reference manual pages)


각 명령어에 대한 online 도움말을 제공함
예) man [명령어]


이 명령은 자동으로 ‘more’명령을 수행한다.
sort (sort, merge, or sequence check text file)



정보를 지정한 방식으로 정렬해 주는 명령
예) sort [filename]
option





광주대학교
-d : 사전식 정렬
-f : 대문자를 소문자로 간주
-n : 숫자로 정렬
-r : 역순 정렬
+m : m번째 필드로 정렬한다.
UNIX Administration
33
UNIX의 기본 – 추가 명령어(cont.)





% sort test
% cat test
% ls –al | sort –f : 알파벳순 정렬
% ls –s |sort –n : 크기순 정렬
ls –s | sort –n > list : list라는 정렬된 file 생성

spell

철자 검사를 하는 명령(대부분 소형 시스템에서는 사용 안함)
nl (line numbering filter)



line 번호를 붙여주는 명령 = cat –n 과 같은 기능
예) nl [filename]


광주대학교
% nl test
%cat –n test : 두 명령이 같은 결과를 냄
UNIX Administration
34
UNIX의 기본 – 추가 명령어(cont.)


% ls –al | nl
option











광주대학교
-ba : 공백에도 번호를 붙임
-bp문자 : 문자가 있는 line만 번호를 붙임
-s문자 : 번호와 line을 지정한 문자로 분리해 줌
% ls –al > test
% echo ” ” >> test
% echo ” ” >> test
% ls –al >> test
% nl test
% nl –ba test
% nl –bptest test
% nl test –s번째
UNIX Administration
35
UNIX의 기본 – 추가 명령어(cont.)

banner (make posters)



입력한 문자를 banner style로 찍어준다.
예) % banner Good-morning!
bc (arbitrary precision arithmetic laguage)


UNIX에서 제공하는 간단한 계산기(4칙 연산)
예) % bc




% bc
1+2+3+4+5+6+7+8+9 <enter>
45 : 정답
종료는 ^Ctrl-D 입력
광주대학교
UNIX Administration
36
UNIX의 기본 – 압축 명령어

tar (crete tape archives, and add or extract files)


File을 묶어주는 명령(압축은 하지 않음)
File을 묶을 때


File을 풀 때


% tar cvf [만들 filename.tar] [압축하고자 하는 대상]
% tar xvf [풀고자 하는 filename] [풀어놀 ditectory]
File을 풀지 않고 내용만 보고자 할 때

광주대학교
% tar tvf [보고자 하는 filename]
UNIX Administration
37
UNIX의 기본 – 압축 명령어(cont.)

compress


File 압축 명령
예) % compress [filename] : filename.Z가 생성됨


option



% compress temp.tar : temp.tar.Z라는 file이 생성됨
-v : 압축률을 보여줌
예) % compress –v temp.tar
uncompress


File 압축 해제 명령
예) uncompress [압축된 filename] : 원래의 file이 됨.
광주대학교
UNIX Administration
38
UNIX의 기본 – 정보 검색 명령

grep (search a file for a pattern)



File 내에서 정보를 검색하는 명령
예) % grep [flag] [pattern] [filename]
option





-c : 일치되는 라인의 수만을 출력
-i : 패턴에서 대소문자 구별 무시
-l : 패턴에 일치하는 file의 filename만 출력
-n : line 번호 포함
검색의 예


% grep imp /etc/passwd : /etc/passwd file에서 imp라는 문자를 검색
% grep csh /etc/passwd | wc –l

광주대학교
/etc/passwd file에서 C Shell을 쓰는 사용자수 검색
UNIX Administration
39
UNIX의 기본 – 정보 검색 명령(cont.)

echo (echo argument)


입력된 명령을 반향(반복)한다.
예) % echo [문자열]



광주대학교
% echo * : ls와 같은 기능을 함. ‘*’는 임의의 문자를 의미
% echo ? : ls ? 와 같음 ‘?’는 한 문자를 의미
% echo t* : t로 시작하는 모든 문자열
UNIX Administration
40
UNIX의 기본 – 정보 검색 명령(cont.)

<< (hear current)



<<는 >>와 같은 흐름 재지정 명령(Redirection)이다.
<<는 입력을 모사(simulate)하는데 쓰인다.
사용 예


광주대학교
% cat –n << endtest > myenv : text의 마지막에 endtext를 입력
my Home Directory is $home
my Path is $path
current Directory is $cwd
endtext
% cat myenv
UNIX Administration
41
UNIX의 기본 – 정보 검색 명령(cont.)

sed (stream editor)



sed는 파이프라인의 정보의 흐름을 편집하는 명령이다.
예) sed ‘s/피대체어/대체어/플래그’
대표적인 플래그는






광주대학교
g : line의 모든 패턴을 대체함. ‘g’를 쓰지 않으면 한 line에서 하나만을 대
체한다.
‘;’ : 여러 sed명령을 함께 실행할 수 있다.
% who : 이 화면 출력과 다음의 화면 출력을 비교해 보시오.
% who | sed ‘s/pts/Device/’
% more /etc/passwd
% more /etc/passwd | sed ‘s/:/-/g
UNIX Administration
42
UNIX의 기본 – 정보 검색 명령(cont.)

awk (pattern scanning and processing language)



단어 중심으로 text를 분석하는 명령. UNIX에서 가장 강력한 filter중
하나
awk는 입력되는 정보를 필드로 나누어 받아들입니다. 필드는 ‘$n’으
로 구분함
예) % awk ‘[command]’ : 가장 일반적 명령은 print임
% awk ‘[command]’ [filename]



% who | awk ‘{print $1}’
% who | awk ‘{print “ user ” $1 “ is on terminal ” $2}’
Flag


광주대학교
-f : 명령의 세부 사항을 file로부터 읽음
-F문자 : 입력되는 정보의 필드구분자로서 ‘문자’를 쓴다는 것임
UNIX Administration
43
UNIX의 기본 – 정보 검색 명령(cont.)



$0는 line전체를 가르킴
사용 가능한 특수문자




“\t” : tab
“\n” : 개행 문자
예) % ls –lF | awk ‘{print $5 “\t” $9}’
awk 프로그램은 language처럼 변수의 사용이 가능함



% awk –F : ‘{print $7}’/etc/passwd | sort | uniq –c : -c는 중복된 수
% ls –l | awk ‘{total = total+$5; print total “\t” $9}’
% ls –l | awk ‘{total += $5; print total “\t” $9}’
Awk에서 사용되는 유용한 변수


광주대학교
NF : number of filed의 뜻으로 마지막 필드의 수를 알 수 있음
NR : ordinal number the current record의 뜻으로 행의 수와 같음
UNIX Administration
44
UNIX의 기본 – 정보 검색 명령(cont.)



% awk –F ‘{print $NF}’ /etc/passwd | sort | uniq –c
% ls –l | awk ‘{print NR “:” $0}’
tee (replicate the standard output)


정보의 흐름을 복사하는 명령. 정보의 흐름을 둘로 쪼개는 것
option



-a : file에 덮어쓰지 않고 첨가하라는 명령
% who | tee who.out : 화면에 who 의 출력도 나오고 who.out이란 file에
출력의 내용이 저장됨
와일드 카드 ‘[ ]’ 를 써서 문자의 영역 지정 가능




광주대학교
% ls –l a* b* c* d*
% ls –l [abcd]*
% ls –l [a-d]*
% ls –l [d-f m .]* : d에서 f, m, 도는 ‘.’로 시작하는 file 검색
UNIX Administration
45
UNIX의 기본 – 정보 검색 명령(cont.)

whereis (location the binary, source, and manual page file for a command)
 시스템 경로상의 어디에 위치하는가를 알려주는 명령
 예) whereis [찾을 filename]

광주대학교
% whereis mkdir
mkdir: /usr/bin/mkdir /usr/man/man1/mkdir.1
/usr/man/man2/mkdir.2
UNIX Administration
46
UNIX의 기본 – 압축 명령어(cont.)

find (find files)



찾고자 하는 file의 위치를 알려주는 명령
예) find [path] [-option] [pattern]
option






-atime [n] : file이 n일 전에 touch(접근)되었으면 ‘true’
-ctime [n] : file이 n일 전에 생성되었으면 ‘true’
-exec [command] : 명령을 실행
-mtime [n] : file이 n일 전에 수정되었으면 ‘true’
-name [pattern] : 패턴에 맞는 file명이면 ‘true’
-type [file 종류] : file이 종류가 맞으면 ‘true’



‘d’ : directory, ‘f’ : file, ‘l’ : link
-user [name] : file의 사용자가 name이면 ‘true’
예) % find . –name “*.c” : 현재 디렉토리 밑에 .c로 끝나는 file 검색
% find /usr1 –user “imp” : file의 소유자가 imp인 모든 file 검색
광주대학교
UNIX Administration
47
UNIX의 기본 – 작업 제어 명령

Process







UNIX에서 실행 중인 모든 프로그램
UNIX는 여러 개의 Process가 동시에 수행 가능함
OS차원의 Process scheduling을 지원함
각 Process는 Process ID(PID)를 가지고 있고, 또 상태를 가지고 있음
UNIX의 Process는 계층적 구조를 가지고 있음
현재 사용되는 있는 Process는 Foreground라고 하고 잠시 중단되거
나 뒤편으로 넘겨논 상태의 모드를 Background라고 함
예) % man fg : fg에 대한 매뉴얼 페이지를 보여주는 명령
Ctrl-Z : 작업 중단
% jobs : 현재의 백그라운드 작업 내용을 보여주는 명령
[1] +중단됨(사용자) man fg
% fg : 다시 Foreground로 작업이 넘어옴
광주대학교
UNIX Administration
48
UNIX의 기본 – 작업 제어 명령(cont.)








^Ctrl-Z를 누름으로써 작업을 백그라운드로 전환할 수 있다.
jobs명령으로 작업의 내용을 볼 수 있음
fg명령으로 다시 Foreground로 다시 작업을 전환할 수 있음
사용자의 입력을 요하거나 화면에 출력을 해야 하는 Process들은
Background에서는 실행이 중지됨
사용자의 입력이 필요 없는 경우나 잠시 실행을 중지시킬 때
Background로 Process를 실행시켜야 함
Background에서 중지되어 있는 명령 Background에서 실행시키려면
bg명령을 줌
프로그램을 Background로 바로 보낼 때는 명령의 끝에 ‘&’를 줌
예) % find / -name “*text*” > test.bg & : text라는 문자열이 들어간 모
든 file을 찾아 test.bg에 넣는다.
광주대학교
UNIX Administration
49
UNIX의 기본 – 작업 제어 명령(cont.)

fg



bg



Background의 중지된 Process를 실행시킴
예) % bg %[작업ID]
jobs


Background의 Process를 Foreground로 실행함
예) % fg %[작업ID] : 작업 ID는 jobs를 실행했을 때 제일 앞에 나오는
수
Background의 작업들의 상태를 보여줌
ps (report process stastus)


Process의 상태를 보여주는 명령
option

광주대학교
-a : 현재의 터미널과 연관된 모든 Process를 보여줌
UNIX Administration
50
UNIX의 기본 – 작업 제어 명령(cont.)




-A : 현재 시스템의 모든 Process를 보여줌
-e : 현재 실행중인 모든 Process를 보여줌
-l : 자세한 Process의 정보를 보여줌
kill (terminate or signal processes)



Process를 강제 종료시키는 명령
예) % kill [-signal] [PID] [&JOB ID]
signal



광주대학교
-l : signal의 목록 제공
-9 : 무조건 종료시키는 강력한 명령
예) % man ps &
% ps
% jobs
% kill [PID] or [%JOBID]
% ps
% jobs
UNIX Administration
51
UNIX의 활용
UNIX의 활용 - VI Editor

VI


Terminal 설정




% vi 라고 입력했을 때 에러(error)가 나는 경우
csh(C Shell) : .login file에 setenv TERM vt100
sh(Bourne Shell) : .profile file에 TERM=vt100; export TERM
Mode



UNIX에서 주로 사용하는 화면지향 편집기
명령 모드 : 명령을 입력할 수 있는 모드
입력 모드 : ‘I’를 입력하여 입력이 가능한 모드
vi를 이용한 문서 작성

% vi [작성할 file name]
광주대학교
UNIX Administration
53
UNIX의 활용 - VI Editor(cont.)

커서의 이동

문자 단위의 이동


대부분의 터미널에서는 화살표키로 이동 가능
만약 화살표카가 지원되지 않는 경우는 다음의 키를 이용
k
h
ㅣ
j

줄단위의 이동



광주대학교
n : 현재 행으로부터 n번째 행으로 이동
+ : 다음 행의 처음으로 이동
- : 이전 행의 처음으로 이동
UNIX Administration
54
UNIX의 활용 - VI Editor(cont.)

단어, 문장 절 단위이동
광주대학교

f 문자 : 다음에 나타나는 “문자”로 이동

F 문자 : 이전에 나타나는 “문자”로 이동

( : 문장의 처음으로 이동

) : 문장의 끝으로 이동

; : 같은 방향으로 다음 “문자”로 이동

{ : 커서가 인접한 패러그래프의 시작위치로 이동

} : 커서가 인접한 이전 패러그래프의 시작위치로 이동
UNIX Administration
55
UNIX의 활용 - VI Editor(cont.)

화면 단위 이동
광주대학교

^B : 이전 화면으로 이동

^F : 다음 화면으로 이동

^U : 반화면 앞으로 이동

^D : 반화면 뒤로 이동

z :커서의 위치를 화면의 Top으로 스크롤

z. : 커서의 위치를 화면의 중앙으로 스크롤

z- : 커서의 위치를 화면의 bottom으로 스크롤

^L : 화면의 재 출력
UNIX Administration
56
UNIX의 활용 - VI Editor(cont.)

삽입과 지우기, 복구, 교체

삽입







i : 현재 커서의 위치부터 삽입
a : 현재 커서의 위치 다음부터 추가 시작
A : 현재 줄의 마지막에 추가 시작
I : 현재 줄의 처음에 추가 시작
o : 현재 라인의 아래에 새로운 라인을 열어준다.
O : 현재 라인의 위에 새로운 라인을 열어준다.
지우기





광주대학교
x : 커서 위치의 한 문자를 지운다.
X : 커서 이전의 한 문자를 지운다.
dd : 현재의 행을 지운다.
ndd : n개의 라인을 지운다.
dG : 현재 행부터 file의 끝까지 지운다.
UNIX Administration
57
UNIX의 활용 - VI Editor(cont.)




복구




d0(숫자 0) : 행의 시작부터 현재 앞 문자까지 지운다.
d1G : 현재 행부터 file의 시작까지 지운다.
dnG : 현재 행에서 n번째까지 지운다.
p : 버퍼의 내용을 현재 줄 이전에 복구한다.
P : 버퍼의 내용을 현재 줄 다음에 복구한다.
VI -r [작업하던 file name] : 시스템이 갑자기 꺼졌을 때 복구 명령
교체



광주대학교
cw : 현재 위치에서 단어 교체
cfc : 현재 위치에서 'c' 문자까지 변경
' . ' : VI에서 마지막 명령을 반복하라는 뜻이다.
UNIX Administration
58
UNIX의 활용 - VI Editor(cont.)

검색 치환

검색



/문자열 : 문자열을 앞으로 검색한다.
?문자열 : 문자열을 뒤로 검색한다.
치환






[범위]s/old/new/[cgi] : old를 new로 치환해 준다.
[범위] : 숫자, $, .(현재 위치)등을 지정한다.
[cgi] : c는 변경시 변경여부를 묻는 플래그
g는 한 줄의 모든 것을 변경하는 것이고
I 는 검색시 대소문자를 구분하지 않는다.
예) 10,$s/old/new/g : 10줄에서 파일의 끝까지 수행

광주대학교
g/foobar/s/bar/baz/g : 전체 file에서 “foobar”를 찾아서 “foobar” 중 bar를
baz로 치환한다.
UNIX Administration
59
UNIX의 활용 - VI Editor(cont.)

블록 명령

블록을 file에 저장, 첨가




블록 읽어 오기


명령모드 ":" 프롬프트 상에서
: 10,20w [file name] : 블록을 file에 저장
: 10,20w >> [file name] : 블록을 file에 추가
: 10,20r [file name] : 10에서 20까지에 file을 읽어 현재 줄에 삽입
블록 자르기



광주대학교
여러분이 수정을 하거나 삭제를 하면 버퍼에 그 내용을 복사를 합니다.
여기서 필요한 부분을 버퍼에 복사하는 것을 yank 라 합니다. 이 내용을
나중에 다시 불러와서 사용할 수 있습니다.
buffer에도 이름을 부여하여 블록을 저장할 수 있습니다. ( " 사용)
"name5dd : 현재 줄에서 5줄을 삭제하고 name으로(여러분이 부여한) 버
퍼에 기록
UNIX Administration
60
UNIX의 활용 - VI Editor(cont.)

블록 복사





블록 붙이기





yw : 한 단어 버퍼에 기록
y$ : 줄의 끝까지 기록
yy : 현재 줄을 버퍼에 기록
역시 name을 주어 buffer에 기록 할 수 있다.
커서를 원하는 곳으로 이동한 후
p : 현재 커서 위치 오른쪽에 추가한다.
P : 현재 커서 위치 왼쪽에 추가한다.
namep : buffer에 있는 name의 블록을 현재 위치에 추가
다른 file 편집




광주대학교
% vi file file file file ......
다른 file로 이동할 때는 : 프롬프트 상에서 :n 이라 입력한다.
: shell 이라 치면 VI를 종료하지 않고 shell 화면으로 나갈 수 있다.
다시 VI로 이동할 때는 exit라 입력한다.
UNIX Administration
61
UNIX의 활용 - VI Editor(cont.)

VI 환경 설정




VI에도 환경을 설정할 수 있습니다.
Vi 상태에서 :set all을 입력하면 현재 사용중인 VI의 옵션 지정상태를 볼
수 있습니다.
이러한 옵션은 여러분의 HOME DIRECTORY에 .exrc란 file에 지정하지
않으면 디폴트값을 사용합니다.
다음은 현재 저자의 .exrc 의 내용입니다.
set wm=10
set redraw
set ai
set dir=/usr1/comsin/temp
광주대학교
UNIX Administration
62
UNIX의 활용 - VI Editor(cont.)

VI 중요한 옵션
옵션
약자
Defaulte
Value
의미
autoindent
ai
noai
자동 들여쓰기, 즉 바로 전의 행과 시작
같이함
ignorecase
ic
noic
탐색에 있어 대소문자를 구별하지 않음
magic
. * [ ~ 등을 탐색 또는 정규 표현식의
일드 카드로 또는 메타문자로 사용
nonu
에디터 각 행에 행번호가 매겨짐
noredraw
각 문자를 항상 알맞은 위치에 나타내 줌
noredraw은 1200보울 이하의 느린 터미
에 쓰임
magic
numver
nu
redraw
tabstap
ts
ts=8
Tab키 또는 Ctrl-I에 대응되는 공백의 개
수 저장
wrapscan
ws
ws
/ 또는 ? 연산자로 탐색을 하는 경우 사용
됨
광주대학교
wrapmargin
wm
UNIX Administration
ws=0
오른쪽 여백의 크기를지정
63
UNIX의 활용 – 자신의 환경 만들기

History


C shell 과 Korn shell은 여러분이 입력함에 따라 명령표를 만들어내
고 각각에 명령 번호를 지정한다.
C shell : C shell은 default로 지난번 로그인의 마지막 명령만을 기억
하고 있다.


명령들의 목록을 작성하기 위해서는 set history=n 이라는 환경을 설
정해야 한다.


예) & histrory
예) % set history=50 : 50개의 이전 명령 기억(화면에 변화 없음)
% set
항상 로그인 했을 때 이 history 기능을 사용하려면

광주대학교
환경 설정 file .cshrc에 set history=50 이란 내용을 추가
UNIX Administration
64
UNIX의 활용 – 자신의 환경 만들기(cont.)

C Shell의 history 명령 사용법
광주대학교
명 령
기 능
!!
이전의 명령 반복
!$
이전 명령의 마지막 단어를 반복
!*
이전의 명령의 첫번째 단어를 제외한
모든 단어를 반복
^a^b
이전 명령에서 a를 b로 대체
!n
History 목록에서 번호 n의 명령을 반복
UNIX Administration
65
UNIX의 활용 – 자신의 환경 만들기(cont.)

Alias


축약어. 긴 명령을 alias명령을 이용하여 쉽게 타이핑 할 수 있음
이 축약어 역시 여러분이 계속 사용하고 싶다면 .cshrc file 안에 넣
어 두면 됩니다.
사용법 : alias [새로운 alias명] [축약할 명령어]
 예) DOS명령어 dir를 쳐서 ls –l 의 출력이 나타나게 하는 예제
% alias : 현재 자신의 alias 상황을 보여줌
% alias dir ‘ls –l’
% dir

광주대학교
UNIX Administration
66
UNIX의 활용 – 자신의 환경 만들기(cont.)

Shell 변수


shell에는 각각의 shell이 사용하는 shell 변수가 있음
C shell에는 두 가지 종류의 shell 변수가 있습니다.




일반 shell 변수 : set 명령을 사용하여 생성하고 새로운 shell(서브 shell)
을 시작하면 인식할 수 없음
환경 shell 변수 : setenv 명령을 사용하여 생성하고 새로운 shell(서브
shell)에서도 인식가능함
일반 변수는 프롬프트 상에서 set 명령을 그리고 환경 shell 변수는
setenv 명령을 내리면 알 수 있습니다.
그리고 shell 변수명을 지정할 때 일반 shell 변수는 알파벳 소문자
를 그리고 환경 shell 변수명을 지정할 때는 대문자를 사용하는 것
이 BSD 계열의 Unix의 전통이다.
광주대학교
UNIX Administration
67
UNIX의 활용 – 자신의 환경 만들기(cont.)


환경 shell 변수는 서브 shell에서도 인식이 되므로 보통 .login file에
저장합니다.
환경 변수 값 알아보기


일반 shell 변수 값 지정



% set 변수명=값
보통 값을 지정할 때 "="기호 사이에 빈칸이 포함되어서는 안되나 ' 기
호나 " 기호를 사용하면 가능하다.
환경 shell 변수 값 지정


% echo $변수 name
% setenv 변수명 값 : "=" 기호를 사용하지 않는다.
shell 변수 제거


광주대학교
% unset 변수명
% unsetenv 변수명
UNIX Administration
68
UNIX의 활용 – 자신의 환경 만들기(cont.)

Default Shell 변수
변수
설명
HOME
사용자의 홈 디렉토리. 아무런 디렉토리 지정없이
cd명령을 수행했을 때 이동되는 디렉토리.
SHELL
사용자가 사용하는 Shell. VI같은 프로그램에서
Shell로 잠시 빠져 나갈 때 생성하는 새로운 Shell
바로 이 SHELL이다.
TERM
터미널에 관련된 값. DEC사의 Visual Terminal
Model 100이 표준임.
USER
UID와 계정이름을 확인할 때 사용하는 사용자 이
름
MAIL
편지가 Default로 들어가게 되는 우편함의 위치.
LONGNAME
광주대학교
USER의 Full Name.
UNIX Administration
사용자가 명령을
입력했을 때 검색할 디렉토리와
69
UNIX의 활용 – 자신의 환경 만들기(cont.)

Shell Script






Unix 표준 명령어를 조합하여 새로운 명령어를 만들 수 있도록 shell
의 기능을 활용할 수 있음
shell은 Unix 프로그램과 마찬가지로 file로부터 명령을 입력받을 수
있다. 이런 Unix 명령들로 구성된 file을 Shell Script라 함.
shell script는 Unix의 명령어들을 기록한 파일로 이루어진다.
shell script는 sh 'file name' 으로 실행된다.
shell script가 기록된 file을 Unix 명령어처럼 직접 실행할 수 있도록
하려면 chmod 명령으로 실행 권한을 부여하면 된다.
C shell은 sh(bourn shell)의 script도 실행할 수 있고 C shell의 script
언어를 이용한 script 명령을 실행할 수 있다.
광주대학교
UNIX Administration
70
UNIX의 활용 – 자신의 환경 만들기(cont.)

Shell script 예제

다음을 입력한 file을 만들고 chmod 명령으로 실행권한을 부여하여
실행시켜보십시오.
% echo “---- 현재 사용자의 프로그램 ----”
% w | sed '1,2d' | awk ‘{print "현재 "$1"님은 "$5 $6 $7"을 실행하고 있습니
다.”}' | sed 's/[1-9]//g'

.cshrc에 다음의 내용을 적어주면
set filec

파일 이름의 전체를 입력하지 않아도 인식가능한 곳까지만 타이핑해
도 shell 자체에서 file name을 결정해 준다.
광주대학교
UNIX Administration
71
UNIX의 활용 – Communication



tty : 어떤 디바이스를 통해 연결되었는가를 알기 위해서 사용.
tty 디바이스는 하나의 Unix file 이다.
Write


다른 사람(같은 서버 사용자)과 메시지를 주고받을 수 있도록 명령입
니다.
예) write [응답할 사용자 ID]

만약 당신이 write imp 이라고 했다면 imp 사용자의 화면에는 다음의
내용이 표시된다.
message from root on bravo(pts/0) [ 9월 14일 월 14:19:43 ] ...



광주대학교
이때 통신 예의는 imp가 응답하기 전까지는 먼저 메시지를 보내서는 안된
다는 것이다.
imp가 응답을 하면 그때부터 서로 메시지를 주고받으면 된다.
종료는 ctrl-D를 누르시면 됩니다.
UNIX Administration
72
UNIX의 활용 –
Communication(cont.)

mesg : 상대방의 메시지를 수신 할 것인가 안 할 것인가를 결정.



mesg y : 메시지 수신 허가
mesg n : 메시지 수신 불허
Mail


Unix의 모든 기능중 가장 인기 있는 것 중의 하나
메일 프로그램은 여러 가지가 있음



mail 그리고 SVR4 이후에 mailx 라고 불리는 것이 있음
mailx는 Berkeley mail이라고도 불림
여러분이 만일 이미 메일을 받았을 때 mailx를 실행시키면 다음과 같
은 내용이 출력된다.
mailx version 5.0 Tue Jul 15 21:29:48 PDT 1997 도움말 필요시 ? 입력.
"/var/mail/imp": 1개 메시지 1개 신규
>N 1 imp
Fri Dec 10 20:47 13/330 test
광주대학교
UNIX Administration
73
UNIX의 활용 –
Communication(cont.)



메시지를 일기 위해서는 읽고자하는 색인번호 입력
메시지 작성의 종료 : ^Ctrl-D나 ‘.’를 새로운 라인에서 입력
Mailx의 대부분의 명령은 첫글지만 입력하여 실행 가능
mailx 명령
headers
표제(제목)들을 나열해 줌
help or ?
Mailx 명령들에 대한 요약정보를 알려줌
delete
mail 주소
지정된 메시지를 삭제
지정된 주소로 메일을 보냄
print 메시지 지정된 메시지를 보여줌
reply
undelete
save [file]
quit
광주대학교
지금 읽은 메시지에 답신을 지정
삭제를 마크한 메시지를 해제
파일에 메시지를 보관
메일프로그램 종료
UNIX Administration
74
UNIX의 활용 –
Communication(cont.)

mail 보내기


% mailx [받을 사람 ID]
Subject : 보내고자 하는 메시지의 제목
미리 file로 작성한 내용을 메일로 보내고자 할 때


메시지를 입력하면서 사용할 수 있는 명령




% mailx –s “메일 제목” [받는 사람 ID] < 보낼 filename
~? : 도움말
~b : 메시지를 여러 명에게 복사해서 보낼 때 사용. 받은 사람들은 공동 수신
자를 알 수 없음
~c : 메시지를 여러 명에게 복사해서 보낼 때 사용. 받은 사람들이 공동 수신
자를 알 수 있음
메일 환경 설정 파일(.mailrc)
set askcc
set folder =/usr/imp/Mail
광주대학교
UNIX Administration
75
System Administration
System Administraion

시스템 관리


시스템 관리자가 UNIX System이 원할하게 작동되도록 하기 위해서
UNIX System상에서 수행하는 모든 관리작업들
전반적인 시스템 관리자의 책임 작업들

시스템 구성과 관련되는 작업




파일 시스템 관리





파일 시스템의 무결성 유지 보수
디스크의 사용도 점검
디스크 공간의 배정
파일 시스템의 생성, mount, unmount
반복적인 작업의 자동화

광주대학교
커널의 구성
주변장치의 구성과 설치
새로운 소프트웨어 설치
cron 유틸리티의 활용
UNIX Administration
77
System Administraion(cont.)

사용자 계정(account)의 관리





시스템 운영에 대한 평가





/usr/adm/acct 파일에 의한 시스템 사용도 평가
/usr/adm/wtmp 파일에 대한 로그인 정보의 추적
프린터 사용도 추적
log파일의 생성과 추적 평가
시스템 보안 관리



광주대학교
/etc/passwd 파일에 새로운 사용자 추가
/etc/group 파일에 새로운 그룹 추가
사용자를 위한 홈 디렉토리의 생성
사용자를 위한 start-up의 작성
중요 데이터의 2차 보전
해커(hacker)들로부터의 시스템 침입에 대한 대비
시스템 장애시의 비상 대책 수립
UNIX Administration
78
System Administraion(cont.)

시스템 특권 사용자

Superuser


대부분의 시스템 관리 작업들은 시스템 전반에 관하여 중대한 영향을 미
치는 정보에의 접근을 의미하므로 superuser의 권한이 필요함
Superuser의 권한을 얻는 방법







광주대학교
사용자가 시스템 콘솔(console)에서 시스템의 가동을 시작하여 단일 사용자
모드(single user mode)로 선택하면 자동적으로 superuser로서 login된다. 단
일 사용자 모드에서는 root로만 login할 수 있다
Superuser의 ID인 root를 사용하여 login하는 방법
일반 사용자로 login한 상태에서 su command를 사용하는 방법
시스템의 안전을 위해서 su command를 사용하는 것이 바람직하다.
어느 방법을 사용하든지 간에 superuser의 비밀번호를 요청한다.
올바른 비밀번호를 입력하면 superuser 특권으로 수행되고 있음을 의미
하는 프롬프트 #를 출력한다.
Superuer 특권이 요청되는 작업을 마치면 Ctrl-D를 입력해서 종료한다.
UNIX Administration
79
System Administraion(cont.)

su (substitute user/supeuser) : 새로운 사용자로 임시 교체


형식 su [option] [user]
기능



option



시스템 상에서 임시로 다른 사용자가 될 수 있도록 함으로써 다른 사용자의 화일들
을 액세스할 수 있도록 한다.
인수를 지정하지 않으면 root(superuser)로 가정한다.
-c command
완전한 다른 사용자로 로그인한다.
새로운 사용자로서 로그인한 후에 수행할 명령 지정
예
% su password:
#
$ su – imp
…
광주대학교
super user로 로그인
비밀번호 입력
root로 로그인한 결과
imp란 사용자로 로그인
UNIX Administration
80
System Administraion(cont.)

Superuser로 가능한 작업










시스템의 시동 및 종료
사용자 계정의 관리
시스템 clock의 설정
자원 사용의 제한에 대한 확장과 프로세스의 우선순의 결정
파일 소유자 변경
파일 시스템의 생성, 점검, 보수
파일 시스템의 mounting과 unmounting
장치 화일의 생성
시스템의 backup과 복구
crontab 파일의 조작
광주대학교
UNIX Administration
81
System Administraion(cont.)

그 밖의 특권 사용자

bin : system command의 소유자




Bin은 superuser에 비교해 별다른 특권은 없지만 /bin, /usr/bin의 모든 프
로그램과 장치화일을 소유한다.
일반적인 시스템 소유의 화일들은 root또는 bin으로 되어있다.
root대신에 bin으로 로그인하는 이유는 만약에 발생할 지 모르는 실수에
대비하기 위함이다.
daemon : 비특권 프로그램의 소유자




광주대학교
daemon은 보통 UID 1을 갖는다
화일들 중에는 어떤 특정한 사용자에 속하기 보다는 적절하게 UNIX에 속
해야만 하는 것들이 있는데 이런한 화일을 바로 daemon이 소유하게 된다.
그 이유는 root의 소유로 인하여 발생할 수 있는 보안상의 장애를 피하기
위함이다.
비슷한 이유로 UNIX 그룹인 daemon이 생성되어 있다.
UNIX Administration
82
System Administraion(cont.)

sys : kernel과 메모리 image들이 소유자



시스템에 따라서는 kernel의 주소공간(/dev/kmem), 시스템 실 메모리
(/dev/mem), 시스템 swap 공간의 iamge(/dev/swap)와 같은 특수화일들
은 sys사용가가 소유한다.
어떤 시스템에서는 sys 대신에 그룹 kernel이 사용된다.
nobody : 무소유의 소유자




광주대학교
대부분의 UNIX는 UID –1 또는 –2로 정의한다.
nobody는 특별한 허가권을 가져서는 않되거나 필요치 않는 프로그램의
소유자이다.
NFS(Network File System)는 네트워크 상의 source 파일 server들에게
이것을 사용한다.
여기서는 diskless client들은 단일 사용자 모드에서 어느 누구에게 의해서
도 reboot되어질 수 있다.
UNIX Administration
83
Boot and Shutdown
Boot and Shutdown

시스템 부팅 순서 (예 : Solaris 2.x)

Boot PROM 단계

System identification banner 표시


Self-test diagnostics의 실행



광주대학교
Boot program은 UFS Filesystem reader를 포함하고 있는 System 첫번째
Boot program인 Boot block(1-15 sector에 위치함)을 읽는다.(Boot PROM 내
의 Boot 장치는 변경시킬 수 있음)
Boot program load


Boot PROM의 자기 진단 Program이 System의 Hardware와 memory 확인함
자가 진단을 성공적으로 마쳐야만 다음 Boot과정을 실행함
PROM에 정의된 Boot장치에서 Boot program을 찾음


System 의 model, keyboard, host ID, PROM version, Ethernet address를 표
시
Filesystem reader는 Boot 장치를 열고 두번째 Boot program인 /ufsboot를
memory에 load한다.
/ufsboot program을 load한 후 Boot PROM은 Kernel(/kernel/unix)을 load
함
UNIX Administration
85
Boot and Shutdown(cont.)

Kernel 초기화 단계



Kernel은 스스로 초기화 한 후 /ufsboot program을 이용하여 module들을
load함
Kernel이 Root partition을 mount 하는 데 필요한 module을 읽고나면
/ufsboot program은 momory에서 제거되고, 계속해서 Kernel이 자원을 이
용하여 초기화한다.
/sbin/init 단계




광주대학교
Kernel이 사용자 프로세스를 생성하며 /sbin/init program을 실행시킨다.
/sbin/init program은 /etc/inittab file에 기록된 내용을 실행함
Init process는 하나의 rc script 또는 실행 가능한 다른 script 들을 차례로
실행시킨다.
이러한 script(/sbin/rc*)들은 Filesystem을 Check하고 mount하며, 여러
process들을 기동시킨다.
UNIX Administration
86
Boot and Shutdown(cont.)

System Init State(Run Level)



Solaris는 다음과 같이 8개의 Run level이 존재함
Run level : 선택된 프로세스 그룹하에서 실행하도록 하여진 소프트웨
어 구성을 말함.
현재 자신의 Run level이 몇인지 알고자 할 경우 사용하는 명령

% who –r

Run level 0 : PROM Monitor 화면으로 Power off하기 위한 레벨
Run level 1, s, S : 관리자 레벨로서 관리자만이 로그온 가능
Run level 2 : 멀티 유저 레벨, 자원 export 불가, Network disabled
Run level 3 : 멀티 유저 레벨, Default Run level, 자원 export 허용, Network
enabled
Run level 4 : 현재 사용하지 않는 레벨
Run level 5 : PROM Monitor level로 안전하게 Power off 하기 위한 레벨
Run level 6 : Operation System이 정지하고 Reboot하는 레벨
광주대학교
UNIX Administration
87
Boot and Shutdown(cont.)

Solaris와 Linux의 Run level 비교
Run
s, S
Solaris 2.x Action
Linux Action
Single user mode
0
PROM Monitor level
Halt (Do Not set initdefault to this)
1
Single user mode :
root & user mounted
Single user mode
2
Multi user mode :
No Resources exported
Multi user mode :
Without NFS and Networking
3
Multi user mode :
Machine Resource exported
Full Multi user mode
4
Not Currently used
Not Currently used
5
PROM Monitor level(Power off)
X11 (X-Window Start mode)
6
Halt and reboot to default state
Reboot (Do Not set initdefault to this)
광주대학교
UNIX Administration
88
Boot and Shutdown(cont.)

Shutdown


SunOS 5.x, Solaris 등의 UNIX System은 여러 프로그램은 계속해서
Running하기 위해 설계되었음
다음과 같은 경우에는 반드시 시스템을 halt하거나 shutdown시켜야
함






Turning off system power
Installing a new release of the operating system
Anticipating a power outage
Adding hardware to the system
Performing maintenance on a file system
Shutdown 시키는 방법



광주대학교
% shutdown –y –i[바꾸고자 하는 run level] –g[대기시간]
% shutdown –y –i5 –g5 : 5분 후에 시스템을 power off 하고자 할 때
% shutdown –y –i6 –g0 : 곧바로 시스템을 리부팅하고자 할 때
UNIX Administration
89
Boot and Shutdown(cont.)

Run Level Change


Run level은 telinit 명령이나 init명령으로 바꿀 수 있다.
Shutdown the system


Single-user state


telinit1
Multi-user state


telinit0
telinit 3
Shutdown and Reboot

telinit 6
 많은 사용자가 log-in 하고 있을 때 갑자기 run level을 바꾸면
File system의 손상을 가져올 수 있다. (STOP-A와 마찬가지 효과)
광주대학교
UNIX Administration
90
Boot and Shutdown(cont.)

Shutdown command

shutdown





halt



Multi-user일 때 사용하는 시스템 종료
로그인한 모든 user에게 경고 메시지를 보냄
기본적으로 1분의 waiting time을 줌
Shutdown 명령은 default로 system의 Run-level을 single-user state로 바
꿈
이 명령은 사용자들에게 경고 없이 즉시 system을 중지시킨다.
System을 shutdown 시키기 위하여 어떠한 script도 실행시키지 않음
Reboot



System을 shutdown 하기 전에 ‘sync’명령을 수행한 후 reboot 실행
이 명령은 log daemon에 log를 남기며 multi-user state로 Run level을 바
꿈
보통 시스템 자체적으로 reboot하거나 시스템이 crash된 경우 사용함
 System을 급하게 reboot하기 위한 명령 : uadmin 2 0
광주대학교
UNIX Administration
91
UNIX File System Management
UNIX File System Management

UNIX Kernel





UNIX의 핵심
특정 컴퓨터 시스템에서 UNIX 환경을 구축하는 핵심기능을 구축
하드웨어와 직접적으로 관계하며 UNIX 시스템의 다른 부분이 하드웨
어의 영향을 받지 않도록 함
UNIX 유틸리티와 사용자 프로그램은 커널을 호출하여 서비스를 받음
Kernel이 제공하는 서비스





파일관리와 보안, 입출력 서비스, 프로세서 스케쥴링과 관리
기억장소 관리, 인터럽트와 에러 처리, 날짜와 시간 서비스
시스템 작동 상황을 기록하는 사용상황통계 등
UNIX의 이식 작업(Porting)은 커널의 하드웨어 의존부를 하드웨어에 맞
게 변경하는 작업을 말한다.
UNIX의 Kernel은 80개가 넘는 시스템 호출을 제공함.
광주대학교
UNIX Administration
93
UNIX File System
Management(cont.)

UNIX의 File System




UNIX System은 여러 개의 물리적 디스크를 가지며 각각의 디스크는
하나 이상의 file system을 가지게 된다.
커널은 이러한 각각의 file system을 다루며 각각의 file system마다
device number(ex:/dev/dsk/c0t0d0s0)를 부여하며 이를 논리적
device로 다루게 된다.
File System은 데이터를 file 단위로 저장하며 이 file들의 집합이 적절
한 형태로 구성된 것을 말하며 UNIX의 file system은 tree구조를 이룸
하나의 file system은 boot block, super block, inode list, data block으
로 구성된다.
vfs
Virtual file system
ufs
UNIX file system(the standard traditional file system type)
nfs
Network file system
pcfs DOS file system mountable on UNIX
광주대학교
UNIX Administration
94
UNIX File System
Management(cont.)

Boot Block





File System의 첫 부분에 위치하며 Sun의 경우 첫번째 sector에 디스크
레이블이 들어가며 그 다음 15개 sector에 boot block가 들어감
이 16개의 sector는 8192byte(512*16)의 file system을 구성함
Boot block에는 운영체제를 boot하거나 초기화 할 bootstrap code가 들어
감
물론 시스템에서 boot하기위한 boot block이는 하나지만 각각의 file
system은 boot block을 가지고 있음
Super Block


File System에 관한 중요한 정보를 저장하는 block
구성 요소




광주대학교
File system의 크기, Free block의 수, Inode list 크기,
Free inode의 수, Free inod의 list, Free inode의 list 다음의 Free inode의 list
Free block list와 Free inode의 list를 위한 lock field
이 Super block은 메모리에 적재되어 사용되므로 시스템을 정지하고자
할 때는 항상 이 내용을 sync해야 함
UNIX Administration
95
UNIX File System
Management(cont.)

Inode list


UNIX는 sequential file, index acess file, direct acess file 등의 파일 구
조를 가지고 있지 않음
모든 파일은 index node 혹은 inode 라고 불리우는 정보 블록과 연결
되어 있고 이 안에 다음과 같은 파일에 관한 정보를 포함한다.






광주대학교
파일의 길이
디스크 안의 파일의 소유 블록
파일의 소유주(UID & GID)와 이 파일을 다른 사용자가 이용할 수 있는지
에 관한 정보
파일의 종류(일반, 특수, 디렉토리,…)
시스템 안에서의 reference counter(링크 수)
날짜 (생성일, 변경일, 접근일)
UNIX Administration
96
UNIX File System
Management(cont.)







이 정보블럭 안에는 어떠한 파일이름도 들어있지 않으며 한 파일의 선
택은 디렉토리라는 중간 과정을 통해서 이루어짐
디렉토리 또한 한 파일로 이루어졌기 때문에 이 안에는 시스템이 파일
을 구별할 수 있도록 일련의 번호(Index)들과 이름이 나열되어 있음
이렇게 함으로써 어떠한 파일도 디렉토리를 통하여 쉽게 reference에
의한 구별이 될 수 있으며 한 파일이 여러 디렉토리안에 저장 가능함
만약 inode가 0이라면 이 파일은 완전히 삭제된 것을 의미함
디렉토리 또한 한 파일에 속하기 때문에 디렉토리는 다른 디렉토리의
reference를 가지고 있을 수 있음
이러한 구조는 우리가 일반적으로 생각하는 디렉토리 구조 tree구조
와 유사하다.
inode하나는 64byte의 크기를 갖는다.
광주대학교
UNIX Administration
97
UNIX File System
Management(cont.)

UNIX File의 종류

일반 파일(ordinary file)






광주대학교
일반적인 데이터 파일과 소스코 등의 text file과 binary file을 말함
UNIX에서는 확장자가 어떤 특별한 의미를 지니는 것이 아니고 단지 사용
자가 편의상 사용하는 것이다.
따라서 확장자의 제한이 없다. 단지 컴파일러 등의 프로그램이 특별한 확
장자를 요구할 뿐이다.
File I/O는 커널 단계에서 buffering 작업을 해주기 때문에 file을 단순히
byte로 연결된 형태로 간주 할 수 있게 해준다.
이는 곧 디스크 상의 여러 곳에 저장되어 있는 file을 하나로 연결된 것처
럼 해준다.
UNIX에서 파일의 구조는 OS에 의해 제어되는 것이 아니고 이를 처리하
는 프로그램에 의해 제어된다.
UNIX Administration
98
UNIX File System
Management(cont.)

Directory file





디렉토리는 파일을 저장하는 파일이다.
디렉토리는 파일을 포함하며 또한 파일을 포함하고 있는 서브 디렉토리
를 가질 수 있다.
디렉토리는 일반 파일과는 다른 개념이지만 읽을 때는 일반 파일과 똑같
이 취급되며 빈 디렉토리라도 ‘.’과 ‘..’ 두 파일을 가지고 있다.
‘.’는 자기 자신을 가르키며 ‘..’는 상위 디렉토리를 가르킨다.
특수 파일(special file)


광주대학교
UNIX의 특별한 파일 타입으로 UNIX는 주변 장치도 하나의 파일로 간주
하기 때문에 Printer, Tape, Memory 등은 파일 구조상의 하나의 파일로
나타낸다.
이러한 개념으로 UNIX는 모든 Device의 Input, Output 을 이 특수파일을
통해 Channel을 형성하여 처리한다.
UNIX Administration
99
UNIX File System
Management(cont.)

Hard link & Symbolic link file








광주대학교
Link란 하나의 inode 에 여러 개의 파일이 연결되는 것을 뜻한다.
예를 들어 /home/user1/data라는 디렉토리가 있을 때 “..”파일은 user1 디
렉토리의 ‘.’ 파일을 가르키고 있다.
Hard link는 이러한 link의 개념과 같이 똑같은 inode를 가지는 파일을 생
성하는 것이다.
이는 동일한 파일이 여러 곳에 존재하는 것과 같이 보인다.
‘ln’명령으로 새로 Hard link를 만들 수 있으며 새로운 Hard link 파일이 생
성되어도 디스크 용량에는 변함이 없다.
Symbolic link란 단지 한 파일을 다른 이름으로 지시하는 파일 타입니다.
이 것은 윈도우의 ‘바로가기 아이콘’ 과 유사하다.
‘ln –s’ 명령으로 Symbolic link파일을 생성하거나 이 파일을 삭제해도 실
제 파일에는 아무런 영향이 없다.
UNIX Administration
100
UNIX File System
Management(cont.)

Socket file



광주대학교
이는 Process간의 Communication을 빠르고 신뢰성 있게 수행해 주는 것
으로 여러 종류의 Socket이 있지만 대부분 Network을 경유해서 서로 다
른 호스트 간 process를 connect하는 데 사용된다.
Socket file 은 다른 Process에게 디렉토리의 Entry로 보여지기는 하지만
Connection에 포함되지 않은 Process는 읽거나 쓸 수 없다.
이 Socket file type은 4.3+BSD 운영체제에서만 사용되고 SVR4에서는
IPC(Interprocess Communication)을 위해 Socket을 사용하나 커널의 파
일 타입으로서 사용하지 않고 Socket function의 libtary level에서 제공한
다.
UNIX Administration
101
UNIX File System
Management(cont.)

Controllers and Disk Drivers


한 개의 controller에 여러 개의 unit(즉 디바이스)들을 연결 가능
즉 여러 개의 하드 디스크, CD-ROM, Tape Drive 등을 연결 가능
광주대학교
UNIX Administration
102
UNIX File System
Management(cont.)

Physical Disk Structure
광주대학교
UNIX Administration
103
UNIX File System
Management(cont.)

Disk Partitions

제일 바깥 쪽이 Volume Header이고, 다음 안쪽으로 root file system,
swap space, user file system으로 구성됨
T1
d0
Target Number
Disk Number
0
2
s0
1
Slice Number
3
4
광주대학교
UNIX Administration
104
UNIX File System
Management(cont.)

Devices Naming Conventions for Disk and Tapes
Syste
m
SCSI DISK
/dev/[r]dsk/cCt
Solari
dNsP
HPUX
/dev/[r]dsk/c20
dNsP
Tape
Drive
/dev/rmt/
/dev/rmt/
n
/dev/rmt/
m
/dev/rmt/
mn
C : Controller Number
/dev/[r]dsk/dsk
 IRIX
A : SCSI Target Number
/dev/tape
dNsP
 N : Device or LUN Number
 P : Slice or Disk Partition Number

Sun
광주대학교
NR Tape
UNIX Administration
/dev/ntTa
e
/dev/nrmt
105
UNIX File System
Management(cont.)

Metadevice

Disksuit Tool을 사용해서 여러 개의 Partition을 합쳐서 대형 Disk를
만드는 것
Metadevices(pseudo-disk)
/dev/md/dsk/d7
Logical devices(disk)
/dev/dsk/c0t1d0s2
광주대학교
Logical devices(disk)
/dev/dsk/c0t0d0s2
UNIX Administration
106
UNIX File System
Management(cont.)

디스크 추가

UNIX System에 새로운 Disk를 추가하는 과정








Disk를 컴퓨터에 접속
Disk 접근을 위한 장치 파일 생성
Disk formatting
Disk partitioning and labeling
UNIX File system의 구성
File system mounting
File system 무결성(integrity) 검정
장치화일의 생성



광주대학교
새로운 디스크에 접근하기 위해서는 먼저 이 디스크를 가르키는 파일을
/dev 디렉토리에 생성
Disk를 SCSI Bus에 접속시킬 경우 UNIX가 자동적으로 장치화일 생성
그 밖의 경우는 시스템 공급업자의 절차에 따라 생성시키면 됨
UNIX Administration
107
UNIX File System
Management(cont.)

Disk Formatting





새로운 Disk 표면에 미리 정해진 형식으로 표시를 하여 데이터를 구조화
시키는 작업
이 과정을 통해 주소에 대한 timing mark가 기록됨
Disk 총 용량의 약 10%가 format과정에서 사용됨
SCSI Disk의 경우는 보통 미리 format이 되어져 있음
Disk Partitioning and labeling





광주대학교
Partitioning : Format된 Disk를 독립된 데이터 영역들로 나누는 과정
Partition은 dump를 보다 용이하게 하며 사용자들이 다른 디스크 공간을
침범하는 것을 방지하고 성능을 향상시킴
Partition table은 디스크에 대한 그 밖의 정보들과 함께 label이라는 디스
크 상의 레코드에 기록된다.
Label은 보통 Disk의 처음 한 두 블록을 차지함
하나의 디스크는 보통 최대 8개의 Partition을 가지질 수 있음.
UNIX Administration
108
UNIX File System
Management(cont.)









광주대학교
각 Partition은 소문자 a부터 h로 표시한다.
전통적으로 a Partition은 root Partition, b Partition은 swapping을 위하여
사용된다.
Partition c 는 전체 디스크를 관리하기위해 사용됨
Partition d에서 h까지는 관리자가 임의로 할당 가능함
System V Release 4 UNIX에서는 Partition을 slice라고 부르며 기능도 약
간 다르다.
최대 8개의 slice가 있으며 각 slice들은 0에서 7까지의 번호로 표시함
Slice 0, 1, 2는 Partiton a, b, c에 대응된다.
Slice 3에서 6까지는 다른 운영체제의 화일들을 위하여 사용된다.
Slice 7은 단지 사용자 화일들만을 포함하는 영역을 나타낸다.
UNIX Administration
109
UNIX File System
Management(cont.)

Physical Disk Partition Layout
광주대학교
UNIX Administration
110
UNIX File System
Management(cont.)

Disk Partitions
Partition
Number
Name
Function
0
root
Root Partition
1
swap
Swap Partition. 물리적 메모리가 부족할 때 사
6
usr
Usr Partition. Root 나 System이 주로 사용하는
디렉토리
7
(none)
The entire disk except the volume header and
Partition
8
volhdr
Volume header
9
(none)
Reservation Partition
10
volume
The entire disk, Including the Volume header
광주대학교
UNIX Administration
111
UNIX File System
Management(cont.)

UNIX File system 구성




하드 디스크 Partition이 끝난 후 바로 UNIX 화일들을 저장할 수 있는 것
이 아니다.
mkfs 또는 newfs command를 사용하여 Partition 또는 slice에 File system
을 구성해야 한다.
newfs command를 수행하면 Disk의 그 영역에 존재하던 데이터는 지워
지고 디렉토리 구조의 골격이 형성된다.
newfs command


형식 : newfs [option] [mkfs-option] block-special-file
기능 :





광주대학교
newfs는 mkfs command의 friendly front-end이다.
newfs는 표준 장치들의 특성에 관한 정보가 기록되어 있는 /etc/disktab 파일
을 탐색하여 디스크 유형의 sector 수를 검색한 후 mkfs를 호출(fork)한다.
mkfs 프로그램은 block-special-file에 기록함으로써 파일 시스템을 구축함
mkfs는 root 디렉토리와 lost+found 디렉토리로 이루어진 파일시스템을 구축
함
만약 File System이 root Partition이면 최초의 16 sector에 bootstrap 프로그램
을 설치함
UNIX Administration
112
UNIX File System
Management(cont.)


option
 -n
bootstrap program을 install 하지 않음
 -N
file system을 실제로 만들지 않고 file system parameter를 출력함
 -v
모든 발생 가능한 사건 메시지 출력할 것
mkfs-options
 -b block-size
새로운 file system의 블록 사이즈. 409 또는 8192 byte
8129 byte가 default임
 -m free-space%
일반 유저를 위해 예약한 공간의 비율(default - 10%)
 -c #cylinder
실린더 그룹에 대한 실린더 수 (default - 16)
 -i i-size
inode 개수 (default - 2048)
 -f frag-size
fragment size (default – 1024), 최대 블럭 사이즈
광주대학교
UNIX Administration
113
UNIX File System
Management(cont.)

File system mounting





File system이 사용 가능하려면 mount가 되어야 한다.
mount는 file system 을 root file system의 일부로 부착하여 계층 구조화
시키는 작업
한번 file system이 mount 되면 이 file system의 화일들은 root file system
의 일부인 것처럼 접근이 가능하다.
file system은 mount과정의 반대, 즉 unmount를 통해 root file system과의
연결을 단절시킨다.
mount, unmount command

형식


% mount [options] [block-special-file directory]
% unmount [options] block-special-file | directory
 부팅시 자동으로 자동으로 mount를 시키도록 하기 위해서는 기종에 따라서
/etc/vfstab file이나 /etc/fstab file에 mount 명령 첨가하면 된다.
광주대학교
UNIX Administration
114
UNIX File System
Management(cont.)

General File System Concepts
Disk mount
% whoami : mount는 root만 가능함
% cd / : root 디렉토리로 이동
%mkdir /d2 /d3 : mount point 생성
% mount /dev/dsk/c0t1d0s0 /d2
: Disk2를 /d2에 mount
% mount /dev/dsk/c0t2d0s0 /d3
: Disk3를 /d3에 mount
% cd /d2 : Disk2로 이동
% cd /d3 : Disk3로 이동
광주대학교
UNIX Administration
115
UNIX File System
Management(cont.)

File System Mouting and Unmounting
Disk mount 명령
% mount /dev/rdsk/dks0d2s7 /proj
Disk mount를 해제 명령
% unmount /proj
광주대학교
UNIX Administration
116
UNIX File System
Management(cont.)

UNIX Directory Structure
광주대학교
UNIX Administration
117
UNIX File System
Management(cont.)

UNIX 주요 디렉토리의 역할과 기능

/ (root)


/dev




Root directory. IRIX의 경우는 Kernel이 들어있는 Directory(/unix)
컴퓨터의 가장 중요한 부분 중 하나인 Device를 관리하는 Directory
디스플레이 및 터미널, 키보드를 비롯한 UNIX System의 모든 자원들을
집중 관리하는 곳이다.
모든 디바이스들은 dev 디렉토리에 파일의 형태로 독립적으로 존재한다.
/etc



광주대학교
UNIX는 관리는 사용자 계정, File system, security, Device Drivers, 하드
웨어 구성 등의 관리를 포함하여 매우 복잡할 수 있다.
이러한 모든 관리상에 필요한 파일과 정보를 저장하는 디렉토리이다.
참고로 유저를 관리하는 ‘passwd’파일도 바로 이 디렉토리에 존재한다.
UNIX Administration
118
UNIX File System
Management(cont.)

/etc/config


/lib


컴퍼일러에 의해서 참조되고 사용되는 binaries, library file 이 담겨있음
/lib64


UNIX System에서 사용되는 함수나 절차적 라이브러리를 보관하는 장소
/lib32


System configuration file 들이 담겨있는 Directory
64bit system을 사용하는 Compiler에 의해서 참조되고 사용되는 binaries,
libraries file 이 담겨있음
/lost+found

광주대학교
파일이 어떤 종류의 문제나 오류로 부터(fsck명령에 의해) 복구되었을 때
커널 파일 시스템 내의 올바른 위치를 알아내지 못할 때 저장되는 장소
UNIX Administration
119
UNIX File System
Management(cont.)

/proc


/sbin


Kernel image가 저장되어 있는 Directory. Standalone Utilities(fx, ide,
sash)
/tmp




Commands needed for minimal system operability
/stand


현재 수행중인 모든 Process들의 이미지들이 보관된 Directory
UNIX에서 많이 프로그램에 의해 사용되는 일시적인 file 저장 장소
임시 작업 Directory
Reboot시에 없어지는 임시 파일들
/tmp/mnt

광주대학교
Automount File system의 mount Point
UNIX Administration
120
UNIX File System
Management(cont.)

/usr




/usr/bin




자체적으로 만든 프로그램, 사용자와 시스템 관리에 필요한 명령들, 공유
라이브러리들
UNIX System의 일부분들이 서브 Directory형태로 존재함
어떤 시스템의 경우는 monut point로 사용되기도 하는 Directory
일반적으로 많이 사용되는 실행파일들을 저장
초기의 UNIX에서 모든 실행 파일들을 일괄적으로 보관하기 위해 사용되
었다.
하지만 점점 UNIX에 첨가되는 실행파일이 많아짐에 따라 여러 Directory
로 분리되어 저장하게 되었다.(/bin, /usr/bin)
/usr/include

광주대학교
표준 System과 Program Library들에 대한 Interface를 정의한 C 언어
header file들이 들어 있음
UNIX Administration
121
UNIX File System
Management(cont.)

/usr/man


/usr/lib


지역적인 계정과 log 파일들
/usr/local/bin


지역적인 소프트웨어(관리자에 의해 설치된 소프트웨어)
/usr/local/adm


표준 유닉스를 지원하는 파일들이 있는 Directory
/usr/local


온라인 매뉴얼 페이지가 들어있는 Directory
지역적인 실행 파일들
/usr/local/etc

광주대학교
지역적인 시스템 구성 파일과 명령어들
UNIX Administration
122
UNIX File System
Management(cont.)

/usr/local/sbin


/usr/local/src


시스템의 파일들이나 로그 기록을 관리하는 파일이 있는 Directory
/var/adm


다양한 응용프로그램의 공유파일들
/var


/usr/local/*을 위한 원시 코드들
/usr/share


지역적인 시스템 유지 명령어들
계정 파일들, 자원의 사용법을 기록한 파일들이 있는 Directory
/var/spool

광주대학교
프린터, UUCP, 메일 등을 모아서 보관
UNIX Administration
123
UNIX File System
Management(cont.)

/var/tmp


/var/ucb


X11 coniguration files
/var/yp


버클리 유틸리티와 프로그램들
/var/x11


임시 저장 공간(reboot 해도 없어지지 않음)
NIS Command files
/kernel

커널을 설치하는데 필요한 파일들(Solaris)
 만약 /sbin이 존재한다면 일반적으로 /usr/sbin으로 심볼릭 링크되어 있다.
광주대학교
UNIX Administration
124
User and Group
Management
User and Group Management

Adding User

시스템 관리자의 가장 중요한 업무 중 하나
System에 User를 등록하는 방법은 다음과 같다..(Solaris의 경우)

Admin Tool을 이용한 방법





광주대학교
Solaris에 포함된 관리 툴인 admintool을 사용하는 방법으로 X-Window상
에서 편리하게 사용자를 추가 삭제 할 수 있음
또한 그룹, 호스트, 프린터, 직렬포트, 소프트웨어까지 열람 및 편집 가능
사용자 추가를 선택하여 사용자 아이디 등의 몇가지 정보를 입력하면 장
동으로 홈 디렉토리가 만들어지며 계정이 생성된다.
Note: admin tool은 사용이 편리하기는 하지만 파일을 덮어쓸 때 심볼릭
링크인지를 검사하지 않기 때문에 타인의 root권한의 획득이 가능하다.
때문에 일반적으로 사용하지 않고 Permission을 ‘100’으로 바꾸고 사용하
지않는 경향이 있다.
UNIX Administration
126
User and Group
Management(cont.)

useradd command을 이용한 방법


사용자를 추가하는 명령어
% useradd [-c comment] [-d dir] [-e expire] [-f inactive] [-g group] [-G
group [group…]] [-m[-k skel_dir]] [-u uid [-o]] [-s shell] login-ID
-c : 사용자의 이름
 -d : 사용자 home directory 절대경로
 -g : 사용자의 기본 그룹 아이디
 -G : 사용자의 2차 그룹 아이디
 -m : 사용자의 home directory가 존재하지 않으면 생성하는 옵션
 -k : ‘.cshrc’ 또는 ‘.profile’과 같은 파일을 복사해 올 directory 지정.
시스템은
기본적으로 ‘/etc/skel’ directory를 사용하도록 한다. 관리자는 이 directory의
파일들을 수정해서 쉽게 사용자들에 기본적인 환경을 구성할 수 있다.
 -u : 사용자의 UID(integer). 이 ID는 시스템에서 유일해야 한다.
 -s : 사용자가 사용할 shell 지정. ‘/bin/sh’이나 ‘/bin/ksh’을 넣어준다.
 login-ID : 사용자가 실제 사용할 ID
예) % useradd –c 문준현 –d /user/imp –m –k /etc/skel –u 1004 –g 1000 –s
/bin/csh imp


광주대학교
UNIX Administration
127
User and Group
Management(cont.)

vipw command을 이용한 방법




vipw 명령을 이용해서 사용자를 추가하는 방법
vipw명령을 입력하면 ‘/etc/passwd’ 파일이 화면에 편집모드로 나타난다.
한 라인을 복사하고 추가할 사용자에게 맞게 수정한다.
수정한 후 ‘wq’로 저장하고 나오면 다음과 같은 화면이 나타난다.
You have modified the password file.
Press ‘e’ to edit the shadow file for consistency, ‘q’ to quit:



광주대학교
여기서 ‘e’를 입력하면 ‘/etc/shadow’ 파일을 편집할 수 있다.
마찬가지로 한 라인을 복사하여 사용자에게 맞게 수정한다.
마지막으로 사용자의 home directory를 만들고 사용자에게 chown 명령
으로 권한을 넘겨준다.
UNIX Administration
128
User and Group
Management(cont.)

pwconv command을 이용한 방법






이 명령은 /etc/passwd file의 내용을 /etc/shadow file에 적용시키는 명령
/etc/passwd file을 수정하고 이 명령을 실행시키면 그대로 /etc/shadow
file에 적용이 가능하다.
그 다음에 사용자의 home directory 생성
/etc/skel directory의 file을 사용자 home directory에 복사
사용자 home ditectory 하위를 chown 명령으로 소유권 넘김
Delete user



사용자를 시스템에서 삭제할 때는 다음과 같은 명령을 사용함
% userdel –r login-ID
-r : 사용자의 home directory 삭제
광주대학교
UNIX Administration
129
User and Group
Management(cont.)

Adding group


시스템에 새로운 그룹을 추가할 때는 admin tool을 사용하거나 다음
의 명령을 이용한다.
% groupadd [-g gid [-o]] group



-g gid : 이 옵션은 추가될 Group의 GID(integer)를 지정하는 것이고 이 옵
션을 지정하지 않으면 가장 높은 GID의 다음의 숫자가 GID가 된다.
-o : 하나의 GID를 다른 Group이 중복해서 사용하는 것을 허용하는 옵션.
Delete group


시스템에서 Group을 삭제할 때는 다음과 같은 명령을 사용한다.
% groupdel group
광주대학교
UNIX Administration
130
User and Group
Management(cont.)

Accounting

Passwd file



광주대학교
UNIX는 system의 모든 사용자 정보를 /etc/passwd file에 기록한다.
저장된 정보는 모두 7가지로 ‘:’으로 구분한다.
각각의 정보는 다음과 같다.
 Username : 사용자가 사용하는 login-ID
 Password : 암호화 되어 기록된다. /etc/shadow에 저장되기도 한다.
 User ID : 사용자의 ID로 음수가 아닌 정수여야 한다. 0은 root 사용자
 Group ID : 사용자가 속한 Group ID. 사용자는 반드시 하나 이상의
Group에 속해야 한다.
 Full-name : 보통 사용자의 실제 이름을 나타낸다.
 Login directory : 사용자의 home directory
 Login shell : 사용자가 사용하는 shell
UNIX Administration
131
User and Group
Management(cont.)

Password file을 관리할 때 주의 사항





일반 사용자는 UID 0을 갖지 않아야 한다.
일반 사용자는 GID 0을 갖지 않아야 한다.
Password란은 공백이어서는 안된다.
Password file에는 주석문(#)이 사용되지 않는다.
Password file에는 공백 라인이 있어서는 안된다.
 System이 제공하는 Password file checking program : /etc/pwck
광주대학교
UNIX Administration
132
User and Group
Management(cont.)

Group file


UNIX System은 Group에 관한 정보를 /etc/group file에 저장한다.
저장된 정보는 다음의 네 가지이다.




Group name : 그룹의 이름
Password : 보통 사용하지 않음
Group ID : 그룹의 실제 ID
Member : 그룹의 사용자 목록. ‘,’로 구분한다.
 System이 제공하는 Group file checking program : /etc/grpck
광주대학교
UNIX Administration
133
Administration Commands
Administration Commands

Monitoring Processes


다중 사용자 운영체제인 UNIX의 특징 때문에 프로세스의 관리는 시
스템관리자의 중요한 업무이다.
ps(report process status)


ps명령은 process의 상태를 보여주는 명령으로 daemon 등의 여러
process의 상태를 확인하는 데 요긴하게 쓰인다.
형식 ps [-aSdeflcj] [-o format] [-t termlist] [-u userlist] [-U userlist]
[-G grouplist] [-p proclist] [-g pgrplist] [-s silist]

Process를 관리할 때는 다음의 값들이 중요하게 이용됨




광주대학교
PID : process의 식별번호
PPID : 해당 process를 생성한 parent process의 PI값
UID : 해당 process에 접근할 수 있는 User ID
GID : 해당 process에 접근할 수 있는 Group ID
UNIX Administration
135
Administration Commands(cont.)

Process들이 가질 수 있는 상태(state)들
 Running (O) : 현재 실행되고 있는 상태
 Runnable (R) : 실행 가능한 상태(process가 queue에 들어 있을 때)
 Sleeping (S) : 어떠한 event가 완료되기를 기다리는 상태
 Zombie (Z) : process는 종료했지만 parent는 이를 기다리지 않는 상
태
 Stopped (T) : 정지되어있는 대기 상태 (실행 가능하지 않음)
 이들을 확인하려면 ps 명령의 -e, -f, -l option을 사용하면된다.
광주대학교
UNIX Administration
136
Administration Commands(cont.)

kill(terminate or signal processes)



process를 완전히 종료시키고자 할때 사용하는 명령
형식
 kill -s signal pid
 kill -l [exit_status]
 kill [ -signal ] pid
kill 명령에서 사용되는 signal





광주대학교
1 HUP : Hangup(종료)
2 INT : Interrupt(중지)
3 QUIT : Quit(탈출)
9 KILL : Kill(무조건 중지)
15 TERM : Software Termination(정상 종료)
UNIX Administration
137
Administration Commands(cont.)

다음의 세 명령은 PID 100번을 무조건 종료하라는 똑같은 의미이다.



kill -9 100
kill -s kill 100
kill -s KILL 100
 kill 명령은 반드시 정상적인 방법으로 종료할 수 없을 때에만 사용해야 한다.

pkginfo



현재 자신의 시스템에 설치되었있는 소프트웨어의 리스트를 보여줌
Super user가 옵션을 가지고 사용할 경우 설치된 소프트웨어를 삭제
할 수도 있다.
IRIX

광주대학교
Version [-vFV] remove name
UNIX Administration
138
Administration Commands(cont.)

sysdef





시스템 하드웨어 configuration 정보들을 보여줌
어떤 디바이스가 인스톨 되어 있는지 CPU는 어떤 종류를 사용하는지
등 하드웨어 정보를 보여준다.
IRIX : hinv
AIX : iscfg, isdev
mkfile

형식 mkfile size[k|b|m|g] filename

기능


option


swap space 등을 증대하기 위하여 file을 만들어 주어야 할 경우 사용
-v : 만들어질 file에 대한 이름이나 크기 등의 정보를 표시함
예) % mkfile 50m testfile
광주대학교
UNIX Administration
139
Administration Commands(cont.)

swap –a



UNIX System의 swap space를 monitoring, deleting, adding 하는데 사용
Swap은 UNIX System에서 하드디스크를 메모리처럼 사용하여 부족한 메모
리의 용량을 증대시킴으로서 프로그램 수행 속도를 향상시키기 위해서 사용
option




-a : swap resource를 add
-d : swap resource를 delete
-l : 현재 사용되고 있는 모든 swap resource 정보를 보여줌
passwd


형식 passwd [-df] user-name
기능


사용자의 패스워드를 변경 도는 패스워드 파일에 사용자를 등록시키는 명령
option


광주대학교
-d :사용자 패스워드를 삭제할 때
-f : 사용자 패스워드를 강제로 변경(새로이 로그인시 변경 요구)
UNIX Administration
140
Administration Commands(cont.)

quot : 각 사용자별 디스크 공간 사용 상태 표시


형식 quot [option][filesystem]
기능


화일 시스템의 각 사용자가 소유한 디스크 공간의 블럭수를 리포트한다.
option




광주대학교
사용자들이 소유한 file의 개수를 표시
모든 화일 시스템에 대한 리포트 생성
전체 블럭 또는 적은 화일들의 누적된 사이즈, 화일내의 블럭 사이즈
등을 리포트
-V 지난 30, 60, 90일 동안 접근되지 않은 블럭의 개수를 리포트
-f
-a
-c
UNIX Administration
141
Administration Commands(cont.)

cron : 주기적으로 command 수행시키는 daemon


형식 cron
기능




광주대학교
명시한 날짜와 시간에 지정한 command들을 수행한다.
정규적으로 스케쥴된 command 들이 /var/spool/cron/crontabs 디렉토리
의 crontabs화일에 명시될 수 있다.
사용자들이 crontab command 를 사용하여 자신의 crontab 화일을 제공
할 수 있다.
단 한번만 실행될 command는 at command를 사용하여 crontab파일을
제공한다.
UNIX Administration
142
Administration Commands(cont.)

crontab : crontab 파일의 생성, 편집, 삭제


형식 crontab [option] [username]
crontab [filename]
기능


광주대학교
지정한 파일 또는 표준 입력을 복사하여 사용자들이 crontab 파일을 보관
하는 디렉토리에 포함시킨다.
사용자의 crontab 파일에는 그 사용자를 대신하여 지정한 날짜와 시간에
수행시켜야 하는 command들이 나열되어 있다.
UNIX Administration
143
Administration Commands(cont.)

uname


형식 uname -a
기능



option


현재 시스템의 Identify를 보여줌
보여주는 내용은 현재 자신의 시스템의 O/S 버전 및 Hostname, Process name, 그
래픽 보드 등
-a : 모든 내용을 보여주는 option
hostname


형식 hostname [-s] [nameofhost]
hostname newhostname
기능


광주대학교
뒤에 아무런 내용없이 hostname을 실행하면 현재 자신의 시스템의 이름을 보여줌
그러나 root가 hostname newhostname이라고 입력하면 시스템의 이름이 바뀌게
됨
UNIX Administration
144
Administration Commands(cont.)

hostid


형식 hostid
기능





자신의 장비의 고유 ID를 보여줌
이것은 장비 생산 업체에서 부여한 고유한 ID로서 유일함
UNIX OS에서는 대부분의 사용 가능한 상업적인 소프트웨어들이 위의 명
령을 가지고 얻은 고유 ID로서 소프트웨어 라이센스를 만들어 낸다.
상업적인 소프트웨어를 사용하기 위해서는 위 명령어를 가지고 얻어진
ID를 소프트웨어 판매회사에 보내어 라이센스를 받아야 함
IRIX

광주대학교
sysinfo [-s][-v][-vv]
UNIX Administration
145
Administration Commands(cont.)

eeprom (ROM 모니터 패스워드)


형식 eeprom
기능


시스템을 다른 사람이 수동으로 부트하지 못하게 하기 위하여 ROM
Program에 Password를 할당할 수 있음
IRIX

nvram
이것은 매우 주의해서 사용해야 한다. 만약 이 패스워드를 잊어버리면
하드웨어에 손을 대야 복구가 가능하게 때문에 조심해서 사용해야 한다.
광주대학교
UNIX Administration
146
Administration Commands(cont.)

sync (synchronize) : 디스크 정보의 동기화


형식 sync
기능





광주대학교
디스크 상에 써넣을 메모리 내의 buffer의 내용을 출력함
수정된 수퍼 블록, 수정된 i-node 및 지연된 블럭형 입출력을 포함한다.
CPU가 비정상적으로 정지되기 전에 호출되어 모든 디스크 write들이 완
료된것을 확인할 수 있다.
사용자가 많은 시간대에 부득이 시스템을 리부팅해야 하는 경우는 이
sync명령을 필히 해주어야 한다.
이 sync명령은 약간의 delay time이 생길수 있으므로 보통 3-4번 정도를
연속해서 해주는 것이 좋다.
UNIX Administration
147
Administration Commands(cont.)

System crash







UNIX System은 때때로 급작스런 정전이나 하드웨어 고장, 조작 실수
등으로 인하여 시스템이 정지되는 수가 있다.
이러한 경우를 System crash라고 한다.
Crash가 발생한 경우 파일 시스템이 손상되거나 파괴될수 있다.
이런 경우는 조속히 보수를 하는 것이 중요하다.
파일 시스템의 가능한 손상을 최소화시키기 위해서는 먼저 UNIX
System을 booting시켜야 한다.
이 때 시스템의 boot는 단일 사용자 모드로 하고 root system disk를
제외한 다른 장치를 mount시키지 않아야 한다.
시스템의 booting이 완료되면 곧 fsck command를 root 디스크에 대하
여 실행하여 root를 보수한다.
광주대학교
UNIX Administration
148
Administration Commands(cont.)



만일 파일 시스템이 보수되면 sync를 실행하지 않고 곧바로 시스템
을 reboot한다.
그리고 다른 모든 파일 시스템을 mount 시키기 전에 fsck command를
실행시킨다.
Crash가 발생한 경우 발생 가능한 손상의 종류







Superblock의 정보가 맞지 않는다.
i-node의 link 개수가 맞지 않는다.
하나 이상의 i-node가 동일한 블록을 참조한다.
사용한 i-node가 어느 디렉토리로부터도 참조되지 않는다.
블록이 미사용으로 표시되어 있는데 i-node로부터 참조된다.
블록이 사용 중으로 표시되어 있는데 i-node로부터 참조되지 않는다.
보수한 파일이나 디렉토리들은 소유자들에게 통보하여 완전성을 점
검토록해야 한다.
광주대학교
UNIX Administration
149
Administration Commands(cont.)

fsck (file search check) : File System의 점검과 보수


형식 fsck [option] [filesystem(s)]
기능







광주대학교
UNIX File System의 오류 상태를 조사하여 대화식으로 복원한다.
Fils System이 정상 상태로 되어 있으면 화일, 사용 블럭, 미사용 블럭의
수를 출력한다.
File System이 오류 상태로 되어 있으면 수정 여부를 묻는 메시지를 사용
자에게 출력한다.
수정 처리를 실행하면 그 결과로 어느 정도의 데이터가 손실될 수 있다.
손실된 데이터의 양과 중요도는 진단 출력에 표시된다.
옵션을 지정하지 않으면 사용자의 yes/no 응답에 의해 수행된다.
화일시스템을 명시하지 않으면 /etc/fstab 화일에 기록된 화일 시스템을
참조한다.
UNIX Administration
150
Administration Commands(cont.)

option




-y : fsck에 의한 질문에 무조건 yes로 답한다.
-n : fsck에 의한 질문에 무조건 no로 답한다.
-w : File system을 단지 check만 한다.
사용예



광주대학교
% fsck –y /dev/dsk/c0t0d0s0
% fsck –n /dev/dsk/c0t0d0s0
% fsck –w /dev/dsk/c0t0d0s0
UNIX Administration
151
Administration Commands(cont.)

UNIX System Management Tool



UNIX 종류
관리 도구 명려어
Solaris
Admin Tool
AIX
smit, VSM
IRIX
Cadmin facility
Digital UNIX
setup
HP-UX
SAM
이러한 툴들은 모두 시스템 관리자의 편의를 돕기 위한 그래픽 툴이다.
때로는 유용하게 사용할 수 있으나, 종종 부주의한 실수를 일으키거나
이러한 툴들을 사용할 수 없는 경우가 종종 발생한다.
그래서 유능한 시스템 관리자가 되기 위해서는 시스템관리 명령어들을
잘 익혀두는 것이 좋다.
광주대학교
UNIX Administration
152
Installing Software
Installing Software

Installing Software



사용자를 위해 새로운 소프트웨어를 설치하는 것 역시 관리자의 중요
한 작업의 하나이다.
관리자는 항상 사용자를 위해 새로운 Application이나 OS Upgrade를
실시해야 한다.
새로운 Software Package Install(pkgadd command)



Binary package를 install하는 방법
일반적으로 Software는 Package의 형태로 부여된다.
이러한 Package를 설치하는 명령으로 pkgadd명령이 있다.
광주대학교
UNIX Administration
154
Installing Software(cont.)

pkgadd (transfer software package to the system)




형식 pkgadd [-nv][-a admin][-d device][[-M] -R root_path][-r response]
[-V fs_file][pkginst..]
-d option을 사용하지 않으면 pkgadd명령은 기본 스풀 드렉토리
(/var/spool/pkg)에서 package를 찾는다.
또 –s option을 사용하면 package를 install하는 대산 이것을스풀 디렉
토리로 복사한다.
option



광주대학교
device package를 install 또는 copy한다.
device는 fullname이거나 tape, floppy disk, hard disk가 될 수
있
다.
또한 device alias를 쓸 수 있다.(예-/floppy/floppy0)
-n
Non-interactive mode로 작동한다. Default는 interactive이다.
-s spool install 대신에 spool directory에 copy한다.
-d
UNIX Administration
155
Installing Software(cont.)

Source Code Install



이미 컴파일된 binary를 받아 설치하지 않고 source code를 받아서 시
스템에서 compile하여 설치하는 방법이다.
이는 시스템에 좀 더 최적화된 software를 설치하기 위해서이다.
일반적인 순서


필요한 software source code를 다운 받는다.
시스템에 적절하게 configuration 한다.


Compile 한다.


광주대학교
% make
Install 한다.


% ./configure
% make install
설치한 software를 실행한다.
UNIX Administration
156
Installing Software(cont.)

Software Administering


설치한 소프트웨어에 대한 정보를 알아내는 방법과 이를 삭제하는 방법
pkginfo (display software package information)



시스템내에 설치되어 있는 software package들의 정보를 알려주는
명령
형식 pkginfo [-q|-x|-l][-p|-i][-r][-a arch][-v version][-c category][pkginst]
pkginfo [-d device][-R root_path][-q|-x|-l][-a arch][-v version]
[-c category][pkginst]
option





광주대학교
-q : 정숙 모드
-p : 부분적으로 설치된 패키지 선택
-i : 완전히 설치된 패키지 선택
-x : 추출된 목록
-ㅣ : 긴 목록
UNIX Administration
157
Installing Software(cont.)





일반적으로 시스템의 package를 알아보기 위해



-r : 이동하기 위한 기준
-c : 범주, [범주…]
-a : 구조
-v : 버전
% pkginfo | more
% pkginfo –c applicationn
설치한 package에 대한 자세한 정보를 알아내는 방법

광주대학교
% pkginfo –l <package>
UNIX Administration
158
Installing Software(cont.)

pkgparam (display package parameter values)




시스템에 설치된 package에 관련된 여러 parameter value를 알려줌
형식 pkgparam [-v][-d device][-R root_path]pkginst[param]
pkgparam -f filename [-v][param]
예) % pkgparam -v <pakage>
pkgrm (remove a package from the system)


시스템에 설치된 Soft pakage를 제거할 때 사용함
형식 pkgrm [-nv][-a admin][[-A|-M] -R root_path][-V fs_file]
pkgrm -s spool [pkglist...]

특정 package를 시스템에서 제거하는 방법
 % pkgrm <package-name>
광주대학교
UNIX Administration
159
Backups and Restores
Backups and Restores

백업 관리 유틸리티

dump
restore
volcopy

labelit



전체 백업 또는 최근에 변경된 데이터의 백업
dump command에 의해 백업된 테이프에서 파일의 복원
하나의 디스크의 파일시스템 전체 혹은 일부를 다른 디스크
또는 테이프에 압축된 이미지로 복사
파일 시트템의 superblock에 label을 기록
시스템 Backup



디스크를 기반으로 한 시스템에서 디스크 화일들의 복사본을 다른 매
체에 보관하는 2차적인 보전 작업
UNIX의 dump에는 0~9까지의 서로 다른 수준이 있음
수준 0은 total dump로서 모든 파일이 dump되며 이 dump 출력은 시
스템이 재복구에 사용될 수 있다.
광주대학교
UNIX Administration
161
Backups and Restores(cont.)




1~9까지는 부분 dump애며 수준차에 따라 변경된 화일들만 dump된
다.
완전히 디스크 전체를 dump하는 수준 0은 정보의 양이 많고 시간을
많이 필요로 하기 때문에 자주 실행할 수는 없다.
보통 total dump는 일주일에 한번 정도 실행한다.
나머지 한 주간 동안의 1일 dump는 시스템의 상황에 따라서 결정된
다.

하루 동안에 변경된 부분만 dump


total dump이래 변경된부분만 dump


매일 수준번호를 낮춰서 dump
ruler sequence로 dump


광주대학교
매일 같은 수준번호로 dump
예를 들면 연속으로 매일의 수준을 3,2,3,1,2,3,2,3,로 하여 dump
위의 두가지 방법을 보완한 형태
UNIX Administration
162
Backups and Restores(cont.)

dump : 파일 시스템의 dump


형식 dump [option] filesystem
기능



UNIX File system의 모든 파일 또는 어떤 날짜 이후 변경된 화일들을 마
그네틱 tape로 dump한다.
옵션을 정하지 않으면 default로서 9u가 된다.
option





광주대학교
level
dump의 수준 0~9까지 있음
u
전체 백업 이 후 달라진 내용만을 백업하는 옵션
f dump-file dump를 file의 형태로 한다. 예를 들면 /dev/rmt/0
D
dump를 disk로 한다.
b factor
테이프에 기록할 블록 사이즈 명시
UNIX Administration
163
Backups and Restores(cont.)

volcopy : 파일 시스템의 복사


형식 volcopy [option] fsname srcdev vol1 destdev vol2
기능





디스크의 모든 파일 시스템의 image를 다른 디스크 또는 tape에 똑같이
복사함
bit-for-bit 복사이므로 total backup으로만 사용가능
보통 신속한 disk-to-disk 복사에 사용된다.
volcoy의 가장 큰 장점은 손실한 데이터를 아주 용이하게 복구 가능함.
option






광주대학교
-F ufs
복사하고자 하는 File system의 type
fsname File system을 복사할 때의 mount point
scrdev
File system을 복사할 device명 (source device)
vol1
source device의 volumn label
destdev 복사할 destination device의 device명
vol2
destination device의 volumn label
UNIX Administration
164
Backups and Restores(cont.)

labelit : 파일 시스템에 label 부여


형식 labelit [option] dev [faname vol]
기능



파일 시스템의 superblock에 짧은 label을 기록한다.
이후의 작업에서 파일 시스템을 식별하는데 사용된다.
option




광주대학교
-F ufs
dev
fsname
vol
ufs file system type
raw disk device의 label
File system을 복사할 때의 mount point
physical media의 임의의 식별자
UNIX Administration
165
Backups and Restores(cont.)

restore : dump로부터의 복구


형식 restore options [filename(s)]
기능



Dump command로부터 생성된 backup 데이프트로부터 화일들을 복구한다.
반드시 옵션을 지정해야 한다.
option







광주대학교
i
복구를 대화식으로 하도록 함
r
수준 0으로 dump된 것을 새로운 file system이나 빈 file system으로 전체 복
구함.
R
복구 재개. 전체 백업된 것중에서 부분적인 복구 가능
t
백업 content 표시
X
파일또는 디렉토리를 복구또는 압축해제
h
디렉만을 복구 파일이 들어 있지 않은 경오는 복구 하지 않음
v
복구한 파일 이름을 표시함
UNIX Administration
166
참고 서적 및 인터넷 사이트

참고 서적






UNIX 시스템 이론과 실습. 金明昊 저. 大英社.1998
UNIX System Administration Handbook.
Nemeth,Snyder,Seebass,Hein 저
최재영, 김명호, 김영배 공역. 홍릉과학 출판사.1998
초보자를 위한 유닉스 일주일 완성. Taylor 저. 김창룡 역. 인포북
UNIX System V Primer 한국어판. Matin & Prata 저. 김형태, 박찬열
역. 인포북
정보화를 살아가는 현대인을 위한 UNIX & Internet. 이상복,음호식 공저.
도서출판 기한재
인터넷 사이트


http://www.hackerslab.org
http://roots.kangnam.ac.kr/~comsin
광주대학교
UNIX Administration
167