1. 디스크 기본 구조
1.1 디스크의 물리적인 구조
플래터, 스핀들, 헤드.액추에이터. 액추에이터 암, 커넥터, 점퍼 블록, 전원커넥터
1.2 디스크 플래터의 논리적인 구성요소
| 구성요소 | 설명 |
| 섹터(Sector) | - 플래터의 가장 작은 단위 - 1섹터 512byte - 디스크 블록 - 디스크의 위치 구분 가능 |
| 트랙(Track) | - 섹터가 모여 하나의 원을 구성 |
| 실린더(Cylinder) | - 여러 동심 트랙에 대한 스택 구조 |
디스크 > 파티션 > 실린더 > 트랙 > 섹터
1.3 디스크 파티션
파티션은 물리적인 디스크를 논리적으로 나눈 단위이다.
한 개의 물리적인 디스크를 파티션으로 나누어 사용한다.
파티션으로 나누어지게 되면 각 파티션은 개별적으로 관리된다.
x86 시스템에서 디스크 파티션이 구성되는 방식
| 구성 방식 | MBR(Master Boot Record) | GPT(GUID Partition Table) |
| 섹터 주소 | 4B(32bit) | 64bit |
| 디스크의 전체 크기 | 2TB | 8ZB |
| 파티션 (테이블) 개수 | 4+a | 최대 128개 |
| ... | ||
| 부팅영역 | BIOS만 지원하는 시스템에 경우 MBR로만 부팅영역(운영체제) 설정 가능 | |
| 주의사항 | 1. 파티션 개수(p 3개, e 1개) 2. e는 크기 설정 시 남은 전체 공간을 할당 3. ㅁㄴㅇㄹ |
2. 디스크 이름 및 확인
2.1 디스크 연결 인터페이스 방식
| 인터페이스 방식 | 설명 | 핫플러깅 여부 | 장치명 |
| E-IDE | 구형 병렬 전송을 사용하는 방식. 40핀 또는 80핀 리본 케이블 사용. 한 채널에 최대 2개의 장치를 연결. 전송속도는 최대 133MB/s 정도. |
X | hd, sd |
| SATA | E-IDE를 대체한 직렬 전송 방식. 이블이 얇아지고 전송속도가 크게 향상됨. 현재 일반 PC와 서버에서 가장 많이 사용. |
O | sd |
| SCSI | 서버에서 고성능 병렬 전송을 사용하는 방식. 여러 장치를 체인 방식으로 연결 가능 (최대 7~15개). 속도는 세대별로 다르며, 안정성과 확장성이 강점. |
O | sd |
| SA-SCSI | SCSI를 직렬화한 고속·고신뢰 방식. SATA와 커넥터 호환 가능 (SAS 컨트롤러에서 SATA 디스크 인식 가능). 3Gb/s → 6Gb/s → 12Gb/s 이상 발전. |
O | sd |
2.2 리눅스 시스템 스토리지 장치명
리눅스 시스템의 하드웨어 장치는 /dev 디렉토리 내에 파일로 생성
인터페이스장치명 장치번호 파티션번호
sd/a/1
+ ODD(Optical Disk Drive): CD-ROM/DVD-ROM 등의 광학 미디어 장치는 연결 인터페이스와 무관하게 sr 장치명을 사용, 장치번호를 알파벳이 아닌 숫자로 설정
*핫 플러깅
핫플러깅이 지원되는 장치의 경우 장치 연결 시 자동으로 장치파일이 생성된다.
핫 플러깅이 지원되지 않는 장치의 경우는 시스템 종료 후 장치를 추가한다. 그리고 시스템을 부팅하여 장치를 인식시키고 장치 파일을 생성한다.
3. 하드디스크 파티셔닝
virtual box 기준 disk 추가하는 방법 link...
3.1 디스크 구조 확인하기
lsblk

3.2 fdisk
fdisk [device]

