강좌명 : 유닉스 시스템프로그래밍 (UNIX System Programming) 강좌번호 : E 이수구분 : 전공선택

Slides:



Advertisements
Similar presentations
Linux1 Linux 개요 Linux 방문하여 홈페이지 등록하기 Vi 편집해 보기. Linux2 개요  Linux 란 ? 1991 Linus Benedict Torvalds 가 만든 Unix 의 한 버전 GNU(GNU is Not Unix) » 프로그램이나 정보의.
Advertisements

숙명여대 창병모 2011 가을 1. Unix/Linux 의 효과적 사용  command, shell programming, X-window,... 시스템 프로그래밍 능력 향상  file, process, network programming 시스템의 체계적 이해 및.
1 장. 유닉스 개요 및 기본 사용법. Contents  학습목표  유닉스의 특징과 발전 과정을 이해한다.  유닉스 시스템에 접속하고 해제하는 방법을 익힌다.  유닉스 명령어의 사용법을 익힌다.  내용  유닉스 개요 유닉스의 역사와 특징, 구조  유닉스 시스템.
을지대학교 무선 네트워크 사용 방법 2010 년 06 월 01 일. 을지대학교 무선 네트워크 사용 방법 1. PC 무선랜 카드 활성화 및 체크 1 단계 : 시작 -> 설정 -> 네트워크 설정 2 단계 : 무선 네트워크 설정 선택 -> 마우스 버튼 오른쪽 클릭 -> 사용.
1 장 유닉스 소개 1. 강의 목적 및 내용 2 강의 목적  유닉스 / 리눅스 시스템의 체계적 이해 및 활용  시스템 프로그래밍 능력 향상 강의 내용  유닉스 / 리눅스의 효과적 사용 명령어, 파일 시스템, 네트워킹, X- 윈도우, 쉘 프로그래밍  유닉스 / 리눅스.
1장 유닉스/리눅스 소개.
컴퓨터와 인터넷.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
목차 Contents 무선인터넷용 비밀번호 설정방법 Windows 7 Windows 8 Windows XP MAC OS.
Chapter 10장 솔라리스 자원 관리 및 프로젝트 관리 Solaris2. 프로젝트 관리
기초C언어 제1주 실습 강의 소개, C언어 개요, Cygwin/Eclipse 사용 컴퓨터시뮬레이션학과 2016년 봄학기
김태원 심재일 김상래 강신택. 김태원 심재일 김상래 강신택 인터넷 통신망의 정보를 제공하는 서비스 인터넷의 자원 및 정보는 NIC가 관리 IP주소 또는 도메인으로 정보 검색 이용자 및 통신망 관한 정보를 제공.
1장 리눅스의 기본 개념과 프로그램 작성 리눅스의 기본 개념 시스템에 접속하기 리눅스의 프로그래밍 환경
강좌명 : 유닉스 시스템프로그래밍 (UNIX System Programming) 강좌번호 : E 이수구분 : 전공선택
C 프로그래밍 I.
1. Windows Server 2003의 역사 개인용 Windows의 발전 과정
Windows Server 장. Windows Server 2008 개요.
MYSQL 설치.
1장. 이것이 C 언어다.. 1장. 이것이 C 언어다. 프로그래밍 언어 1-1 C 언어의 개론적 이야기 한글, 엑셀, 게임 등의 프로그램을 만들 때 사용하는 언어 ‘컴퓨터 프로그래머’라는 사람들이 제작 C 언어(C++ 포함)를 가장 많이 사용함.
Helpers ① 오혜성 & 최형석 ② 고의정 & 박소희 ③ 김소연 & 현광식
Unix & Shell 사용법 1 번째주 Dept. of Computer Science & Engineering
소개: Unix란 무엇인가? 숙명여대 창병모 2009/09.
Ch. 1 LINUX SYSTEM.
유닉스 이론과 실습 √ 원리를 알면 IT가 맛있다 컴퓨터정보계열 이광규.
Linux/UNIX Programming
5장 Mysql 데이터베이스 한빛미디어(주).
임베디드 시스템 개론 크로스 플랫폼 설치 2일차 강의 자료 Embedded System Lab.
UNIX 시스템 정보통신공학과 이 우 섭.
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
Root Filesystem Porting
Root Filesystem Porting
컴퓨터정보공학부 서버 안내 [ IBM x3500 ] it.sangji.ac.kr ict.sangji.ac.kr 혹은
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
Linux Master 김희승 임승한 OneScore 임승한.
뇌를 자극하는 Windows Server 장. Windows Server 2008 개요.
뇌를 자극하는 Windows Server 장. 장애 조치 클러스터.
5장 Mysql 데이터베이스 한빛미디어(주).
Cross Compiler를이용한 커널 컴파일 및 포팅
솔라리스10 3장. 솔라리스 패키지 관리.
2015 운영체제 특강 수업 소개 Special Topics on Operating Systems
Linux/UNIX Programming
이재광 정보보호 일반 중에서 제2장 운영체제 보안 이재광
Linux/UNIX Programming
제1장 Unix란 무엇인가?.
유닉스 개요 및 기본 사용법 ㅎㅎ 유닉스 개요 유닉스 시스템 접속 방법과 명령 사용법.
OS 역사 손병규.
Linux/UNIX Programming
학기 C/C++ 프로그래밍 실습 1주차.
컴퓨터 시스템 하드웨어 컴퓨터 시스템 소프트웨어 C P U Control Unit 입 력 장 치 출 력 장 치 ALU
Unix 시스템 인천대학교 전자계산학과 성미영
리눅스 커널 프로그래밍 환경 구축 IT EXPERT 리눅스 커널 프로그래밍 Author : Byungki Kim
Linux/UNIX Programming
Linux/UNIX Programming
Linux/UNIX Programming
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
뇌를 자극하는 Solaris bible.
시스템 인터페이스 Lab#5 쉡 실습.
Linux 9.X 기초에서 활용까지 Chapter 06 VI 편집기.
 파일 아카이브와 압축 명령 익히기.
