교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스...

13
20131학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍 - 1 - ※ 교재명: 유닉스 이론과 실습(개정판), 한빛미디어, 2012 1. 유닉스 개요 및 긱본 사용법 1. 유닉스의 특징을 간단히 설명하시오. (교재, 24-25 page) 유닉스의 중요한 특징은 대화형시스템, 다중사용자시스템, 다중작업용시스템, 높은 이식성과 확장성, 계층적 파일시스템, 다양한 부가적 기능제공 등이다. 2. 유닉스의 발전 과정을 간단히 설명하시오. (교재, 22-23 page) 유닉스는 개발 초기에 원천 소스가 공개되어 대학과 기업에서 연구용으로 사용하며 다양한 기능이 추가되었다. 이후에 AT&T의 사용용 유닉스인 시스템 V와 버클리 대학의 BSD 로 나 뉘어 각각 발전하여 왔다. 최근에는 두 계열의 장점을 결합한 형태로 개발된 SVR4를 기반 으로 한 유닉스 제품들이 개발되고 있다. 3. 유닉스의 구조를 설명하시오. (교재, 26 page) 유닉스는 가장 안에 커널, 그 밖으로 쉘과 유틸리티, 파일 시스템으로 구성되어 있다. - 커널 : 유닉스의 핵심기능으로 프로세스 관리, 메모리 관 , 파일시스템 관리, 장치 관리 등 컴퓨터의 모든 자원을 관리한다. - : 사용자와 커널 사아의 중간자 역할을 담당하여 사용 자가 입력한 명령을 해석한 후 커널에 넘겨주고, 결과를 받아 화면으로 출력한다. 쉘은 본쉘 (sh), C(csh), 콘쉘(ksh) 등이 있다. - 유틸리티와 파일시스템 : 각종 프로그래밍 개발 도구, 네트워크 관련 도구 등 다양한 유 틸리티를 제공하며, 파일을 체계적으로 관리하기 위하여 계층적으로 구성되어 있는 파일시 스템이라는 체계를 사용한다. ※ 다음 질문에 맞는 적당한 명령을 적으시오. 4. 명령행에서 한 단어를 지우는 키를 적으시오. (교재, 31 page) Ctrl+w 5. First Unix 를 크게 출력하는 명령을 적으시오. (교재, 33 page) # banner “First Unix” 6. ls 명령의 상세한 사용법을 보는 명령을 적으시오. (교재, 34-25 page) # man ls 7. 비밀번호를 변경하는 명령은 무엇인가? (교재, 36 page) # passwd

Upload: others

Post on 14-Oct-2019

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 1 -

※ 교재명: 유닉스 이론과 실습(개정판), 한빛미디어, 2012

※ 1장. 유닉스 개요 및 긱본 사용법

1. 유닉스의 특징을 간단히 설명하시오. (교재, 24-25 page)

유닉스의 중요한 특징은 대화형시스템, 다중사용자시스템, 다중작업용시스템, 높은 이식성과

확장성, 계층적 파일시스템, 다양한 부가적 기능제공 등이다.

2. 유닉스의 발전 과정을 간단히 설명하시오. (교재, 22-23 page)

유닉스는 개발 초기에 원천 소스가 공개되어 대학과 기업에서 연구용으로 사용하며 다양한

기능이 추가되었다. 이후에 AT&T의 사용용 유닉스인 시스템 V와 버클리 대학의 BSD 로 나

뉘어 각각 발전하여 왔다. 최근에는 두 계열의 장점을 결합한 형태로 개발된 SVR4를 기반

으로 한 유닉스 제품들이 개발되고 있다.

3. 유닉스의 구조를 설명하시오. (교재, 26 page)

유닉스는 가장 안에 커널, 그 밖으로 쉘과 유틸리티, 파일

시스템으로 구성되어 있다.

- 커널 : 유닉스의 핵심기능으로 프로세스 관리, 메모리 관

리, 파일시스템 관리, 장치 관리 등 컴퓨터의 모든 자원을

관리한다.

- 쉘 : 사용자와 커널 사아의 중간자 역할을 담당하여 사용

