본문 바로가기
서버인프라/리눅스

리눅스 디스크 추가

by techwold ted 2022. 10. 7.

요즘은 가상화 서버를 많이 사용하다 보니 Disk 를 붙였다가 제거 했다 하는 경우가 많다.

그래서 아주 기초적인 거지만 기초가 가장 중요하고 편하게 붙이는 방법을 소개하려 한다.

 

아래와 같이 lsblk 명령어를 실행하면 Disk의 mount 정보와 name을 확인 할 수 있다.

[root@test-exchange ~]# lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda           8:0    0  12.8T  0 disk
└─sda1        8:1    0     2T  0 part /data
nvme0n1     259:0    0 119.2G  0 disk
├─nvme0n1p1 259:1    0   600M  0 part /boot/efi
├─nvme0n1p2 259:2    0     1G  0 part /boot
└─nvme0n1p3 259:3    0 117.7G  0 part
  ├─cl-root 253:0    0    50G  0 lvm  /
  ├─cl-swap 253:1    0   7.8G  0 lvm  [SWAP]
  └─cl-home 253:2    0  59.9G  0 lvm  /home

 

여기서 sda1 의 경우 디스크를 추가하여 마운트 한 경우다 

nvme가 OS가 설치 되어 있는 디스크 이다. 예전 IPFS를 테스트 할때 사용한 서버인데

우선 어떻게 추가 하였는지 확인해 보자

 

우선 fdisk 명령어로 디스크를 사용 할 수 있도록 만들어 줘야 한다.

fdisk -l 명령어로 인식된 디스크를 확인 후 사용할 수 있도록 만들어 줘야 한다.

[root@test-exchange ~]# fdisk -l
Disk /dev/nvme0n1: 119.2 GiB, 128035676160 bytes, 250069680 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
Disklabel type: gpt
Disk identifier: DF7E0245-B4CE-473D-BF8A-A240AB2EB85A

Device           Start       End   Sectors   Size Type
/dev/nvme0n1p1    2048   1230847   1228800   600M EFI System
/dev/nvme0n1p2 1230848   3327999   2097152     1G Linux filesystem
/dev/nvme0n1p3 3328000 250068991 246740992 117.7G Linux LVM


Disk /dev/sda: 12.8 TiB, 14000519643136 bytes, 27344764928 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xecdd9302

Device     Boot Start        End    Sectors Size Id Type
/dev/sda1        2048 4294967294 4294965247   2T 83 Linux


Disk /dev/mapper/cl-root: 50 GiB, 53687091200 bytes, 104857600 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 /dev/mapper/cl-swap: 7.8 GiB, 8359247872 bytes, 16326656 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 /dev/mapper/cl-home: 59.9 GiB, 64281903104 bytes, 125550592 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

그리고 이전에 얘기했던 /dev/sda를 사용할 수 있도록 만드는 건데 

fdisk /dev/sda

 

우선 해당 서버에 적용하기 힘들어 ncloud 를 사용하여 디스크를 추가한 내용을 소개하려 한다.

맨 마지막 쯤 10Gb에  /dev/xvdd 10GiB 내용의 disk가 추가 된 것이 보일 것이다.

root@web-server1:/var/log# fdisk -l
Disk /dev/xvda: 50 GiB, 53687091200 bytes, 104857600 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
Disklabel type: dos
Disk identifier: 0x7354504e

Device     Boot Start       End   Sectors Size Id Type
/dev/xvda1       2048 104855551 104853504  50G 83 Linux


Disk /dev/xvdb: 70 GiB, 75161927680 bytes, 146800640 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
Disklabel type: dos
Disk identifier: 0x94e1e05b

Device     Boot Start       End   Sectors Size Id Type
/dev/xvdb1       2048 146800639 146798592  70G 83 Linux


Disk /dev/xvdc: 30 GiB, 32212254720 bytes, 62914560 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
Disklabel type: dos
Disk identifier: 0x7a01dcfe

Device     Boot Start      End  Sectors Size Id Type
/dev/xvdc1       2048 62914559 62912512  30G 83 Linux


Disk /dev/xvdd: 10 GiB, 10737418240 bytes, 20971520 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

위 와같이 확인을 했으면

아래와 같이 명령어를 실행해서 실행해 주면 된다.

root@web-server1:/var/log# fdisk /dev/xvdd

Welcome to fdisk (util-linux 2.34).
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.
Created a new DOS disklabel with disk identifier 0x0336211c.

Command (m for help): n
Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1):
First sector (2048-20971519, default 2048):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-20971519, default 20971519):

