2019. 9. 25. 17:13ㆍCentOS 7/Basic
- 디스크 사용량 확인 (df)
- 디스크 및 파티션 목록 보기 (fdisk -l)
- 파티션 구성하기 (fdisk)
- 파티션 포맷하기 (mkfs)
- 리눅스 서버 재부팅시에도 자동으로 마운트되도록 설정하기 (/etc/fstab)
1. 디스크 사용량 확인
현재 마운트된 파티션별 저장공간 확인해보기 위해서 리눅스 디스크 사용량을 확인하는 명령어를 실행해봅시다.
리눅스 파일시스템 사용량을 출력하는 명령어는 df
입니다.
option | 내용 |
---|---|
-T | 파일 시스템 종류 컬럼도 출력 |
-h | MB, GB 단위로 용량을 출력(기본단위 KB) |
-P | 파일시스템 경로가 길경우 2줄로 출력되는것을 방지(1줄 출력) |
df -Th Filesystem Size Used Avail Use% Mounted on devtmpfs 909M 0 909M 0% /dev tmpfs 919M 0 919M 0% /dev/shm tmpfs 919M 17M 903M 2% /run tmpfs 919M 0 919M 0% /sys/fs/cgroup /dev/vda2 99G 13G 82G 14% / tmpfs 184M 0 184M 0% /run/user/1000
※ 참고로 위의 컴퓨터는 /dev/vda2 파티션이 / 경로에 마운트 되어있습니다.
2. 디스크 및 파티션 목록 보기
fdisk -l
명령어로 디스크 및 파티션 현황을 볼 수 있습니다.
sudo fdisk -l WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion. Disk /dev/vda: 107.4 GB, 107374182400 bytes, 209715200 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: gpt Disk identifier: B6AEA637-ED34-45E4-81A7-B2BA6C4F9435 # Start End Size Type Name 1 2048 6143 2M BIOS boot biosboot 2 6144 209715165 100G EFI System rootfs Disk /dev/vdb: 214.7 GB, 214748364800 bytes, 419430400 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
line 4~14는 기존에 마운트 되어있는 디스크이고,
line 6~19는 새로 추가한 디스크입니다.
새로 추가한 디스크는 아직 마운트 되지 않아 df -h
명령어로 조회하였을때 출력되지 않았습니다.
그리고 아직 Disk identifier도 붙지 않았고, 파티션 설정도 되어있지 않습니다.
fdisk 명령어는 mount되지 않은 디스크도 포함하여 모든 디스크를 출력합니다.
그럼, /dev/vdb
를 마운트해보러 갑시다.
※ 데이터가 들어있는 디스크를 mount를 하는 것이라면 아래의 파티션 구성 및 포맷 과정은 건너뛰고 바로 mount를 하면 됩니다.
3. 파티션 구성하기
fdisk 디스크명
디스크를 파티션 구성하고 싶다면(Windows에서 D드라이브 E드라이 등으로 파티션 구성하듯...) 파티션 설정을 하면 됩니다.
※ 만일, 파티션 설정 없이 하나의 디스크로 마운트하고 싶다면 이 단계는 패스하면 됩니다.
sudo fdisk /dev/vdb Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table Building a new DOS disklabel with disk identifier 0xa5017a1c. Command (m for help): m Command action a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition g create a new empty GPT partition table G create an IRIX (SGI) partition table l list known partition types m print this menu n add a new partition o create a new empty DOS partition table p print the partition table q quit without saving changes s create a new empty Sun disklabel t change a partitions system id u change display/entry units v verify the partition table w write table to disk and exit x extra functionality (experts only)
m을 누르면 파티션 구성을 위한 다영한 명령어에 대한 간략한 설명을 소개해줍니다.
우리는 파티션을 새로 구성해야하기 때문에 n
을 이용하면 됩니다.
sudo fdisk /dev/vdb Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table Building a new DOS disklabel with disk identifier 0xa5017a1c. Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p Partition number (1-4, default 1): First sector (2048-419430399, default 2048): Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-419430399, default 419430399): +50G Partition 1 of type Linux and of size 50 GiB is set Command (m for help): n Partition type: p primary (1 primary, 0 extended, 3 free) e extended Select (default p): Using default response p Partition number (2-4, default 2): First sector (104859648-419430399, default 104859648): Using default value 104859648 Last sector, +sectors or +size{K,M,G} (104859648-419430399, default 419430399): +50G Partition 2 of type Linux and of size 50 GiB is set Command (m for help): n Partition type: p primary (2 primary, 0 extended, 2 free) e extended Select (default p): Using default response p Partition number (3,4, default 3): First sector (209717248-419430399, default 209717248): Using default value 209717248 Last sector, +sectors or +size{K,M,G} (209717248-419430399, default 419430399): +50G Partition 3 of type Linux and of size 50 GiB is set Command (m for help): n Partition type: p primary (3 primary, 0 extended, 1 free) e extended Select (default e): e Selected partition 4 First sector (314574848-419430399, default 314574848): Using default value 314574848 Last sector, +sectors or +size{K,M,G} (314574848-419430399, default 419430399): Using default value 419430399 Partition 4 of type Extended and of size 50 GiB is set Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
3개의 50G 용량의 주파티션과 1개의 extended 파티션으로 설정하였습니다.
n
명령어로 새 파티션 추가
파티션 타입은 p
(주파티션) 또는 e
(확장 파티션) 중 선택할 수 있습니다.
파티션 용량을 Last sector에서 설정하고 (ex: +50G)
w
명령어로 파티션 테이블 설정을 저장합니다.
파티션 구성을 마쳤다면 다시 fdisk -l
명령어로 디스크 및 파티션 현황을 확인해봅시다.
sudo fdisk -l WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion. Disk /dev/vda: 107.4 GB, 107374182400 bytes, 209715200 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: gpt Disk identifier: B6AEA637-ED34-45E4-81A7-B2BA6C4F9435 # Start End Size Type Name 1 2048 6143 2M BIOS boot biosboot 2 6144 209715165 100G EFI System rootfs Disk /dev/vdb: 214.7 GB, 214748364800 bytes, 419430400 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0xa5017a1c Device Boot Start End Blocks Id System /dev/vdb1 2048 104859647 52428800 83 Linux /dev/vdb2 104859648 209717247 52428800 83 Linux /dev/vdb3 209717248 314574847 52428800 83 Linux /dev/vdb4 314574848 419430399 52427776 5 Extended
3개의 주 파티션과 1개의 확장 파티션이 정상적으로 설정되었음을 확인할 수 있습니다
4. 파티션 포맷하기(mkfs)
make file system
파티션 설정을 완료했다면 이제 주 파티션을 포맷해봅시다.
sudo mkfs.xfs -f /dev/vdb1 sudo mkfs.xfs -f /dev/vdb2 sudo mkfs.xfs -f /dev/vdb3
위와같이 mkfs.xfs 디스크명
으로 포맷을 하면 되는데. 저의 경우 xfs 파일시스템으로 포맷을 하기위해 mkfs.xfs 명령어를 사용하였습니다. 이밖에도 다양한 포맷도 제공되니 필요한 포맷으로 파티션을 포맷하면 됩니다.
파티션 설정을 하지않았다면 디스크를 포맷하면 됩니다. (
sudo mkfs.xfs -f /dev/vdb
)
mkfs.bfs, mkfs.ext2, mkfs.ext3, mkfs.ext4, mkfs.minix, mkfs.msdos, mkfs.vfat, mkfs.xfs, mkfs.xiafs
5. 파티션 마운트
포맷까지 완료했다면, 이제 파티션을 사용하기 위한 준비가 모두 끝났습니다.
이 파티션을 마운트하고자 하는 디렉토리(마운트 포인트)에 mount
(연결)합니다.
sudo mount /dev/vdb1 /data/box1 sudo mount /dev/vdb2 /data/box2 sudo mount /dev/vdb3 /data/box3
※ 참고로, 마운트를 해제하는 명령어는 umount
입니다. (sudo umount /dev/vdb1
)
그리고 파일상태를 다시 확인해봅니다.
df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 909M 0 909M 0% /dev tmpfs 919M 0 919M 0% /dev/shm tmpfs 919M 17M 903M 2% /run tmpfs 919M 0 919M 0% /sys/fs/cgroup /dev/vda2 99G 13G 82G 14% / tmpfs 184M 0 184M 0% /run/user/1000 /dev/vdb1 50G 33M 50G 1% /data/box1 /dev/vdb2 50G 33M 50G 1% /data/box2 /dev/vdb3 50G 33M 50G 1% /data/box3
vdb1~vdb3 파티션이 잘 추가되었네요!
5. 서버 재부팅시 자동 마운트 설정
추가한 디스크의 파티션 설정과, 설정된 파티션을 3개의 디렉토리 경로에 정상적으로 mount하였습니다.
그러나, mount명령어로 디렉토리와 연결한 디스크 정보는 서버가 종료되기 전까지만 유효하며, 서버가 재부팅될 경우 umount 됩니다.
서버 재부팅시에도 자동으로 mount하고 싶다면 리눅스 시스템 설정파일인 /etc/fstab
에 마운트 정보를 저장해야 합니다. (= 마운트 영구 설정)
sudo vim /etc/fstab
UUID=0216ddbb-21e5-4f13-8b1e-74f3024b17da / ext4 defaults 1 1 /var/spool/swap/swapfile4G none swap defaults 0 0 /dev/vdb1 /data/box1 xfs defaults 0 0 /dev/vdb2 /data/box2 xfs defaults 0 0 /dev/vdb3 /data/box3 xfs defaults 0 0
필드명은 차례대로 filesystem divice name
mount point
file system type
option
dump
fsck option
순 입니다.
option
파일 시스템의 용도에 맞게 옵션을 설정하세요.
option | description |
---|---|
default | auto + exec + nouser + suid |
auto | 부팅시 자동 마운트 |
exec | 실행파일 실행 허용 |
user | 일반 계정사용자들도 마운트 허용(nouser: root계정만 마운트 허용) |
suid | uid, gid 설정 허용 |
rw | 읽기, 쓰기 모두 가능하도록 마운트 |
ro | 읽기전용 마운트 |
※ auto, exec, user, suid 앞에 no가 붙을 경우 반대 속성입니다.
/etc/fstab
파일 수정까지 모두 끝마쳤다면, 재부팅해도 파티션이 자동으로 마운트 됩니다.
dump
dump | description |
---|---|
0 | 덤프 불가능 |
1 | 덤프 가능 |
fsck option
파일점검옵션으로, 0은 점검을 하지 않으며, 1로 설정된 파일시스템을 모두 선행한 후 2로 설정된 파일시스템의 파일점검을 시작합니다.
fsck option | description |
---|---|
0 | 부팅시 실행되는 fsck가 실행되지 않는다 |
1 | 루트파일 시스템에 설정 |
2 | 루트 파일 이외의 파일시스템에 설정 |
'CentOS 7 > Basic' 카테고리의 다른 글
[Suricata 5] 1. CentOS 7에 suricata 5 설치하기 (0) | 2020.07.10 |
---|---|
[CentOS 7] timedatectl을 이용하여 서버의 timezone 변경하기 (0) | 2020.03.20 |
[CentOS 7] ntpdate 명령어를 이용하여 NTP 서버와 시간 동기화 (0) | 2020.02.26 |
[CentOS 7] history 명령어로 사용한 명령어 확인 및 재사용 (0) | 2020.01.03 |
[CentOS 7] scp로 원격 파일 전송하기 (0) | 2019.11.14 |