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% 여유 공간 사용)

다른 사람이 이것이 유용하다고 생각하기를 바랍니다. 이제 내 노트북에 테스트 VM을 위한 공간이 300GB 이상 생겼습니다!

답변2

LUKS 파티션의 크기를 크기가 조정된 컨테이너의 크기로 간단히 조정하는 방법을 찾기 위해 답을 얻은 사람들을 위한 명령은 다음과 같습니다.

  • LUKS 암호화 볼륨 포함열었다로 매핑된 열린 볼륨을 opened-volume실행합니다.

    sudo cryptsetup resize /dev/mapper/opened-volume
    

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

  • 그런 다음 내용의 크기를 조정하십시오.

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

      sudo resize2fs /dev/mapper/opened-volume
      
    • 아니면LVM물리적 볼륨 내부에LUKS 암호화 볼륨은 다음을 사용하세요 pvresize.

      sudo pvresize /dev/mapper/opened-volume
      

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

답변3

훨씬 쉬운 해결책을 찾았습니다. Xubuntu를 라이브로 실행하고 partitionmanager를 설치 및 실행합니다. 암호화된 파티션을 매우 잘 처리할 수 있습니다.

전체 세부정보는 다음과 같습니다.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

관련 정보