thiết bị lvm dưới / dev / mapper bị thiếu


21

Tôi đang sử dụng Debian nén và chạy LVM trên phần mềm RAID 1. Tôi chỉ vô tình phát hiện ra rằng hầu hết các liên kết bên dưới /dev/mapperđều bị thiếu, mặc dù hệ thống của tôi dường như vẫn hoạt động chính xác.

Tôi không chắc chuyện gì đã xảy ra. Điều duy nhất tôi có thể tưởng tượng được là do nỗ lực thất bại của tôi để có được một container fedora LXC hoạt động. Cuối cùng tôi đã xóa một thư mục /cgroup/laughlin, tương ứng với vùng chứa, nhưng tôi không thể tưởng tượng được tại sao điều đó lại gây ra vấn đề. /dev/mappernhìn (tôi đã thực hiện một số thay đổi, xem bên dưới)

orwell:/dev/mapper# ls -la
total 0
drwxr-xr-x  2 root root     540 Apr 12 05:08 .
drwxr-xr-x 22 root root    4500 Apr 12 05:08 ..
crw-------  1 root root  10, 59 Apr  8 10:32 control
lrwxrwxrwx  1 root root       7 Mar 29 08:28 debian-root -> ../dm-0
lrwxrwxrwx  1 root root       8 Apr 12 03:32 debian-video -> ../dm-23

debian-video tương ứng với LV tôi vừa tạo.

Tuy nhiên, tôi có khá nhiều VG trên hệ thống của mình, tương ứng với 4 VG trải đều trên 4 đĩa. vgscho

orwell:/dev/mapper# vgs
  VG         #PV #LV #SN Attr   VSize   VFree  
  backup       1   2   0 wz--n- 186.26g  96.26g
  debian       1   7   0 wz--n- 465.76g 151.41g
  olddebian    1  12   0 wz--n- 186.26g  21.26g
  testdebian   1   3   0 wz--n- 111.75g  34.22g

Tôi đã thử chạy

 /dev/mapper# vgscan --mknodes

và một số thiết bị đã được tạo (xem đầu ra bên dưới), nhưng chúng không phải là liên kết tượng trưng đến các thiết bị dm như mong muốn, vì vậy tôi không chắc liệu điều này là vô ích hay tệ hơn. Họ sẽ có được trong cách giải trí của các liên kết chính xác? Tôi có nên xóa các thiết bị này một lần nữa?

Tôi tin rằng udev tạo ra các liên kết này, vì vậy việc khởi động lại sẽ khắc phục vấn đề này hay tôi sẽ có được một hệ thống không thể khởi động? Tôi nên làm gì để khắc phục điều này? Có bất kỳ kiểm tra chẩn đoán / vệ sinh nào tôi nên chạy để đảm bảo không có vấn đề nào khác mà tôi không nhận thấy? Cảm ơn trước sự giúp đỡ.

orwell:/dev/mapper# ls -la
total 0
drwxr-xr-x  2 root root     540 Apr 12 05:08 .
drwxr-xr-x 22 root root    4500 Apr 12 05:08 ..
brw-rw----  1 root disk 253,  1 Apr 12 05:08 backup-local_src
brw-rw----  1 root disk 253,  2 Apr 12 05:08 backup-video
crw-------  1 root root  10, 59 Apr  8 10:32 control
brw-rw----  1 root disk 253, 15 Apr 12 05:08 debian-boot
brw-rw----  1 root disk 253, 16 Apr 12 05:08 debian-home
brw-rw----  1 root disk 253, 22 Apr 12 05:08 debian-lxc_laughlin
brw-rw----  1 root disk 253, 21 Apr 12 05:08 debian-lxc_squeeze
lrwxrwxrwx  1 root root       7 Mar 29 08:28 debian-root -> ../dm-0
brw-rw----  1 root disk 253, 17 Apr 12 05:08 debian-swap
lrwxrwxrwx  1 root root       8 Apr 12 03:32 debian-video -> ../dm-23
brw-rw----  1 root disk 253, 10 Apr 12 05:08 olddebian-etch_template
brw-rw----  1 root disk 253, 13 Apr 12 05:08 olddebian-fedora
brw-rw----  1 root disk 253,  8 Apr 12 05:08 olddebian-feisty
brw-rw----  1 root disk 253,  9 Apr 12 05:08 olddebian-gutsy
brw-rw----  1 root disk 253,  4 Apr 12 05:08 olddebian-home
brw-rw----  1 root disk 253, 11 Apr 12 05:08 olddebian-lenny
brw-rw----  1 root disk 253,  7 Apr 12 05:08 olddebian-msi
brw-rw----  1 root disk 253,  5 Apr 12 05:08 olddebian-oldchresto
brw-rw----  1 root disk 253,  3 Apr 12 05:08 olddebian-root
brw-rw----  1 root disk 253, 14 Apr 12 05:08 olddebian-suse
brw-rw----  1 root disk 253,  6 Apr 12 05:08 olddebian-vgentoo
brw-rw----  1 root disk 253, 12 Apr 12 05:08 olddebian-wsgi
brw-rw----  1 root disk 253, 20 Apr 12 05:08 testdebian-boot
brw-rw----  1 root disk 253, 18 Apr 12 05:08 testdebian-home
brw-rw----  1 root disk 253, 19 Apr 12 05:08 testdebian-root

