(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크

Slides:



Advertisements
Similar presentations
Apr. 25, 2013 Laboratory of Systems Medicine BASIC LINUX COMMANDS.
Advertisements

Linux1 Linux 개요 Linux 방문하여 홈페이지 등록하기 Vi 편집해 보기. Linux2 개요  Linux 란 ? 1991 Linus Benedict Torvalds 가 만든 Unix 의 한 버전 GNU(GNU is Not Unix) » 프로그램이나 정보의.
1 장 Unix/Linux 소개 1 Helpers. 1 장 내용 1. 왜 유닉스인가 ? 2. 유닉스 시스템 구조 3. 유닉스 역사 및 버전 4. 리눅스 설치 ( 별도 2 시간 실습 ) 5. 사용 환경 6. 사용자 계정 관리 Unix/Linux 2.
SPARCS 10 이 가 영 기본 UNIX 명령어. 일단 로그인 ! Linux login 시 계정을 입력하거나 root 를 입력 Root -> # 일반 사용자 -> $ 패스워드 : echo 기능을 꺼서 볼 수 없다. 대소문자 구분 패스워드 처음 설정 시 : ~$ passwd.
쉘 스크립트와 cron coearth, george.
시작부터 끝까지 진지한 궁서체로 진행하는 완벽한 주입식의 하드코어한 리눅스/장난감 세미나
임베디드 시스템 개발을 위한 리눅스 환경설정.
UNIX 기초 UNIX 기초 UNIX 기초.
1장 유닉스 소개.
7 기타 시스템 관리 Cron을 이용한 작업 스케듈링 SPARCS 11 cling.
FTP 09 SPARCS 박철웅 [dothack].
4. 시스템 관리 기본 naldo.
Linux University of Seoul Computer Science Park Jong wook
리눅스 실습 정성훈.
뇌를 자극하는 Windows Server 2012 R2
컴퓨터 네트워크 실습.
운영체제 설정과 취약점 인터넷공학/컴퓨터공학 이수백/허성욱.
PXA270 개발환경 설정 Ubuntu 실습용.
NFS, FTP coearth, george.
UNIX의 중급 명령어 UNIX의 고급 명령어 연습 문제
Kernel Porting Lecture #7.
정보 보안 개론과 실습 시스템 해킹과 보안 √ 원리를 알면 IT가 맛있다 ehanbit.net.
2-1장. 리눅스 명령어.
Minicom,tftp,nfs설정,vnc설정
강 명 수 소프트웨어 관리 강 명 수
 13장. 배시쉘 프로그래밍.
Tftp, nfs, samba 실습 임베디드 시스템 I.
[beginning] Linux & vi editor
UNIX Unbounded A Beginning Approach
목차 커널의 개념 및 기능 커널 포팅 램디스크.
2. Linux Installation Target Embedded System은 리눅스 환경을 사용한다. 이 장에서는 리눅스 설치부터, 각 설정의 의미들에 대해 이야기 한다.
Development Environment of Embedded System : part 1
XEN & CLOUD SPARCS14 ONION.
<리눅스 무료백업툴 REAR>
부 록 Ubuntu 설치.
Linux/UNIX Programming
UNIX Unbounded A Beginning Approach
컴퓨터 네트워크 실습.
9장. 네임서버 설치와 운영.
운 영 체 제 실 습 6. 네트워크 관리.
리눅스 명령어 실습 임베디드 시스템 I.
15장. Samba 서버의 설치와 운영.
제2장 유닉스/리눅스 사용.
시스템 보안 백 도 어 학번: 이름: 김 준 일.
리눅스 기본 명령어 기본 명령어 명령어 기능 사 용 예 date 날짜 및 시간을 확인하고 생성.
Ch 08. 부트 프로세스 Flatstar.
DataStage 운영자 지침서 Operator’s Guide
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
Virtualbox static ip 설정
6. 파일 관리. pwd(print working directory)와 cd(change directory) ls(list)
제4장 유닉스 쉘 숙명여대 창병모 2011 가을.
Google Cloud Platform을 이용한 서버 인프라 구축
1장. 가상머신(Virtual Machine)의 소개와 설치
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
인터넷보안 실습 2012년 1학기.
4장 서버 구축을 위해 알아야 할 핵심 개념과 명령어
운영체제 RaspberryPi Sejin Oh.
Itbank solaris Pm 4:00 class 김 정 훈
시스템 인터페이스 Lab2 X-window 및 명령어 사용.
Unix 방문(접속하여 로그인) 하기 수퍼 유저 되어 사용자 계정 만들기 Unix의 아파치 웹 서버에 홈페이지 등록하기
Telnet 을 활용한 Linux 메뉴얼 오두환.
프린터 서버 최재우.
Execution with Unnecessary Privileges
Internet Protocol and Programming
제4장 유닉스 쉘 숙명여대 창병모
소리가 작으면 이어폰 사용 권장!.
임베디드 리눅스 설치 및 동작 Lecture #5.
제2부 3장 인터넷 인터넷 ( a global network of networks )
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
Intelligent software Lab. 전재원
Presentation transcript:

(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크 4장. 서버구축을 위해 알아야 할 필수 개념과 명령어

시작과 종료 [P155] 종료하는 방법 시스템 재부팅 로그아웃 ① 바탕 화면의 [시스템] → [끄기] → <끄기> ② 터미널/콘솔에서 시스템 종료 명령 입력 “shutdown -h now” , “halt” , “init 0” 시스템 재부팅 ① 바탕 화면의 [시스템] → [끄기] → <다시 시작> ② 터미널/콘솔에서 시스템 재부팅 명령 입력 “shutdown -r now” , “ reboot” , “ init 6” 로그아웃 ① 바탕 화면의 [시스템] → [사용자이름 로그아웃] ② 터미널/콘솔에서 시스템 종료 명령 입력 “logout” 또는 “exit” 런레벨(runlevel) 0번 - 종료 모드 1번 - 단일 사용자 모드(시스템 복구 시에 주로 사용) 2번 - NFS 없는 다중 사용자 모드(잘 사용하지 않음) 3번 - 텍스트 모드의 다중 사용자 모드 4번 - 사용하지 않음 5번 - X 윈도우 모드의 다중 사용자 모드 6번 - 재부팅 모드

가상 콘솔 [P158] 쉽게 ‘가상의 모니터’라 생각하면 됨. 페도라는 총 6개의 가상 콘솔을 제공. 쉽게 ‘가상의 모니터’라 생각하면 됨. 페도라는 총 6개의 가상 콘솔을 제공. 각각의 가상 콘솔로 이동하는 단축키는 Ctrl+ Alt + F2 ~ F6 (Ctrl + Alt + F1은 X윈도우 모드) <실습1> 여러 명의 사용자가 리눅스에 동시 접속 [P158] 실습목표 멀티유저의 환경을 실습해 본다. 가상 콘솔 기능을 활용해 본다. 이번 실습은 Windows 버전/Vmware 버전/키보드 종류에 따라서 잘 수행되지 않을 수 있음. 잘 안되면 이번 실습은 다른 실습과 무관하므로, 생략해도 됨.

자동 완성기능은 빠른 입력효과도 있지만, 파일명이나 디렉터리가 틀리지 않고 정확하게 입력되는 효과도 있으므로 자주 활용된다. 자동 완성과 도스 키 [P160] 자동 완성이란 파일명의 일부만 입력한 후에 Tab키를 눌 러 나머지 파일명을 자동으로 완성하는 기능을 말함. 예) cd /etc/sysconfig/networking/devices 를 입력하려면 cd /et[Tab키]sysco[Tab키]networki[Tab키]de[Tab키] 도스 키란 이전에 입력한 명령어를 상/하 화살표 키를 이용해서 다시 나타내는 기능을 말함. 자동 완성기능은 빠른 입력효과도 있지만, 파일명이나 디렉터리가 틀리지 않고 정확하게 입력되는 효과도 있으므로 자주 활용된다.

vi는 자주 사용해야 할 기능이므로 반드시 익혀야 한다. <실습2> 에디터의 사용 [P161] 실습목표 gedit의 기본적인 사용법을 익힌다. vi의 사용법을 연습한다. vi 사용법 개요도 vi는 자주 사용해야 할 기능이므로 반드시 익혀야 한다.

<실습3> 에디터가 비정상적으로 종료 [P164] 실습목표 vi 에디터가 비정상적으로 종료시에 조치법을 익힌다. 실습 화면 (vi의 비정상 종료시의 화면)

vi 기능 요약 [P166] 명령모드  입력모드 명령 모드에서 커서를 이동 명령 모드에서 삭제, 복사, 붙여넣기 -문자열을 치환은 “:%s/기존문자열/새문자열” -행번호 표시는 “:set number” vi 기능 요약 [P166] 명령모드  입력모드 명령 모드에서 커서를 이동 명령 모드에서 삭제, 복사, 붙여넣기 명령 모드에서 문자열 찾기

도움말 사용법 [P167] 마운트와 CD/DVD 및 USB 메모리의 활용 [P168] “man 명령어”를 사용하면 도움말 출력 물리적인 장치를 특정한 위치(대개는 디렉토리)에 연결 시켜 주는 과정

<실습4> CD/DVD 및 USB 활용 [P169] 실습목표 X 윈도우에서 CD/DVD 와 USB 사용법을 익힌다. 텍스트모드에서 CD/DVD 와 USB 사용법을 익힌다. 실습 화면 (X윈도우와 텍스트모드에서 마운트된 상태)

<실습5> 리눅스에서 ISO 파일 제작 [P178] 실습목표 CD 레코딩 명령어 “genisoimage” 사용법을 익힌다. ISO 파일을 리눅스에서 마운트해 사용하는 방법을 익힌다. 실습 화면 (ISO 파일 생성)

리눅스 기본 명령어 (1) [P180~P182] ls cd pwd rm 예) # ls /usr/bin 도스의 “dir”과 같은 역할로, 해당 디렉토리에 있는 파일의 목록을 나열 예) # ls /usr/bin cd 디렉토리를 이동 예) # cd ../usr/bin pwd 현재 디렉토리의 전체 경로를 출력 rm 파일이나 디렉토리를 삭제 예) # rm -rf abc ‘.’ (현재 디렉토리) ‘..’ (현재의 상위 디렉토리) 리눅스는 별도의 숨김 파일(Hidden File)이라는 속성이 존재하지 않는다. 파일명이나 디렉토리의 제일 앞 글자를 “.”으로 하면 자동으로 숨김 파일이 된다.

