it-swarm-vi.com

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

Tôi đang sử dụng Debian nén và chạy LVM trên phần mềm RAID 1. Tôi chỉ tình cờ phát hiện ra rằng hầu hết các liên kết trong /dev/mapper 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 FedC LXC hoạt động. Tôi đã kết thúc việc xóa một thư mục /cgroup/laughlin, tương ứng với container, 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/mapper nhì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. vgs cho

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
23
Faheem Mitha

Những ngày này /dev là trên tmpfs và được tạo từ đầu mỗi lần khởi động bởi 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 /dev/dm-X các nút trong /dev/<vg> thư mục, một thư mục cho mỗi nhóm khối lượng. Tuy nhiên, các nút đó được tạo lại bởi vgscan --mknodes cũng sẽ hoạt động tốt, giả sử họ 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ũng có thể có được udev để tạo lại các liên kết tượng trưng bằng cách sử dụng udevadm trigger với một kết hợp phù hợp, thử nghiệm với --dry-run cho đến khi nó đú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ó.

16
camh

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

Hiện nay lvscan -v cho thấy khối lượng của tôi nhưng họ không ở trong /dev/mapper cũng không trong /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 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 - 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.

39
Lauritz V. Thaulow

Đ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 thiếu /dev/mapper/VG-lv tập tin.

Đã khởi động cho một người dùng và nhận xét về /etc/fstab. Khi trực tuyến, tôi thấy đĩa được mã hóa của mình 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.

4
Paul Bennett

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 tại đâ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.

3
Adriano P

https://bugs.debian.org/cgi-bin/orpreport.cgi?orms=616689 có liên quan ở đây. Đó là để làm với thời gian chờ sao cho lvm root không xuất hiện kịp thời.

0
Martin Cleaver