.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Podwrapper::Man 1.60.1 (Pod::Simple 3.45) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Required to disable full justification in groff 1.23.0. .if n .ds AD l .\" ======================================================================== .\" .IX Title "libguestfs-test-tool 1" .TH libguestfs-test-tool 1 2026-07-14 libguestfs-1.60.1 "Virtualization Support" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "نام (NAME)" libguestfs\-test\-tool \- عیب‌یابی و آزمایش اولیه عملکرد libguestfs .SH "خلاصه دستور (SYNOPSIS)" .IX Header "SYNOPSIS" .Vb 1 \& libguestfs\-test\-tool [\-\-options] .Ve .SH "توضیحات (DESCRIPTION)" .IX Header "DESCRIPTION" برنامه .B libguestfs\-test\-tool یک ابزار آزمایشی ارائه‌شده همراه با libguestfs است تا به شما امکان دهد از عملکرد صحیح قابلیت‌های پایه‌ای libguestfs اطمینان حاصل کنید. این ابزار به این دلیل مورد نیاز است که گاهی اوقات libguestfs به دلایلی خارج از کنترل ما دچار اختلال می‌شود؛ این امر معمولاً به دلیل تغییرات در بسته‌های زیربنایی qemu یا هسته، یا تغییرات در محیط میزبان رخ می‌دهد. .PP اگر مشکوک به وجود مشکلی در libguestfs هستید، کافی است دستور زیر را اجرا کنید: .PP .Vb 1 \& libguestfs\-test\-tool .Ve .PP این دستور پیام‌های عیب‌یابی فراوانی را چاپ خواهد کرد. .PP اگر اجرا با موفقیت به پایان برسد، این خط را در نزدیکی انتهای خروجی مشاهده خواهید کرد: .PP .Vb 1 \& ===== TEST FINISHED OK ===== .Ve .PP و ابزار آزمایش با کد وضعیت 0 خارج خواهد شد. .PP اگر با شکست مواجه شد (و/یا با کد خطای غیرصفر خارج شد)، لطفاً خروجی \&\fIکامل و ویرایش‌نشده\fR ابزار آزمایش را در یک گزارش اشکال قرار دهید. اطلاعات بیشتر درباره گزارش اشکالات را می‌توانید در وب‌سایت http://libguestfs.org بیابید. .SH "گزینه‌ها (OPTIONS)" .IX Header "OPTIONS" .IP \fB\-\-help\fR 4 .IX Item "--help" نمایش اطلاعات کوتاه درباره نحوه استفاده و خروج. .IP "\fB\-\-qemu\fR qemu_binary" 4 .IX Item "--qemu qemu_binary" اگر یک باینری qemu دیگر را دانلود کرده‌اید، این گزینه را به مسیر کامل آن باینری هدایت کنید تا آزمایش شود. .IP "\fB\-\-qemudir\fR qemu_source_dir" 4 .IX Item "--qemudir qemu_source_dir" اگر qemu را از کد منبع کامپایل کرده‌اید، این گزینه را به دایرکتوری منبع هدایت کنید تا آزمایش شود. .IP "\fB\-t\fR N" 4 .IX Item "-t N" .PD 0 .IP "\fB\-\-timeout\fR N" 4 .IX Item "--timeout N" .PD تنظیم مهلت زمانی راه‌اندازی بر حسب \f(CW\*(C`N\*(C'\fR ثانیه. مقدار پیش‌فرض ۶۰۰ ثانیه (۱۰ دقیقه) است که معمولاً نیازی به تنظیم آن نیست. .IP \fB\-V\fR 4 .IX Item "-V" .PD 0 .IP \fB\-\-version\fR 4 .IX Item "--version" .PD نمایش شماره نسخه libguestfs و خروج. .SH "آزمایش نسخه دیگری از QEMU (TRYING OUT A DIFFERENT VERSION OF QEMU)" .IX Header "TRYING OUT A DIFFERENT VERSION OF QEMU" اگر نسخه دیگری از qemu را از کد منبع کامپایل کرده‌اید و مایلید آن را آزمایش کنید، می‌توانید از گزینه \fI\-\-qemudir\fR برای اشاره به دایرکتوری منبع qemu استفاده کنید. .PP اگر یک فایل باینری qemu را دانلود کرده‌اید، از گزینه \fI\-\-qemu\fR برای اشاره به آن باینری استفاده کنید. .PP توجه داشته باشید که هنگام استفاده از این گزینه‌ها، می‌توانید ماجرای اسکریپت‌های لفاف qemu («QEMU WRAPPERS» در \fBguestfs\fR\|(3)) را نادیده بگیرید، زیرا .B libguestfs\-test\-tool در صورت نیاز، خودش یک اسکریپت لفاف برای شما ایجاد می‌کند. .SH "آزمایش هسته متفاوت (TRYING OUT A DIFFERENT KERNEL)" .IX Header "TRYING OUT A DIFFERENT KERNEL" می‌توانید به supermin اعلام کنید که هسته متفاوتی را امتحان کند. این کار را با تنظیم متغیرهای محیطی \f(CW\*(C`SUPERMIN_KERNEL\*(C'\fR، \&\f(CW\*(C`SUPERMIN_KERNEL_VERSION\*(C'\fR و/یا \f(CW\*(C`SUPERMIN_MODULES\*(C'\fR انجام دهید. .PP برای اطلاعات بیشتر به «ENVIRONMENT VARIABLES» در \fBsupermin\fR\|(1) مراجعه کنید. .SH "آزمایش نسخه متفاوتی از LIBVIRT (TRYING OUT A DIFFERENT VERSION OF LIBVIRT)" .IX Header "TRYING OUT A DIFFERENT VERSION OF LIBVIRT" برای آگاهی از اینکه کدام بک‌اند به‌طور پیش‌فرض در بسته libguestfs شما استفاده می‌شود، دستور زیر را اجرا کنید: .PP .Vb 2 \& unset LIBGUESTFS_BACKEND \& guestfish get\-backend .Ve .PP اگر از بک‌اند libvirt استفاده می‌کنید، می‌توانید با اجرای این دستورات (نه به‌عنوان کاربر ریشه): .PP .Vb 2 \& killall libvirtd lt\-libvirtd \& ~/path/to/libvirt/run libguestfs\-test\-tool .Ve .PP یک نسخه متفاوت (مثلاً بالادستی یا upstream) از libvirt را آزمایش کنید. دستور اول هر پردازه نشست \f(CW\*(C`libvirtd\*(C'\fR را که ممکن است روی سیستم در حال اجرا باشد متوقف می‌کند. دستور دوم از اسکریپت \f(CW\*(C`run\*(C'\fR مربوط به libvirt (در دایرکتوری سطح بالای ساخت libvirt) برای تنظیم برخی متغیرهای محیطی استفاده می‌کند تا از نسخه جایگزین libvirt برای اجرای برنامه استفاده شود. .SH "آزمایش با یا بدون LIBVIRT (TRYING OUT WITH / WITHOUT LIBVIRT)" .IX Header "TRYING OUT WITH / WITHOUT LIBVIRT" برای آگاهی از اینکه کدام بک‌اند در بسته libguestfs شما پیش‌فرض است، دستور زیر را اجرا کنید: .PP .Vb 2 \& unset LIBGUESTFS_BACKEND \& guestfish get\-backend .Ve .PP اگر از بک‌اند libvirt استفاده می‌کنید، می‌توانید آن را بدون libvirt (یعنی اجرای مستقیم qemu توسط libguestfs) با انجام دستور زیر آزمایش کنید: .PP .Vb 1 \& export LIBGUESTFS_BACKEND=direct .Ve .PP یا اگر از بک‌اند پیش‌فرض (direct) استفاده می‌کنید، می‌توانید libvirt را امتحان کنید: .PP .Vb 1 \& export LIBGUESTFS_BACKEND=libvirt .Ve .PP یا با libvirt و یک شناسه منبع یکپارچه (URI) خاص: .PP .Vb 1 \& export LIBGUESTFS_BACKEND=libvirt:qemu:///session .Ve .SH "آزمایش تنظیمات مختلف SELINUX (TRYING OUT DIFFERENT SELINUX SETTINGS)" .IX Header "TRYING OUT DIFFERENT SELINUX SETTINGS" برای آگاهی از اینکه کدام بک‌اند در بسته libguestfs شما پیش‌فرض است، دستور زیر را اجرا کنید: .PP .Vb 2 \& unset LIBGUESTFS_BACKEND \& guestfish get\-backend .Ve .PP برای اینکه بفهمید آیا SELinux در حال استفاده است یا خیر، اجرا کنید: .PP .Vb 1 \& getenforce .Ve .PP اگر از libvirt، SELinux و sVirt استفاده می‌کنید، می‌توانید بررسی کنید که آیا تغییر حالت SELinux به «permissive» (مداراگرا) تفاوتی ایجاد می‌کند یا خیر. این دستور را به‌عنوان کاربر ریشه اجرا کنید: .PP .Vb 1 \& setenforce Permissive .Ve .PP اگر این کار تفاوتی ایجاد کرد، در گزارش‌های بازرسی (audit logs) به دنبال خطاهای اخیر («AVCs») بگردید: .PP .Vb 1 \& ausearch \-m avc \-ts recent .Ve .PP می‌توانید با استفاده از ابزارهایی مانند \fBaudit2allow\fR\|(1) پیام‌های AVC را به قوانین پیشنهادی خط‌مشی SELinux تبدیل کنید. برای اطلاعات بیشتر، «Security Enhanced Linux User Guide» را ببینید. .PP برای فعال‌سازی دوباره SELinux و sVirt، دستور زیر را اجرا کنید: .PP .Vb 1 \& setenforce Enforcing .Ve .SH "خودعیب‌یابی (SELF\-DIAGNOSIS)" .IX Header "SELF-DIAGNOSIS" برای درک پیام‌های تولیدشده توسط libguestfs\-test\-tool و/یا خطاهای احتمالی، به بخش «APPLIANCE BOOT PROCESS» در \fBguestfs\fR\|(3) مراجعه کنید. .SH "وضعیت خروج (EXIT STATUS)" .IX Header "EXIT STATUS" دستور .B libguestfs\-test\-tool اگر آزمایش‌ها بدون خطا تکمیل شوند مقدار \fI0\fR و در صورت بروز خطا مقدار \fI1\fR را برمی‌گرداند. .SH "متغیرهای محیطی (ENVIRONMENT VARIABLES)" .IX Header "ENVIRONMENT VARIABLES" برای فهرست کامل متغیرهای محیطی که ممکن است بر libguestfs تأثیر بگذارند، لطفاً صفحه راهنمای \fBguestfs\fR\|(3) را مشاهده فرمایید. .SH "همچنین ببینید (SEE ALSO)" .IX Header "SEE ALSO" \&\fBguestfs\fR\|(3), http://libguestfs.org, http://qemu.org .SH "نویسندگان (AUTHORS)" .IX Header "AUTHORS" Richard W.M. Jones (\f(CW\*(C`rjones at redhat dot com\*(C'\fR) .SH "حق نشر (COPYRIGHT)" .IX Header "COPYRIGHT" Copyright (C) 2009\-2025 Red Hat Inc. .SH "مجوز (LICENSE)" .IX Header "LICENSE" این برنامه نرم‌افزار آزاد است؛ شما می‌توانید آن را تحت شرایط مجوز عمومی همگانی گنو (GNU General Public License) منتشرشده توسط بنیاد نرم‌افزارهای آزاد؛ طبق نسخه ۲ مجوز یا (به دلخواه خود) هر نسخه بالاتر، بازتوزیع کرده و/یا تغییر دهید. .PP این برنامه به این امید توزیع شده است که مفید واقع شود، اما بدون هیچ‌گونه ضمانت؛ حتی ضمانت ضمنی قابلیت فروش یا مناسب بودن برای یک هدف مشخص. برای اطلاعات بیشتر به مجوز عمومی همگانی گنو مراجعه کنید. .PP شما باید همراه با این برنامه نسخه‌ای از مجوز عمومی همگانی گنو را دریافت کرده باشید؛ در غیر این صورت به آدرس زیر مکاتبه فرمایید: Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110\-1301 USA. .SH "اشکالات (BUGS)" .IX Header "BUGS" برای دریافت فهرست اشکالات ثبت‌شده علیه libguestfs، از این پیوند استفاده کنید: https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools .PP برای گزارش یک اشکال جدید در libguestfs، از این پیوند استفاده کنید: https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools .PP هنگام گزارش اشکال، لطفاً موارد زیر را ارائه دهید: .IP \(bu 4 نسخه libguestfs. .IP \(bu 4 محل دریافت libguestfs (برای مثال کدام توزیع لینوکس، کامپایل از کد منبع و غیره) .IP \(bu 4 توصیف دقیق اشکال و ارائه روشی برای بازتولید آن. .IP \(bu 4 دستور \fBlibguestfs\-test\-tool\fR\|(1) را اجرا کرده و خروجی \fBکامل و ویرایش‌نشده\fR را درون گزارش اشکال قرار دهید.