리눅스 기본 명령어 (2) [P180~P182] cp touch mv mkdir 예) # cp abc.txt cba.txt 파일이나 디렉토리를 복사 예) # cp abc.txt cba.txt touch 크기가 0인 새 파일을 생성, 이미 존재하는 경우 수정 시간을 변경 예) # touch abc.txt mv 파일과 디렉토리의 이름을 변경하거나 위치 이동 시 사용 예) mv abc.txt www.txt mkdir 새로운 디렉토리를 생성 예) # mkdir abc

리눅스 기본 명령어 (3) [P180~P182] rmdir cat head, tail more 예) # rmdir abc 디렉토리를 삭제. (단, 비어 있어야 함) 예) # rmdir abc cat 텍스트로 작성된 파일을 화면에 출력 예) # cat install.log head, tail 텍스트로 작성된 파일의 앞 10행 또는 마지막 10행만 출력 예) # head install.log more 텍스트로 작성된 파일을 화면에 페이지 단위로 출력 예) # more install.log

리눅스 기본 명령어 (4) [P180~P182] less file clear 예) # less install.log more와 용도가 비슷하지만 기능이 더 확장된 명령 예) # less install.log file File이 어떤 종류의 파일인지를 표시 예) # file install.log clear 명령창을 깨끗하게 지워줌 예) # clear