| 명령어 | 설명 | 설명 |
| d | delete a partitaion | 파티션 삭제 |
| l | list known partition types | 파티션 타입의 목록 출력 |
| m | print this menu | 명령어 목록 출력 |
| n | add a new partition | 새로운 파티션 추가 |
| p | print the partition table | 현재 파티션 설정상황 출력 |
| q | quit without saving changes | fdisk 종료 |
| t | chage a partitions system id | 파티션 타입 변경 |
| w | write table to disk and exit | 파티션 변경사항 기록 |
3.3 파티션 만들기(n)

1) 파티션 종류
| 명령어 | 종류 | 설명 |
| p | Primary Partition | - 주 파티션 - 파일 내부에 단일 파일시스템을 생성하여 사용하는 독립된 파티션 |
| e | Extended Partition | - 확장파티션 - MBR 방식의 4개로 제한된 파티션 개수를 극복하기 위해 개발된 파티션 - 확장 파티션 생성 이후 확장 파티션 내부에 논리 파티션을 생성할 수 있음 |

2) 파티션 번호
3) 파티션에서 사용할 시작 섹터 위치
4) 마지막 섹터 위치
| 파티션 크기 결정 방법 | 예시 | |
| 마지막 섹터 주소 지정 | 크기 = 마지막 섹터 주소 - 시작 섹터 주소 | 4194309 |
| 섹터 개수 지정 | 마지막 섹터 주소 = 시작 섹터 주소 + 지정한 개수 | +3000 |
| 파티션에 할당할 디스크용량 지정 | 마지막 섹터 주소 = 시작 섹터 주소 + 지정한 크기 | +1G |
3.4 현재 설정 확인(p)

| 출력 항목 | 설명 |
| Device | 파티션 장치명 |
| Boot | 부팅 가능 파티션 여부 |
| Start | 시작 섹터 *LBA 주소 |
| End | 마지막 섹터 LBA 주소 |
| Sectors | 사용하는 섹터 크기 |
| Size | 파티션의 크기 |
| ID | 파티션 종류 |
| Type | 파티션 종류의 이름 |
*LBA(Logical Block Addressing): 디스크 데이터를 블록 단위로 일렬 번호를 매겨 접근하는 방식의 논리적 주소
3.5 파티션 삭제(d)

삭제할 파티션 지정(예시에서는 파티션이 1개이므로, 지정없음)
3.6 설정한 파티션 정보를 디스크에 기록(w)

+ 다음 메시지가 나올 경우
WARNING: Re-reading the partition failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at the next reboot or atfer you run partprobe(8) or kpartx(8)
Syncing disk.
partprobe [device] [-s]
디스크에 파티션 변경을 기록했지만 커널에서 변경된 파티션의 정보를 인식시키는 명령어
-s 옵션과 사용하면 시스템 전체의 디스크 및 디스크 파티션 정보를 확인할 수 있다.

| 항목 | 의미 |
| /dev/sda | 디스크 장치명 |
| msdos partition | 현재 디스크의 파티셔닝 방식 (MBR) |
| 1 2 | 현재 디스크의 생성된 파티션 번호 |
3.7 파티션 설정 시 주의사항
1) 파티션과 파티션 사이에 사용되지 않는 섹터 영역이 있도록 설정하지 않는다.
2) 파티션으 일부 영역을 겹치게 설정하지 않는다.
3.8 파티션 구성 후 디스크에서 사용하는 방법
1) 파일 시스템 생성
2) 파일 시스템이 생성된 파티션 장치에 접근할 수 있도록 경로 설정 -> 마운트
3) 부팅 시 자동 마운트 설정
https://xsreem.tistory.com/161
'Program > 토스뱅크 사이버보안 엔지니어 부트캠프(공격&방어 기술)' 카테고리의 다른 글
| [Linux] FreeIPA 서버/클라이언트 구성 (0) | 2025.10.17 |
|---|---|
| [Lunix] 파일시스템/마운트/스왑 메모리 (0) | 2025.10.13 |
| [Linux] 쉘 프로그래밍 (0) | 2025.09.23 |
| [Network] CISCO Packet Tracer 실습 (IP설정, MAC주소 확인, VLAN 설정, ) (1) | 2025.09.14 |
| [Network] CISCO Packet Tracer 설치 방법 및 사용법 (0) | 2025.09.14 |