ฉันกำลังพยายามติดตั้งไดรฟ์ข้อมูล LVM2 ใน Linux แต่คำแนะนำทั้งหมดที่ฉันเห็นทางออนไลน์พูดเพื่อติดตั้งกลุ่มวอลุ่มเช่น:
mkdir -p /mnt/VolGroup00/LogVol00
แต่ฉันไม่รู้วิธีที่จะหาชื่อของมัน ฉันเห็นไดรฟ์ใน Palimpsest และนั่นคือข้อมูลทั้งหมดที่ฉันรู้
ฉันกำลังพยายามติดตั้งไดรฟ์ข้อมูล LVM2 ใน Linux แต่คำแนะนำทั้งหมดที่ฉันเห็นทางออนไลน์พูดเพื่อติดตั้งกลุ่มวอลุ่มเช่น:
mkdir -p /mnt/VolGroup00/LogVol00
แต่ฉันไม่รู้วิธีที่จะหาชื่อของมัน ฉันเห็นไดรฟ์ใน Palimpsest และนั่นคือข้อมูลทั้งหมดที่ฉันรู้
คำตอบ:
นี่คือขั้นตอนที่ฉันใช้ในการเข้าถึง LVM จาก Fedora 17 มันควรทำงานกับ Linux ในรูปแบบส่วนใหญ่
Boot Fedora 17
ตรวจสอบให้แน่ใจว่าติดตั้ง lvm2 แล้ว:
$ sudo yum install lvm2
โหลดโมดูลที่จำเป็นเป็นรูท:
$ sudo modprobe dm-mod
สแกนระบบของคุณเพื่อหาปริมาณ LVM และระบุชื่อกลุ่มวอลุ่มที่มีปริมาณ Fedora ของคุณ (ผลลัพธ์ที่ได้รับการพิสูจน์แล้วว่าเป็น VolGroup00):
$ sudo vgscan
เปิดใช้งานปริมาณ:
$ sudo vgchange -ay VolGroup00
ค้นหาโลจิคัลวอลุ่มที่มีระบบไฟล์รูทของ Fedora (ของฉันพิสูจน์แล้วว่าเป็น LogVol00):
$ sudo lvs
สร้างจุดเชื่อมต่อสำหรับไดรฟ์ข้อมูลนั้น:
$ sudo mkdir /mnt/fcroot
ติดมัน
$ sudo mount /dev/VolGroup00/LogVol00 /mnt/fcroot -o ro,user
เสร็จแล้วไปที่ / mnt / fcroot แล้วคัดลอกไฟล์และวางที่อื่น
vgscan
จากนั้นvgchange -a y'
เป็นขั้นตอนที่จำเป็น
ประสบกับปัญหานี้เมื่อไม่นานมานี้ฉันโพสต์สิ่งนี้บนบล็อกของฉัน
รายการพาร์ติชันของคุณทั้งหมดพิมพ์
linux:/ # lvmdiskscan
คุณจะได้รับรายการสิ่งนี้
File descriptor 3 left open
File descriptor 4 left open
/dev/dm-0 [ 9.67 GB]
/dev/sda1 [ 78.41 MB]
/dev/dm-1 [ 6.44 GB]
/dev/sda2 [ 115.52 GB]
/dev/dm-2 [ 2.00 GB]
/dev/sda3 [ 18.11 GB] LVM physical volume
/dev/sda5 [ 15.33 GB]
จดบันทึกสิ่ง/dev/dm-x
เหล่านี้คืออุปกรณ์ที่สอดคล้องกับพาร์ติชัน LVM ยังทราบขนาด
จากนั้นพิมพ์ lvdisplay เพื่อแสดงรายการแบบละเอียดของโลจิคัลวอลุ่มทั้งหมดที่มี
lvdisplay |more
LV Name /dev/system/home
VG Name system
LV UUID 1QP9XM-vlKi-umNO-CXvV-TnZN-RCLk-e1FDIr
LV Write Access read/write
LV Status available
# open 1
LV Size 9.67 GB
Current LE 2475
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
— Logical volume —
LV Name /dev/system/root
VG Name system
LV UUID D1fKUJ-uU1C-jlVB-4imh-rrgy-FQu0-TC2Ssm
LV Write Access read/write
LV Status available
# open 1
LV Size 6.44 GB
Current LE 1649
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1
— Logical volume —
LV Name /dev/system/swap
VG Name system
LV UUID w5LqIb-xvcr-Xsbk-y3wg-lT3i-LqdN-GFK8Mi
LV Write Access read/write
LV Status available
# open 0
LV Size 2.00 GB
Current LE 512
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:2
ตอนนี้จากชุดข้างต้นของข้อมูลเราสามารถอนุมานว่าฉัน/home
พาร์ทิชันที่มีขนาด 9.67 GB สามารถใช้ได้เป็นกลุ่ม LV /dev/system/home
บน/dev/dm-0
ตอนนี้เรารู้แล้วว่าพาร์ทิชันนั้นว่างอยู่ที่ไหนเราสามารถดำเนินการติดตั้งต่อโดยใช้คำสั่ง mount เช่น
mount /dev/dm-0 /home
และไปที่นั่นแล้วพาร์ติชัน LV ของคุณถูกติดตั้ง!
lvscan
คุณจะได้รับรายชื่อไดรฟ์โดยการเรียกใช้ ผลลัพธ์จะมีลักษณะดังนี้
/dev/VG1/LV1
/dev/VG1/LV2
/dev/VG2/LV3
เช่นกับชื่อกลุ่มวอลุ่มในไดรฟ์กลางและตรรกะในตอนท้าย ดูว่ามีรายการใดบ้างที่สอดคล้องกับข้อมูลใน Palimpsest Disk Utility
เปรียบเทียบกับรายการดิสก์ที่เมานต์แล้ว ( mount
) และดูว่ามีดิสก์ใดบ้าง มันอาจดูแตกต่างไปเล็กน้อยเช่น:
$ mount
/dev/mapper/VG1-LV1 is mounted on /usr
/dev/mapper/VG1-LV2 is mounted on /home
คุณสามารถดูว่ากลุ่มวอลุ่มและโลจิคัลวอลุ่มปรากฏที่ท้าย
เมื่อคุณพบสิ่งที่ถูกต้องแล้วให้ติดตั้งด้วยวิธีปกติ:
mount /dev/VG2/LV3 /mnt
ฉันพบว่าแขกรับเชิญ (1) วิธีที่ง่ายที่สุด
# guestmount -m /invalid/path -a /path/to/block/device /mnt/
guestmount: '/invalid/path' could not be mounted.
guestmount: Did you mean to mount one of these filesystems?
(...)
guestmount: /dev/vg0/root (ext4)
(...)
# guestmount -m /dev/vg0/root -a /path/to/block/device /mnt
ดูเพิ่มเติมhttp://libguestfs.org/guestmount.1.html
แพ็คเกจguestmount
บน Ubuntu, libguestfs-tools
RHEL และ derivates
นี่เป็นอีกวิธีในการติดตั้งฉันพบว่ามีประโยชน์:
DISK=mydisk
lvdisplay | grep $DISK | grep "LV Path" | sed 's/.* //g'
LV_DISK=$(lvdisplay | grep $DISK | grep "LV Path" | sed 's/.* //g')
fdisk -l $LV_DISK
fdisk -lu $LV_DISK | sed -n '/lv[0-9]p[1-3]/ p' | grep p1 | awk '{print $2}'
OFFSET=$(fdisk -lu $LV_DISK | sed -n '/lv[0-9]p[1-3]/ p' | grep p1 | awk '{print $2}')
OFFSET=$((OFFSET * 512))
MOUNT=/mnt/$DISK
mkdir -p $MOUNT
mount -o loop,offset=$OFFSET $LV_DISK $MOUNT
คุณสามารถดูชื่อของ lvm โดยใช้คำสั่ง
lsblk
จากนั้นคุณจะพบชื่อนั้นภายใต้ / dev / mapper / dierctory ตัวอย่างเช่นฉันสามารถเมานต์โฮมไดเร็กตอรี่เก่าของฉันได้โดย:
mount /dev/mapper/rhel-home /mnt
findmnt
คำสั่ง คุณสามารถทำได้findmnt -l
และคุณจะได้รับสิ่งที่คุณต้องการ และสำหรับรุ่นที่ดีขึ้นลองสิ่งนี้:findmnt -l | grep ' /dev/\S\+'