사용자와 그룹(1) [P184~P185] 리눅스는 다중 사용자 시스템(Multi-User System) 임 기본적으로 root라는 이름을 가진 수퍼유저(Superuser) 가 있으며, 모든 작업을 할 수 있는 권한이 있음 모든 사용자를 하나 이상의 그룹에 소속되어 있음 사용자는 /etc/passwd 파일에 정의되어 있음 각 행의 의미는 다음과 같음 사용자 이름:암호:사용자 ID:사용자가 소속된 그룹 ID:전체 이름:홈 디렉토리:기본 셸

사용자와 그룹(2) [P184~P185] 사용자의 비밀번호는 /etc/shadow 파일에 정의되어 있 음 그룹은 /etc/group 파일에 정의되어 있음 각 행의 의미는 다음과 같음 그룹명:비밀번호:그룹 id:그룹에 속한 사용자명

사용자와 그룹 관련 명령어(1) [P185~P187] useradd passwd usermod userdel 새로운 사용자를 추가 예) # useradd newuser passwd 사용자의 비밀번호를 지정하거나 변경 예) # passwd newuser usermod 사용자의 속성을 변경 예) # usermod -g root newuser userdel 사용자를 삭제 예) # userdel newuser 사용자 생성시 옵션 -u : ID 지정 -g : 그룹 지정 -d : 홈 디렉토리 지정 -s : 셸 지정

사용자와 그룹 관련 명령어(2) [P185~P187] chage groups groupadd groupmod 사용자의 암호를 주기적으로 변경하도록 설정 예) # chage -m 2 newuser groups 현재 사용자가 속한 그룹을 보여줌 예) # groups groupadd 새로운 그룹을 생성 예) # groupadd newgroup groupmod 그룹의 속성을 변경 예) # groupmod -n newgroup mygroup

