1. 리눅스 디렉터리 및 저장 내용

디렉토리 저장 내용
/ 파일 시스템이 있는 최상위 디렉터리
모든 디렉터리의 출발점인 동시에 다른 시스템과의 연결점이 되는 디렉터리
/boot 부트 디렉터리로 부팅 시 커널 이미지와 부팅 정보 파일 저장
/proc 시스템 정보 디렉터리이며, 커널 기능을 제어하는 역할
현재 실행되는 프로세스와 실제로 사용되는 장치, 하드웨어 정보 저장
가상 파일 시스템이며, 디렉터리에서 볼 수 있는 것은 실제 드라이브가 아니라 메모리 상에 저장되어 있는 것
/lib 공유 라이브러리 디렉터리
커널 모듈 파일과 프로그램 실행을 지원해 주는 라이브러리 저장
/bin 기본적인 명령어가 저장된 디렉터리
root 사용자와 일반 사용자가 함께 사용할 수 있는 명령어 디렉터리
/dev 시스템 디바이스 파일들을 저장하는 디렉터리
하드디스크, 프린터, 입출력 장치 등과 같은 장치들을 파일화하여 관리
/etc 시스템 환경 설정 파일과 부팅 관련 스크립트 파일들이 저장되어 있는 디렉터리
사용자 정보 및 암호 정보 파일, 보안 파일 등 저장
/root 시스템 관리자(root)용 홈 디렉터리
/sbin 관리자용 시스템 표준 명령 및 시스템 관리 관련된 실행 명령어 저장
/usr 사용자 디렉터리로 사용자 데이터나 애플리케이션 저장
/home 사용자 계정 디렉터리로 계정들의 홈 디렉터리가 위치
일반 사용자들이 로그인 시 처음으로 위치하게 되는 디렉터리
/var 시스템에서 사용되는 가변적인 파일들을 저장하는 디렉터리
가변적인 파일인 로그파일, 스풀링, 캐싱 등 저장
/tmp 각종 프로그램이나 프로세스 작업 시 임시로 생성되는 파일 저장
모든 사용자에 대해서 읽기와 쓰기 허용
스티키 비트 설정으로 파일의 소유자만이 자신의 소유 파일 삭제 가능
/mnt 파일 시스템을 일시적으로 마운트할 때 사용
/lost+found 결함이 있는 파일에 대한 정보가 저장되는 디렉터리

 

 

2. 리눅스 설치 필요 정보

2.1. 하드웨어

하드웨어 정보
CPU 제조사와 모델명 확인
32비트 CPU 또는 64비트 CPU 파악
가상화 환경에서는 CPU의 물리적 개수와 코어 개수 확인
메모리(RAM) 메모리 용량 확인
SWAP 파티션 설정 시 사용
하드디스크 드라이브 하드디스크의 파일명 확인
  1. IDE 또는 ATA 하드 디스크 타입 파일명 : /dev/hdX
   2. SATA, USB, SSD, SCSI 하드디스크 타입 파일명 : /dev/sdX
네트워크 인터페이스 제조사, 모델명, 유무선 여부, 어댑터 종류
TCP/IP 속성 정보 확인

 

2.2. 네트워크 설정

  • 호스트명, 도메인, 컴퓨터 IP주소, 서브넷 마스크, 게이트웨이 주소, DNS 서버 주소

 

3. 커널

3.1.커널이란 

  • 운영체제의 핵심 부분으로 CPU나 메모리, 기타 디바이스 등의 시스템 자원을 관리하고 하드웨어와 응용 프로그램 사이에서 인터페이스를 제공하는  역할

  • 커널 기능
    1. 하드웨어 리소스(CPU, 메모리, 스토리지 등) 관리
    2. 소프트웨어에서 하드웨어 및 리소스에 대한 액세스를 추상화

 

