/dev/mapper/root가 /로 마운트되고 /dev/dm-0에 매핑된 상자가 있습니다. /dev/mapper/home을 /home으로 마운트하고 /dev/dm-2에 매핑했습니다. DM-0 장비는 5G, DM-2 장비는 2T이다. /2T와 /home 5G를 바꿔달라는 요청을 받았습니다. 논리 볼륨의 크기를 조정하고 삭제하고 추가했습니다. 논리 볼륨을 교환할 수 있는 방법이 있습니까?
중요한 경우... 데이터베이스 서버로 사용하고 싶어합니다. 데이터베이스는 /var/lib/mysql의 / 아래에 있으며 80%가 꽉 찬 5G만 있습니다. /home이 1% 찼습니다.
답변1
두 장치를 교환할 수 있는 직접적인 방법은 없지만 그것이 필요한 방법도 아닙니다. root
as /
및 home
as 를 유지하고 원하는 더 작은 크기로 /home
축소한 다음 여유 공간을 사용하여 확장합니다.home
root
파일 시스템에 따라 크기를 조정하기 위해 마운트를 해제해야 할 수도 있고 그렇지 않을 수도 있습니다. Ext4 파일 시스템은 다음 명령을 사용하여 확장할 수 있지만 축소할 수는 없습니다.resize2fs
.Btrfs 파일 시스템은 마운트 시 어느 방향으로든 크기를 조정할 수 있습니다..
LVM 논리 볼륨을 축소하려면 다음을 사용하십시오.lvreduce
. 실수로 파일 시스템보다 작게 축소하지 않도록 주의하십시오. 이는 잘못 수행할 경우 데이터 손실로 이어질 수 있는 단계입니다(그리고 숫자를 잘못 입력할 가능성이 매우 높습니다). LVM의 경우 소문자 접미사( k
, m
, g
, ...)는 1024의 거듭제곱을 사용하지만 대문자 접미사( K
, M
, G
, ...)는 1000의 거듭제곱을 사용합니다. LVM 논리 볼륨을 확장하려면 다음을 사용하십시오.lvextend
.
예를 들어 ext4의 경우:
umount /home
resize2fs /dev/mapper/home 5G
lvreduce -L 5g /dev/mapper/home # note lowercase g
lvextend 2t /dev/mapper/root
resize2fs /dev/mapper/root
/home
실제로 2TB이고 1% 찼다면 5GB를 넣을 수 없다는 점에 유의하세요 . 그에 따라 크기를 조정하십시오.
또는 데이터베이스를 자체 파일 시스템으로 이동할 수도 있습니다. 일반적으로 운영 체제와 대규모 데이터 세트에는 서로 다른 저장 전략(중복성, 성능, 백업 등에 관한)이 있을 수 있으므로 별도의 볼륨을 사용하는 것이 좋습니다. 서버가 단순한 데이터베이스 서버라면 두 개의 파일 시스템( 관리자 구성 파일만 포함하는 디렉터리 /
포함 )과 ./home
/var/lib/mysql