C 프로그래밍 I.
기초C언어 제2주 실습 프로그래밍의 개념, 프로그램 작성 과정 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
시스템 인터페이스 Lab1 X-window 및 명령어 사용.
4. 셸을 이용한 명령어 입력. Unix 시스템 쉘 간단한 셸 명령 명령 매개변수(Command arguments)
유닉스 이론과 실습.
운영체제 (Operating Systems)
과제 4: Thread (5월 9일까지) 4장 연습문제 풀이
채팅 및 파일전송 프로그램 권 경 곤 김 창 년.
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
Linux/UNIX Programming
Linux/UNIX Programming
Presentation transcript:

강좌명 : 유닉스 시스템프로그래밍 (UNIX System Programming) 강좌번호 : E073010-01 이수구분 : 전공선택 강의시간 : 목12:00-14:50 강의실 : 7호관 424호 담당교수 : 김권양(컴퓨터공학과) kykim@kiu.ac.kr, 053-600-5561 http://ce.kiu.ac.kr/~kykim/index.html 평가 : 중간고사(30%), 기말고사(30%), 보고서(20%), 출석(20%)

교재 소개 참고문헌 UNIX &SHELL PROGRAMMING: A TEXTBOOK 도 서 명 | 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 유닉스 개요 및 기본 사용법 Chapter 02 디렉토리 다루기 01 유닉스 개요 02 유닉스 시스템 접속 방법과 명령 사용법 Chapter 02 디렉토리 다루기 01 유닉스 파일 시스템 02 현재 디렉토리 확인 : pwd 03 디렉토리 이동 : cd 04 디렉토리의 파일 목록 확인 : ls 05 디렉토리 생성 : mkdir 06 디렉토리 삭제 : rmdir Chapter 03 파일 다루기 01 파일 내용 보기 : cat/more/tall 02 파일 복사 : cp

