Di chuyển khối lượng logic sang đĩa vật lý mới


14

Tôi có ba khối hợp lý trong một nhóm âm lượng duy nhất bằng cách sử dụng một ổ đĩa vật lý duy nhất (toàn bộ đĩa / dev / sda hiện có).

Bây giờ tôi muốn chuyển một trong những khối hợp lý đó sang một đĩa mới, nhanh hơn, tức là đi từ:

/dev/sda
    |-vg0-root → mounted to /
    |-vg0-foo  → mounted to /foo
    |-vg0-bar  → mounted to /bar

đến:

/dev/sda
    |-vg0-root → mounted to /
    |-vg0-foo →  mounted to /foo

/dev/sdb
    |-vg1-bar  → mounted to /bar

Từ những gì tôi hiểu, tôi không thể sử dụng pvmovehoặc vgsplitvì chỉ có một khối lượng vật lý trong nhóm âm lượng hiện có.

Cách tiếp cận tốt để đạt được điều này (tốt nhất là trực tuyến, tạo nhóm âm lượng mới cho đĩa mới không phải là một yêu cầu)?


Tôi đã kiểm tra nhiều câu hỏi tương tự, nhưng theo tôi hiểu, những điều đó không mô tả tình huống của tôi. Câu hỏi thưởng: Việc sử dụng toàn bộ đĩa làm khối lượng vật lý có phải là một ý tưởng tồi không? Có vẻ như quyết định này làm cho giải pháp khó khăn hơn nhiều trong trường hợp của tôi.
htorque

2
Bạn có bất kỳ lý do cụ thể nào mà bạn không muốn thêm đĩa vật lý mới của mình dưới dạng ổ đĩa vật lý vào nhóm ổ đĩa hiện tại không?
Ulrich Schwarz

Không có gì. Nếu nó làm cho mọi thứ dễ dàng hơn, đĩa mới cũng có thể là một phần của vg0.
htorque 8/03/2015

Câu trả lời:


21

Giải pháp nhóm một khối lượng:

 pvcreate /dev/sdb
 vgextend vg0 /dev/sdb
 pvmove -n /dev/vg0/bar /dev/sda /dev/sdb

Giải pháp nhóm hai khối lượng:

 pvcreate /dev/sdb
 vgcreate vg1 /dev/sdb
 lvcreate -l100%FREE vg1
 mkfs -t ext4 /dev/vg1/lvol1
 mount /dev/vg1/lvol1 /mnt

Bây giờ phần khó khăn, tất cả các hoạt động PHẢI dừng lại /bar:

 cd /mnt ; ( cd /bat ; tar cf - * ) | tar xf -
 cd /
 umount /mnt
 mount /dev/vg1/lvol1 /bar

Ở đâu

  • pvcreate xóa tất cả dữ liệu trên đĩa (và chuẩn bị cho LVM)
  • lvcreate Sould tạo một khối lượng logic lvol1, bạn chỉ định tên lv với -n bar
  • Tôi sử dụng cú pháp HP-UX cho lv, bạn có thể phải sử dụng /dev/mapper/myvg-mylvcú pháp

Khi bạn đã xác minh dữ liệu là OK, ở nơi mới:

  • bạn có thể xóa cũ một cách an toàn /bar
  • chỉnh sửa /etc/fstabđể sử dụng mới/bar

Wow, dường như tôi hoàn toàn đọc sai pvmovetrang người đàn ông. Trong trường hợp đó rõ ràng tôi sẽ giải quyết cho giải pháp nhóm một khối. :)
htorque

Trên thực tế, người ta có thể sử dụng vgsplitsau pvmoveđể đạt được giải pháp nhóm hai khối dễ dàng hơn một chút (tuy nhiên, khối lượng logic vẫn cần phải hủy kích hoạt bằng cách sử dụng lvchange).
htorque

1
Tính hữu dụng của "pvmove" là một lý do rất chính đáng để sử dụng một VG thay vì nhiều VG.
tgharold

1
Có vẻ như vgreducesau đó có thể được sử dụng để xóa âm lượng cũ nếu đó là yêu cầu (Đó không phải là câu hỏi cụ thể, nhưng một câu hỏi về việc di chuyển tất cả các âm lượng có thể sẽ được đánh dấu trùng lặp)
Gert van den Berg

Kinh nghiệm hiện tại của tôi là trong giải pháp vg duy nhất, pvmoveyêu cầu một -ncờ để chỉ định âm lượng hợp lý. Hoặc nó nói một Physical volume /dev/vg0/bar not found Run `pvmove --help' for more information.thông báo lỗi. Trang người đàn ông nói như vậy. Tôi có thể chèn nó vào bài viết không?
peterh - Phục hồi Monica
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.