Jin's Dev Story

[리눅스마스터1급 - 1차] 2과목 - 5-1. 장치의 설치 및 관리 본문

자격증 & 공부/리눅스마스터 1급

[리눅스마스터1급 - 1차] 2과목 - 5-1. 장치의 설치 및 관리

woojin._. 2024. 6. 13. 14:15

CH.5 장치 관리

1. 장치의 설치 및 관리

1-1. 장치의 설치 및 관리

  1) /proc 디렉터리 내 주요 파일

    - /proc/partitions : 현재 시스템의 파티션 정보를 저장

    - /proc/cpuinfo : CPU 정보를 저장

    - /proc/devices : 현재 시스템이 사용하는 디바이스 정보를 저장

    - /proc/filesystems : 커널이 지원하는 파일시스템의 정보를 저장

    - /proc/meminfo : 시스템의 메모리 정보를 저장

    - /proc/swaps : 스왑 공간 관련 정보를 저장

    - /proc/mdstat : RAID나 중복 디스크에 대한 정보를 저장

 

  2) dev 디렉터리 주요 장치 파일

    - /dev/lp* : 프린터 장치

    - /dev/hd* : IDE 드라이버, ATA 드라이버,

    - /dev/sd* : SCSI 드라이버 SATA 드라이버 USB 드라이버,

    - /dev/tty* : 터미널 장치

 

  3) 커널 컴파일

    - 커널 (kernel) : 운영체제의 가장 바깥 부분에 위치하여 사용자 명령어에 대한 처리를 담당

    - 커널 컴파일 : 커널 소스를 사용자가 자신에 맞는 커널 환경을 만드는 과정

    - 커널 컴파일 과정과 명령어

        1) 커널 소스 설치

            - 커널 소스를 /usr/src 디렉터리에 다운로드 후 압축해제 (보통 /usr/src/kernels에 설치됨)

            - 커널 패치 수행

 

        2) 커널 컴파일 준비 초기화 make mrproper 명령어

            - 기존에 설정되어있는 커널 설정값을 모두 초기화하는 명령어

            - 컴파일되어있는 오브젝트 파일(.o 확장자)이 제거됨

 

        3) 커널 컴파일을 위한 환경설정

            - 필요 없는 드라이버 모듈을 제외하거나 포함하는 단계

            - make config 명령어 : 전통적인 방식. bash 혹은 csh에서 실행하는 행 단위 환경설정 도구

            - make menuconfig 명령어 : 메뉴 방식의 화면으로 설정. 텍스트 기반 컬러메뉴 / 커서 사용

            - make xconfig 명령어 : X 윈도 환경에서 구현한 방식. 인터페이스가 편리

            => X 윈도가 미설치된 환경에서 커널 컴파일을 진행할 수 있는 도구의 조합 : make xconfig, make menuconfig

            - make nconfig : Buildroot 자체의 구성을 실행(, 빌드할 패키지, 아키텍처, 툴체인 등 선택).

            - make gconfig : X 윈도 환경에서만 실행가능

 

        4) 커널 컴파일

            - .config : make menuconfig를 통해서 빌드 관련 설정을 마치면 생성되는 파일

            (1) make dep 명령어 : 새로운 커널을 만드는 명령어 (커널 2.6 버전 이후로는 사용 X)

            (2) make clean 명령어 : 이전에 수행했던 컴파일 과정에서 생성된 목적파일 커널 임시 파일 등을 삭제

                  * make distclean 명령어 : 커널 소스를 받은 최초 상태로 되돌리는 명령어

            (3) make bzlmage 명령어 : 압축된 커널 이미지를 생성

            (4) make modules 명령어 : 커널 환경설정에서 모듈로 설정한 기능들을 컴파일

            (5) make modules_install 명령어 : 컴파일된 모듈을 /lib/modules에 설치

                       - 위에 명령어들은 make all 명령어로 한 번에 수행할 수 있다

        5) 커널 설치 make install 명령어

            - 생성한 커널 이미지를 설치

            - /boot 디렉터리에 필요한 파일을 복사하는 과정

            - 순서 정리 : 커널 소스 설치 -> make mrproper ->  make config ->  make clean ->  make bzlmage ->  make modules -> make modules_install -> make install

              * make help 명령어 : 커널 컴파일에 필요한 명령어들을 확인할 수 있음

 

  4) 커널 모듈 설정 명령어 파일

    - 커널 모듈의 설치 위치는 /lib/modules/[커널 버전]/*

    - 커널의 모듈 파일 형식은 .ko(kernel object)

    - lsmod 명령어

      : 현재 시스템에 설치된 모듈 목록 출력

      : /proc/modules 파일 참조

    - insmod 명령어

      : 모듈을 커널에 설치하는 명령어

      : 형식 : # insmod [옵션] [설치할 모듈(오브젝트 파일)]

    - rmmod 명령어

      : 모듈을 삭제하는 명령어

      : [-r] : 의존성이 있는 모듈을 모두 삭제

    - modprobe 명령어

      : 모듈을 설치/삭제하는 명령어

      : insmod/rmmod 명령어와 다르게 modules.dep 파일을 참조해 의존성 문제를 해결

      : [-l] : 모든 모듈 목록 출력

      : [-a] : 모듈을 설치 의존성이 있는 모듈을 함께 설치

      : [-r] : 모듈을 삭제 의존성이 있는 모듈 중 사용되고 있지 않는 모듈을 같이 삭제

    - depmod 명령어

      : 의존성을 검사하여 modules.dep 파일을 갱신하는 명령어

      : [-a] : /etc/modules.conf 파일에 있는 모든 모듈의 의존성을 갱신

      : [-v] : 처리된 모듈의 목록을 출력

    - modinfo 명령어

      : 지정한 모듈의 정보를 출력하는 명령어

    - /etc/modprobe.d

      : 부팅 시 모듈을 자동으로 적재하기 위한 디렉터리

      : 디렉터리 안에 있는 .conf 파일을 읽어 부팅 시에 자동으로 적재함

      : 커널 2.4 버전 이전에는 /etc/modprobe.conf 파일을 읽어 자동으로 적재했었음

    - /lib/modules/[커널 버전]/modules.dep 파일

      : 모듈의 의존성이 정의되어있는 파일

      : 파일 형식 : [모듈 이름] : [의존성이 있는 모듈 이름] [의존성이 있는 모듈 이름]

 

1-2. 주변 장치 설정

  1) 프린터

    - 오픈소스 프린팅 시스템(CUPS)

      : 로컬에 직접 연결한 프린터를 네트워크 프린터처럼 설정 가능

    - 애플에서 개발한 오픈소스 프린팅 시스템

    - 컴퓨터를 프린터 서버로 사용할 수 있게 해주는 모듈 방식의 프린팅 시스템

    - /etc/cups/printers.conf 파일

      : 프린터 큐 관련 환경설정 파일

      : lpadmin 명령어를 이용하거나 웹을 통해 설정

    - 인터넷 인쇄 프로토콜(IPP) 포트 번호 : TCP,UDP/631

 

  2) 프린터 관련 명령어

    - 기본적으로 [-P] 옵션으로 프린터 지정을 하지 않으면 기본 프린터를 기본값으로 명령 실행

    - /etc/printcap 파일 : 프린터 설정 파일

    * System V 계열

      - Ip : 프린터 디바이스 path를 사용하여 직접 인쇄 - [-n NUM] 옵션

      - Ipstat : 프린터 큐의 상태를 확인

      - cancel : 프린트 작업을 취소

    * BSD 계열

      - lpc 명령어 : 대화형으로 프린터를 관리(제어)하기 위한 명령어

      - lpq 명령어 : 프린터 큐의 내용 출력

             : System V 계열 : lpstat 명령어

      - lprm 명령어 : 프린터 큐의 작업 삭제

             : System V 계열 : cancel 명령어

      - lpr 명령어 : 파일 내용을 출력

             : System V 계열 lp 명령어

             : [# NUM] : 한 페이지를 “NUM”장씩 출력 ([-K] 옵션과 동일)

      - System V 계열 : [-n NUM] 옵션

             : [-b] : 배너나 헤더를 출력하지 않음

             : 다른 방법을 통한 출력 방법 # cat [출력할 파일] > /dev/lp

 

  3) 스캐너

    - SANE

      : 스캐너 관련 하드웨어를 사용할 수 있도록 해주는 API

      : 관련 소프트웨어 : Xsane(X 윈도 기반), Simple Scan(GNOME), GIMP(GNU, 그림 편집 프로그램)

 

  4) 사운드 카드

    - ALSA (Advanced Linux Sound Archltecture)

      : 사운드 카드용 장치 드라이버를 위한 API를 제공

      : 리눅스 커널의 구성요소 GPL 기반

      : 관련 소프트웨어 : alsamixer

    - OSS(Open Sound System)

      : 사운드를 만들고 캡처하는 인터페이스

      : 초기에는 OSS를 사용했으나 최근에는 ALSA가 더 많이 사용됨

 

  5) 하드웨어 관련 명령어

    - lscpu 명령어 : CPU 정보 출력

    - lspci 명령어 : 시스템 하드웨어 정보 출력

    - lsscsi 명령어 : SCSI 장치의 목록 출력

    - lsusb 명령어 usb 장치의 목록 출력

 

 


해당 블로그를 참고하여 정리했습니다.

https://bangu4.tistory.com/139

 

[Linux Master] 리눅스 마스터 공부법, 기출문제, 요약집

www.ihd.or.kr/main.do KAIT 자격검정 시험접수 정보통신 자격검정 시험 원서등록을 하실 수 있습니다 www.ihd.or.kr 시험에 대한 모든 내용이 홈페이지에 있지만 다시한번 정리하겠습니다. 1급 기준으로 1

bangu4.tistory.com