Part 02 유닉스 고급 Chapter 06 파일 접근 권한 관리하기 Chapter 07 파일과 디렉토리 검색하기 01 파일의 속성 02 파일의 접근 권한 03 기호를 이용한 파일 접근 권한 변경 04 숫자를 이용한 파일 접근 권한 변경 05 기본 접근 권한의 설정 Chapter 07 파일과 디렉토리 검색하기 01 파일 내용 검색 : grep/egrep/fgrep 02 파일 검색 : find 03 명령 검색 : which Chapter 08 사용자와 프로세스 명령 익히기 01 프로세스의 개념과 종류 02 프로세스 관리 명령 03 포그라운드와 백그라운드 프로세스 04 사용자 정보 보기

Chapter 09 파일 아카이브와 압축 명령 익히기 01 파일 아카이브 : tar 02 파일 아카이브와 압축 : jar 03 .z 파일 : pack/unpack 04 .Z 파일 : compress/uncompress 05 .gz 파일 : gzip/gunzip 06 .zip 파일 : zip/unzip 07 .bz2 파일 : bzip2/bunzip2 Chapter 10 인터넷과 통신 명령 익히기 01 사용자간 직접 통신 : write/wall/talk/mesg 02 이메일 보내기 : mailx 03 호스트와 개인 정보 확인 04 파일 송수신 : ftp Chapter 11 유닉스 유틸리티 이용하기 01 파일 정보 수집 : wc 02 파일 정렬 : sort 03 파일 분할 : split 04 중복 삭제 : uniq 05 필드 잘라내기 : cut 06 두 파일 연결하기 : paste 07 파일 덤프 : dd

Part 03 유닉스 쉘 Part 04 유닉스 시스템 관리 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 네트워크 관리

University of Central Florida 담당교수 ETRI 경북대학교 한국지능시스템학회 University of Central Florida 경일대학교 한국전자통신연구원 컴퓨터공학과 지능정보미디어 School of Computer Info. 컴퓨터공학과 http://ce.kiu.ac.kr/~kykim/ Mail : kykim@kiu.ac.kr

유닉스 개요 및 기본 사용법 ㅎㅎ 유닉스 개요 유닉스 시스템 접속 방법과 명령 사용법 한빛미디어(주)

학습목표 내용 1장. 유닉스 개요 및 기본 사용법 유닉스의 특징과 발전 과정을 이해한다. 유닉스 시스템에 접속하고 해제하는 방법을 익힌다. 유닉스 명령어의 기본 사용법을 익힌다. 유닉스 계정의 암호를 변경하는 방법을 익힌다. 내용 유닉스 개요 유닉스의 역사와 특징, 구조 유닉스 시스템 접속 및 해제 방법 유닉스 명령 사용법 명령행 편집, 유닉스 명령의 구조, 기초 명령어 사용법