사용자와 그룹 관련 명령어(3) [P185~P187] groupdel gpasswd 예) # groupdel newgroup 그룹을 삭제 예) # groupdel newgroup gpasswd 그룹의 암호를 설정하거나, 그룹의 관리를 수행 예) # gpasswd newgroup

<실습6> 사용자 및 그룹을 관리하는 연습 [P187] 실습목표 사용자와 그룹의 생성/삭제/변경 명령어를 연습한다. 사용자와 그룹의 관련 파일을 파악한다. X윈도우에서 사용자 관리 툴을 확인한다. 실습 화면 (system-config-users)

파일과 디렉토리의 소유와 허가권 (1) [P191~P193] 파일의 리스트와 파일 속성

파일과 디렉토리의 소유와 허가권 (2) [P191~P193] 파일 유형 디렉토리일 경우에는 d, 일반적인 파일일 경우에는 -가 표시 파일 허가권(Permission) “rw-” , “ r--” , “ r--” 3개씩 끊어서 읽음 (r은 read, w는 write, x는 execute 의 약자) 첫 번째 “rw-”는 소유자(User)의 파일접근 권한 두 번째의 “r--”는 그룹(Group)의 파일접근 권한 세 번째의 “r--”는 그 외의 사용자(Other)의 파일접근 권한 숫자로도 표시 가능 (8진수)

파일과 디렉토리의 소유와 허가권 (3) [P191~P193] chmod 파일 허가권 변경 명령어 예) # chmod 777 install.log 파일 소유권(Ownership) 파일을 소유한 사용자와 그룹을 의미 chown 파일의 소유권을 바꾸는 명령어 예) # chown fedora.fedora install.log 또는 # chown fedora install.log 및 # chgrp fedora install.log

<실습7> 파일의 허가권 및 소유권 연습 [P193] 실습목표 파일의 허가권에 대한 개념과 명령어를 익힌다. 파일의 소유권에 대한 개념과 명령어를 익히고, 보안에 관련된 내 용도 확인해 본다. 실습 화면 (소유권 변경 실패)

