Sau khi loay hoay một thời gian dài và thất bại nhiều lần (cảm ơn chúa vì đã sao lưu) tôi đã có thể thay đổi kích thước nó. Dưới đây là hướng dẫn của tôi.
Điều này giả sử bạn có một bảng phân vùng như của tôi: sda1 được trao đổi và khoảng 250MB, sda2 là một thùng chứa với sda5 (khối lượng mật mã của chúng tôi) và rất nhiều không gian trống trước sda2, như vậy
|sda1|sda2 (sda5)|free space|
Khởi động vào LiveCD của bản phân phối yêu thích của bạn. Chạy gparted và thu nhỏ phân vùng sda1 của bạn khoảng 20MB. Điều này là do fdisk yêu cầu bộ đệm của không gian chưa phân bổ giữa bắt đầu sda2 và sda5, dunno tại sao. Trong khi bạn đang ở đó tăng kích thước của sda2 càng xa càng tốt, tất cả các bên phải. Bạn nên kết thúc với
|sda1|free space|sda2 (sda5)|
Đi trước và khởi chạy fdisk
sudo fdisk /dev/sda
nhấn p để in sơ đồ phân vùng hiện tại. Viết xuống nơi sda5 bắt đầu.
nhấn d để xóa sda5 trước rồi sda2. Đáng sợ.
Bây giờ nhấn n để tạo một âm lượng mới. Nhấn e để chọn kiểu mở rộng và đánh số 2. Mặc định cho bắt đầu và kết thúc sẽ ổn.
Bây giờ hãy tạo một phân vùng mới, gõ là Linux (nên mặc định) và đánh số 5. Giá trị bắt đầu phải giống với phân vùng bạn đã viết cho sda5 trước đó, giá trị cuối là giá trị mặc định (theo như nó có thể đi ).
Nhấn p lần nữa để chắc chắn rằng mọi thứ đều ổn và nhấn w để ghi các thay đổi của bạn vào đĩa.
Khởi động lại vào đĩa CD trực tiếp của bạn một lần nữa.
Nếu bạn mở gparted bây giờ bạn nên có
|sda1|sda2 (free space) (sda5)|
Thực hiện theo các bước sau :
Giải mã hệ thống tập tin của bạn.
sudo cryptsetup luksOpen /dev/sda5 crypt1
Lấy CD trực tiếp để nhận biết (kích hoạt) LVM của bạn.
sudo vgscan --mknodes
sudo vgchange -ay
Thay đổi kích thước mật mã.
sudo cryptsetup resize crypt1
Thay đổi kích thước Khối lượng vật lý (LVM).
sudo pvresize /dev/mapper/crypt1
Thay đổi kích thước khối lượng gốc (LVM) của bạn.
Mở khóa khối lượng vật lý (LVM).
sudo pvchange -x y /dev/mapper/crypt1
Thay đổi kích thước Khối lượng vật lý (LVM).
sudo lvresize -l +100%FREE /dev/ubuntu-vg/root
Khóa lại âm lượng vật lý.
sudo pvchange -x n /dev/mapper/crypt1
Thay đổi kích thước hệ thống tập tin.
sudo e2fsck -f /dev/mapper/ubuntu--vg-root
sudo resize2fs -p /dev/mapper/ubuntu--vg-root
Bây giờ bạn sẽ ổn để khởi động lại và nếu mọi thứ đều ổn, bạn nên có một phân vùng được mã hóa lớn hơn.
Lưu ý : Phương pháp này có nhược điểm là cướp đi khoảng 20 MB trao đổi. Nếu thay đổi kích thước hoán đổi không được thực hiện, fdisk sẽ không cho phép bạn viết sda5 ở vị trí bắt buộc (điều này có thể dẫn đến tham nhũng, tôi nghi ngờ). Sự cảnh báo này là cần thiết cho đến khi ai đó giải thích chính xác những gì fdisk đang làm đằng sau hậu trường và nếu có bất kỳ cách nào để có được nó để thực hiện đấu thầu của chúng tôi.
/dev/sda3
không cósda5
, do đó đã thực hiện thay đổi tương ứng. Ngoài ra, tôi dường như không cần phải lấy 20 MB rasda2
, nó hoạt động tốt với tôi chỉ cần thay đổi/dev/sda3
. Cảm ơn!