운영체제(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

유닉스(Unix)란? 유닉스의 역사 Section 01 유닉스 개요 컴퓨터 시스템을 효율적으로 사용하기 위한 운영체제의 일종 1969, AT&T 벨 연구소에서 개발 켄 톰슨(Ken Thompson), 데니스 리치(Dennis Ritche) 최초에는 어셈블리어로 작성, 후에 C 언어로 재작성 초기 UNIX 소스 코드는 대학에 공개됨 버클리 대학에서 수정한 UNIX를 BSD라고 함 Berkeley Software Distribution 가장 중요한 개선은 네트워킹 기능의 추가 AT&T 버전은 System III, System V 등 현재는 UNIX는 상용제품으로 비용을 지불해야 함 초기의 공개 S/W 정신을 되살린 Linux임(1991) 리누스 토발즈 Embedded versions of UNIX are available for various hardware platforms. Portability:이식성↑

유닉스의 발전 과정 리눅스 커널 4.7.2 2016 유닉스 버전 3 버전 6 1.x BSD 버전 7 3.x BSD 버전 10 1969(어셈블리어) 버전 3 1973(C언어) 버전 6 1975 (외부공개) 1.x BSD 1978 버전 7 1978 현대 유닉스의 원조 본쉘 등장 3.x BSD 1980 버전 10 1989 4.1 BSD 1981 시스템 III 1981(최초 상업용) 4.2 BSD 1984 TCP/IP SunOS 1.x 시스템 V 1983 1982 시스템 V Release 4.2 (=UnixWare1) SunOS 2.x 1985 4.3 BSD 1986 FreeBSD1.0 1986 1992 4.4 BSD 솔라리스 1 1993 1990 FreeBSD9.0 2012 SCO UnixWare 7.1.3 2002 솔라리스 10 2005 리눅스0.01 1991 SCO UnixWare 7.1.4 2008 오라클 솔라리스 11 2011 리눅스 3.3 2012 리눅스 커널 4.7.2 2016

Sun Ray 실습실 구성도 Sunfire V880 Spec. 2 x 750MHz UltraSPARC-III, (ORACLE DB Server) • • • • • Sun Ray-1 50EA ce: Sun Ultra1 (Web Server) Sun Ultra1 (Mail Server: 교수) (Mail Server: 학생) Switching Hub Private Network Sunfire V880 Spec. 2 x 750MHz UltraSPARC-III, 4GB Memory, 6 x 36.4GB FC-AL Disks

현재 UNIX는 “The Open Group”의 등록상표이므로 각 제조사는 각자 이름을 붙여 사용 유닉스의 종류 현재 UNIX는 “The Open Group”의 등록상표이므로 각 제조사는 각자 이름을 붙여 사용 제품명 제조회사 유닉스 오라클 솔라리스 (Oracle Solaris) Oracle(오라클) AIX IBM HP-Ux HP (휴렛 패커드) 리눅스 페도라(Fedora) RedHat (레드햇) 우분투(Ubuntu) Canonical(캐노니컬) 구글 크롬OS, 안드로이드, 타이젠(삼성+인텔)

유닉스 ? 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.

1.1 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.

대화형 시스템 다중 사용자 시스템 다중 작업용 시스템 높은 이식성, 확장성, 개방성 계층적 트리 파일 시스템 유닉스의 특징 대화형 시스템 다중 사용자 시스템 다중 작업용 시스템 높은 이식성, 확장성, 개방성 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. 계층적 트리 파일 시스템 부가적 기능 제공이 다양

유닉스는 크게 커널, 쉘, 유틸리티와 파일시스템으로 구분 유닉스의 구조 [1/4] 유닉스는 크게 커널, 쉘, 유틸리티와 파일시스템으로 구분 하드웨어 커널 쉘 유틸리티 파일시스템

커널(Kernel) 하드웨어 커널 유닉스의 구조 [2/4] 유닉스 운영체제의 핵심 컴퓨터의 모든 자원을 관리하는 핵심 프로그램 파일 시스템 관리 장치 관리 프로세스 관리 메모리 관리 하드웨어 커널

쉘(Shell) 하드웨어 커널 쉘 유닉스의 구조 [3/4] 사용자와 커널 사이의 중간자 역할 담당 명령어 처리 사용자가 입력한 명령을 이해하여 실행 본쉘(Bourne Shell) : sh C쉘(C Shell) : csh 콘쉘(Korn Shell) : ksh 배시쉘(Bash Shell) : bash 하드웨어 커널 쉘

The shell(Windows XP)XP)

The shell(Windows 7)XP)

The shell(Windows 10)XP)

The shell(Mac OS X)XP)

The shell(Chrome OS Desktop Environment)XP)

The shell(Gnome :그놈)

The shell(Unity :유니티) 리눅스 배포판인 우분투의 기본 데스크탑 환경

The shell(기타 리눅스용) KDE MATE (마테) Cinnamon (시나몬) Xfce LXDE Pantheon (Lightweight X11 Desktop Environment) Pantheon Deepin

The shell(CDE) Common Desktop Environment The shell(CDE) 공통 데스크톱 환경 : 공통 개방형 소프트웨어 환경이 지정한 유닉스 GUI 규격 The Common Desktop Environment was created by a collaboration of Sun, HP, IBM, DEC, SCO, Fujitsu and Hitachi. Used on a selection of commercial UNIXs, it is now available as open-source software for the first time. The shell(CDE)