자가 입력한 명령을 해석한 후 커널에 넘겨주고, 결과를 받아 화면으로 출력한다. 쉘은 본쉘

(sh), C쉘(csh), 콘쉘(ksh) 등이 있다.

- 유틸리티와 파일시스템 : 각종 프로그래밍 개발 도구, 네트워크 관련 도구 등 다양한 유

틸리티를 제공하며, 파일을 체계적으로 관리하기 위하여 계층적으로 구성되어 있는 파일시

스템이라는 체계를 사용한다.

※ 다음 질문에 맞는 적당한 명령을 적으시오.

4. 명령행에서 한 단어를 지우는 키를 적으시오. (교재, 31 page)

Ctrl+w

5. First Unix 를 크게 출력하는 명령을 적으시오. (교재, 33 page)

# banner “First Unix”

6. ls 명령의 상세한 사용법을 보는 명령을 적으시오. (교재, 34-25 page)

# man ls

7. 비밀번호를 변경하는 명령은 무엇인가? (교재, 36 page)

# passwd

Page 2: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 2 -

※ 유닉스의 발전과정

※ 유닉스의 구조

Page 3: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 3 -

※ 2장. 디렉토리 다루기

1. 다음 표에서 왼쪽의 ls 명령어를 보고 그 의미를 오른쪽에 채워 넣으시오. 문제에 주어진 test는

사용자 계정 또는 디렉토리명이다.

명령어 의미

ls .. 부모 디렉토리의 목록 출력

ls ../test 부모 디렉토리 아래의 test 디렉토리의 목록 출력

ls ~test test 사용자 계정 홈 디렉토리의 목록 출력

ls ~/test 홈 디렉토리 아래 test 디렉토리의 목록 출력

ls /test 루트 디렉토리 아래의 test 디렉토리 목록 출력

2. 디렉토리 계층 구조란 무엇인가? 간단히 설명하시오. (교재, 45 page)

/ 를 최상위 디렉토리로 하여 그 안에 존재하는 파일과 디렉토리를 계층적으로 구성하여 관

리하는 구조. 현재 위치를 기준으로 루트 디렉토리에 가까울 수록 상위 디렉토리, 멀어질 수

록 하위 디렉토리로 구분한다.

3. 파일 이름에 사용할 수 없는 문자는 무엇인가? (교재, 48 page)

/

4. 절대 경로와 상대 경로의 정의를 기술하시오. (교재, 46-47 page)

▶ 절대 경로 : 루트 디렉토리를 기준으로 파일의 위치를 나타낸 것. 항상 /로 시작

▶ 상대 경로 : 현재 위치를 기준으로 파일의 위치를 나타낸 것. / 이외의 문자로 시작하며,

상위 디렉토리는 ..으로 표시한다.

5. 루트 디렉토리 자체의 상세 정보를 보는 명령을 적으시오. (교재, 52-55 page)

# ls –ld /

Page 4: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 4 -

※ 디렉토리 계층 구조

※ 절대경로와 상대경로

Page 5: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 5 -

※ 6-10. 다음 그림을 보고 현재 디렉토리가 user1 일 때 주어진 작업을 수행하는 명령을 적으시오.

6. 위 그림을 보고 다음 표를 채우시오.

파일명 절대 경로 상대 경로

/ / ../..

C /home/user1/C C

etc /etc ../../etc

hw. c /home/user1/C/hw.c C/hw.c

user2 /home/user2 ../user2

7. 현재 디렉토리를 확인하시오. (교재, 49 page)

# pwd

8. 현재 디렉토리를 Unix 디렉토리로 이동하시오.

# cd Unix

9. 홈 디렉토리 아래에 U 디렉토리를 생성하시오.

# mkdir ~/U

10. /etc 디렉토리의 파일 목록을 파일 종류별로 출력하시오.

# ls –F /etc

11. 현재 디렉토리를 user2 디렉토리로 이동하시오.

# cd ~user2

12. 현재 디렉토리를 홈 디렉토리로 이동하시오.

# cd

