Linux 스토리지 보안(1)
Linux 스토리지 보안(1)
디바이스 재설정과 파티션
선수지식
- 디스크 종류
- HDD(SATA, SAS) vs SSD(NVMe)
- hdd 동작 방식 = 데이터를 돌려서
- ssd 동작 방식 = 데이터를 찍어서(발열이 적음)
- NVMe(메모리 처럼 생김-속도가 더 빠름 바로 연결되어 하기 때문에)
- HDD(SATA, SAS) vs 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이상 되는 디스크를 관리 할 수 있음)
- FW(펌웨어) 종류 : 하드웨어 관리체계? disk 파티션
- 디스크 장착
- 장치 인식 작업
- 파티션 작업
- 파일 시스템 작업
- 마운트 작업
파티션
개요
- 파티션이란 컴퓨터에서 디스크나 메모리 등의 저장 매체를 사용하고자 하는 영역만큼 나누는 것을 뜻한다. HDD처럼 용량이 비교적 큰 매체를 유용하게 쓰기 위해 고안되었다.
- 디스크 용량을 나누어 사용자나 프로그램의 사용 용량을 제한한다.
- 사용자 파일에서 운영체제의 프로그램 파일을 구분한다.
- 진단 도구 및 백업 이미징 성능을 향상한다.
리눅스 파티션 형식
- MBR 파티션
- primary partition : P1 ~ P4
- extended partition
- ㄴ logical partition : L5 ~ L15
디스크 용량 급성장으로 인해 분할 파티션이 필요해서 primary 파티션 중 하나를 골라 그 안에서 5~15로 나눌 수 있다(파티션을 나눌 수 있는 개수가 정해져 있음)
| MBR | PRIMARY | PRIMARY | PRIMARY | <– EXTENDED –> |
|---|---|---|---|---|
| MBR | SDA1 | SDA2 | SDA3 | SDA5, SDA6, Unused |
하지만, 물리디스크가 커짐으로 인해 2TiB 디스크 및 파티션 크기 제한은 문제가 되어 새로운 GPT 시스템으로 대체되고 있다.
- GPT 파티션 테이블
- 큰 디스크 지원, 큰 저장공간 차지 (1gb)
- 1 ~ 128 : 파티션 번호
| PRIMARY GPT | SDA들….. | BACKUP GPT |
|---|---|---|
| GPT | sda1, sda2, sda3, sda5, unused | GPT |
파티션 종류와 형식
파티션 분할시 파티션 제약이 따르게 되는데 분할된 파티션의 정보를 담고 있는 파티션 테이블의 용량이 제한되있어서 나온게 확장과 논리 파티션이다.
- 주 파티션
- 기본 파티션으로 이 이상으로 쪼갤 수 없다. 하나의 하드 디스크 당 4개의 파티션까지만 만들 수 있다.
- 확장 파티션
- 하드 디스크를 4개 이상으로 쪼개고 싶을 때 만드는 파티션이다. 저장 공간이 없어 저장을 할 순 없지만 논리 파티션을 만들 수 있게 해주는 그릇 역할을 한다.
- 확장 파티션은 하나의 디스크에만 만들 수 있다.
- 논리 파티션
- 네 개 이상의 파티션을 사용하게 되는 경우, 확장 파티션을 지정하여 논리 파티션을 만들게 된다.
장치인식 작업
[참고] Hot(online) swap : 전원이 켜진(작동중인) 시스템을 끄지 않고 부품을 교체할 수 있는 방식이다. 메인보드가 핫스왑 관련 기능을 지원해야한다.
- 콜드 스왑 과정
- 서버 전원 끄기
- 디스크 장착
- 서버 전원 켜기(새로운 장치 검색)
- 장치 이름 생김
- 확인 작업(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.