The shell(CDE) The shell(CDE)

파일 시스템 유틸리티/명령어 하드웨어 커널 쉘 유틸리티 파일시스템 유닉스의 구조 [4/4] 컴퓨터 정보관리(파일, 디렉토리 등) 유틸리티/명령어 파일 편집기, 프로그래밍, 통신,… 하드웨어 커널 쉘 유틸리티 파일시스템

Section 02 유닉스 시스템 접속 방법과 명령 사용법 유닉스시스템 : 유닉스가 동작하고 있는 컴퓨터 유닉스시스템에 접속하기 위해 필요한 것들 단말기 PC에서 접속프로그램을 이용하여 접속 윈도우 기본 telnet이나 윈텀(winterm), SSH(secure Shell:Putty) 등 이용 Ray 장비를 통한 접속 사용자 계정 로그인ID, 패스워드 지정 시스템관리자에게 요청하여 등록 로그인(login)하기 시스템의 사용을 허가 받고 자원을 할당 받는 과정 ID, 패스워드 입력

<시작> 버튼 클릭 후 [실행] 메뉴를 선택한다. 텔넷을 이용해 유닉스에 접속하기 1 <시작> 버튼 클릭 후 [실행] 메뉴를 선택한다. 실행창에서 텔넷을 실행시킨다. telnet 유닉스시스템명 로그인ID와 패스워드를 입력 하여 로그인한다. 2 203.230.91.40 3 id : s0042247 학번 20042247

유닉스시스템 접속에 성공하면 메시지 출력 홈디렉토리 프롬프트 접속 초기 화면(telnet) "Sun ..." 메시지는 유닉스 개발 회사와 버전을 의미 홈디렉토리 로그인한 직후의 작업디렉토리 프롬프트 사용자의 입력을 기다리는 표시 콘쉘 : $

Ray 장비를 이용해 유닉스(ray 서브)에 접속하기 2 3

The shell(CDE) 접속 초기 화면(CDE)

문자 지우기 단어 지우기 문장 지우기 명령행 편집 방법 백스페이스(^h) 또는 Delete키(^?) Ctrl + w Ctrl + u

명령 [옵션] [인자] 명령 옵션 인자 명령의 구조 유닉스를 사용하기 위해 사용자가 입력하는 다양한 명령 예 : ls, date, cal … 등 옵션 명령의 세부기능을 선택 -로 시작하고 숫자, 대문자, 소문자를 사용 예 : ls –l 인자 명령으로 전달되는 값 보통 파일명이나 디렉토리명 예 : ls /tmp, ls –l /tmp 명령 [옵션] [인자]

banner date clear man 기초명령의 사용 화면에 큰 문자를 출력 예 : $ banner unix 날짜와 시간을 출력 clear 화면을 깨끗이 지움 man 명령에 대한 설명 출력 예 : $ man banner

passwd 패스워드를 변경 사용법 패스워드 변경 : passwd 전화번호, 생일 등 쉽게 추측이 가능한 패스워드 사용금지 6~8자로 지정 사용법 passwd

로그아웃(logout) 접속해제 방법 유닉스시스템 접속 해제 유닉스시스템과의 접속을 해제하는 과정 logout exit Ctrl + d

접속할 유닉시스템의 호스트명이나 IP주소를 확인한다. 자신의 로그인ID와 패스워드를 확인한다. [실습하기] 유닉스시스템 접속 및 해제 접속할 유닉시스템의 호스트명이나 IP주소를 확인한다. 자신의 로그인ID와 패스워드를 확인한다. 텔넷을 동작시킨다. (CDE를 이용하여 접속) 로그인한다. 기초 명령을 실행해본다. $ banner test $ date 자신의 패스워드를 변경한다. $ passwd 로그아웃한다.

Session 1.2. Calendar Output 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 -------------------------------------

The echo Command

Session 1.9 The echo Command $ echo Hello World Hello World $ echo "Error 105: Invalid total sales" Error 105: Invalid total sales -----------------------------------------------

The man Command

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. ------------------------------------------------------------

문서작성하기

email 보내기