PowerPoint 프레젠테이션

Download Report

Transcript PowerPoint 프레젠테이션

강좌명 : 유닉스 시스템프로그래밍
(UNIX System Programming)
강좌번호 : E073010-01
이수구분 : 전공선택
강의시간 : 화12A-14B
강의실 : 7호관 424호
담당교수 : 김권양(컴퓨터공학과)
[email protected], 053-850-7287
http://ce.kyungil.ac.kr/~kykim
평가 :
중간고사(30%), 기말고사(30%), 보고서(20%), 출석(20%)
1
교재 소개
도 서 명 | IT CookBook, 유닉스 이론과 실습
저 자 | 윤소정, 이종원
출 판 사 | 한빛미디어
(주)_http://www.hanb.co.kr
페 이 지 | 548페이지
출 간 일 | 2012년 7월 19일
I S B N | 978-89-7914-952-4 93560
소스 파일 | http://www.hanb.co.kr/exam/1952
• 참고문헌
•UNIX &SHELL PROGRAMMING: A TEXTBOOK
•저자 : Behrouz A. Forouzan
목차
Part 01 유닉스 기본
 Chapter 01 유닉스 개요 및 기본 사용법
•
•
01
02
유닉스 개요
유닉스 시스템 접속 방법과 명령 사용법
 Chapter 02 디렉토리 다루기
•
•
•
•
•
•
01
02
03
04
05
06
유닉스 파일 시스템
현재 디렉토리 확인 : pwd
디렉토리 이동 : cd
디렉토리의 파일 목록 확인 : ls
디렉토리 생성 : mkdir
디렉토리 삭제 : rmdir
 Chapter 03 파일 다루기
•
•
01
02
파일 내용 보기 : cat/more/tall
파일 복사 : cp
Part 02 유닉스 고급
 Chapter 06 파일 접근 권한 관리하기
•
•
•
•
•
01
02
03
04
05
파일의 속성
파일의 접근 권한
기호를 이용한 파일 접근 권한 변경
숫자를 이용한 파일 접근 권한 변경
기본 접근 권한의 설정
 Chapter 07 파일과 디렉토리 검색하기
•
•
•
01
02
03
파일 내용 검색 : grep/egrep/fgrep
파일 검색 : find
명령 검색 : which
 Chapter 08 사용자와 프로세스 명령 익히기
•
•
•
•
01
02
03
04
프로세스의 개념과 종류
프로세스 관리 명령
포그라운드와 백그라운드 프로세스
사용자 정보 보기
 Chapter 09 파일 아카이브와 압축 명령 익히기
•
•
•
•
•
•
•
01
02
03
04
05
06
07
파일 아카이브 : tar
파일 아카이브와 압축 : jar
.z 파일 : pack/unpack
.Z 파일 : compress/uncompress
.gz 파일 : gzip/gunzip
.zip 파일 : zip/unzip
.bz2 파일 : bzip2/bunzip2
 Chapter 10 인터넷과 통신 명령 익히기
•
•
•
•
01
02
03
04
사용자간 직접 통신 : write/wall/talk/mesg
이메일 보내기 : mailx
호스트와 개인 정보 확인
파일 송수신 : ftp
 Chapter 11 유닉스 유틸리티 이용하기
•
•
•
•
•
•
•
01
02
03
04
05
06
07
파일 정보 수집 : wc
파일 정렬 : sort
파일 분할 : split
중복 삭제 : uniq
필드 잘라내기 : cut
두 파일 연결하기 : paste
파일 덤프 : dd
Part 03 유닉스 쉘
• Chapter 12 유닉스 쉘의 이해
•
•
•
01
02
03
유닉스 쉘의 기능과 종류
콘 쉘의 주요 기능
C 쉘의 주요 기능
• Chapter 13 배시 쉘 프로그래밍
•
•
•
•
•
•
•
01
02
03
04
05
06
07
쉘 스크립트
쉘 변수 사용하기
사용자로부터 입력 받기
연산자
제어문
함수
디버깅
Part 04 유닉스 시스템 관리
• Chapter 14 시스템 관리 기초
•
•
01 시스템 관리자 02 부팅과 종료 03 사용자 관리 04 그룹 관리
05 루트 비밀번호 관리 06 서비스 관리 07 패키지 관리 08 네트워크 관리
한국전자통신연구원
ETRI
경북대학교
컴퓨터공학과
한국지능시스템
학회
지능정보미디어
University of
Central
Florida
School of Computer Info.
경일대학교
컴퓨터공학과
•http://ce.kyungil.ac.kr/~kykim/
•Mail : [email protected]
7
1장
유닉스 개요ㅎㅎ
및 기본 사용법
• 유닉스 개요
• 유닉스 시스템 접속 방법과 명령 사용법
한빛미디어(주)
1장. 유닉스 개요 및 기본 사용법
학습목표
 유닉스의 특징과 발전 과정을 이해한다.
 유닉스 시스템에 접속하고 해제하는 방법을 익힌다.
 유닉스 명령어의 기본 사용법을 익힌다.
 유닉스 계정의 암호를 변경하는 방법을 익힌다.