13. 현재 위치가 홈 디렉토리일 때 9번 문제에서 생성한 U 디렉토리를 삭제하시오. (교재, 61 page)

# rmdir U

Page 6: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 6 -

※ 3장. 파일 다루기

1. 하드 링크와 심볼릭 링크 파일, 복사 파일을 비교 설명 하시오. (교재, 86-90 page)

하드링크 파일 심볼릭링크 파일 복사 파일

정의한 파일에 붙인 새로운 이

원본 파일을 가리키는 특수

한 파일

원본과 같은 내용을 갖는

파일 생성

파일특성 동일 파일 별도파일 별도 파일

원본삭제 링크파일 사용 가능 링크 파일 사용 불가능 복사파일 사용 가능

2. 파일의 내용을 보는 세가지 명령을 적고 각각의 특징을 적으시오. (교재, 66-69 page)

▶ cat : 파일의 내용을 화면에 연속적으로 출력

▶ more : 파일의 내용을 한 화면씩 화면에 출력

▶ tail : 파일의 뒷 부분 몇 행을 화면에 출력. 기본은 10행.

-f 옵션을 사용하면 파일 내용이 주기적으로 반복 출력됨

※ 내 사용자 계정이 user1일 때, 다음 그림을 보고 지정한 작업을 수행하는 명령을 적으시오. (3-8

번)

3. pwd 명령을 실행하니 현재 위치가 /home/user1이었다. text.txt 파일의 내용을 행 번호를 붙여서

출력하시오.

# cat –n Unix/test.txt

4. 현재 디렉토리 위치를 Unix로 이동하시오.

# cd Unix

5. C 디렉토리 아래에 있는 hw.c 파일의 하드링크 파일을 현재 디렉토리에 만드시오. (교재, 86-88

page)

# ln ~/C/hw.c hw.c

6. Unix 디렉토리의 report 파일을 user2 사용자의 홈 디렉토리로 복사하시오.

# cp report ~user2 또는 cp ~/Unix/report ~user2

Page 7: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 7 -

7. C 디렉토리 아래에 test 디렉토리를 생성하시오.

# mkdir ../C/test 또는 # mkdir ~/C/test

8. 위에서 생성한 test 디렉토리 아래에 세 개의 빈파일 a,b,c를 생성하시오.

# cd ../C/test

# touch a b c

9. a의 수정 시간을 /etc/services 파일과 일치시키시오. (교재, 91-95 page)

# touch –r /etc/services a

10. 홈 디렉토리로 이동하시오.

# cd

11. C디렉토리 아래에 있는 hw.c 파일을 Unix 디렉토리로 옮기려고 mv C/hw.c unix 명령을 입력하

였다. 작업 후 Unix 디렉토리를 보니, 파일 hw.c가 없다. 어떻게 된 일인지 설명하시오.

목적 디렉토리명을 소문자 unix로 기술하였기 때문에 오류가 발생하였다. mv 명령은 목적

파일을 디렉토리 Unix 가 아닌 파일 unix로 인식하여 hw.c 파일을 현재 디렉토리인 user1

디렉토리 아래에 파일 unix로 복사하였다.

12. Unix 아래의 모든 파일을, 7에서 생성한 test 디렉토리로 복사하시오. (교재, 70-73 page)

# cp Unix/* C/test

13. C 디렉토리 아래의 test 디렉토리를 삭제하시오. (교재, 78-80 page)

# rm –r C/test

Page 8: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 8 -

※ 4장. vi 사용법 익히기

1. vi의 동작 모드를 간단히 설명하시오. (교재, 102-103 page)

▶ 명령모드 : 입력한 키들은 커서 이동이나 화면 이동 같은 명령으로 해석되어 실행

▶ 입력모드 : 입력한 키들은 보통의 편집기처럼 내용으로 입력

▶ 마지막행모드 : 화면의 가장 하단으로 커서가 이동하여 특별한 명령들을 사용

2. 다음 입력 명령의 차이점을 설명하시오. (교재, 105 page)

① i와 I

▶ i : 현재 커서 자리에 입력