링크 [P196] 파일의 링크(Link)에는 하드 링크(Hard Link)와 심볼릭 링크 (Symbolic Link 또는 Soft Link) 두 가지가 있음 하드 링크를 생성하면 “하드링크파일”만 하나 생성되며 같은 inode1을 사용 (명령 : # ln 링크대상파일이름 링크파일이름) 심볼릭 링크를 생성하면 새로운 inode2를 만들고, 데이터는 원본 파 일을 연결하는 효과 (명령 : # ln -s 링크대상파일이름 링크파일이름) 심볼릭 링크는 Windows의 바로가기 아이콘과 개념이 비슷하다.

<실습8> 하드 링크 심볼릭 링크 실습 [P197] 실습목표 [그림 4-72]의 개념을 실습을 통해 익힌다. 실습 화면 (링크 실습 화면)

프로그램 설치를 위한 RPM (1) [P199~P201] RPM(Redhat Package Manager) 파일의 의미 Windows의“setup.exe”와 비슷하게 프로그램을 설치한 후에 바로 실행할 수 있는 설치 파일 확장명은 *.rpm이며, 이를 ‘패키지(Package)’라고 부름. 파일의 의미 패키지이름-버전-릴리즈번호.페도라버전.아키텍처.rpm •패키지이름 : gedit → 패키지(프로그램)의 이름 •버전 : 2.6.1 → 대개 3자리수로 구성. 주버전, 부버전, 패치버전 •릴리즈번호 : 1 → 문제점을 개선할 때마다 붙여지는 번호 •페도라 버전 : fc11 → 페도라에서 배포할 경우에 붙여짐 •아키텍처 : i586 → CPU를 의미

프로그램 설치를 위한 RPM (2) [P199~P201] 자주 쓰이는 RPM 사용법 설치 : rpm -Uvh <패키지 파일(*.rpm)> U → (대문자) 패키지가 설치/업그레이드 v → 설치과정의 확인 h → 설치진행과정을 "#"마크로 화면에 출력 삭제 : rpm -e <패키지 이름> 이미 설치된 패키지 질의 rpm -qa <패키지 이름> → 패키지가 설치되었는지 확인 rpm -qf <파일의 절대 경로> → 파일이 어느 패키지에 포함된 것인지 확인 아직 설치되지 않은 rpm 파일에 대한 질의 rpm -qlp <패키지 파일(*.rpm)> → 패키지 파일에 어떤 파일들이 포함되었는지 확인 rpm -qip <패키지 파일(*.rpm)> → 설치할 패키지의 상세정보

프로그램 설치를 위한 RPM (3) [P199~P201] RPM 단점 ‘의존성’ 문제 이를 해결하기 위해 YUM이 등장함 A패키지가 설치되기 위해서 B패키지가 필요할 경우, RPM으로 는 해결이 까다로움. 이를 해결하기 위해 YUM이 등장함 <실습9> RPM 연습 [P202] 실습목표 RPM 명령어의 사용법을 익힌다. RPM 파일의 의존성 문제를 파악한다.

편리한 패키지 설치, YUM (1) [P205] YUM(Yellowdog Updater Modified) 개념 “rpm”명령의 패키지 의존성 문제를 완전하게 해결됨. 인터넷을 통하여 필요한 파일을 저장소(Repository)에서 자동으 로 모두 다운로드해서 설치하는 방식 YUM 기본적인 사용법 기본 설치 : yum install <패키지 이름> 주로 “yum -y install <패키지 이름>”으로 사용 “-y”는 사용자의 확인을 모두 “yes”로 간주하고 설치를 진행한다는 옵션 RPM 파일 설치 : yum install <*.rpm 파일 이름> 업데이트 가능한 목록 보기 : yum check-update 업데이트 : yum update <패키지 이름> 삭제 : yum remove <패키지 이름> 정보 확인 : yum info <패키지 이름> 저장소의 URL은“/etc/yum.repos.d/”디렉토리

<실습10> “yum”명령으로 설치 [P206] 실습목표 의존성 문제가 있는 패키지를 “yum”명령으로 설치해 본다. 실습 화면 (의존성 패키지 자동 다운로드)

편리한 패키지 설치, YUM (2) [P207] YUM 고급 사용법 YUM 설정 파일 로컬에서 설치 : yum localinstall <*.rpm 파일> DVD에서 직접 설치하는 경우이며, 속도는 빠름 패키지 그룹 설치 : yum groupinstall“<패키지 그룹 이름>” 패키지 리스트 확인 : yum list <패키지 이름> 특정 파일이 속한 패키지 이름 확인 : yum provides <파일 이름> GPG 키 검사 생략 : yum install --nogpgcheck <*.rpm 파일> 페도라 11에서 인증되지 않은 패키지를 강제 설치할 때 사용 YUM 설정 파일 /etc/yum.conf 파일 : 특별히 변경할 필요 없음 /etc/yum.repos.d/ 디렉토리 yum 명령을 입력했을 때 검색하게 되는 네트워크의 주소가 들어 있는 여러 개의 파일이 있음 fedora project의 URL이 변경되어, yum이 작동하지 않을 경우 직접 파일의 내용을 수정해 주면 됨.

<실습11> “yum”고급 실습 [P208] 실습목표 페도라 DVD에서 직접 설치하기 위한 방법을 알아 본다. ‘패키지 그룹’을 설치하는 방법을 익힌다. 페도라 프로젝트 사이트가 변경될 경우, /etc/yum.repos.d/ 내부 의 파일을 변경하는 방법을 익힌다. 실습 화면 (패키지 그룹 설치)

파일의 압축과 묶기 (1) [P213] 파일 압축 파일 압축 관련 명령 압축파일 확장명은 ‘bz2’ 또는 ‘gz’(또는‘Z’) bzip2 : 확장명 bz2로 압축을 하거나 풀어준다 예) bzip2 파일명 bzip2 -d "파일명.bz2" bunzip2 : “bzip2 -d”옵션과 동일한 명령어 gzip : 확장명 gz으로 압축을 하거나 풀어준다 예) gzip 파일명 gzip -d "파일명.gz" gunzip : “gzip -d”옵션과 동일한 명령어

파일의 압축과 묶기 (2) [P214] 파일 묶기 파일 묶기 명령(tar) 리눅스(유닉스)에서는 ‘파일 압축’과 ‘파일 묶기’는 원칙적으로 별 개의 프로그램으로 수행 파일묶기’의 명령어는‘tar’이며, 묶인 파일의 확장명도‘tar’이다 파일 묶기 명령(tar) tar : 확장명 tar로 묶음 파일을 만들어 주거나 묶음을 풀어 준다 동작 : c(묶기), x(풀기), t(경로확인) 옵션 : f(파일), v(과정보이기), z(tar+gzip), j(tar+bzip2) 사용 예 # tar cvf xinetd.tar /etc/xinetd.d/ → 묶기 # tar cvfz xinetd.tar.gz /etc/xinetd.d/ → 묶기 + gzip 압축 # tar cvfj xinetd.tar.bz2 /etc/xinetd.d/ → 묶기 + bzip2 압축 # tar xvf xinetd.tar → tar 풀기 # tar xvfz xinetd.tar.gz → gzip 압축 해제 + tar 풀기 # tar xvfj xinetd.tar.bz2 → bzip2 압축 해제 + tar 풀기

