Post

Linux 스토리지 보안(1)

Linux 스토리지 보안(1)

디바이스 재설정과 파티션

선수지식

  • 디스크 종류
    • HDD(SATA, SAS) vs SSD(NVMe)
      • hdd 동작 방식 = 데이터를 돌려서
      • ssd 동작 방식 = 데이터를 찍어서(발열이 적음)
      • NVMe(메모리 처럼 생김-속도가 더 빠름 바로 연결되어 하기 때문에)
  • 디스크 구조 참고
    • sector -> track -> cylinder -> partition -> disk
    • 디스크는 원판 형태인 플래터가 회전하며 정보를 읽어들이는 방식이다.(쉽게 CD라고 생각해도 좋을듯)
  • 디스크 이름 체계
    • IDE : /dev/hda /dev/hdb /dev/hdc /dev/hdd
    • SCSI : /dev/sda, /dev/sdb, /dev/sdc, /dev/sdd …
    • NVMe : /dev/nvme0n1(첫번째 컨트롤러) /dev/nvme0n2 /dev/nvme0n3 …
    • vDISK : /dev/vda /dev/vdb /dev/vdc …
  • 파티션 종류 & 이름 체계
    • FW(펌웨어) 종류 : 하드웨어 관리체계? disk 파티션
      • FW란 하드웨어의 기본적인 구동 및 제어를 담당하는 특수 용도의 소프트웨어를 통칭한다.
      • → 하드웨어를 제어하여 하드웨어 역할을 하는 것이라고 봐도 된다. 하드웨어와 소프트웨어의 중간
    • BIOS F/W -> MBR 파티션 스키마(옛날 방식)
    • UEFI F/W -> GPT 파티션 테이블(2TB이상 되는 디스크를 관리 할 수 있음)
  • 디스크 장착
    • 장치 인식 작업
    • 파티션 작업
    • 파일 시스템 작업
    • 마운트 작업

파티션

개요

  • 파티션이란 컴퓨터에서 디스크나 메모리 등의 저장 매체를 사용하고자 하는 영역만큼 나누는 것을 뜻한다. HDD처럼 용량이 비교적 큰 매체를 유용하게 쓰기 위해 고안되었다.
    • 디스크 용량을 나누어 사용자나 프로그램의 사용 용량을 제한한다.
    • 사용자 파일에서 운영체제의 프로그램 파일을 구분한다.
    • 진단 도구 및 백업 이미징 성능을 향상한다.

리눅스 파티션 형식

  1. MBR 파티션
    • primary partition : P1 ~ P4
    • extended partition
    • ㄴ logical partition : L5 ~ L15

디스크 용량 급성장으로 인해 분할 파티션이 필요해서 primary 파티션 중 하나를 골라 그 안에서 5~15로 나눌 수 있다(파티션을 나눌 수 있는 개수가 정해져 있음)

MBRPRIMARYPRIMARYPRIMARY<– EXTENDED –>
MBRSDA1SDA2SDA3SDA5, SDA6, Unused

하지만, 물리디스크가 커짐으로 인해 2TiB 디스크 및 파티션 크기 제한은 문제가 되어 새로운 GPT 시스템으로 대체되고 있다.

  1. GPT 파티션 테이블
    • 큰 디스크 지원, 큰 저장공간 차지 (1gb)
    • 1 ~ 128 : 파티션 번호
PRIMARY GPTSDA들…..BACKUP GPT
GPTsda1, sda2, sda3, sda5, unusedGPT

파티션 종류와 형식

파티션 분할시 파티션 제약이 따르게 되는데 분할된 파티션의 정보를 담고 있는 파티션 테이블의 용량이 제한되있어서 나온게 확장과 논리 파티션이다.

  • 주 파티션
    • 기본 파티션으로 이 이상으로 쪼갤 수 없다. 하나의 하드 디스크 당 4개의 파티션까지만 만들 수 있다.
  • 확장 파티션
    • 하드 디스크를 4개 이상으로 쪼개고 싶을 때 만드는 파티션이다. 저장 공간이 없어 저장을 할 순 없지만 논리 파티션을 만들 수 있게 해주는 그릇 역할을 한다.
    • 확장 파티션은 하나의 디스크에만 만들 수 있다.
  • 논리 파티션
    • 네 개 이상의 파티션을 사용하게 되는 경우, 확장 파티션을 지정하여 논리 파티션을 만들게 된다.

장치인식 작업

[참고] Hot(online) swap : 전원이 켜진(작동중인) 시스템을 끄지 않고 부품을 교체할 수 있는 방식이다. 메인보드가 핫스왑 관련 기능을 지원해야한다.

  • 콜드 스왑 과정
    1. 서버 전원 끄기
    2. 디스크 장착
    3. 서버 전원 켜기(새로운 장치 검색)
    • 장치 이름 생김
      1. 확인 작업(lsblk) 디스크 확인 명령어
1
2
3
4
ls -l /dev/sd?  # ?란 한글자만 아무거나 있는 것을 표시
fdisk -l
lsblk
lsscsi

관련 명령어

1
2
3
4
5
6
7
8
9
10
11
12
poweroff    # 전원 끄기(콜드 스왑 때 사용)
free -h     # 현재 메모리 확인
df -hT  # 파티션 구조 확인
swapon -s (== cat /rpoc/swaps == swapon --show)  # 스왑 활성화 확인
blkid               # 리눅스 디바이스 정보 출력
lsblk               # 리눅스 디바이스 정보를 출력(blkid보다 상세)
lsscsi              # scsi 디바이스를 확인하기 위해서 사용
fdisk /dev/디스크명  # 해당 디스크 파티션 만들기
fdisk -l            # 현재 디스크 및 파티션 보기
gdisk              # GPT fdisk로 기존 fdisk에서 생성이 불가한 GPT 파티션 전용 프로그램(안정적 운영)
parted             # 2TB 이상의 파티션을 생성할 때 많이 쓰이는 명령어로 파티션 생성, 수정, 삭제가 가능
parted /dev/디스크명
This post is licensed under CC BY 4.0 by the author.