▶ I : 커서가 위치한 행의 첫 컬럼으로 이동해 입력

② a와 A

▶ a : 현재 커서 다음 자리에 입력

▶ A : 커서가 위치한 행의 마지막 컬럼으로 이동해 입력

3. 파일의 끝으로 이동하는 방법을 두 가지 이상 적으시오. (교재, 109 page)

:$, G, :마지막 행번호, ^f 반복 입력

4. 길이가 3자인 단어를 수정하기 위해 사용할 수 있는 명령키를 나열하시오. (교재, 110 page)

cw, 3s

5. 파일을 잘못 수정하였다. 원래대로 돌아가는 방법을 모두 적고 설명하시오. (교재, 111 page)

▶ u : 방금 수행한 명령 취소

▶ U : 해당 행에서 수행한 모든 명령 취소

▶ :e! : 현재 문서에서 수행한 모든 편집 명령 취소

6. 10행부터 30행 사이에 있는 모든 Unix를 Linux로 고치는 명령을 적으시오. (교재, 120-121

page)

:10,30s/Unix/Linux/g

7. 현재 커서의 위치에 input이라는 이름의 파일을 삽입하는 명령을 기술하시오. (교재, 124 page)

:r input

8. 4~6행을 2행 다음의 위치로 이동하는 명령을 순서대로 적으시오. (교재, 118 page)

① :4,6d ② :2pu 또는 ① :4,6d ② 2G ③ p

9. 대소문자를 바꿔주는 명령키를 적으시오.

~

10. 파일을 저장하고 vi를 종료하는 명령을 두 개 나열하시오.

:wq, ZZ

Page 9: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 9 -

※ vi 의 동작모드

※ vi 실습: 내용추가하기

Page 10: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 10 -

※ 5장. 배시 쉘 활용하기

1. 표준 입출력 장치가 무엇인지 설명하시오. (교재, 144 page)

유닉스 쉘이 작업을 수행하는데 필요한 정보를 받아들이거나 실행 결과를 내보내는 장치

2. > 사용 시 기존 파일의 내용을 덮어쓸 수 있다. 이를 방지하기 위한 방법을 설명하시오.

# set –o noclobber (교재, 146 page)

3. “ ”와‘ ’의 차이점을 설명하시오. (교재, 142 page)