파일 위치 검색 [P215] find [경로] [옵션] [조건] [action] : 기본 파일 찾기 사용 예 [옵션] -name, -user(소유자), -newer(전,후), -perm(허가권), -size(크기) [action] -print(디폴트), -exec (외부명령 실행) 사용 예 # find /etc -name "*.conf“ # find /bin -size +10k -size -100k # find /home -name "*.swp" -exec rm { } \; which <실행파일명> : PATH에 설정된 디렉토리만 검색 whereis <실행파일명>: 실행 파일,소스,man페이지 파일까지 검색 locate <파일명> : 파일 목록 데이터베이스에서 검색

시스템 설정 [P216] 초기 부팅 설정(system-config-boot) 날짜 및 설정(system-config-date) 방화벽 설정(system-config-firewall) 그 외 설정 •system-config-keyboard → 키보드 설정 •system-config-network → 네트워크 설정 •system-config-printer → 프린터 설정 •system-config-services → 서비스의 가동/중지를 설정 •system-config-users → 사용자 설정 •system-config-bind → 네임 서버 설정 •system-config-display → X 윈도우 환경 설정 •system-config-httpd → 웹 서버 설정 •system-config-samba → 삼바 서버 설정 •system-config-vsftpd → FTP 서버 설정

CRON과 AT (1) [P219] CRON 주기적으로 반복되는 일을 자동적으로 실행될 수 있도록 설정 관련된 데몬(서비스)은“crond”, 관련 파일은 “/etc/crontab” /etc/crontab 예 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 03 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly 첫 행의 의미는 “01분마다,모든 시에, 모든 일에, 모든 월에, 모든 요일에, root의 권한으로, /etc/cron.hourly/ 디렉토리의파일을 실 행”

CRON과 AT (2) [P219] AT cron은 주기적으로 반복되는 작업을 예약하는 것이지만, at는 일 회성 작업을 예약 사용 예 •예약 : # at <시간> 예) # at 3:00am tomorrow → 내일 새벽 3시 # at 11:00pm January 30 → 1월 30일 오후 11시 # at now + 1 hours → 1시간 후 •at> 프롬프트에 예약 명령어 입력 후 [Enter] •완료되면 [Ctrl] + [D] •확인 : # at -l •취소 : # atrm <작업번호>

<실습12> CRON 과 AT 실습 [P220] 실습목표 CRON을 활용하여 매월 15일 새벽 3시 1분에 “/home”디렉토리 와 그 하위 디렉토리를 /backup 디렉토리에 백업하는 방법을 익 힌다. AT의 사용법을 익힌다. 실습 화면 (백업 진행)

네트워크 관련된 필수 개념 (1) [P223~P225] TCP/IP 컴퓨터끼리 네트워크 상으로 의사소통을 하는 “프로토콜” 중 가 장 널리 사용되는 프로토콜의 한 종류 호스트 이름(Hostname)과 도메인 이름(Domain name) 호스트 이름은 각각의 컴퓨터에 지정된 이름 도메인 이름(또는 도메인 주소)는 hanb.co.kr과 같은 형식 IP 주소 각 컴퓨터의 랜카드에 부여되는 중복되지 않는 유일한 주소 4바이트로 이루어져 있으며, 각 자리는 0~255까지의 숫자 예) Fedora Server의 IP 주소는 192.168.111.100 네트워크 주소 같은 네트워크에 속해 있는 공통된 주소 (예 : 192.168.111.0)

네트워크와 관련된 필수 개념 (2) [P223~P225] 브로드캐스트(Broadcast) 주소 내부 네트워크의 모든 컴퓨터가 듣게 되는 주소 현재 주소의 제일 끝자리를 255로 바꾼 주소(C클래스) 게이트웨이(Gateway), 라우터(Router) 라우터 = 게이트웨이 네트워크 간에 데이터를 전송하는 컴퓨터 또는 장비 Vmware의 게이트웨이 주소는 192.168.xxx.2로 고정 넷마스크(Netmask) & 클래스(Class) 넷마스크 : 네트워크의 규모를 결정(예:255.255.255.0–C클래스) DNS(Domain Name System) 서버(= 네임 서버) 주소 URL을 해당 컴퓨터의 IP주소로 변환해 주는 서버 설정 파일은 /etc/resolv.conf Vmware를 사용하면 Vmware가 게이트웨이, DHCP 서버, DNS 서 버의 역할을 모두 해 줌 (192.168.xxx.2로 고정)

