
1️⃣ 파일시스템의 이해
1) 파일시스템: 파일을 저장하기 위한 운영체제의 논리적인 구조
(1) 각 운영 체제들은 여러 개의 파일 시스템을 지원
| - Linux: xfs, ext4 - Windows: NTFS - UNIX: UFS - IOS: APFS |
2) 파티션: 물리적인 디스크를 나눈 논리적인 구역
2️⃣ 파티션의 종류
1) Primary partition
(1) 물리적인 디스크에 독립적으로 존재하며 파일 시스템 생성, 운영체제 직접 사용 가능
(2) 각 물리적인 디스크마다 4개까지 생성 가능
2) Extended partition
(1) 디스크마다 1개까지 생성 가능
(2) 직접 사용 불가
(3) Logical partition 으로 분할 사용
3) Logical partition
(1) Extended partition 내에 만들어짐
(2) 사용은 Primary partition 과 동일
3️⃣ 디스크 장치 파일
물리적 디스크(하드디스크, CD-ROM 등)를 파일처럼 다루기 위해 만든 특수한 파일로, /dev/sda, /dev/cdrom 등 /dev 디렉토리에 존재하며 이를 통해 운영체제와 애플리케이션이 장치에 직접 접근해 데이터를 읽고 쓸 수 있게 해주는 논리적 창구(인터페이스)
1) SCSI, SATA
(1) 디스크: /dev/sda, /dev/sdb, /dev/sdc
(2) 파티션: /dev/sda1, /dev/sda2, /dev/sda3 ...
2) IDE
(1) 디스크: /dev/hda, /dev/hdb, /dev/hdc
(2) 파티션: /dev/hda1, /dev/hda2, /dev/hda3
| * sda 등은 만들고나서 vmware power off 하면 다시 지워지므로 다시 vmware 에서 디스크나 파티션을 생성 해야 한다 * sda 등 디스크나 파티션 확인하는 명령어 cd |
4️⃣ 디스크 확인
df: 디스크의 마운트 상태, 용량 등을 확인
| # df -Th -T: 파일 시스템 타입까지 출력 -h: 읽기 쉬운 단위로 출력 |
5️⃣ 디스크 사용 과정
fdisk 명령어로 파티션을 만들고, 만들어진 파티션에 mkfs 명령으로 파일 시스템을 만들고, mount 명령으로 특정 디렉토리에 마운트 된 다음 디스크가 사용 된다
| fdisk → mkfs → mount |
| 파티션 생성 전에 해야할 일 vmware에서 edit 클릭 - add 클릭 - 하드 디스크 - SATA - create a new virtual disk - 20 으로 잡고 - finish - 추가 됐는지 확인 (New Hard Disk) |
1) fdisk - 파티션 생성
물리적인 디스크에 논리적인 파티션을 만드는데 사용하는 명령어
| # fdisk 디스크명 ex) # fdisk /dev/sda |
| fdisk 프롬프트에서 사용하는 명령어 p: 현재 파티션 상태 출력 d: 파티션 삭제 n: 파티션 생성 t: 파티션 변경 w: 저장 후 종료 q: 취소 후 종료 |
| 실습 1. # fdisk 입력 2. n - sda1 생성 3. p 4. 1 5. 엔터 6. +10G 입력 7. W |
2) mkfs - 파일 시스템 생성 (포맷 하는 작업)
파티션에 파일시스템을 만드는 명령어
| # mkfs -t [파일시스템 타입] 파티션명 mkfs -t xfs /dev/sda1 = mkfs.xfs -f /dev/sda1 (같은 명령어라 생각 하면 됨) 파일 시스템 타입과 명령어 mkfs -t xfs → mkfs.xfs |
| 실습 1. # mkfs.xfs -f /dev/sda1 입력 2. # mkfs.xfs -f /dev/sda5 입력 |
3) mount
파일시스템이 지정한 디렉토리에 연결해서 사용 가능하도록 하는 명령어
| # mount [-a] [-t [FStype]] [장치명] [디렉토리] |
| 옵션 - a: /etc/fstab의 내용을 읽어 모두 mount 한다 - B(--bind): 장치가 아니라 디렉토리를 디렉토리에 mount 한다 - t: 파일 시스템 양식을 정한다 - o: 마운트 옵션을 추가로 지정한다 - noatime: atime을 갱신하지 않는다 - remount: 옵션을 변경을 위해 재마운트 한다 - ro: Read Only로 정의한다 |
| 실습 1. # mkdir /home1 입력 2. # mkdir /home5 입력 * home1과 home5 의 디렉토리를 먼저 만들어야 한다 3. # mount /dev/sda1 /home1 입력 4. # df | grep sd 입력 * df 명령어로 반드시 확인 작업을 거쳐야 한다 5. #mount /dev/sda5 /home 5 입력 6. # df | grep sd 입력 |
4) umount
마운트 된 파일시스템을 시스템으로 부터 제거하는 명령어
| # umonut [디렉토리명] 혹은 [장치명] |
| 실습 1. # umount /home1 입력 2. # df | grep sd 입력 3. # umount / home5 입력 4. # df | grep sd 입력 |
6️⃣ UUID와 파일명
1) 파티션의 정보 확인
| # blikid - 각 디바이스 파일의 유효 ID명이 나옴(유효 ID명은 절대 바뀌지 않음) |
| 예시 /dev/nvme0n1p1: UUID="01c620a4-0196-4b93-9076-7a4e1ad0be8f" BLOCK_SIZE="512" TYPE="xfs" /dev/nvme0n1p2: UUID="0a09015b-3bdc-4381-a0b6-f11fd1de438e" TYPE="swap" /dev/nvme0n1p3: UUID="fe7736c5-59fc-455a-8c04-7493bee117ab" BLOCK_SIZE="512" TYPE="xfs" /dev/sr0: BLOCK_SIZE="2048" UUID="2024-05-27-14-12-59-00" LABEL="Rocky-8-10-x86_64-dvd" TYPE="iso9660" |
2) UUID를 이용해서 mount, umount 하기
(1) mount 하기
| fdisk → mkfs 까지 위의 말한 프로세스 대로 진행 |
| 실습 1. # fdisk /dev/sda 2. # mkfs.xfs -f /dev/sda1 3. # mkfs.xfs -f /dev/sda2 4. # mkfs.xfs -f /dev/sda5 * 그 후 홈 디렉토리(/home1,2,5) 없으면 만들어야 함 |
![]() 1. # mount UUID="1ce1f41c-c1c7-48a7-87ed-68485d2dcc2c" /home1 2. # mount UUID="a691190b-8eca-4f3d-beb8-9e5760c7de8a" /home5 * sda2(extended)는 껍데기일 뿐이라 파일시스템 포맷되지 않는다 mount 한 후 # blkid | grep sda1 # blkid | grep sda5 로 잘 마운트 되었는지 확인 한다 |
(2) umount 하기
| 1. # umount /home1 혹은 # umount UUID="e9df25ac-43af-450f-8c24-6e4e88c8fba3" 2. # umount /home5 혹은 # umount UUID="1c1dccea-8a88-49c0-bb70-5ced51ef5489" umount 한 후 # df | grep sd 로 umount 잘 되었는지 확인 한다 |
7️⃣ UUID와 라벨명
1) 파티션에 다양한 파라미터를 변경, 확인
| # xfs_admin # xfs_admin -L [라벨명] [장치명] - 라벨명을 지정하는 명령어 # xfs_admin -L "--" [장치명] - 라벨명을 없애겠다는 명령어 # xfs_admin -l(소문자) [장치명] - 라벨명을 확인하는 명령어 |
| 실습 라벨명 지정 1. # xfs_admin -L /home1 /dev/sda1 - home1 라는 이름을 /dev/sda1 이라는 장치 파일에 라벨명으로 정함 2. # xfs_admin -L /home5 /dev/sda5 라벨명 확인 1. # xfs_admin -l /dev/sda1 2. # xfs_admin -l /dev/sda5 라벨명으로 mount 하기 1. # mount LABEL="/home1" /home1 2. # mount LABEL="/home5" /home5 라벨명으로 umount 하기 1. # umount LABEL="/home1" 2. # umount LABEL="/home5" |
2) UUID나 라벨명으로 장치명을 확인
| # findfs LABEL =[라벨명] # findfs UUID = [UUID] |

