LUKS 암호화 파티션을 확장하여 디스크 채우기

LUKS 암호화 파티션을 확장하여 디스크 채우기

최근에 디스크를 128GB SSD에서 512GB SSD로 업그레이드했습니다. / 파티션은 LUKS를 사용하여 암호화됩니다. 새 디스크에서 사용 가능한 모든 공간을 사용하기 위해 파티션을 확장하는 데 도움을 찾고 있습니다. 기존 드라이브를 새 드라이브에 추가했습니다.

[root@localhost ~]# fdisk -l /dev/sda
Disk /dev/sda: 477 GiB, 512110190592 bytes, 1000215216 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: 0x00009f33

Device     Boot   Start       End   Sectors   Size Id Type
/dev/sda1  *       2048   1026047   1024000   500M 83 Linux
/dev/sda2       1026048 250064895 249038848 118.8G 83 Linux

sda2 이후에는 약 380GB 정도의 미사용 공간이 있습니다.

추가 관련 정보:

[root@localhost ~]# vgs
  VG             #PV #LV #SN Attr   VSize   VFree
  fedora_chocbar   1   3   0 wz--n- 118.75g 4.00m

[root@localhost ~]# lvs
  LV   VG             Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home fedora_chocbar -wi-a----- 85.55g                                                    
  root fedora_chocbar -wi-a----- 29.30g                                                    
  swap fedora_chocbar -wi-a-----  3.89g

[root@localhost ~]# pvs
  PV                    VG             Fmt  Attr PSize   PFree
  /dev/mapper/encrypted fedora_chocbar lvm2 a--  118.75g 4.00m

이를 수행하는 방법에 대한 정보는 많지만 설명은 거의 없는 것 같습니다. 이에 대한 도움을 주시면 감사하겠습니다.

답변1

좋아요! 마침내 확실한 대답이 나왔습니다. LUKS 볼륨을 확장하는 단계...

  1. cryptsetup luksOpen /dev/sda2 crypt-volume암호화된 볼륨을 엽니다.
  2. parted /dev/sda파티션을 확장합니다. resizepart NUMBER END.
  3. vgchange -a n fedora_chocbar. 다음 단계로 진행할 수 있도록 VG 사용을 중지하세요.
  4. cryptsetup luksClose crypt-volume. 다음 단계를 위해 암호화된 볼륨을 닫습니다.
  5. cryptsetup luksOpen /dev/sda2 crypt-volume. 다시 열어보세요.
  6. cryptsetup resize crypt-volume. LUKS 볼륨은 사용 가능한 공간에 맞게 자동으로 크기가 조정됩니다.
  7. vgchange -a y fedora_chocbar. VG를 활성화합니다.
  8. pvresize /dev/mapper/crypt-volume. PV의 크기를 조정합니다.
  9. lvresize -l+100%FREE /dev/fedora_chocbar/home. /home의 LV 크기를 사용 가능한 공간의 100%로 조정합니다.
  10. e2fsck -f /dev/mapper/fedora_chocbar-home. 크기가 조정된 fs에 fsck 마법을 적용합니다.
  11. resize2fs /dev/mapper/fedora_chocbar-home. /home에서 파일 시스템 크기 조정(자동으로 사용 가능한 공간의 100% 사용)

다른 사람들도 이것이 유용하다고 생각하기를 바랍니다. 이제 내 노트북에는 가상 머신을 테스트할 수 있는 300GB 이상의 공간이 생겼습니다!

답변2

LUKS 파티션의 크기를 크기가 조정된 컨테이너 크기로 간단히 조정하는 방법이 궁금하신 경우 명령은 다음과 같습니다.

  • LUKS 암호화 볼륨 사용열려 있는열린 볼륨을 다음과 같이 매핑하려면 opened-volume다음을 실행하세요.

    sudo cryptsetup resize /dev/mapper/opened-volume
    

    LUKS 암호화 볼륨의 크기를 온라인으로 조정하세요...

  • 그런 다음 콘텐츠의 크기를 조정합니다.

    • 예를 들어, 다음과 같은 경우Ext4 파일 시스템, 설치되어 있어도 크기를 조정할 수 있습니다

      sudo resize2fs /dev/mapper/opened-volume
      
    • 또는 당신이 가지고 있다면좌심실 용적물리적 볼륨 ~에LUKS 암호화 볼륨은 다음을 사용하세요 pvresize.

      sudo pvresize /dev/mapper/opened-volume
      

