가상화 서비스를 이용중 추가 디스크 사용하고 있고 백업후 같은 서버에 연결한다면
disk의 고유 uuid가 같게 나오는걸 확인할수 있습니다.
그로 인해 발생할수 있는 문제점은 리얼서버도 마찬가지겠지만 추가 디스크 서비스 제거시
리부팅후 mount point를 제대로 찾지 못하거나 uuid로 mount를 하지 못하는 문제점이 있습니다.
그럴 경우에 uuid를 변경하거나 장치명으로 mount를 걸어야 하며 하단에 해결 방법을
기술 하겠습니다.
- disk 상태 확인
root@Ubuntu:~# blkid
/dev/vda1: UUID="60da085a-3523-43a9-bbe9-b02ab28392b0" TYPE="ext4" PARTUUID="18761a7a-01"
/dev/vdb: UUID="0900cd46-3865-42ab-b57b-8356a009fea4" TYPE="ext4"
/dev/vdc: UUID="0900cd46-3865-42ab-b57b-8356a009fea4" TYPE="ext4"
# 디스크 vdb를 복사한 볼륨을 붙였더니 uuid가 같게 나온다.
root@Ubuntu:~# ll /dev/disk/by-uuid/
합계 0
drwxr-xr-x 2 root root 80 11월 28 09:15 ./
drwxr-xr-x 5 root root 100 11월 28 09:15 ../
lrwxrwxrwx 1 root root 9 11월 28 09:15 0900cd46-3865-42ab-b57b-8356a009fea4 -> ../../vdc
lrwxrwxrwx 1 root root 10 11월 28 09:15 60da085a-3523-43a9-bbe9-b02ab28392b0 -> ../../vda1
# 디스크 vdb가 보이지 않는다.
root@Ubuntu:~# df -Th
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 981M 0 981M 0% /dev
tmpfs tmpfs 201M 3.3M 197M 2% /run
/dev/vda1 ext4 4.8G 2.8G 1.8G 61% /
tmpfs tmpfs 1001M 0 1001M 0% /dev/shm
tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs tmpfs 1001M 0 1001M 0% /sys/fs/cgroup
tmpfs tmpfs 201M 0 201M 0% /run/user/0
tmpfs tmpfs 201M 0 201M 0% /run/user/1000
/dev/vdb ext4 2.0G 3.0M 1.8G 1% /mnt
root@Ubuntu:~# fdisk -l
...
...
...
Disk /dev/vdb: 2 GiB, 2147483648 bytes, 4194304 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/vdc: 4 GiB, 4294967296 bytes, 8388608 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
# fdisk로 보았을때 vdb를 복사하여 확장한 vdc가 보인다.
- 해결 방법 1
root@Ubuntu:~# vi /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
#
# / was on /dev/vda1 during installation
UUID=60da085a-3523-43a9-bbe9-b02ab28392b0 / ext4 errors=remount-ro 0 1
/dev/vdb /mnt ext4 defaults 1 1
/dev/vdc /mnt1 ext4 defaults 1 1
# fstab 옵션을 uuid가 아닌 장치명으로 한다.
하지만 디스크 제거후 리부팅시 mount point 및 디스크를 찾지 못하니 fstab에서 해당라인을
지워주거나 주석 처리 해야한다.
- 해결 방법 2
root@Ubuntu:~# tune2fs /dev/vdc -U 0900cd46-3865-42ab-b57b-8356a009fea5
tune2fs 1.42.13 (17-May-2015)
root@Ubuntu:~# ll /dev/disk/by-uuid/
합계 0
drwxr-xr-x 2 root root 100 11월 28 09:28 ./
drwxr-xr-x 5 root root 100 11월 28 09:15 ../
lrwxrwxrwx 1 root root 9 11월 28 09:28 0900cd46-3865-42ab-b57b-8356a009fea4 -> ../../vdb
lrwxrwxrwx 1 root root 9 11월 28 09:28 0900cd46-3865-42ab-b57b-8356a009fea5 -> ../../vdc
lrwxrwxrwx 1 root root 10 11월 28 09:15 60da085a-3523-43a9-bbe9-b02ab28392b0 -> ../../vda1
# tune2fs명령어로 uuid를 변경후 사용하며 fstab도 마찬가지로 uuid로 변경하면 된다.
- disk 마운트된 상태에서 변경된 사이즈 적용
root@Ubuntu:~# resize2fs /dev/vdc
resize2fs 1.42.13 (17-May-2015)
Filesystem at /dev/vdc is mounted on /mnt; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/vdc is now 1048576 (4k) blocks long.
# resize2fs 명령어로 디스크 확장 된다.
root@Ubuntu:~# df -Th
Filesystem Type Size Used Avail Use% Mounted on
...
...
...
/dev/vdc ext4 3.9G 4.0M 3.7G 1% /mnt