Tôi sẽ là người đầu tiên nói rõ ràng ở đây. Sao lưu dữ liệu quan trọng của bạn trên hộp đó ngay lập tức, sau đó chẩn đoán xem hộp có bị ho hay không.
rfelsburg

4
Bạn nên thử /etc/init.d/lvm2 start. Nó đã lừa tôi (nhưng tôi không chính xác trong tình huống của bạn).
Totor

Cảm ơn bạn @Totor vì bình luận của bạn; bạn vừa cứu ngày của tôi! :-)
Valentin ngày

Câu trả lời:


16

Những ngày /devnày là trên tmpfs và được tạo từ đầu mỗi lần khởi động udev. Bạn có thể khởi động lại một cách an toàn và các liên kết này sẽ quay trở lại.

Bạn cũng nên tìm các liên kết tượng trưng LVM đến các /dev/dm-Xnút trong các /dev/<vg>thư mục, một thư mục cho mỗi nhóm âm lượng. Tuy nhiên, các nút được tạo vgscan --mknodeslại cũng sẽ hoạt động tốt, giả sử chúng có đúng số chính / số phụ - và đó là một giả định an toàn mà chúng được tạo đúng.

Bạn có thể cũng có udevthể tạo lại các liên kết tượng trưng bằng cách sử dụng udevadm triggermột kết hợp phù hợp, thử nghiệm --dry-runcho đến khi đúng. Nó hầu như không xứng đáng với nỗ lực mặc dù khi khởi động lại cũng sẽ sửa nó.


Cảm ơn câu trả lời. Một yêu cầu để làm rõ: khi bạn nói "các nút được tạo lại cũng sẽ hoạt động tốt", bạn đang đề cập đến "các nút / dev / dm-X", phải không? Bạn có ý nghĩa gì khi "tái tạo" ở đây, và cũng "hoạt động tốt" theo nghĩa nào? Làm việc tốt để làm gì? Xin lỗi sự chậm chạp của tôi. Tôi giả sử tất cả các thiết bị LVM được tạo lại từ thông tin được lưu trữ trong /etc/lvm/archive?
Faheem Mitha

Ý tôi là các nút được tạo bởi vgscan --mknodes . Chúng không phải là các liên kết ban đầu, nhưng là các nút dev khối mà các liên kết tượng trưng sẽ chỉ đến. Ví dụ, bạn nên tìm thấy đó /dev/olddebian/rootlà một liên kết tượng trưng đến ../dm-3, sẽ có cùng một số chính: các số phụ như được tạo lại /dev/mapper/olddebian-root.
camh

Cảm ơn bạn đã làm rõ. Tôi đã kiểm tra xem những gì bạn nói là chính xác cho / dev / mapper / debian-video, đây là một trong hai liên kết tượng trưng nguyên vẹn của tôi. :-) Tôi mới đọc về số thiết bị chính / phụ. Cảm ơn câu trả lời giáo dục.
Faheem Mitha

38