중요한 네트워크 관련 명령어 (1) [P226] system-config-network 네트워크와 관련된 대부분의 작업을 이 명령어에서 수행 •DHCP 클라이언트 또는 고정 IP주소 사용 결정 •IP주소, 서브넷 마스크, 게이트웨이 정보 입력 •DNS 정보 입력 •네트워크 카드 드라이버 설정 •네트워크 장치(eth0)의 설정 system-config-network-tui 텍스트 기반 service network <start/stop/restart/status> 네트워크의 설정을 변경한 후에, 변경된 내용을 시스템에 적용시 키는 명령어 리눅스에서 랜카드(NIC)는 /dev/eth0 또는 /dev/eth1 으로 사용함

중요한 네트워크 관련 명령어 (2) [P226] ifup <장치이름> 및 ifdown <장치이름> 네트워크 장치를 On 또는 Off 시키는 명령어 ifconfig <장치이름> 장치의 IP주소 설정 정보를 출력 nslookup DNS 서버의 작동을 테스트하는 명령어 ping <IP주소 또는 URL> 해당 컴퓨터가 네트워크상에서 응답하는지를 테스트하는 간편한 명령어

네트워크 설정과 관련된 주요 파일 [P227] /etc/sysconfig/network 네트워크의 기본적인 정보가 설정되어 있는 파일 /etc/sysconfig/network-scripts/ifcfg-eth0 eth0 장치에 설정된 네트워크 정보가 모두 들어 있는 파일 /etc/resolv.conf DNS 서버의 정보 및 호스트 이름이 들어 있는 파일 /etc/hosts 현 컴퓨터의 호스트 이름 및 FQDN이 들어 있는 파일 “system-config-network”명령을 수행하면 위 4개 파일이 변경되는 효과임. 즉, 이 4개파일을 직접 편집하면 “system-config-network”를 사용하지 않아도 됨.

<실습13> system-config-network 명령어 [P227] 실습목표 system-config-network 명령의 작동을 이해한다. 네트워크 관련 파일들의 내용을 확인한다. DNS의 작동을 /etc/resolv.conf 파일과 연관해서 이해한다. 실습 화면 (네트워크 설정)

네트워크 보안을 위한 SELinux [P233] /SELinux(Security Enhanced Linux)는 보안에 취약한 리눅스를 보호 하기 위해 탄생 강제(Enforcing), 허용(Permissive), 비활성(Disabled) 세 가지 레벨 설정 파일인 /etc/sysconfig/selinux를 편집하거나, system-config- selinux 명령으로 설정 작동 방식 ‘강제(Enforcing)’는 시스템 보안에 영향을 미치는 기능이 감지되면 아예 그 기능이 작동되지 않도록 시스템에서 막아줌. ‘허용(Permissive)’은 시스템 보안에 영향을 미치는 기능이 감지되면 허 용은되지만 그 내용이 로그에 남음. ‘비활성(Disabled)’은 SELinux를사용하지 않음

파이프, 필터, 리다이렉션 [P234] 파이프(pipe) 필터(filter) 리다이렉션 (redirection) 두 개의 프로그램을 연결해 주는 연결통로의 의미 “|”문자를 사용함 예) # ls -l /etc | more 필터(filter) 필요한 것만 걸러 주는 명령어 grep, tail, wc, sort, grep, awk, sed 등 주로 파이프와 같이 사용 예) # ps -ef | grep bash 리다이렉션 (redirection) 표준 입출력의 방향을 바꿔 줌 예) ls -l > aa.lst soft < aa.lst > bb.lst

프로세스, 데몬 (1) [P235~P236] 정의 포그라운드 프로세스(Foreground Process) 하드디스크에 저장된 실행코드(프로그램)가, 메모리에 로딩되어 활성화된 것 포그라운드 프로세스(Foreground Process) 실행하면 화면에 나타나서 사용자와 상호작용을 하는 프로세스 대부분의 응용프로그램 백그라운드 프로세스(Background Process) 실행은 되었지만, 화면에는 나타나지 않고 실행되는 프로세스 백신 프로그램, 서버 데몬 등 프로세스 번호 각각의 프로세스에 할당된 고유번호 작업 번호 현재 실행되고 있는 백그라운드 프로세스의 순차번호