3.2. 커널 역할 및 기능

  • 추상화  
     • 물리적으로 하나 뿐인 하드웨어를 여러 사용자들이 번갈아 사용하게 중재함으로써 마치 한 개의 하드웨어가 여러 개인 것처럼 보여지도록 하는 기술
     • 물리적 자원을 추상화하여 쉽게 접근할 수 있도록 도와주는 것

 

  • 디바이스 관리
     디바이스 드라이버라는 하드웨어 입출력 제어하는 소프트웨어를 이용하여 장치 관리

  • 프로세스 관리
    리눅스에서는 프로그램 실행 시 파일 시스템 내 특정 디렉터리에 있는 프로그램의 파일을 읽어와 메모리에 적재 →프로그램이 메모리에서 실행되는 프로세스 
     프로세스가 이용할 수 있는 CPU는 하나로 동시에 실행되는 프로세스 간 CPU를 이용할 수 있는 시간 분배 필요 → 커널은 각 프로세스 PID를 통해 관리하는 역할

  • 메모리 관리
    사용자 프로그램의 요구에 따라 메모리 영역을 분배하거나 이용이 끝난 메모리 영역 회수 등을 담당 
    가상 메모리 또한 지원(가상 메모리 영역 → swap)

  • 시스템 콜
    표준 출력이나 파일 쓰기/읽기, 프로세스를 포크(프로세스 복제)하는 기능 등을 갖고 있어 사용자 프로그램에서 액세스 할 수 있도록 도움을 주는 역할

 

 

4. 하드웨어, CPU 작동 모드, 저장 장치의 특징, 소프트웨어

4.1. 하드웨어 목록

하드웨어 역할
CPU 계산 처리 수행하는 장치
레지스터 (CPU 내) CPU 계산에 사용하는 값을 놓는 영역, 전원을 끄면 데이터가 사라지는 형태
캐시메모리 (CPU 내) CPU와 메모리 간의 버퍼
  • CPU의 계산 결과를 캐시
  • 전원을 끄면 데이터가 사라지는 형태
메모리
(주 기억장지)
(primary memory)
CPU에서 실행 중인 프로그램이나 계산 결과를 일시적으로 두는 디바이스
  • CPU로부터 액세스 가능한 기억 영역
  • 전원을 끄면 데이터가 사라지는 형태
스토리지
(보조 스토리지)
(secondary memory)
메모리에 있는 계산 결과를 파일로 저장하는 디바이스
  • CPU로 부터 액세스 불가능한 기억 영역
  • CPU가 파일에 액세스하려면 한 번 메모리를 읽어야함, 전원을 꺼도 데이터 남아있는 형태
NIC 데이터를 다른 컴퓨터와 송수신하는 장치

 

4.2. CPU 작동 모드

CPU 동작 모드 하드웨어
액세스 제한
대상 소프트 웨어 프로세스 동시 실행
커널 모드 X 커널 가능
사용자 모드 O 커널 이외 불가능(인터럽트 발생)

 

4.3.  저장 장치의 특징

 

4.4. 소프트웨어 목록

이름 설명
프로그램 처리를 위해 만들어진 소프트웨어
프로세스 메모리에 로드된 실행 중 프로그램, 하위 프로세스는 새롭게 가상 메모리 확보
스레드 프로세스 내에서 실행되는 흐름의 단위, 멀티 스레드는 프로세스 내의 메모리를 공유해서 사용 가능
응용 프로그램 컴퓨터에 사용하는 목적에 따라 제작된 기능적 프로그램
모듈 특정 기능을 가진 작은 프로그램, 모듈을 결합하여 응용 프로그램과 라이브러리 생성
라이브러리 재사용 가능한 형태로 정리한 프로그램, 라이브러리 단독으로는 동작 X
패키지 프로그램의 실행에 필요한 것을 정리한 것
실행파일, 라이브러리, 모듈, 설정파일, 자원(이미지, 음악 파일 등)
미들웨어 사용자의 특정한 요구대로 만들어 제공하는 프로그램, 운영체제와 응용 소프트웨어의 중간에서 조정과 중개의 역할 수행
커널 하드웨어를 조작하기 위한 소프트웨어
시스템 라이브러리 응용 프프로그램이 커널을 호출하는 라이브러리
시스템 유틸리티 컴퓨터의 분석, 관리, 유지보수를 수행하는 소프트웨어
OS 하드웨어, 시스템 리소스를 제어하고 프로그램에 대한 일반적 서비스를 지원

 

 

 

참고 자료 : https://www.devkuma.com/docs/linux/kernel/basic1/

 

 

 

+ Recent posts