Tôi chỉ gặp một vấn đề tương tự như những gì bạn mô tả, mặc dù đối với tôi, nó đã xảy ra khi tôi đang cố gắng cài đặt Ubuntu 11.10 Oneiric Ozelot mới cho một khối lượng LVM. Tôi đã thực hiện các thao tác sau để thiết lập lvm trên hệ thống khởi động trực tiếp (khối lượng logic tôi cần đã có sẵn):

apt-get install lvm2
vgscan --mknodes -v

Bây giờ lvscan -vcho thấy khối lượng của tôi nhưng họ không ở trong /dev/mappervà cũng không /dev/<vg>/. Cuối cùng tôi thấy rằng tôi cần kích hoạt nhóm âm lượng, như vậy:

vgchange -a y <name of volume group>

Lệnh trên đã tạo tất cả các tệp thiết bị còn thiếu cho tôi. Bây giờ tôi có thể bắt đầu chương trình cài đặt và nó sẽ tìm thấy khối lượng lvm và cho phép tôi cài đặt chúng.

Tìm kiếm thông tin này trên google rất khó, vì vậy tôi viết câu trả lời này với hy vọng rằng những người khác sẽ có thời gian dễ dàng hơn về nó - do đó bối cảnh sâu và đặt tên.

Mặc dù không phải là một phần của câu hỏi, nhưng để hoàn thiện, tôi sẽ thêm rằng trong tình huống trên (cài đặt Ubuntu LVM), bạn cần thêm lvm2 vào hệ thống mới được cài đặt sau khi cài đặt xong, hoặc nó sẽ không khởi động. Hệ thống mới của bạn sẽ được thiết lập cho bạn trong / mục tiêu, nhưng nếu không, hãy thực hiện thủ công như thế này:

mount /dev/vg/new_root /target
mount /dev/sdx1 /target/boot       # important
mount -o bind /proc /target/proc
mount -o bind /sys /target/sys
mount -o bind /dev /target/dev
mount -o bind /dev/pts /target/dev/pts

Tôi cần phải làm điều này để làm cho mạng hoạt động trong chroot, mà tôi sẽ đến tiếp theo:

cp /etc/resolv.conf /target/etc/

Bây giờ chroot vào hệ thống mới và cài đặt lvm2:

chroot /target
apt-get install lvm2

Lưu ý rằng nó chạy update-initramfs. Bây giờ chỉ cần gõ exit và khởi động lại, và hệ thống của bạn sẽ khởi động đúng cách.


+1 Tính năng rất khó hiểu của LVM. Tại sao trên Trái đất, nó được coi là 'được kích hoạt' (tất nhiên không có bất kỳ hiệu ứng có thể nhìn thấy nào) trên một đĩa CD cứu hộ mà không phải trên một đĩa CD khác?
Van Jone

Cảm ơn. Tôi cố gắng đọc nó và sử dụng vgchangehơn 6 năm sau khi viết câu hỏi và sau khi tìm thấy câu hỏi trên một tìm kiếm. :-) Tôi đã quên tôi đã viết nó. Trong trường hợp của tôi, vấn đề chắc chắn là LV không hoạt động.
Faheem Mitha

3

Điều này cũng làm việc cho tôi.

vgchange -a y -name of volume group-

Sau một bản vá kernel, hệ thống RHEL của tôi không khởi động lại được. Khiếu nại mất tích/dev/mapper/VG-lv tập tin .

Đã khởi động cho người dùng đơn và nhận xét /etc/fstab . Khi trực tuyến, tôi thấy đĩa mã hóa của mình đang hiển thị là "thiết bị không rõ" bằng cách sử dụng pvs.

Đã sửa lỗi này nhưng vẫn không có tệp thiết bị nào cho nhóm Tập. Chạy lệnh trên đã tạo lại các tập tin ánh xạ thiết bị và cho phép tôi gắn kết.


2

Tôi đã có một vấn đề tương tự sau khi nâng cấp debian của tôi. Trong quá trình khởi động lại, thông báo này xuất hiện với tôi:

Unable to find LVM Volume. 
/dev/mapper/debian-root does not exist.

Tôi tìm thấy giải pháp ở đây :

cryptsetup luksOpen /dev/sda5 lvmsys
lvm
lvm> vgscan        ## scan for volume groups
lvm> vgchange -a y ## activates the volume groups

Và voilà, nó khởi động lại độc đáo sau này.


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.