هذا هو مفتش الأوامر الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة على الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت
برنامج:
اسم
Virt-inspector - يعرض إصدار نظام التشغيل ومعلومات أخرى حول ظاهري
آلة
موجز
Virt-inspector [--options] -d domname
Virt-inspector [--options] -a disk.img [-a disk.img ...]
موضة قديمة:
المفتش الفضيلة domname
Virt-inspector disk.img [disk.img ...]
الوصف
المفتش الفضيلة يفحص آلة افتراضية أو صورة قرص ويحاول تحديد الإصدار
من نظام التشغيل والمعلومات الأخرى حول الجهاز الظاهري.
يُنتج Virt-inspector مخرجات XML لإدخالها في البرامج الأخرى.
في الاستخدام العادي ، استخدم "Virt-inspector -d domname" حيث يكون "domname" هو مجال libvirt
(انظر: "قائمة virsh - الكل").
يمكنك أيضًا تشغيل Virt-inspector مباشرة على صور القرص من جهاز افتراضي واحد.
استخدم "Virt-inspector -a disk.img". في حالات نادرة ، يحتوي النطاق على العديد من أجهزة الحظر ، في
هذه الحالة يجب أن تسرد عدة -a خيارات واحدًا تلو الآخر ، مع الأول
المقابلة للضيف / ديف / حزب العمل الديمقراطي، والثاني للضيف / ديف / زنة وما إلى ذلك وهلم جرا.
يمكنك أيضًا تشغيل Virt-inspector على أقراص التثبيت والأقراص المضغوطة الحية ومفاتيح USB القابلة للتمهيد وما شابه ذلك.
Virt-inspector يمكنه فقط التفتيش والإبلاغ صورة واحدة؟ نطاق at a الوقت . لتفقد عدة
الأجهزة الافتراضية ، عليك تشغيل Virt-inspector عدة مرات (على سبيل المثال ، من shell
النصي للحلقة).
نظرًا لأن Virt-inspector يحتاج إلى وصول مباشر إلى صور الضيف ، فلن يعمل عادةً
اتصالات libvirt عن بعد.
جميع المعلومات المتاحة من Virt-inspector متاحة أيضًا من خلال المركز
واجهة برمجة تطبيقات فحص libguestfs (راجع "الفحص" بتنسيق Guestfs(3)). يمكن لنفس المعلومات أيضا
يتم جلبها باستخدام guestfish أو عبر ارتباطات libguestfs في العديد من لغات البرمجة (انظر
"الحصول على بيانات الفحص من واجهة برمجة تطبيقات LIBGUESTFS").
OPTIONS
--مساعدة
اعرض تعليمات موجزة.
-a ملف
--يضيف ملف
أضف ملف والتي يجب أن تكون صورة قرص من جهاز افتراضي. إذا كان الجهاز الظاهري
لديه العديد من أجهزة الكتل ، يجب عليك تزويدهم جميعًا بملفات منفصلة -a خيارات.
يتم اكتشاف تنسيق صورة القرص تلقائيًا. لتجاوز هذا وإجبار أ
تنسيق معين استخدم ال - تنسيق = .. الخيار.
-a URI
--يضيف URI
قم بإضافة قرص بعيد. انظر "إضافة التخزين عن بعد" في Guestfish(1).
-c URI
--الاتصال URI
إذا كنت تستخدم libvirt ، فقم بالاتصال بالملف URI. إذا تم حذفه ، فسنقوم بالاتصال بـ
برنامج libvirt الافتراضي.
يتم استخدام Libvirt فقط إذا قمت بتحديد "domname" في سطر الأوامر. إذا حددت
أجهزة حظر الضيف مباشرة (-a) ، فلن يتم استخدام libvirt على الإطلاق.
-d ضيف
--نطاق ضيف
أضف كافة الأقراص من ضيف libvirt المسمى. يمكن استخدام UUIDs للمجال بدلاً من
أسماء.
- مفاتيح صدى
عند المطالبة بالمفاتيح وعبارات المرور ، يقوم Virt-inspector عادةً بإيقاف تشغيل الصدى بذلك
لا يمكنك رؤية ما تكتبه. إذا لم تكن قلقًا بشأن هجمات Tempest و
لا يوجد أي شخص آخر في الغرفة يمكنك تحديد هذا العلم لمعرفة ما تكتبه.
- تنسيق = خام | qcow2 | ..
--صيغة
حدد تنسيق صور القرص الواردة في سطر الأوامر. إذا تم حذف هذا بعد ذلك
يتم اكتشاف التنسيق تلقائيًا من محتوى صورة القرص.
إذا تم طلب صور القرص من libvirt ، فإن هذا البرنامج يطلب من libvirt لهذا الغرض
معلومة. في هذه الحالة ، يتم تجاهل قيمة معلمة التنسيق.
إذا كنت تعمل باستخدام صور قرص ضيف بتنسيق خام غير موثوق بها ، فيجب عليك التأكد من التنسيق
دائما محددا.
- مفاتيح من ستدين
قراءة مفتاح أو معلمات عبارة المرور من stdin. الافتراضي هو محاولة القراءة
عبارات المرور من المستخدم عن طريق الفتح / ديف / tty.
-v
- الإسراف
تفعيل الرسائل المطولة من أجل التصحيح.
-V
--الإصدار
عرض رقم الإصدار والخروج.
-x تفعيل تتبع مكالمات واجهة برمجة تطبيقات libguestfs.
--xpath سؤال
إجراء استعلام XPath على XML على stdin ، وطباعة النتيجة على stdout. في هذا
يقوم وضع Virt-inspector ببساطة بتشغيل استعلام XPath ؛ جميع وظائف التفتيش الأخرى
عاجز. انظر "XPATH QUERIES" أدناه للحصول على بعض الأمثلة.
موضة قديمة COMMAND خط الحجج
سمحت لك الإصدارات السابقة من Virt-inspector بكتابة إما:
Virt-inspector disk.img [disk.img ...]
or
Virt-المفتش اسم الضيف
بينما في هذا الإصدار يجب عليك استخدام -a or -d على التوالي لتجنب حالة الخلط
حيث قد يكون لصورة القرص نفس اسم الضيف.
من أجل التوافق ، لا يزال النمط القديم مدعومًا.
XML FORMAT
تم وصف XML لـ Virt-inspector بدقة في ملف مخطط RELAX NG Virt-المفتش. rng
الذي يتم توفيره مع libguestfs. هذا القسم هو مجرد نظرة عامة.
عنصر المستوى الأعلى هو ، ويحتوي على واحد أو أكثر
عناصر. سترى أكثر من واحد فقط عنصر إذا كان الظاهري
الجهاز متعدد التمهيد ، وهو أمر نادر الحدوث في العالم الحقيقي VMs.
في ال العلامة هي العديد من الحقول الاختيارية التي تصف التشغيل
النظام ، وبنيته ، وسلسلة "اسم المنتج" الوصفية ، ونوع نظام التشغيل وما إلى ذلك ،
كما في هذا المثال:
/ ديف / sda2/ الجذر>
شبابيك
i386
شبابيك
ويندوز 7 إنتربرايز
عميل
6
1
/شبابيك
المثبتة
باختصار، هي فئة نظام التشغيل (شيء مثل "Linux" أو "windows") ،
هو التوزيع (على سبيل المثال "فيدورا" ولكن يتم التعرف على العديد من التوزيعات الأخرى) و
هي هندسة الضيف. المجالات الأخرى تشرح نفسها بنفسها إلى حد ما ، ولكن
لأن هذه الحقول مأخوذة مباشرة من واجهة برمجة تطبيقات فحص libguestfs التي يمكنك العثور عليها
معلومات دقيقة من "التفتيش" في Guestfs(3).
ال العنصر هو جهاز نظام الملفات الجذر ، ولكن من وجهة نظر libguestfs
(قد يكون لأجهزة الحظر أسماء مختلفة تمامًا داخل الجهاز الظاهري نفسه).
عادةً ما يكون للضيوف غير المشابهين لـ x العديد من أنظمة الملفات التي يتم تركيبها على عدة أنظمة
mountpoints ، وهذه موصوفة في العنصر الذي يشبه هذا:
/
/ التمهيد
كما هو الحال مع ، الأجهزة من وجهة نظر libguestfs ، وقد تكون كذلك تمامًا
أسماء مختلفة داخل الضيف. تظهر فقط أنظمة الملفات القابلة للتركيب في هذه القائمة ، وليس
أشياء مثل أجهزة المبادلة.
يشبه لكن الأغطية الكل أنظمة الملفات الخاصة بالضيف ،
بما في ذلك أقسام المبادلة والفارغة. (في حالة نادرة لضيف متعدد التمهيد ، فإنه يغطي
أنظمة الملفات التي تنتمي إلى نظام التشغيل هذا أو المشتركة مع نظام التشغيل هذا وأنظمة تشغيل أخرى).
قد ترى شيئًا مثل هذا:
ext4
فيدورا 13 x86_64
<uuid>e6a4db1e-15c2-477b-ac2a-699181c396aa</uuid>
العناصر الاختيارية داخل هي نوع نظام الملفات والتسمية و
UUID.
العناصر ذات الصلة و و يصف
التطبيقات المثبتة في الجهاز الظاهري.
، إن وجد ، يصف نظام التغليف المستخدم. القيم النموذجية
تكون "rpm" و "deb".
، إن وجد ، يصف مدير الحزم. تشمل القيم النموذجية
"yum" و "up2date" و "apt"
يسرد الحزم أو التطبيقات المثبتة.
نواة
8.5
1
قد لا يتوفر الإصدار وحقول الإصدار لبعض أنواع الضيوف. مجالات أخرى
ممكنة ، راجع "guestfs_inspect_list_applications" في Guestfs(3).
بالنسبة لأنظمة التشغيل مثل Windows التي تستخدم أحرف محركات الأقراص ، يمكن لـ Virt-inspector العثور عليها
اكتشاف كيفية تعيين أحرف محركات الأقراص لأنظمة الملفات.
/ ديف / sda2
/ dev / sdb1
في المثال أعلاه ، يعيّن محرك الأقراص C نظام الملفات على القسم الثاني في القسم الأول
القرص ، ومحرك الأقراص E إلى نظام الملفات على القسم الأول على القرص الثاني.
لاحظ أن هذا لا يغطي سوى تعيينات نظام الملفات المحلية الدائمة ، وليس أشياء مثل الشبكة
تشارك. علاوة على ذلك ، قد لا يتم سرد نقاط تحميل وحدة تخزين NTFS هنا.
يكون Virt-inspector أحيانًا قادرًا على استخراج رمز أو شعار للضيف. الرمز هو
تم إرجاعها كبيانات PNG بترميز base64. لاحظ أن الرمز يمكن أن يكون كبيرًا جدًا وعاليًا
الجودة.
iVBORw0KGgoAAAANSUhEUgAAAGAAAABg [.......]
[... العديد من أسطر بيانات Base64 ...]
لعرض الرمز ، يجب عليك استخراجه وتحويل بيانات base64 مرة أخرى إلى ثنائي
ملف. استخدم استعلام XPath أو مجرد محرر لاستخراج البيانات ، ثم استخدم coreutils
base64(1) برنامج للقيام بالتحويل إلى ملف PNG:
base64 -i -d <icon.data> icon.png
التفتيش تثبيت الأقراص ، تعيش أقراص مدمجة
يمكن لـ Virt-inspector اكتشاف بعض مثبتات أنظمة التشغيل على أقراص التثبيت والأقراص المضغوطة الحية
مفاتيح USB قابلة للتمهيد والمزيد.
في هذه الحالة ستحتوي العلامة على "المثبت" وقد تكون الحقول الأخرى موجودة في
يشير إلى قرص مضغوط مباشر أو مثبت شبكة أو جزء واحد من قرص مضغوط متعدد الأجزاء. على سبيل المثال:
/ ديف / sda/ الجذر>
لينكس
i386
أوبونتو
أوبونتو 10.10 "مافريك ميركات"
10
10
المثبت
XPATH استفسارات
يتضمن Virt-inspector دعمًا مدمجًا لتشغيل استعلامات XPath. السبب ل
بما في ذلك دعم XPath مباشرة في Virt-inspector هو ببساطة أنه لا يوجد خير و
برامج سطر الأوامر المتوفرة على نطاق واسع والتي يمكنها إجراء استعلامات XPath. الشيء الجيد الوحيد هو
com.xmlstarlet(1) وهذا غير متوفر في Red Hat Enterprise Linux.
لإجراء استعلام XPath ، استخدم ملف --xpath خيار. لاحظ أنه في هذا الوضع ، المفتش الفضيلة
يقرأ ببساطة XML من stdin ويخرج نتيجة الاستعلام على stdout. جميع عمليات التفتيش الأخرى
يتم تعطيل الميزات في هذا الوضع.
فمثلا:
$ Virt-inspector -d Guest | Virt-inspector --xpath "// أنظمة الملفات"
ext4
[...]
$ Virt-inspector -d Guest | \
Virt-inspector --xpath "string (// filesystem [dev = '/ dev / sda1'] / type)"
ext4
$ Virt-inspector -d Guest | \
Virt-inspector --xpath 'string (// icon)' | base64 -i -d | عرض -
[يعرض رمز الضيف ، إن وجد]
الحصول على التفتيش بيانات من عند ال ليبغويستفس API
في الإصدارات المبكرة من libguestfs ، كان Virt-inspector عبارة عن نص برل كبير يحتوي على
العديد من الاستدلالات لفحص الضيوف. كان لهذا عدة مشاكل: من أجل القيام به
فحص من أدوات أخرى (مثل guestfish) كان علينا أن نستدعي هذا البرنامج النصي Perl ؛ و
امتازت لغة Perl على اللغات الأخرى التي يدعمها libguestfs.
بواسطة libguestfs 1.8 ، أعدنا كتابة كود Perl في لغة C ، ودمجهنا جميعًا في ملف
API libguestfs الأساسية (Guestfs(3)). الآن Virt-inspector هو ببساطة برنامج C رقيق فوق
الأساسية C API. تتوفر جميع معلومات الفحص من جميع لغات البرمجة
التي يدعمها libguestfs ومن أسماك الضيف.
للحصول على وصف لـ C التفتيش API ، اقرأ "INSPECTION" في Guestfs(3).
على سبيل المثال الكود باستخدام واجهة برمجة تطبيقات فحص C ، ابحث عن يتفقد- vm.c الذي يأتي مع
libguestfs.
يتفقد- vm.c كما تمت ترجمته إلى لغات أخرى. على سبيل المثال، Inspector_vm.pl is
ترجمة Perl ، وهناك ترجمات أخرى لـ OCaml و Python وما إلى ذلك. انظر "الاستخدام
LIBGUESTFS بلغات برمجة أخرى "بتنسيق Guestfs(3) للحصول على قائمة صفحات الرجل التي
تحتوي على رمز المثال هذا.
الحصول على التفتيش بيانات من عند ضيف
إذا كنت تستخدم سمكة الضيف -i الخيار ، ثم واجهة برمجة تطبيقات فحص C الرئيسية "guestfs_inspect_os" بتنسيق
Guestfs(3) يسمى. هذا يعادل الأمر guestfish "inspect-os". أنت تستطيع
قم أيضًا باستدعاء أمر أسماك الضيف هذا يدويًا.
يقوم "check-os" بإجراء فحص على صورة القرص الحالية ، ويعيد قائمة
وجدت أنظمة التشغيل. يتم تمثيل كل نظام تشغيل بواسطة جهاز نظام ملفات الجذر الخاص به. في ال
في معظم الحالات ، لا يطبع هذا الأمر شيئًا (لم يتم العثور على أنظمة تشغيل) ، أو جهاز جذر واحد ،
لكن احذر من أنه يمكنه طباعة أسطر متعددة إذا كانت هناك أنظمة تشغيل متعددة أو إذا كان هناك ملف
تثبيت القرص المضغوط المرفق بالضيف.
Guestfish $ --ro -a F15x32.img
> يجري
> فحص نظام التشغيل
/ dev / vg_f15x32 / lv_root
باستخدام جهاز الجذر ، يمكنك جلب مزيد من المعلومات حول الضيف:
> check-get-type / dev / vg_f15x32 / lv_root
لينكس
> فحص- get-distro / dev / vg_f15x32 / lv_root
فيدورا
> inspect-get-major-version / dev / vg_f15x32 / lv_root
15
> فحص-get-product-name / dev / vg_f15x32 / lv_root
الإصدار 15 من Fedora (Lovelock)
تجعل قيود سمك الضيف من الصعب تعيين جهاز الجذر لمتغير (منذ ذلك الحين
لا تحتوي سمكة الضيف على متغيرات) ، لذلك إذا كنت تريد القيام بذلك بشكل متكرر فأنت أفضل
إيقاف كتابة نص باستخدام إحدى اللغات الأخرى التي تدعمها واجهة برمجة تطبيقات libguestfs.
لسرد التطبيقات ، عليك أولاً تحميل الأقراص:
> فحص-get-mountpoints / dev / vg_f15x32 / lv_root
/: / dev / vg_f15x32 / lv_root
/ التمهيد: / dev / vda1
> mount-ro / dev / vg_f15x32 / lv_root /
> ماونت رو / ديف / vda1 / التمهيد
ثم استدعِ واجهة برمجة تطبيقات inspect-list-applications:
> فحص قائمة التطبيقات / dev / vg_f15x32 / lv_root | رأس -28
[0] = {
اسم_التطبيق: ConsoleKit
اسم_عرض_التطبيق:
عصر التطبيق: 0
الإصدار app_version: 0.4.5
إصدار التطبيق: 1.fc15
app_install_path:
app_trans_path:
app_publisher:
app_url:
app_source_package:
ملخص التطبيق:
وصف_ التطبيق:
}
[1] = {
app_name: ConsoleKit-libs
اسم_عرض_التطبيق:
عصر التطبيق: 0
الإصدار app_version: 0.4.5
إصدار التطبيق: 1.fc15
app_install_path:
app_trans_path:
app_publisher:
app_url:
app_source_package:
ملخص التطبيق:
وصف_ التطبيق:
}
لعرض رمز للضيف ، لاحظ أنه يجب أيضًا تثبيت أنظمة الملفات على النحو الوارد أعلاه.
يمكنك بعد ذلك القيام بما يلي:
> فحص- get-icon / dev / vg_f15x32 / lv_root | عرض -
OLD VERSIONS OF المفتش الظاهري
كما هو موضح أعلاه ، تم شحن الإصدارات المبكرة من libguestfs مع مفتش فضيلة مختلف
برنامج مكتوب بلغة Perl (الإصدار الحالي مكتوب بلغة C). ناتج XML من لغة Perl
كان Virt-inspector مختلفًا ويمكنه أيضًا الإخراج بتنسيقات أخرى مثل النص.
لم يعد مفتش الفضيلة القديم مدعومًا أو مشحونًا بـ libguestfs.
لمزيد من الخلط بين الأمور ، في Red Hat Enterprise Linux 6 نقوم بشحن نسختين من Virt-
مفتش بأسماء مختلفة:
Virt-المفتش إصدار بيرل القديم.
Virt-inspector2 الإصدار الجديد C.
EXIT الوضع
يقوم هذا البرنامج بإرجاع القيمة 0 في حالة النجاح ، أو إرجاع القيمة غير الصفرية في حالة حدوث خطأ.
استخدم Virt-inspector عبر الإنترنت باستخدام خدمات onworks.net