นี่คือคำสั่งการทดสอบ guestfs ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
guestfs-testing - การทดสอบ libguestfs ด้วยตนเอง คุณสามารถช่วยได้!
DESCRIPTION
หน้านี้มีการทดสอบด้วยตนเองที่คุณสามารถลองใช้กับ libguestfs แต่ละคนมีความแตกต่างกันเล็กน้อย
การผสมผสานระหว่างแพลตฟอร์ม ฮาร์ดแวร์ และแขก ดังนั้นการทดสอบนี้จึงมีค่ามาก ขอบคุณ
เพื่อช่วยเหลือ!
การทดสอบที่มีเครื่องหมาย a * (เครื่องหมายดอกจัน) can ทำลาย ข้อมูล ถ้าคุณไม่ระวัง อื่นๆ คือ
ปลอดภัยและจะไม่แก้ไขอะไร
การทดสอบส่วนใหญ่จะใช้ได้กับ libguestfs ≥ 1.14 การทดสอบเหล่านี้บางส่วน (ทำเครื่องหมาย)
ต้องการ libguestfs ≥ 1.22
คุณสามารถรายงานจุดบกพร่องที่คุณพบผ่านลิงค์นี้:
https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
หรือโพสต์ในรายชื่อผู้รับจดหมาย (ลงทะเบียนคือ ไม่ จำเป็น แต่ถ้าคุณไม่ได้ลงทะเบียน
จากนั้นคุณจะต้องรอให้ผู้ดูแลอนุมัติข้อความของคุณด้วยตนเอง):
https://www.redhat.com/mailman/listinfo/libguestfs
ทดสอบ
วิ่ง libguestfs-เครื่องมือทดสอบ
วิ่ง:
libguestfs-เครื่องมือทดสอบ
คำสั่งนี้ทำการทดสอบที่ง่ายมากและไม่ทำลายซึ่ง libguestfs พื้นฐานคือ
ทำงาน คุณไม่จำเป็นต้องเรียกใช้เป็นรูท
ถ้ามัน ไม่ print "===== TEST FINISHED OK =====" รายงานว่าเป็นข้อผิดพลาด มันมาก
สำคัญที่คุณต้องรวม เสร็จสมบูรณ์แล้ว ไม่ได้แก้ไข ผลลัพธ์ของ "libguestfs-test-tool" ใน your
รายงานข้อผิดพลาด ดูส่วน "BUGS" ที่ส่วนท้ายของหน้านี้
ตรวจสอบ KVM การเร่งความเร็ว is กำลัง มือสอง
หากโฮสต์ของคุณมีการเร่งความเร็ว virt ของฮาร์ดแวร์ ดังนั้นด้วย hot cache libguestfs ควรเป็น
สามารถเริ่มต้นขึ้นในไม่กี่วินาที รันคำสั่งต่อไปนี้สองสามครั้ง:
เวลา guestfish -a /dev/null run
หลังจากวิ่งไปสองสามรอบ เวลาควรลดลงเหลือไม่กี่วินาที (น้อยกว่า 5 วินาทีในความเร็ว 64
บิตฮาร์ดแวร์)
วิธีตรวจสอบฮาร์ดแวร์ virt:
http://virt-tools.org/learning/check-hardware-virt/
หากคำสั่งข้างต้นใช้ไม่ได้ผลเลย ให้ใช้ libguestfs-เครื่องมือทดสอบ(1)
ตรวจสอบ ที่ รุ่น of libguestfs, คิวมู ลิบเวอร์ต, ฯลฯ is กำลัง มือสอง
ดูผลลัพธ์ของ "libguestfs-test-tool" และตรวจสอบ:
· libguestfs เวอร์ชันใดที่กำลังใช้อยู่ ใกล้จุดเริ่มต้นของการส่งออกคุณจะ
ดูบรรทัดเช่น:
เวอร์ชันไลบรารี: 1.22.0fedora=19,release=1.fc19,libvirt
· libvirt ถูกใช้หรือไม่? คุณสามารถบอกความแตกต่างได้โดยมองหาแบ็กเอนด์:
guestfs_get_backend: โดยตรง
หรือ:
guestfs_get_backend: libvirt
· qemu เวอร์ชันใดที่กำลังใช้อยู่ มันอาจจะพิมพ์ออกมา:
libguestfs: qemu เวอร์ชัน 1.5
แต่โปรดทราบว่าหากคุณใช้ libvirt อยู่ libguestfs จะไม่มีข้อมูลนี้
· เคอร์เนลใดกำลังถูกใช้อยู่? ซูเปอร์มิน(1) จะพยายามเลือกเคอร์เนลล่าสุดที่ติดตั้ง
บนเครื่องของคุณ คุณสามารถดูเวอร์ชันในเอาต์พุตของอุปกรณ์ เช่น:
[ 0.000000] ลินุกซ์เวอร์ชัน 3.9.2-200.fc18.x86_64 [... ]
ดู ไปยัง เปิด a ในประเทศ ผู้เข้าพัก ภาพ กับ ปลาแขก
คุณสามารถใช้อิมเมจดิสก์ของผู้เยี่ยมชมสำหรับการทดสอบนี้ ตรวจสอบให้แน่ใจว่าคุณใช้แฟล็ก "--ro" เพื่อที่
ปลาแขก(1) จะเปิดดิสก์อิมเมจแบบอ่านอย่างเดียว
เกสต์ฟิช --ro -a /path/to/disk.img -i
หากคำสั่งสำเร็จก็ควรพิมพ์ชื่อระบบปฏิบัติการของแขกและใส่
คุณที่ guestfish "> " พรอมต์ คุณสามารถใช้คำสั่ง guestfish เช่น "ll /" เพื่อดู
ภายในภาพดิสก์ หากต้องการออก ให้พิมพ์ "exit"
หากคุณได้รับข้อผิดพลาด ให้ลองเปิดใช้งานการดีบัก (เพิ่ม "-v" ลงในบรรทัดคำสั่ง) ยังทำ
แน่ใจว่า libguestfs-เครื่องมือทดสอบ(1) สำเร็จ
ดู ไปยัง เปิด a รีโมท ผู้เข้าพัก ภาพ กับ ปลาแขก
หมายเหตุ การทดสอบนี้ต้องใช้ libguestfs ≥ 1.22 และ qemu ≥ 1.5 คุณอาจต้องปิดการใช้งาน
libvirt โดยการตั้งค่านี้:
ส่งออก LIBGUESTFS_BACKEND=direct
หากคุณมีดิสก์อิมเมจที่พร้อมใช้งานบน HTTP/FTP ให้ลองเปิด
เกสต์ฟิช --ro -i --format=raw -a http://www.example.com/disk.img
สำหรับ SSH คุณจะต้องตรวจสอบให้แน่ใจว่าได้ตั้งค่า ssh-agent แล้ว คุณไม่จำเป็นต้องมีรหัสผ่าน
เพื่อเข้าสู่ระบบเครื่องระยะไกล คำสั่งที่คล้ายกับสิ่งนี้ควรใช้งานได้:
เกสต์ฟิช --ro -i --format=raw \
-a ssh://remote.example.com/path/to/disk.img
หากคุณได้รับข้อผิดพลาด ให้ลองเปิดใช้งานการดีบัก (เพิ่ม "-v" ลงในบรรทัดคำสั่ง) ยังทำ
แน่ใจว่า libguestfs-เครื่องมือทดสอบ(1) สำเร็จ
วิ่ง virt-alignment-สแกน on ทั้งหมด ธุรกิจ แขกผู้เข้าพัก
วิ่ง virt-alignment-สแกน(1) บนแขกหรือดิสก์อิมเมจ:
virt-alignment-scan -a /path/to/disk.img
หรือ:
virt-alignment-scan -d แขก
รายงานการจัดตำแหน่งตรงกับการจัดแนวพาร์ติชั่นของแขกหรือไม่?
วิ่ง virt-แมว on บาง ไฟล์ in แขกผู้เข้าพัก
virt-แมว(1) สามารถแสดงไฟล์จากแขกได้ สำหรับแขก Linux ให้ลอง:
virt-cat LinuxGuest / etc / passwd
ฟีเจอร์ล่าสุดรองรับพาธของ Windows เช่น:
virt-cat WindowsGuest 'c:\windows\win.ini'
การทดสอบที่ดียิ่งขึ้นไปอีกคือถ้าคุณมี Windows guest ที่มีไดรฟ์หลายตัว ทำ "D:", "E:"
เส้นทางอื่น ๆ ทำงานอย่างถูกต้อง?
* คัดลอก บาง ไฟล์ เข้าไป a ปิด ปิด แขก
virt-คัดลอกใน(1) สามารถคัดลอกไฟล์และไดเร็กทอรีแบบเรียกซ้ำไปยังแขกหรือดิสก์อิมเมจ
virt-copy-in -d แขก / ฯลฯ / Tmp
สิ่งนี้ควรคัดลอกโลคัลไดเร็กทอรี / ฯลฯ ไปยัง /tmp/เป็นต้น ในแขก (เรียกซ้ำ) หากคุณบูต
แขก คุณเห็นไฟล์และไดเร็กทอรีที่คัดลอกทั้งหมดหรือไม่?
ปิดผู้เยี่ยมชมและลองคัดลอกไฟล์และไดเรกทอรีหลายรายการ:
virt-copy-in -d แขก / หน้าแรก / etc / ปัญหา / Tmp
คัดลอก บาง ไฟล์ ออก of a แขก
virt-คัดลอกออก(1) สามารถคัดลอกไฟล์และไดเร็กทอรีซ้ำ ๆ จากแขกหรือดิสก์อิมเมจ
virt-copy-out -d แขก / หน้าแรก .
โปรดทราบว่าช่องว่างและจุดสุดท้ายในคำสั่งไม่ใช่การสะกดผิด
สิ่งนี้ควรคัดลอก / หน้าแรก จากแขกเข้าสู่ไดเร็กทอรีปัจจุบัน
วิ่ง virt-df
virt-df(1) แสดงรายการพื้นที่ดิสก์ วิ่ง:
virt-df
คุณสามารถลองเปรียบเทียบสิ่งนี้กับผลลัพธ์จาก df(1) ภายในแขก แต่มีบ้าง
เงื่อนไข:
· แขกต้องอยู่เฉยๆ
· ดิสก์แขกต้องซิงค์โดยใช้ ซิงค์(1)
· การกระทำใดๆ เช่น การบูทแขกจะเขียนไฟล์บันทึกทำให้ตัวเลขนั้น
เปลี่ยนแปลง
เราไม่รับประกันว่าตัวเลขจะเหมือนกันแม้ในสถานการณ์เหล่านี้
พวกเขาควรจะคล้ายกัน มันจะบ่งบอกถึงข้อบกพร่องหากคุณเห็นตัวเลขที่แตกต่างกันอย่างมาก
ดู การนำเข้า virt-df CSV เอาท์พุต เข้าไป a สเปรดชีต or ฐานข้อมูล
วิ่ง:
virt-df --csv > /tmp/report.csv
ตอนนี้ลองโหลดสิ่งนี้ลงในสเปรดชีตหรือฐานข้อมูลที่คุณชื่นชอบ ผลลัพธ์คือ
ทำซ้ำอย่างซื่อสัตย์ในสเปรดชีต/ฐานข้อมูล?
http://www.postgresql.org/docs/8.1/static/sql-copy.html
http://dev.mysql.com/doc/refman/5.1/en/load-data.html
* Edit a ไฟล์ in a ปิด ปิด แขก
virt แก้ไข(1) สามารถแก้ไขไฟล์ในแขกได้ ลองใช้คำสั่งนี้กับแขก RHEL หรือ Fedora:
virt-แก้ไข LinuxGuest /etc/sysconfig/network
สำหรับแขก Linux คนอื่น ๆ ลองแก้ไขไฟล์อื่นเช่น:
virt แก้ไข LinuxGuest /etc/motd
จะเห็นการเปลี่ยนแปลงภายในแขกเมื่อบูตหรือไม่?
แสดง ระบบไฟล์ / คะแนน / เลเวล in a แขก
ระบบไฟล์เสมือน(1) สามารถใช้เพื่อแสดงระบบไฟล์ในแขก ลองใช้คำสั่งนี้บน
ดิสก์อิมเมจหรือแขก:
virt-filesystems -a /path/to/disk.img --all --long -h
หรือ:
virt-filesystems -d แขก --all --long -h
ผลลัพธ์ตรงกับสิ่งที่เห็นในแขกหรือไม่?
วิ่ง virt-สารวัตร on ทั้งหมด ธุรกิจ แขกผู้เข้าพัก
ใช้ virt-สารวัตร(1) เพื่อรับรายงานเกี่ยวกับแขกทั้งหมดหรือดิสก์อิมเมจของคุณ:
virt-inspector -a /path/to/disk.img | น้อย
หรือ:
virt-inspector -d บุคคลทั่วไป | น้อย
ผลลัพธ์ตรงกับสิ่งที่เป็นจริงในแขกหรือไม่?
ดู การตรวจสอบบัญชี คุณสมบัติ of virt-ls on ทั้งหมด ธุรกิจ แขกผู้เข้าพัก
แสดงรายการโปรแกรม setuid หรือ setgid ทั้งหมดในเครื่องเสมือน Linux:
virt-ls -lR -d บุคคลทั่วไป / | grep '^- [42]'
แสดงรายการไดเร็กทอรีที่เขียนได้แบบสาธารณะทั้งหมดในเครื่องเสมือน Linux:
virt-ls -lR -d บุคคลทั่วไป / | grep '^d ...7'
แสดงรายการซ็อกเก็ตโดเมน Unix ทั้งหมดในเครื่องเสมือน Linux:
virt-ls -lR -d บุคคลทั่วไป / | grep '^s'
แสดงรายการไฟล์ปกติทั้งหมดที่มีชื่อไฟล์ที่ลงท้ายด้วย '.png':
virt-ls -lR -d บุคคลทั่วไป / | grep -i '^-.*\.png$'
แสดงไฟล์ที่มีขนาดใหญ่กว่า 10MB ในโฮมไดเร็กทอรี:
virt-ls -lR -d แขก / หน้าแรก | ราคา '$3 > 10*1024*1024'
ค้นหาทุกสิ่งที่แก้ไขใน 7 วันที่ผ่านมา:
virt-ls -lR -d Guest --time-days / | awk '$6 <= 7'
ค้นหาไฟล์ปกติที่แก้ไขใน 24 ชั่วโมงที่ผ่านมา:
virt-ls -lR -d Guest --time-days / | grep '^-' | awk '$6 < 1'
ผลลัพธ์ตรงกับสิ่งที่อยู่ในแขกหรือไม่?
สร้างบัญชีตัวแทน a ดิสก์ ภาพ ราคาเริ่มต้นที่ a ทาร์บอล
ใช้ virt-make-fs(1) เพื่อสร้างภาพดิสก์จาก tarball ที่คุณมี:
virt-make-fs --partition=mbr --type=vfat /any/tarball.tar.gz output.img
เพิ่ม 'output.img' เป็นดิสก์ดิบให้กับแขกที่มีอยู่ ตรวจสอบว่าแขกสามารถดูไฟล์ได้
การทดสอบนี้มีประโยชน์อย่างยิ่งหากคุณลองใช้กับผู้เยี่ยมชม Windows
ลองใช้รูปแบบการแบ่งพาร์ติชั่นอื่นๆ เช่น --พาร์ติชั่น=gpt.
ลองใช้รูปแบบระบบไฟล์อื่นๆ เช่น --type=ntfs, --type=ext2.
* วิ่ง virt-กู้ภัย on a ปิด ปิด ดิสก์ ภาพ or แขก
ใช้ virt-กู้ภัย(1) ตรวจสอบ กู้ภัย หรือซ่อมแซม ปิด ปิด แขกหรือดิสก์อิมเมจ:
virt-rescue -a /path/to/disk.img
หรือ:
virt-rescue -d แขก
คุณสามารถใช้คำสั่งเชลล์ธรรมดาเพื่อตรวจสอบแขกได้หรือไม่?
* การปรับขนาด ธุรกิจ แขกผู้เข้าพัก
ใช้ virt-ปรับขนาด(1) เพื่อให้แขกมีพื้นที่ว่างในดิสก์เพิ่มขึ้น ตัวอย่างเช่น หากคุณมีดิสก์
ภาพที่เล็กกว่า 30G ให้เพิ่มเป็น 30G โดยทำดังนี้
ตัดทอน -s 30G newdisk.img
virt-filesystems -a /path/to/olddisk.img --all --long -h
virt-resize /path/to/olddisk.img newdisk.img --ขยาย /dev/sda1
qemu-kvm -m 1024 -hda newdisk.img
แขกยังบู๊ตอยู่หรือไม่? ลองขยายพาร์ติชั่นอื่นๆ
* กระจัดกระจาย a ผู้เข้าพัก ดิสก์
การใช้ virt-กระจัดกระจาย(1) ทำให้ดิสก์อิมเมจกระจัดกระจายมากขึ้น:
virt-sparsify /path/to/olddisk.img newdisk.img
Is newdisk.img ยังบูตได้หลังจากกระจัดกระจาย? ดิสก์อิมเมจที่ได้มีขนาดเล็กลงหรือไม่ (use
"du" เพื่อตรวจสอบ)?
* "ซิสเพรพ" a ปิด ปิด ลินุกซ์ แขก
หมายเหตุ ว่ามันจะเลอะแขกที่มีอยู่จริง ๆ ดังนั้นจึงเป็นการดีกว่าที่จะโคลนแขก
ก่อนที่จะลองสิ่งนี้
virt-sysprep -- ชื่อโฮสต์ newhost.example.com -a /path/to/disk.img
sysprep สำเร็จหรือไม่ หลังจากบูทแล้ว มีการเปลี่ยนแปลงอะไรบ้าง?
ประสบความสำเร็จ?
การถ่ายโอนข้อมูล Windows รีจิสทรี ราคาเริ่มต้นที่ ธุรกิจ Windows แขกผู้เข้าพัก
ใช้ virt-win-reg(1) เพื่อทิ้ง Windows Registry จากแขก Windows ที่คุณ
มี.
virt-win-reg --unsafe-printable-strings WindowsGuest 'HKLM\Software' | virt-win-reg --unsafe-printable-strings WindowsGuest 'HKLM\Software'
น้อยลง
virt-win-reg --unsafe-printable-strings WindowsGuest 'HKLM\System' |
น้อยลง
ผลลัพธ์ตรงกับการเรียกใช้ "regedit" ภายในแขกหรือไม่
คุณลักษณะล่าสุดคือความสามารถในการดัมพ์การลงทะเบียนผู้ใช้ ดังนั้นให้ลองทำเช่นนี้ แทนที่ ชื่อผู้ใช้
ด้วยชื่อของผู้ใช้ท้องถิ่นในแขก:
virt-win-reg --unsafe-printable-strings WindowsGuest 'HKEY_USERS\ชื่อผู้ใช้' |
น้อยลง
ใช้ guestfs-testing ออนไลน์โดยใช้บริการ onworks.net