Cách mở rộng phân vùng Ubuntu được mã hóa bằng LVM


8

Tôi có bản cài đặt Ubuntu Mate Trusty trên VB mà tôi muốn chuyển sang máy tính xách tay vật lý. Bằng cách làm theo hướng dẫn này, tôi đã có thể lấy nó lên và chạy. Vấn đề duy nhất bây giờ là tôi muốn mở rộng phân vùng hiện tại để lấp đầy phần còn lại của đĩa, và nó được mã hóa và sử dụng LVM. Gparted không hỗ trợ loại hình hoạt động này, vì vậy tôi phải nhờ đến CLI. Tuy nhiên, tôi không hiểu bất cứ điều gì về việc thay đổi kích thước các phân vùng theo cách thủ công và tất cả các hướng dẫn tôi có thể tìm thấy đều tập trung vào việc thu nhỏ phân vùng hoặc đã lỗi thời khủng khiếp.

Một số guru phân vùng có thể cung cấp một hướng dẫn cho tôi để làm theo?

Cảm ơn

Câu trả lời:


5

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.


1
Hoàn hảo! Làm việc rất tốt cho tôi - Tôi đã nhân bản ổ cứng máy tính xách tay của mình sang một chiếc lớn hơn và muốn sử dụng thêm dung lượng. Chỉ có sự khác biệt là tôi khởi động với UEFI, vì vậy phân vùng /dev/sda3khô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 ra sda2, nó hoạt động tốt với tôi chỉ cần thay đổi /dev/sda3. Cảm ơn!
seanlano

Cảm ơn! chỉ cần 2 lưu ý. Trước khi bắt đầu, tôi phải thay đổi kích thước phân vùng mở rộng (sda2) có chứa mã hóa (sda5). Tôi cũng bỏ qua lệnh thứ 3 trước lệnh cuối cùng, thực hiện lệnh thay đổi kích thước 2 lần cuối và sau đó khóa bằng lệnh tôi đã bỏ qua.
ozma

0

Tôi đang cố gắng làm theo các hướng dẫn này và tôi có một mối quan tâm. Đối với tôi - / dev / sda5 là âm lượng mở rộng và chứa HĐH và mọi thứ. Khi bạn fdisk, xóa và tạo lại các phân vùng, sau đó ghi những thay đổi đó vào đĩa - điều này có xóa được tất cả thông tin đó không?

Tôi đã thử phương thức như được liệt kê và khi tôi khởi động lại vào đĩa CD trực tiếp và sau đó đến phần "sudo cryptsetup thay đổi kích thước crypt1" - Tôi nhận được thông báo "Thiết bị crypt1 không hoạt động" và sau đó không có gì hoạt động.

Tôi đang thử điều này trên một ví dụ vbox, vì vậy ít nhất tôi đã tạo bản sao lưu nhưng tôi chưa thể làm cho nó hoạt động chính xác.

Tôi đang thiếu gì?


0

Sau khi "thay đổi kích thước cryptsetup" không hoạt động, tôi đã có giải pháp này:

Đảm bảo / dev / sdX phù hợp với đĩa của bạn! Lưu ý rằng tôi không chắc chắn nếu nó sẽ tác động đến grub. Chạy từ ubfox live cd.

  • mở gparted
  • thay đổi kích thước / dev / sda2 theo kích thước mong muốn bằng gparted
  • giải mã:

    sudo cryptsetup luksOpen /dev/sda5 crypt1

  • thay đổi kích thước / dev / sda5 theo kích thước mong muốn bằng gparted

Bạn có thể đảm bảo mọi thứ đều ổn bằng cách gắn và duyệt ổ đĩa của bạn

sudo mount /dev/mapper/ubuntu--vg-root
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.