1부 리눅스의 기본 1장 리눅스의 이해 1.1 리눅스 개요 ... 26 1.1.1 리눅스의 구성 ... 27 1.1.2 리눅스의 특징 ... 28 1.1.3 리눅스의 장점 ... 31 1.1.4 리눅스의 단점 ... 32 1.1.5 윈도우와 다른 특징 ... 33 1.1.6 리눅스 디렉토리 ... 35 1.1.7 리눅스의 기능 ... 37 1.2 리눅스의 철학 ... 39 1.2.1 GNU ... 40 1.2.2 GPL(General Public License) ... 43 1.2.3 Open Source(Free Software) ... 45 1.3 리눅스의 역사 ... 49 연습문제 ... 50 2장 리눅스 설치 2.1 기본 설치 및 유형 ... 53 2.1.1 설치전 점검 사항 ... 53 2.1.2 리눅스 설치 하기 ... 55 2.1.2.1 한소프트리눅스 특징 ... 55 2.1.2.2 한소프트리눅스 패키지 ... 58 2.1.2.3 설치 준비 ... 59 2.1.2.4 설치 ... 61 2.2 파티션과 파일 시스템 ... 83 2.2.1 파티션(Partition)이란? ... 83 2.2.1.1 파티션(Partition)의 종류 ... 84 2.2.1.2 파티션 분할의 목적 ... 85 2.2.1.3 리눅스 파티션의 종류와 역할 ... 85 2.2.1.4 파티션 나누기(fdisk) ... 87 2.2.2 파일 시스템 ... 90 2.2.2.1 리눅스 파일시스템의 구조 ... 91 2.2.2.2 파일 시스템의 종류 및 특징 ... 92 2.2.2.3 주요 파일 시스템 ... 93 2.3 부트 매니져(Boot Manager) ... 100 2.3.1 종류 및 기능 ... 100 2.3.1.1 LILO(LInux LOader) ... 100 2.3.1.2 GRUB(GRand Unified Boot loader) ... 103 연습문제 ... 106 3장 기본명령어 3.1 계정 관리 및 사용자 생성 ... 110 3.1.1 계정 관리 및 다중 사용자 ... 110 3.1.2 계정 생성 ... 111 3.2 디렉토리 및 파일관리 ... 118 3.3 기타 명령어 ... 141 3.3.1 시스템 종료 ... 141 3.3.2 프로세스 ... 144 3.3.3 기타 ... 149 연습문제 ... 161 2부 리눅스운영 및 관리 1장 파일 및 파일시스템 관리 1.1 파일시스템 개요 ... 160 1.2 파일시스템 유형 ... 161 1.2.1 일반파일 ... 161 1.2.2 디렉토리 파일 ... 162 1.2.3 링크 ... 165 1.2.4 특수파일 ... 166 1.3 파일의 권한 및 속성 ... 167 1.3.1 파일속성 ... 168 1.3.2 권한 ... 168 1.4 권한 및 그룹설정 관련 명령어 ... 169 1.5 파일 시스템 관리 ... 178 1.5.1 리눅스의 파일시스템 ... 178 1.5.2 파일시스템의 종류 ... 178 1.5.3 파일시스템 유지보수 ... 180 1.5.4 파일시스템 관리 명령어 ... 181 연습문제 ... 189 2장 Shell 2.1 Shell의 개념 ... 192 2.2 Shell의 기능 및 종류 ... 192 2.3 Shell의 활용 ... 195 2.4 Shell의 환경 설정 ... 198 연습문제 ... 204 3장 프로세스 관리 3.1 프로세스의 개념 ... 208 3.2 프로세스의 작동레벨 ... 208 3.3 프로세스의 상태보기 ... 210 3.4 signal 보내기(kill) ... 213 3.5 Multitasking ... 216 3.6 프로세스의 실행 모드 ... 219 3.7 프로세스 관련 유틸리티 ... 220 3.7.1 pstree(프로세스 상관관계 알기) ... 220 3.7.2 ps(프로세스 상태 알기) ... 220 3.7.3 top(CPU 프로세스 상황 보여주기) ... 224 3.7.4 kill(프로세스 죽이기) ... 226 3.7.5 nice(프로세스 우선순위 변경하기) ... 228 3.7.6 cron 및 crontab ... 229 연습문제 ... 231 4장 에디터의 종류 4.1 pico 에디터 ... 235 4.2 vi 에디터 ... 243 4.3 emacs 에디터 ... 251 5장 소프트웨어 설치 및 삭제 5.1 RPM(Redhat Package Manager) ... 256 5.1.1 RPM 용도 ... 256 5.1.2 RPM 패키지 구조 ... 257 5.1.3 RPM 명령 ... 258 5.1.4 RPM 설치하기 ... 258 5.1.5 RPM 제거하기 ... 261 5.1.6 RPM 업그레이드 ... 262 5.1.7 패키지 정보 알아보기 ... 262 5.1.8 패키지 검증 ... 264 5.2 Debian 패키지 ... 266 5.3 비 Linux 소프트웨어 설치 ... 267 5.4 소프트웨어 패키지 형식 변환 ... 267 5.5 소프트웨어 설치 ... 268 5.6 응용프로그램 제거 ... 272 5.7 압축관련 유틸리티 ... 272 연습문제 ... 278 6장 장치설정 6.1 프린터 ... 285 6.1.1 리눅스 설치 시 프린터 설치하기 ... 285 6.1.2 리눅스 설치 후 X 윈도우에서 프린터 설치하기 ... 288 연습문제 ... 313 3부 리눅스 활용 1장 X 윈도우 1.1 개념 및 구성 ... 318 1.1.1 X 윈도우 개념 ... 318 1.1.2 X 윈도우의 구성 ... 319 1.1.2.1 서버/클라이언트 ... 319 1.1.2.2 Protocol ... 320 1.1.2.3 Xlib, Xtoolkit ... 320 1.2 X윈도우 데스크톱 환경(KDE, GNOME) ... 321 1.2.1 KDE 데스크톱 ... 321 1.2.1.1 KDE ... 321 1.2.1.2 KDE 인터페이스 ... 321 1.2.1.3 KDE 제어판 설정 ... 322 1.2.2 GNOME 데스크톱 ... 337 1.2.2.1 GNOME ... 337 1.2.2.2 주 메뉴 사용하기 ... 338 1.2.2.3 패널 숨기기 ... 338 1.2.2.4 패널 이동하기 ... 338 1.2.2.5 새로운 패널 추가하기 ... 339 1.2.2.6 응용프로그램과 애플릿의 추가하기 ... 339 1.2.2.7 응용 프로그램 실행하기 ... 339 1.3 윈도우 매니저 ... 340 1.3.1 KWM ... 340 1.3.2 Enlightenment ... 340 1.3.3 윈도우 메이커(Window Maker) ... 341 1.3.4 FVWM ... 341 1.3.5 TWM ... 341 1.3.6 애프터스텝(AfterStep) ... 342 연습문제 ... 343 2장 네트워크 및 인터넷 서비스 2.1 네트워크의 개념 ... 346 2.1.1 네트워크란? ... 346 2.1.2 통신망의 종류 ... 347 2.1.2.1 LAN(Local Area Network) ... 347 2.1.2.2 MAN(Metropolitan Area Network) ... 355 2.1.2.3 원거리통신망(WAN:Wide Area Network) ... 355 2.1.3 LAN 통합을 위한 통신장비 ... 364 2.1.3.1 라우터(ROUTER) ... 364 2.1.3.2 리피터(REPEATER) ... 365 2.1.3.3 브리지(BRIDGE) ... 366 2.1.3.4 게이트웨이(GATEWAY) ... 366 2.1.3.5 스위치(SWITCH) ... 367 2.2 통신 프로토콜 ... 368 2.2.1 OSI(Open System Interconnection) ... 369 2.2.2 TCP/IP ... 371 2.2.2.1 TCP/IP의 특징 ... 372 2.2.2.2 프로토콜 종류 ... 372 2.2.2.3 TCP/IP Protocol의 구조 ... 375 2.2.3 IP 주소 ... 377 2.2.3.1 서브넷 식별자 ... 379 2.2.3.2 서브넷 마스크 ... 379 2.2.3.3 Routing Table ... 380 2.2.4 도메인네임(Domain Name) ... 380 2.2.5 도메인네임 시스템(DNS:Domain Name System) ... 381 2.3 인터넷 서비스 ... 382 2.3.2 WWW(World Wide Web) ... 382 2.3.3 전자 우편(E-mail:Electronic Mail) ... 383 2.3.4 파일전송(FTP:File Transfer Protocol) ... 383 2.3.5 텔넷(Telnet) ... 384 2.3.6 유즈넷 뉴스그룹(USENET NEWS GROUP) ... 384 2.3.7 기타 서비스 ... 384 2.3.7.1 고퍼(Gopher) ... 385 2.3.7.2 아키(Archie) ... 385 2.3.7.3 인터넷 폰(Internet Phone) ... 385 2.3.7.4 IRC(Internet Relay Chat) ... 386 2.3.7.5 Talk ... 386 2.3.7.6 인터넷 게임 ... 386 2.4 인터넷 서비스의 설정 ... 387 2.4.1 전화선을 이용하여 인터넷에 직접 연결된 컴퓨터에 로그인 ... 387 2.4.2 전화선을 이용하여 인터넷 서버에 직접 연결 ... 387 2.4.3 인터넷에 직접 연결된 컴퓨터, 또는 단말기를 사용하는 경우 ... 388 2.4.4 LAN을 이용한 인터넷 연결 ... 389 2.4.5 ADSL ... 389 2.4.6 CATV ... 390 2.4.7 인터넷 접속 환경 ... 391 2.5 차세대 인터넷 ... 392 2.5.1 차세대 인터넷 서비스 유형 ... 392 2.5.2 차세대 application의 유형 ... 392 2.6 네트워크 신기술 ... 393 2.6.1 NMS ... 393 2.6.2 VPN ... 393 2.6.3 VoIP ... 394 2.6.4 QoS ... 395 2.6.5 NAT ... 395 2.6.6 MPLS ... 396 3장 서버설정 및 응용프로그램 3.1 서버 설정 ... 397 3.1.1 서버 서비스 가동 ... 397 3.1.1.1 TCP Wrapper ... 397 3.1.1.2 /etc/hosts.deny ... 398 3.1.1.3 /etc/hosts.allow ... 399 3.1.2 서비스 데몬 가동 ... 400 3.1.2.1 Web 서버 데몬 가동 ... 400 3.1.2.2 Mail 서버 데몬 가동 ... 401 3.1.2.3 FTP 서버 데몬 가동 ... 401 3.1.2.4 DNS 서버 데몬 가동 ... 401 3.1.2.5 File(Samba) 서버 데몬 가동 ... 402 3.1.2.6 DB 서버 데몬 가동 ... 402 3.1.2.7 프린트 서버 ... 402 3.1.2.8 기타 서버 데몬 가동 ... 403 3.1.3 Web 서버 ... 403 3.1.3.1 APM 동작 및 설치 ... 403 3.1.3.2 아파치 웹서버 설정 ... 404 3.1.4 Mail 서버 ... 405 3.1.4.1 Sendmail ... 406 3.1.4.2 sendmail 설정 및 구동 ... 406 3.1.5 FTP 서버 ... 407 3.1.6 File 서버 ... 407 3.1.6.1 Samba ... 407 3.1.6.2 설정 및 구동 ... 407 3.1.6.3 삼바 클라이언트 ... 408 3.1.7 DNS 서버 ... 408 3.1.7.1 DNS 구동 ... 408 3.1.7.2 DNS 설정 ... 408 3.1.8 DB 서버 ... 409 3.1.8.1 MySQL 설정 및 구동 ... 409 3.1.8.2 MySQL 접속과 종료 ... 409 3.1.9 VNC 서버 ... 409 3.1.9.1 VNC 개요 ... 409 3.1.9.2 VNC 설치 ... 410 3.1.9.3 VNC 설정 및 구동 ... 410 3.1.9.4 VNC 종료 ... 412 3.2 설정 프로그램 ... 412 3.2.1 다국어 입력 ... 412 3.2.2 관리프로그램 ... 413 3.2.3 보안관련 기능 향상 ... 414 3.2.4 시스템 모니터링 프로그램 ... 416 3.2.5 웹데몬 설정 프로그램 ... 416 3.2.6 업데이트 프로그램 ... 417 3.3 응용프로그램 ... 418 3.3.1 그래픽 ... 418 3.3.1.1 PDF 보기 ... 418 3.3.1.2 그림판 ... 419 3.3.1.3 화면캡처 ... 419 3.3.2 유틸리티 ... 420 3.3.2.1 RPM 설치관리자 ... 420 3.3.2.2 KDE 콘솔 ... 421 3.3.2.3 계산기 ... 422 3.3.2.4 압축기 ... 423 3.3.2.5 편집기 ... 425 3.3.2.6 플로피 디스크 관리자 ... 426 3.3.3 인터넷 ... 426 3.3.3.1 KDE 겟 ... 426 3.3.3.2 원격데스크톱 ... 427 3.3.3.3 콘텍트 ... 427 3.3.3.4 통합메신저 ... 428 3.3.3.5 파이어폭스(Firefox) ... 429 3.3.3.6 Xmanager ... 430 3.4 멀티미디어 ... 431 3.4.1 리눅스에서 동영상 재생 ... 431 3.4.1.1 동영상 플레이어 설치 ... 431 3.4.1.2 동영상 프로그램을 설치하기 위한 준비 ... 431 3.4.1.3 avi2divx and mpeg2divx ... 433 3.4.1.4 동영상 프로그램 ... 434 3.4.2 GIMP ... 439 3.4.3 xv(X Viewer)프로그램 ... 440 3.4.4 리눅스용 음악작곡기 ... 441 3.4.5 작은 리눅스 ... 442 3.4.6 리눅스용 CD-Burning 프로그램 ... 443 3.4.7 KJukeBox ... 444 연습문제 ... 445 4장 리눅스 정보제공 사이트 및 리눅스신기술 4.1 리눅스 정보제공 사이트 ... 452 4.1.1 리눅스한글문서 프로젝트(KLDP) ... 452 4.1.2 리눅스포탈(http: ... 453 4.1.3 한소프트리눅스(http: ... 453 4.1.4 전국리눅스유저그룹(http: ... 454 4.1.5 리눅스 사랑넷(http: ... 454 4.1.5 리눅스 포탈 ... 455 4.2 리눅스 산업현황 및 신기술 ... 456 4.2.1 리눅스 산업현황 및 전망 ... 456 4.2.1.1 분야별 현황 ... 456 4.2.1.2 산업현황 및 전망 ... 457 4.2.2 리눅스 신기술 ... 475 4.2.2.1 임베디드(Embedded) 시스템 ... 475 4.2.2.2 리눅스 클러스터링 ... 477 4.2.2.3 블루투스(BLUETOOTH) ... 479 부록 - 기출문제 풀어보기 제11회 리눅스 마스터 2급 ... 484 제12회 리눅스 마스터 2급 ... 501 제13회 리눅스 마스터 2급 ... 518 제11회 정답 및 해설 ... 535 제12회 정답 및 해설 ... 547 제13회 정답 및 해설 ... 559