| 실습 # findfs LABEL=/home1 # findfs UUID="e9df25ac-43af-450f-8c24-6e4e88c8fba3" |
8️⃣ xfs와 ext4 (참고)

9️⃣ 자동(오토) 마운트 - /etc/fstab
/etc/fstab 파일은 시스템 시작 시 자동으로 mount할 파일 시스템의 목록이나 옵션을 저장 한다
| # cat /etc/fstab UUID=3ac97b32-3faf-4cab-9522-93db05eb6935 none swap defaults ts 0 0 - defaults: 옵션 - swap: 파티션 - 0, 0: 항목 자체 필요없음 , 0으로 세팅하면 됨 |
| 위의 항목들을 수정하는 방법 1. # vi /etc/fstab (마운트 확인 하려면 df -Th) 2. UUID=e9df25ac-43af-450f-8c24-6e4e88c8fba3 그 다음에 /home1 적고 그 다음에 xfs 적는다 UUID=1c1dccea-8a88-49c0-bb70-5ced51ef5489 그 다음에 /home5 적고 그 다음에 xfs 적는다 3. 그 다음에 mount -a 를 한 뒤(자동 마운트 - 껏다 켜도 자동으로 마운트가 됨) systemctl daemon-reload 를 명령어에 입력하면 된다 <-> 맨 처음 시간에 배운거는 수동 마운트여서 전원 껏다 켜면 리셋 됐었음 /dev/sda1 입력, /home1 입력, xfs 입력 , defaults 입력, 0 0 /dev/sda2 입력, /home5 입력,xfs 입력, defaults 입력, 0 0 reboot 한 다음에 df 명령어로 확인 하기 |
'Infra & Security Eng > Linux Fundamentals' 카테고리의 다른 글
| 리눅스 프로세스(프로그램과 프로세스, 프로세스 계층 구조, 컨테이너, 포그라운드와 백그라운드, 프로세스 명령어) (0) | 2026.01.22 |
|---|---|
| RPM과 DNF 관련, cdrom vsftpd 다운로드 받기 (0) | 2026.01.20 |
| 파일구조, 파일 종류, 퍼미션, 퍼미션 제어, SUID, SGID, Sticky Bit,chown, chgrp, umask (0) | 2025.12.30 |
| 사용자 관리(/etc/passwd, /etc/shadow, groupadd, groupdel, useradd, userdel, passwd 명령어) 총 정리 (0) | 2025.12.27 |
| vi 편집기 실행 방법, 모드 종류, 모드 전환 방법 (0) | 2025.12.26 |


