1과목 CH02 리눅스 시스템의 이해

정희수·2021년 2월 1일
post-thumbnail

1과목. 리눅스 실무의 이해

Chapter 02. 리눅스 시스템의 이해


1. 리눅스와 하드웨어

리눅스 설치를 위한 하드웨어 정보 파악

  • CPU, 메모리, 하드 디스크 등에 대한 정확한 정보는 리눅스 설치/운영/관리에 필요한 정보이다.
  • 메모리(RAM): 32bit 리눅스 운영체제에서는 페이징 기법의 차이로 4GB 이상의 RAM 인식할 수 없다. 64bit 리눅스 운영체제는 최근 가상화 기술의 영향으로 물리적 메모리 용량을 16TB 이상 지원하고 있다.
  • 하드 디스크 드라이브: 리눅스는 모든 장치를 파일화하여 관리 => 하드 디스크 인터페이스에 따라 파일명이 달라진다.
    (ex) IDE, ATA: /dev/hda, /dev/hdb 등
    SCSI, S-ATA, USB메모리, SSD: /dev/sdx

하드웨어의 선택

  1. RAID(Redundant Array of Independent): 데이터를 여러 개의 디스크에 저장하여 입출력 작업이 균형을 이루어 성능을 향상시킨다.
    ① 데이터 기록 방식 ② Parity ③ ECC(error check & correction) 에 따라 다양한다.
    - 기술 1) 스트라이핑(striping)
    연속 데이터를 여러 디스크에 라운드로빈 방식으로 기록하는 기술.
    겹쳐 읽거나 쓸 수 있게 설계된N개 드라이버가 있다면, 보통 하나의 섹터를 읽을 수 있는 시간에 N개의 섹터에서 동시에 읽고 쓸 수 있다.
    - 기술 2) 미러링(mirroring)
    데이터 손실을 방지하기 위해 여러 디스크에 중복 저장하는 기술. 결함 허용(falut tolerance)라고도 부른다. 해당 기술은 SW적으로도 구현 가능하다.

  • RAID-0
    스트라이핑, 하나라도 오류발생시 데이터 복구 불가
  • RAID-1
    미러링(디스크 낭비 50%), 동시 읽기 O, 동시 쓰기 X
  • RAID-2
    bit단위 스트라이핑, ECC 정보 사용
  • RAID-3
    byte단위 스트라이핑, parity용 별도 디스크 하나, 입출력 작업이 동시에 모든 디스크에 이루어져 입출력 겹칠 수 없다.
  • RAID-4
    블럭 단위 스트라이핑
  • RAID-5
    패리티 정보를 분산시켜 저장, 모든 읽기 쓰기 중첩 가능, 최소 디스크 3개
    3개 구성시 33.3%, 4개 구성시 25% .. 가 패리티 공간으로 사용
    RAID-0의 단점인 결합 허용을 지원하지 않는 점과 RAID-1의 저장 공간의 비효율성을 보완한 레벨로 디스크의 개수를 늘릴수록 저장 공간 효율이 높아진다.
  • RAID-6
    2차 패리티 구성을 포함하여 2개의 디스크에 오류가 발생하여도 데이터 읽어올 수 있다. 최소 4개 디스크로 구성
    공간효율성은 더 떨어진다. 4개 구성시 50%, 5개 구성시 40% ..가 패리티 공간으로 사용
  • RAID-7
  • RAID 0+1
    최소 4개 디스크로 구성, 반을 스트라이핑 => 나머지 반 미러링 적용
  • RAID-10
    최소 4개 디스크로 구성, 반을 미러링 => 나머지 반 스트라이핑 적용

  1. LVM(Logical Volume Manager)
  • LVM 구성 순위: 물리적볼륨 -> 볼륨그룹 -> 논리적 볼륨
  • 물리적 볼륨(PV: physical volume): 실제 디스크에서 물리적으로 분할한 파티션
    (ex) /dev/sdb1
  • 볼륨 그룹(VG: volume group): 물리적 볼륨이 모여 생성하는 덩어리
  • 논리적 볼륨(LV: logical volume): VG에서 사용자가 필요한 만큼 할당하여 만들어진 공간, 물리적 디스크에서 분할하여 사용하는 파티션
    - LVM의 단위는 PE(physical extent, 물리적 확장)이라 하는데 이러한 PE가 모여서 생성되는 하나의 큰 덩어리로 보면 된다.
  • 물리적 확정(PE): PV에서 나누어 사용하는 일종의 Block같은 영역 -> 보통 1PE = 4MB


2. 리눅스의 구조

부트 매니저

부팅을 도와주는 역할을 한다. 부트로더라고도 부른다.
LILO와 GRUB가 있는데 현재 대부분 GRUB를 사용한다.

  • GRUB(grand unified bootloader)
    필요시 더 찾아보자 p.56

리눅스 디렉터리 구조 및 역할

처음엔 모든 내용을 정리하며 천천히 꼼꼼히 이해하고 외우고 싶었다... 하지만 양이 너무 방대하여 모든 내용을 정리하면서 준비하기엔 무리가 있어 이후부터는 기출을 기반으로 정리가 필요한 부분만 기록하고자 한다. 😥😫


참고사이트

RAID 참고사이트

profile
nonstop sw developer

0개의 댓글