프로세스, 데몬 (2) [P235~P236] 부모 프로세스와 자식 프로세스 프로세스 관련 명령 모든 프로세스는 부모 프로세스를 가지고 있음 부모 프로세스를 kill 하면, 자식 프로세스도 자동으로 kill 됨 프로세스 관련 명령 ps 현재 프로세스의 상태를 확인하는 명령어 “ps -ef | grep <프로세스 이름>”을 주로 사용함 kill 프로세스를 강제로 종료하는 명령어 “kill -9 <프로세스 번호>”는 강제 종료 pstree 부모 프로세스와 자식 프로세스의 관계를 트리 형태로 보여 줌 데몬(Daemon) = 서비스(Service) 웹 서버 등의 서버 프로세스를 말함 백그라운드 프로세스의 일종

<실습14> 프로세스 연습 [P237] 실습목표 실습 화면 (백그라운드 프로세스로 실행) 포그라운드 프로세스와 백그라운드 프로세스의 상호 변환 연습 을 한다. 실습 화면 (백그라운드 프로세스로 실행)

서버 데몬 – Standalone 타입의 데몬 [P240] 독자적으로 프로세스가 구동되어 서비스를 제공하는 데몬 예로, 웹 서버(httpd),DB 서버(mysqld), 센드메일 서버(sendmail) 등 실행 및 종료는 대개“service 데몬이름 start/stop/restart”로 사용 실행 스크립트 파일은 /etc/init.d/ 디렉토리에 있음 부팅 시에 자동실행 여부를 지정할 수 있음(system-config-services 또는 ntsysv 명령) 메모리상에 항상 구동되어야 하기 때문에, 자주 호출되는 서비스(데몬)는 Standalone 타입의 데몬으로 사용하기에 적당

서버 데몬 – xinetd 타입의 데몬 [P241] xinetd 타입 데몬의 특징 ‘xinetd 데몬’ 자체는 ‘standalone 타입의 데몬’으로 항상 프로세스 가 구동 ‘xinetd 데몬’은 자신이 직접 서비스를 하지 않고, 외부에서 특정 서비스를 요청할 경우에 자신에게 종속된 하위 데몬을 구동시킨 후에 그 데몬이 서비스를 하도록 연결 ‘xinetd 타입의 데몬’으로 사용하기 적당한 데몬은 가끔 사용되는 데몬 (가끔 사용되는 데몬을 항상 메모리에 구동시켜 놓는다면 자원의 낭비를 초래하기 때문) ‘xinetd 데몬’의 설정파일은 /etc/xinetd.conf이며, ‘xinetd 타입의 데몬’들은 /etc/xinetd.d/ 디렉터리에 들어 있음 설정 파일을 수정하면, 반드시 “service xinetd restart” 명령으로 수퍼데몬(xinetd 데몬)을 재시작

응급 복구 [P242] 시스템이 부팅이 되지 않을 경우에 수행 <실습15> root 비밀번호 분실시 복구 [P243] 실습목표 root 비밀번호를 분실시, 응급 복구하는 방법을 익힌다. GRUB에서 부팅시 런레벨을 1로 변경하는 방법을 알아 본다. 실습 화면 (GRUB 편집)

GRUB 부트로더 [P246] GRUB 부트로더의 특징 GRUB 설정내용 부트 정보를 사용자가 임의로 변경하여 부팅 가능함 다른 여러 가지 운영체제와 멀티 부팅이 가능함 대화형 설정을 제공하므로 커널의 경로 및 파일 이름만 알고 있 으면 부팅이 가능함 설정파일은 /boot/grub/grub.conf 파일이며 /etc/grub.conf는 링 크파일 GRUB 설정내용 ① default=0  부팅되는 부트 엔트리의 순차번호 ② timeout=0  초기에 부팅될 때 0초간의 여유 ③ splashimage=(hd0,0)/grub/splash.xpm.gz  부팅 이미지 파일 ④ hiddenmenu  부트로더를 보이지 않음 ⑤ title Fedora(2.6.29.4-167.fc11.i686.PAE)  부트 엔트리

<실습16> GRUB 부트로더 변경 [P247] 실습목표 부트로더를 변경하는 방법을 익힌다. GRUB에 비밀번호를 지정하는 방법을 익힌다. 실습 화면 (비밀번호가 지정된 GRUB)

모듈의 개념과 커널 컴파일의 필요성 [P250] 모듈 : 필요할 때마다 호출하여 사용되는 코드

커널 컴파일(업그레이드) [P251] 커널 컴파일 순서

<실습17> 커널 업그레이드 [P252] 실습목표 최신의 커널로 업그레이드 하는 방법을 익힌다. 실습 화면 (컴파일 환경 설정 및 컴파일 결과)