Linux에서 파일 시스템을 효율적으로 사용

Linux에서 파일 시스템을 효율적으로 사용

이것은 내 디스크의 현재 상태이며, 데이터를 포맷하거나 손실하지 않고 사용하지 않는 공간을 사용하거나 물건을 이동하여 공간을 확보하는 방법은 무엇입니까?

Filesystem                Size  Used Avail Use% Mounted on
devtmpfs                  7.6G     0  7.6G   0% /dev
tmpfs                     7.7G  121M  7.5G   2% /dev/shm
tmpfs                     7.7G  2.0M  7.7G   1% /run
tmpfs                     7.7G     0  7.7G   0% /sys/fs/cgroup
/dev/mapper/Root          50G   50G  336M 100% /
/dev/nvme0n1p2            3.0G  467M  2.6G  16% /boot
/dev/nvme0n1p1            200M   17M  184M   9% /boot/efi
/dev/mapper/Home          100G   30G   71G  30% /home
tmpfs                     1.6G   52K  1.6G   1% /run/user/119637

lvmdiskscan의 출력

  /dev/mapper/luks-e66c5c74-2af5-4500-9e5f-011c23ab17aa [     235.26 GiB] LVM physical volume
  /dev/nvme0n1p1                                        [     200.00 MiB] 
  /dev/nvme0n1p2                                        [       3.00 GiB] 
  /dev/nvme0n1p3                                        [    <235.28 GiB] 
  0 disks
  3 partitions
  1 LVM physical volume whole disk
  0 LVM physical volumes

더 많은 공간이 있으므로 기본 파티션을 병합하거나 기본 디렉터리용 파티션을 추가할 수 있습니까? 다음 단계는 논리적입니까?

  1. 집에 또 다른 칸막이를 만드세요
  2. 루트에 병합합니다(명령으로 수행하는 방법을 모릅니다).
  3. 홈 디렉토리에서 루트까지 10G를 제공한다고 가정하면 내 컴퓨터의 저장 문제가 해결되고 모든 데이터가 그대로 유지됩니다.

현재 해결 방법은 가장 무거운 파일만 이동하는 것입니다.

# find .  -type f -size +1G
./VirtualBox VMs/origin-1.3.0/box-disk1.vmdk
./VirtualBox VMs/virtualBox-related_default_1654693896122_36201/centos-7-1-1.x86_64.vmdk
./.vagrant.d/boxes/thesteve0-VAGRANTSLASH-openshift-origin/1.2.0/virtualbox/box-disk1.vmdk
# mv "./VirtualBox VMs/origin-1.3.0/box-disk1.vmdk" /home/

# df -h
Filesystem                Size  Used Avail Use% Mounted on
devtmpfs                  7.6G     0  7.6G   0% /dev
tmpfs                     7.7G  155M  7.5G   2% /dev/shm
tmpfs                     7.7G  2.0M  7.7G   1% /run
tmpfs                     7.7G     0  7.7G   0% /sys/fs/cgroup
/dev/mapper/Root          50G   40G   11G  79% /
/dev/nvme0n1p2            3.0G  467M  2.6G  16% /boot
/dev/nvme0n1p1            200M   17M  184M   9% /boot/efi
/dev/mapper/Home          100G   40G   61G  40% /home
tmpfs                     1.6G   48K  1.6G   1% /run/user/119637

이것이 virtualbox 사용에 어떤 영향을 미칠지 잘 모르겠습니다 :)

답변1

lvmdiskscan에 위치할 수 있는 LUKS 암호화 볼륨에 LVM 물리 볼륨(PV)이 있음을 나타 냅니다 /dev/nvme0n1p3. 크기는 약 235GiB입니다. 귀하의 /dev/mapper/Root것이 /dev/mapper/Home실제로 LVM 논리 볼륨인 경우 150GiB만 차지하므로 아무것도 축소하지 않고 루트 파일 시스템을 확장하는 데 사용할 수 있는 할당되지 않은 암호화된 LVM 디스크 공간이 약 85GiB 정도 있을 것입니다. 파일 시스템이 설치되어 사용되는 동안 온라인으로 파일 시스템을 확장할 수도 있습니다.

그러나 장치 이름은 LVM 장치 이름과 /dev/mapper/Root유사 하지 않습니다 /dev/mapper/Home. LVM 논리 볼륨은 일반적으로 /dev/<vg name>/<lv name>OR /dev/mapper/<vg name>-<lv name>구문을 사용합니다. 암호화된 파티션인 경우 해당 파티션은 어느 물리적 디스크에 있으며 상대적인 위치는 어떻게 됩니까? 이는 필요한 절차에 상당한 영향을 미칩니다.

/dev/mapper/Root귀하의 과 가 무엇인지 정확히 알지 못하면 /dev/mapper/Home루트 파일 시스템 확장을 구현하는 최선의 방법에 대한 정확한 조언을 제공하는 것이 불가능합니다. 여러 장치 매퍼 계층을 사용하는 경우 dmsetup ls --tree -o blkdevname다양한 매핑 계층이 서로 상호 작용하는 방식을 이해하는 것이 도움이 될 수 있습니다.

/dev/mapper/Root또한 사용 중인 파일 시스템 유형을 공개하지 않았습니다 /dev/mapper/Home. 파일 시스템 유형에는 중요한 의미가 있습니다. 예를 들어 /dev/mapper/Home파일 시스템이 XFS 파일 시스템인 경우 현재 데이터를 백업하지 않고 파일 시스템을 다시 축소하고 복원하지 않고는 축소할 수 있는 방법이 없습니다 mkfs(제가 아는 한). 아직 프로덕션 품질의 XFS 파일 시스템 축소 도구가 아닙니다.

답변2

vgsVG에 여유 공간이 있는지 확인하려면 출력을 확인해야 합니다 . VG에 여유 공간이 충분하면 /dev/mapper/Root 및 파일 시스템을 추가할 수 있습니다.

VG에 여유 공간이 없으면 /dev/mapper/Root LV와 그 위의 파일 시스템을 늘리는 대신 /dev/mapper/Home에서 파일 시스템을 축소하고 /dev/mapper/Home LV를 축소합니다.

https://documentation.suse.com/sles/15-SP1/html/SLES-all/cha-resize-fs.html

https://www.mankier.com/8/lvreduce

https://www.mankier.com/8/lvresize

https://www.mankier.com/8/lvm

관련 정보