9
운영체제(Operating System)
Operating Systems
A computer system cannot function without an operating system.
There are many different operating systems that are available for PCs,
minicomputers, and mainframes;
the most common ones are Windows, VMS, MacOS, iOS, Chrome OS and
UNIX(Linux).
MS Windows is only available for PCs
VMS is only available for mini-computers and mainframes,
and UNIX is available for virtually all platforms.
•programs
• operating system
•hardware
10
Section 01 유닉스 개요
유닉스(Unix)란?
컴퓨터 시스템을 효율적으로 사용하기 위한 운영체제의 일종
유닉스의 역사
1969, AT&T 벨 연구소에서 개발
켄 톰슨(Ken Thompson), 데니스 리치(Dennis Ritche)
최초에는 어셈블리어로 작성, 후에 C 언어로 재작성
초기 UNIX 소스 코드는 대학에 공개됨
버클리 대학에서 수정한 UNIX를 BSD라고 함 • Portability:이식성↑
• Berkeley Software Distribution
• 가장 중요한 개선은 네트워킹 기능의 추가
AT&T 버전은 System III, System V 등
현재는 UNIX는 상용제품으로 비용을 지불해야 함
• 초기의 공개 S/W 정신을 되살린 Linux임(1991) 리누스 토발즈
• Embedded versions of UNIX are available for various hardware
platforms.
11
유닉스의 발전 과정
•현대 유닉스의 원조
•본쉘 등장
•시스템 III
•시스템 V
•1983
•SCO UnixWare
7.1.4
•버전 3
•1973(C언어)
•버전 6
•1975 (외부공개)
•버전 7
•1978
•버전 10
•1989
•1.x BSD
•1978
•3.x BSD
•1980
•4.1 BSD
•1981
•4.2 BSD
•1984
•TCP/IP
•SunOS 1.x
•1982
•SunOS 2.x
•1985
•솔라리스 1
•1990
•솔라리스 10
•2005
•오라클
•솔라리스 11
•2011
•4.3 BSD
•1986
•FreeBSD1.0
•1986
•4.4 BSD
•1993
•FreeBSD9.0
•2012
•1992
•(=UnixWare1)
•SCO UnixWare
7.1.3
•1969(어셈블리어)
•1981(최초 상업용)
•시스템 V
•Release 4.2
•유닉스
•2002
•2008
•리눅스0.01
•1991
•리눅스 3.3
•2012
12
•Sun Ray 실습실 구성도
SunFire V880
(ORACLE DB Server)
Switching Hub
Private Network
ce: Sun Ultra1
(Web Server)
Sun Ultra1
(Mail Server: 교수)
Sun Ultra1
(Mail Server: 학생)
•Sunfire V880 Spec.
•2 x 750MHz UltraSPARC-III,
•4GB Memory, 6 x 36.4GB FCAL Disks
Sun Ray-1 50EA
• • • • •
13
유닉스의 종류
유닉스의 종류
제조회사
Sun OS, Solaris
Sun Microsystems  Oracle
AIX
IBM
Linux
Fedora(RedHat), Ubuntu(Canonial), Suse …
HP/UX
Hewlett-Packard(HP)
Irix
Silicon Graphics
Nextstep
Next
현재 UNIX는 “The Open Group”의 등록상표이므로 각 제조사는 각
자 이름을 붙여 사용
14
?
Chapter유닉스
1. Introductiom
Welcome to UNIX, the open operating system. UNIX is
found on virtually all computer hardware in use today. In
fact, its very pervasiveness is most likely the reason you are
starting to explore its capabilities. In this course, we
introduce you to the basic aspect of UNIX as it is found in
most modern installations.
15
y 유닉스 ?
1.1 Wh
Why
Unix?
Several features of UNIX have made it very popular. Its
popularity is still growing, partially due to the development
of Linux version that has been ported to many platforms.
In this section, we describe some of the features that have
made UNIX so popular.
16
유닉스의 특징
대화형 시스템
다중 사용자 시스템
다중 작업용 시스템
높은 이식성, 확장성, 개방성
UNIX is found on more hardware platforms than any other operating system ever
developed. Its widespread use can be directly traced to the decision to develop it using the
C language. Because C programs are easily moved from one H/W environment to
another, it is relatively simple to port it to different environments. All that is needed is a
standard C compiler.
계층적 트리 파일 시스템
부가적 기능 제공이 다양
17
유닉스의 구조 [1/4]
유닉스는 크게 커널, 쉘, 유틸리티와 파일시스템으로 구분
하드웨어
커널
쉘 유틸리티
파일시스템
18
유닉스의 구조 [2/4]
커널(Kernel)
유닉스 운영체제의 핵심
컴퓨터의 모든 자원을 관리하는 핵심 프로그램
파일 시스템 관리
장치 관리
프로세스 관리
메모리 관리
하드웨어
커널
19
유닉스의 구조 [3/4]
쉘(Shell)
사용자와 커널 사이의 중간자 역할 담당
명령어 처리
• 사용자가 입력한 명령을 이해하여 실행
본쉘(Bourne Shell) : sh
C쉘(C Shell) : csh
콘쉘(Korn Shell) : ksh
배시쉘(Bash Shell) : bash
하드웨어
커널
쉘
20
The shell(Windows XP)
The shell(Windows XP)XP)
21
The shell(CDE)
The shell(CDE)
22
The shell(CDE)
23
유닉스의 구조 [4/4]
파일 시스템
컴퓨터 정보관리(파일, 디렉토리 등)
유틸리티/명령어
파일 편집기, 프로그래밍, 통신,…
하드웨어
커널
쉘
유틸리티
파일시스템
24
Section 02 유닉스 시스템 접속 방법과 명령 사용법
유닉스시스템 : 유닉스가 동작하고 있는 컴퓨터
유닉스시스템에 접속하기 위해 필요한 것들
단말기
• PC에서 접속프로그램을 이용하여 접속
• 윈도우 기본 telnet이나 윈텀(winterm) 등 이용
• Ray 장비를 통한 접속
사용자 계정
• 로그인ID, 패스워드 지정
• 시스템관리자에게 요청하여 등록
로그인(login)하기
시스템의 사용을 허가 받고 자원을 할당 받는 과정
ID, 패스워드 입력
25
텔넷을 이용해 유닉스에 접속하기
1
① <시작> 버튼 클릭 후 [실행]
메뉴를 선택한다.
② 실행창에서 텔넷을 실행시킨다.
telnet 유닉스시스템명
2
•203.230.91.40
3
③ 로그인ID와 패스워드를 입력
하여 로그인한다.
• id : s0042247
•학번 20042247
26
접속 초기 화면(telnet)
유닉스시스템 접속에 성공하면 메시지 출력
"Sun ..." 메시지는 유닉스 개발 회사와 버전을 의미
홈디렉토리
로그인한 직후의 작업디렉토리
프롬프트
사용자의 입력을 기다리는 표시
콘쉘 : $
27
Ray 장비를 이용해 유닉스(ray 서브)에 접속하기
2
3
28
The shell(CDE)
접속 초기 화면(CDE)
29
명령행 편집 방법
문자 지우기
백스페이스(^h) 또는 Delete키(^?)
단어 지우기
Ctrl + w
문장 지우기
Ctrl + u
30
명령의 구조
명령 [옵션] [인자]
명령
유닉스를 사용하기 위해 사용자가 입력하는 다양한 명령
예 : ls, date, cal … 등
옵션
명령의 세부기능을 선택
-로 시작하고 숫자, 대문자, 소문자를 사용
예 : ls –l
인자
명령으로 전달되는 값
보통 파일명이나 디렉토리명
예 : ls /tmp, ls –l /tmp
31
기초명령의 사용
banner
화면에 큰 문자를 출력
예 : $ banner unix
date
날짜와 시간을 출력
clear
화면을 깨끗이 지움
man
명령에 대한 설명 출력
예 : $ man banner
32
패스워드 변경 : passwd
passwd
패스워드를 변경
전화번호, 생일 등 쉽게 추측이 가능한 패스워드 사용금지
6~8자로 지정
사용법
33
유닉스시스템 접속 해제
로그아웃(logout)
유닉스시스템과의 접속을 해제하는 과정
접속해제 방법
logout
exit
Ctrl + d
34
[실습하기] 유닉스시스템 접속 및 해제
①
②
③
④
⑤
접속할 유닉시스템의 호스트명이나 IP주소를 확인한다.
자신의 로그인ID와 패스워드를 확인한다.
텔넷을 동작시킨다. (CDE를 이용하여 접속)
로그인한다.
기초 명령을 실행해본다.
$ banner test
$ date
⑥ 자신의 패스워드를 변경한다.
$ passwd
⑦ 로그아웃한다.
35
Session 1.2. Calendar Output
$ cal 1 2001
January 2001
S M Tu W Th F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
-------------------------------------
36
•The echo Command
37
Session 1.9 The echo Command
$ echo Hello World
Hello World
$ echo "Error 105: Invalid total sales"
Error 105: Invalid total sales
-----------------------------------------------
38
•The man Command
39
Session 1.10 man Documentation
$ man cal
cal(1)
cal(1)
NAME
cal - print calendar
SYNOPSIS
cal [ [ month ] year ]
DESCRIPTION
cal prints a calendar for the specified year. If a month is also
specified, a calendar just for that month is printed. If neither
is specified, a calendar for the present month is printed. The
month is a number between 1 and 12. The year can be between 1 and
9999. The calendar produced is that for England and the United
States.
NOTES
An unusual calendar is printed for September 1752. That is the
month 11 days were skipped to make up for lack of leap year
adjustments. To see this calendar, type: cal 9 1752
The command cal 83 refers to the year 83, not 1983.
The year is always considered to start in January even though
this is historically naive.
------------------------------------------------------------
40
문서작성하기
41
email 보내기
42
Thank you