▶ “ ”는 $, `, \ 를 제외한 특수 문자의 의미를 없앰

▶ ' ' 는 문자열 안에 사용된 모든 특수문자의 의미를 없앰

4. 현재 사용중인 쉘이 무엇인지 확인하는 방법을 두가지 적으시오. (교재, 138-139 page)

# echo $SHELL 또는 # grep $LOGNAME /etc/passwd

5. 배시 쉘이 사용하는 초기화 파일의 이름을 적고 각각의 특징을 설명하시오. (교재, 174 page)

① /etc/profile : 시스템 전체 사용자에게 적용할 설정 정보 저장

② $HOME/.bash_profile : 각 사용자 별로 실행되는 초기화 파일. 로그인 할 때 한번 실행됨

③ $HOME/.profile : 각 사용자 별로 실행되는 초기화 파일. .bash_profile이 없으면 로그인

할 때 한번 실행됨

④ $HOME/.bashrc : 자식 쉘이 실행될 때 마다 실행됨

6. 현재 디렉토리에서 숫자로 시작하는 모든 파일의 상세정보를 한 화면씩 출력하시오.

# ls –al [0-9]* | more

7. 현재 디렉토리에 있는 파일명의 확장자가 c인 모든 파일을 /tmp로 복사하시오.

# cp *.c /tmp

8. ls 명령 실행시 ls –aF 가 실행되도록 설정하시오. (교재, 159-161 page)

# alias ls=’ls –aF’

9. 현재 히스토리 번호가 600번, 사용 중인 시스템 이름이 cookbook이고, 로그인 명이 user1 이라

면 프롬프트가 600:user1@cookbook 이 되도록 설정하시오. (교재, 164, 170 page)

# PS1=‘\!:\u@\h ’

10. 이전의 작업 디렉토리로 이동하시오.

# cd -

11. 홈 디렉토리에 있는 모든 파일의 상세 정보는 파일 ls.out에, 오류 메시지는 ls.err 파일에 저장하

되, 하나의 명령으로 실행하시오. (교재, 146-151 page)

# ls –al ~ > ls.out 2> ls.err

12. cd 명령으로 현재 작업 디렉토리를 변경할 때 현재 디렉토리, /etc 디렉토리, 내 홈 디렉토리 순

서대로 디렉토리를 찾도록 환경을 설정하시오.

# CDPATH=.:/etc:~

Page 11: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 11 -

※ 쉘의 종류

※ 특수기호를 이용하여 표준 입출력 장치를 변경

Page 12: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 12 -

※ 6장. 파일 접근 권한 관리하기

1. 파일과 디렉토리의 접근 권한을 비교하여 설명하시오.

권한 파일 디렉토리

읽기파일을 읽거나 복사할 수 있다.

ls 명령으로 디렉토리 목록을 볼 수 있다.(ls 명령의 옵션은 실행 권한이 있어야 사용할 수 있다)

쓰기파일을 수정, 이동, 삭제할 수 있다(디렉토리에 쓰기 권한이 있어야 한다).

파일을 생성하거나 삭제할 수 있다.

실행파일을 실행할 수 있다(쉘 스크립트나 실행파일의 경우).

cd 명령의 사용이 가능하다. 파일을 디렉토리로 이동하거나 복사할 수 있다.

2. 파일에 부여된 접근 권한이 다음과 같을 때, 소유자, 그룹, 기타사용자가 할 수 있는 작업을 설

명하시오.

접근 권한 소유자 그룹 기타 사용자

rwxr-xr-x파일 내용보기,수정 및 삭제파일 실행 가능

파일 내용보기,파일 실행 가능

파일 내용보기,파일 실행 가능

rw-r--r--파일 내용보기,수정 및 삭제 가능

파일 내용보기 가능 파일 내용보기 가능

r—r--r-- 파일 내용보기 가능 파일 내용보기 가능 파일 내용보기 가능

3. 주어진 파일 및 디렉토리의 접근 권한을 조사하여 다음 표의 빈칸을 채우시오.

(본인의 시스템에 따라서 아래와 같지 않을 수 있음.)

파일/디렉토리 소유자 그룹 권한 기타 권한

/etc/group rw- r-- r--

/etc/shodow r-- --- ---

/tmp rwx --- ---

4. 다음 권한을 8진수로 표현해 보시오.

① rwxr-xr-x : 766 ② rw-r—r-- : 644 ③ rw-r----- : 640 ④ r—r—r-- : 666 ⑤ r-xr-xr-x : 555

5. 마스크 값이 027일 때 파일과 디렉토리를 생성할 경우 기본 접근 권한은 어떻게 되는지 설명하

시오.

▶ 파일 : rw-r----- ▶ 디렉토리 : rwxr-x---

Page 13: 교재명 유닉스 이론과 실습 개정판), 한빛미디어, 2012 1장 유닉스 …unit.mokwon.ac.kr/board/loadFile.ht?fileNm=2013... · ※ 교재명: 유닉스 이론과 실습(개정판),

2013년 1학기, 유닉스시스템 (1~6장 연습문제 풀이) 박 기 홍

- 13 -

※ 다음 질문에 맞는 적당한 명령을 적으시오.

6. 현재 설정된 마스크 값을 확인하시오.

# umask

7. test 파일의 접근 권한을 바꿔진 권한과 같이 변경하시오.

① 기호 모드 사용

현재 권한 변경된 권한 사용 명령

rwxr-xr-x r-x--x--- chmod u-w,g-r,o-rx test

rw-r--r-- r-xr--r-- chmod u-w,u+x test

② 8진수 모드 사용

현재 권한 변경된 권한 사용 명령

rw------- rw-rw-rw- chmod 666 test

r--r--r-- r-x------ chmod 500 test

8. 마스크 값을 077로 바꾸시오.

# umask 077

※ 파일의 속성 알아보기