Created a new partition 1 of type 'Linux' and of size 10 GiB.

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

하지만 아직 disk format을 해주지 않았기 때문에 디스크 사용은 불가하다.

가장 많이 요즘 사용되고 있는 ext4로 format 할 건데 아래에서 확인해 보자

root@web-server1:/var/log# fdisk -l
Disk /dev/xvda: 50 GiB, 53687091200 bytes, 104857600 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
Disklabel type: dos
Disk identifier: 0x7354504e

Device     Boot Start       End   Sectors Size Id Type
/dev/xvda1       2048 104855551 104853504  50G 83 Linux


Disk /dev/xvdb: 70 GiB, 75161927680 bytes, 146800640 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
Disklabel type: dos
Disk identifier: 0x94e1e05b

Device     Boot Start       End   Sectors Size Id Type
/dev/xvdb1       2048 146800639 146798592  70G 83 Linux


Disk /dev/xvdc: 30 GiB, 32212254720 bytes, 62914560 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
Disklabel type: dos
Disk identifier: 0x7a01dcfe

Device     Boot Start      End  Sectors Size Id Type
/dev/xvdc1       2048 62914559 62912512  30G 83 Linux


Disk /dev/xvdd: 10 GiB, 10737418240 bytes, 20971520 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
Disklabel type: dos
Disk identifier: 0x0336211c

Device     Boot Start      End  Sectors Size Id Type
/dev/xvdd1       2048 20971519 20969472  10G 83 Linux
root@web-server1:/var/log# mkfs.ext4 /dev/xvdd1
mke2fs 1.45.5 (07-Jan-2020)
Creating filesystem with 2621184 4k blocks and 655360 inodes
Filesystem UUID: 0d1971ee-651c-4777-b023-1053cf5033ae
Superblock backups stored on blocks:
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

위와 같이 마무리 해주시면 된다.

여기서 blkid 명령어를 사용하여 UUID를 확인하여 mount 시켜주면 된다.

root@web-server1:/var/log# blkid
/dev/xvda1: UUID="e1d859fe-43b2-44c5-a10e-0f9a97b50fdc" TYPE="ext4" PARTUUID="7354504e-01"
/dev/xvdb1: UUID="075c4ed9-537e-410c-a77f-11af272deef4" TYPE="ext4" PARTUUID="94e1e05b-01"
/dev/xvdc1: UUID="c15a94cd-a31a-4d47-b3b7-148a1d4e8a20" TYPE="ext4" PARTUUID="7a01dcfe-01"
/dev/xvdd1: UUID="0d1971ee-651c-4777-b023-1053cf5033ae" TYPE="ext4" PARTUUID="0336211c-01"

DISK MOUNT

마지막 줄 추가 전 mkdir /test 하여 디렉토리 생성해 주시길 바란다.

vi /etc/fstab

UUID=e1d859fe-43b2-44c5-a10e-0f9a97b50fdc /               ext4    errors=remount-ro 0       1
UUID=075c4ed9-537e-410c-a77f-11af272deef4       /data   ext4    defaults        0 0
UUID=c15a94cd-a31a-4d47-b3b7-148a1d4e8a20       /web    ext4    defaults        0 0
UUID=0d1971ee-651c-4777-b023-1053cf5033ae /test			ext4	defaults		0 0

 

내용을 약간 두서없이 어렵게 쓴거 같아서 하지만 꼭 필요한 내용이라 생각되어 

간략히 정리 해보려 한다.

1. disk 확인 ( fdisk -l )

2. disk fdisk 실행 ( fdisk /dev/xvdd ) 본인 추가된 디스크 name을 써주면 된다.

3. disk format ( mkfs.bfs     mkfs.btrfs   mkfs.cramfs  mkfs.ext2    mkfs.ext3    mkfs.ext4    mkfs.fat     mkfs.minix   mkfs.msdos   mkfs.ntfs    mkfs.vfat    mkfs.xfs ) 원하는 포멧방식을 사용하면 된다.

4. disk UUID 확인 ( blkid )

5. disk mount

 

위 내용이 햇갈리시는 분은 댓글 남겨 주시면 친절히 설명해 드리겠습니다.

'서버인프라 > 리눅스' 카테고리의 다른 글

Linux Disk resize  (0) 2022.10.09
리눅스 history 날짜 시간 생성  (0) 2022.10.07
Linux Time Zone 설정  (0) 2022.02.18
IPTABLE Rule 설정  (0) 2022.02.16
IPTABLE 설치  (0) 2022.02.16

댓글