วิธีการเปลี่ยนค่าเริ่มต้นที่เก็บสระว่ายน้ำจาก libvirt?


12

ฉันพยายามใช้ Storage Pool อื่นบน KVM เพื่อจัดเก็บดิสก์เสมือนของ VMs ของฉันและ ISO จากระบบปฏิบัติการที่ฉันใช้

ตัวอย่างเช่น:ฉันต้องการใช้ไดเรกทอรี/media/work/kvmที่เมาท์/dev/sda5เป็นพูลหน่วยเก็บข้อมูลดีฟอลต์สำหรับสถานการณ์ในอนาคตทั้งหมด

ในการกำหนดค่าสร้างและเริ่มพูลหน่วยเก็บข้อมูลใหม่มันค่อนข้างง่าย แต่อย่างน้อยใน Ubuntu มันไม่สำคัญว่าถ้าฉันเลือกและ ISO จากพูลหน่วยเก็บข้อมูลที่แตกต่างกันVirtual Machine Managerชี้ให้ฉันเป็นค่าเริ่มต้นเสมอ Pool ( /var/cache/libvirt) เป็นที่เก็บข้อมูลที่จะสร้างดิสก์เสมือนจาก VMs ของฉัน

ฉันจะหลีกเลี่ยงสิ่งนี้ได้อย่างไร

คำตอบ:


27

ก่อนที่จะทำตามขั้นตอนต่าง ๆ ตรวจสอบให้แน่ใจว่าคุณกำลังใช้คำสั่งเหล่านี้ในฐานะผู้ใช้ปกติและผู้ใช้ของคุณอยู่ในกลุ่ม "libvirtd"

นี่คือคำสั่งต่อไปนี้ที่ฉันใช้:

การแสดงรายการพูลปัจจุบัน:

$ virsh pool-list

Name                 State      Autostart 
-------------------------------------------
default              active     yes 

ทำลายสระว่ายน้ำ:

$ virsh pool-destroy default
Pool default destroyed

ยกเลิกการกำหนดสระว่ายน้ำ:

$ virsh pool-undefine default
Pool default has been undefined

การกำหนดพูลใหม่ด้วยชื่อ "default":

$ virsh pool-define-as --name default --type dir --target /media/work/kvm
Pool default defined

ตั้งค่าพูลที่จะเริ่มต้นเมื่อ libvirt daemons เริ่มทำงาน:

$ virsh pool-autostart default
Pool default marked as autostarted

เริ่มพูล

$ virsh pool-start default
Pool default started

การตรวจสอบสถานะพูล:

$ virsh pool-list
Name                 State      Autostart 
-------------------------------------------
default              active     yes  

นับจากนี้เมื่อสร้างเครื่องเสมือนตัวจัดการเครื่องเสมือนจะแจ้งให้คุณทราบว่าไฟล์ * .img (ดิสก์เสมือนจริงของ VM) ของคุณจะถูกบันทึกไว้ที่ / media / work / kvm


3

นอกเหนือจากการตอบกลับข้างต้นแสดงให้เห็นว่าต้องทำอย่างไรจากบรรทัดคำสั่งคุณสามารถเปลี่ยนจาก virt-manager โดยตรง ในหน้าต่างหลัก virt-manager ไปที่เมนู 'แก้ไข -> รายละเอียดโฮสต์' ในกล่องโต้ตอบที่ปรากฏขึ้นให้สลับไปที่แท็บ 'ที่เก็บข้อมูล' ตอนนี้คุณสามารถลบพูลหน่วยเก็บข้อมูล 'ดีฟอลต์' และสร้างพูลหน่วยเก็บข้อมูลใหม่เพื่อแทนที่


ฉันไม่รู้ว่าทำไม Daniel แต่ฉันลองวิธีนี้มาก่อน แต่น่าเสียดายที่มันไม่ได้ทำงานที่ Virtual Machine Manager (Ubuntu Trusty Tahr - 14.04) ...
ivanleoncz

2

หากคุณต้องการเปลี่ยนเส้นทางภาพคุณยังสามารถแก้ไขเส้นทางการจัดเก็บในdefaultสระโดยเรียกใช้:

$ virsh pool-edit default

คำสั่งดังกล่าวจะเปิดdefaultpool xml ในโปรแกรมแก้ไข (vim / nano) ตอนนี้:

  1. แก้ไขเส้นทาง
  2. บันทึกการเปลี่ยนแปลงและ
  3. เริ่มlibvirtบริการใหม่
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.