마운트된 파일 시스템/활성화된 PV를 사용하여 중단 없이 이 작업을 수행했습니다. 암호화된 볼륨이 LVM 논리 볼륨에 있기 때문에 먼저 마운트 해제할 필요 없이 컨테이너의 크기를 조정하고(사용 lvresize)/ parted그 후 여유 공간을 사용하여 GPT 파티션의 크기를 조정했습니다!

답변3

더 간단한 해결책을 찾았습니다. Xubuntu를 라이브로 실행하고 파티션 관리자를 설치하고 시작하십시오. 암호화된 파티션을 매우 잘 처리합니다.

자세한 내용은 여기를 참조하세요:http://e1z.ca/devlog/encrypted_partition_resize.html

답변4

parted를 사용하여 명령줄에서 크기 조정LVM 없음(재미를 더하기 위해 ms-dos 파티션 테이블에 있음)

VPS를 50G에서 150G로 확장했습니다.

Crypttab의 내용은 다음과 같습니다.

# cat /etc/crypttab 
vda5_crypt UUID=c5e67d21-6af4-4d55-a4bc-2978e50c00c3 none luks
vda6_crypt /dev/vda6 /dev/urandom cipher=aes-xts-plain64,size=256,swap

크기:

# df -h
Filesystem              Size  Used Avail Use% Mounted on
/dev/mapper/vda5_crypt   47G   12G   35G  26% /
/dev/vda1               641M   63M  532M  11% /boot

파티션 레이아웃은 다음과 같습니다.

# parted /dev/vda print                                                        
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 161GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type      File system  Flags
 1      1049kB  700MB   699MB   primary   ext4         boot
 2      701MB   53.7GB  53.0GB  extended
 5      701MB   51.7GB  51.0GB  logical
 6      51.7GB  53.7GB  1985MB  logical

보시다시피, 내 스왑 파티션(파티션 6)이 방해가 되고 있습니다. 파티션을 확장하려면 이를 제거해야 합니다. 먼저 교환을 닫습니다.

swapoff -a && free -lm

"swap:" 줄은 모두 0으로 읽어야 합니다.

이제 까다로운 부분은 재부팅하고 확장하기 전에 파티션의 크기를 조정하고 복원하는 것입니다. (parted는 커널에 알릴 수 없다고 불평하는데, 저는 이를 여러 번 무시했습니다.)

먼저 스왑 파티션을 삭제합니다.

parted /dev/vda
(parted) rm 6
Error: Partition(s) 6 on /dev/vda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use.  As a
result, the old partition(s) will remain in use.  You should reboot now before making further changes.
Ignore/Cancel? i 

확장된 파티션을 디스크 끝까지 수용할 수 있도록 논리 파티션(2)을 확장합니다(-1).

(parted) resizepart 2 -1

스왑 파티션을 위한 공간을 예약하기 위해 논리 파티션 5의 크기를 조정합니다. (parted는 다시 불평하고 계속하고 (i) 무시합니다.

(parted) resizepart 5 -4G

스왑 파티션을 다시 만듭니다. crypttab에서 볼 수 있듯이 부팅할 때마다 무작위로 지정되므로 UUID에 대해 걱정할 필요가 없습니다. 중단에는 적합하지 않습니다. 그러나 서버의 경우 중단이 없는 경우 이것이 선호되는 방법입니다. 이전 파티션(157G)의 끝부터 디스크 끝까지(-1)까지 생성합니다.

(parted) mkpart                                                           
Partition type?  primary/logical? l                                       
File system type?  [ext2]? linux-swap                                     
Start? 157GB                                                              
End? -1    

검사 결과:

(parted) print                                                            
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 161GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End    Size    Type      File system     Flags
 1      1049kB  700MB  699MB   primary   ext4            boot
 2      701MB   161GB  160GB   extended
 5      701MB   157GB  156GB   logical
 6      157GB   161GB  3998MB  logical   linux-swap(v1)  lba
(parted) quit

지금재시작시스템을 정상적으로 부팅하여 파티션 잠금을 해제해야 합니다.

재부팅 후 스왑 공간을 확인하십시오.

# swapon
NAME      TYPE      SIZE USED PRIO
/dev/dm-1 partition 3.7G   0B   -1

이제 확장할 시간입니다! 'cryptsetup resize /dev/mapper/opened-volume' 및 'resize2fs /dev/mapper/opened-volume'을 사용하십시오.

cryptsetup resize /dev/mapper/vda5_crypt
resize2fs /dev/mapper/vda5_crypt

결과적으로 암호화된 볼륨 크기는 132G로 조정되었습니다.

# df -h
Filesystem              Size  Used Avail Use% Mounted on
/dev/mapper/vda5_crypt  144G   12G  132G   9% /
/dev/vda1               641M   63M  532M  11% /boot

관련 정보