.\" -*- 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 "guestfs-release-notes-1.20 1" .TH guestfs-release-notes-1.20 1 2026-07-14 libguestfs-1.60.1 "پشتیبانی از مجازی‌سازی" .\" 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)" guestfs\-release\-notes\-1.20 \- یادداشت‌های انتشار نسخه ۱.۲۰ ابزار libguestfs .SH "یادداشت‌های انتشار LIBGUESTFS 1.20 (RELEASE NOTES FOR LIBGUESTFS 1.20)" .IX Header "RELEASE NOTES FOR LIBGUESTFS 1.20" این یادداشت‌های انتشار تنها تفاوت‌ها نسبت به تفکیک شاخه پایدار/توسعه قبلی (1.18.0) را پوشش می‌دهند. برای لاگ تغییرات تفصیلی، لطفاً به مخزن git یا فایل ChangeLog توزیع‌شده در بسته تاربال مراجعه کنید. .SS "قابلیت‌های جدید (New features)" .IX Subsection "New features" \fIlibvirt و sVirt (محدودسازی SELinux)\fR .IX Subsection "libvirt and sVirt (SELinux confinement)" .PP شما می‌توانید \fIبه صورت اختیاری\fR از libvirt برای راه‌اندازی و مدیریت اپلاینس Backend با روش‌های زیر استفاده کنید: .IP \(bu 4 تنظیم \f(CW\*(C`LIBGUESTFS_ATTACH_METHOD=libvirt[:URI]\*(C'\fR .IP \(bu 4 استفاده از \f(CW\*(C`./configure \-\-with\-default\-attach\-method=libvirt[:URI]\*(C'\fR .IP \(bu 4 یا فراخوانی متد API به نام \f(CW\*(C`guestfs_set_attach_method\*(C'\fR .PP در صورت انتخاب بک‌اند libvirt، از sVirt (محدودسازی SELinux) برای ایمن‌سازی اپلاینس libguestfs استفاده می‌شود. .PP \fIvirtio\-scsi، تعداد درایوهای بیشتر، اتصال گرم (hotplugging)\fR .IX Subsection "virtio-scsi, larger number of drives, hotplugging" .PP در صورت در دسترس بودن، اکنون virtio\-scsi به طور پیش‌فرض استفاده می‌شود. این امر تعداد درایوهایی را که می‌توان به یک هندل libguestfs اضافه کرد به طور چشمگیری افزایش می‌دهد (تا ۲۵۵ عدد). .PP اکنون می‌توانید درایوها را به صورت گرم متصل یا جدا کنید (افزودن و حذف درایوها پس از راه‌اندازی). .PP ابزار libguestfs اکنون می‌تواند بیش از ۲۵ دیسک را در تمام APIها، ابزارها و آزمون‌ها مدیریت کند. .PP می‌توانید هنگام افزودن درایوها به آن‌ها برچسب اختصاص دهید و سپس به جای استفاده از نام دستگاه‌ها (\fI/dev/sda\fR)، از طریق برچسب (\fI/dev/disk/guestfs/LABEL\fR) به آن‌ها ارجاع دهید. .PP \fIقابلیت‌های جدید کتابخانه\fR .IX Subsection "new library features" .PP اکنون لیست‌های کنترل دسترسی پازیکس (POSIX ACLs) و قابلیت‌های فایل‌سیستم لینوکس (Linux filesystem capabilities) را می‌توان از طریق API خواند و نوشت. .PP دیسک‌های پویای ویندوز (Windows Dynamic Disks) اکنون پشتیبانی می‌شوند. متاداده را فقط می‌توان خواند (پارتیشن‌ها/والیوم‌ها قابل ایجاد یا تغییر نیستند). با این حال داده‌ها/فایل‌سیستم‌های درون خود والیوم‌ها را می‌توان سوار (mount)، خواند و نوشت (Matthew Booth). .PP ابزار Hivex (ویرایش رجیستری ویندوز) اکنون مستقیماً از طریق API پشتیبانی می‌شود، که خواندن یا ویرایش رجیستری ویندوز را بسیار کارآمدتر می‌کند. .PP چندین API در libguestfs بازنویسی شدند تا دیگر هیچ محدودیتی در خروجی نداشته باشند. APIهای بازنویسی‌شده عبارتند از: \f(CW\*(C`guestfs_cat\*(C'\fR، \&\f(CW\*(C`guestfs_find\*(C'\fR، \f(CW\*(C`guestfs_read_file\*(C'\fR، \f(CW\*(C`guestfs_read_lines\*(C'\fR، \&\f(CW\*(C`guestfs_write\*(C'\fR، \f(CW\*(C`guestfs_write_append\*(C'\fR، \f(CW\*(C`guestfs_lstatlist\*(C'\fR، \&\f(CW\*(C`guestfs_lxattrlist\*(C'\fR، \f(CW\*(C`guestfs_readlinklist\*(C'\fR، \f(CW\*(C`guestfs_ls\*(C'\fR. .PP \fIابزارهای virt\fR .IX Subsection "virt tools" .PP دستور \&\f(CW\*(C`guestfish touch \*(Aqwin:c:\enew_file\*(Aq\*(C'\fR اکنون طبق انتظار کار می‌کند. .PP ابزار \&\f(CW\*(C`guestfish\*(C'\fR یک گزینه جدید به نام \fI\-\-network\fR دارد که شبکه کاربری را در libguestfs فعال می‌کند. .PP می‌توانید متغیر \f(CW\*(C`GUESTFISH_PS1\*(C'\fR را تنظیم کنید تا از پرامپت‌های سفارشی و زیبا در \f(CW\*(C`guestfish\*(C'\fR استفاده شود. .PP دستورات \&\f(CW\*(C`rsync\*(C'\fR، \f(CW\*(C`ssh\*(C'\fR، \f(CW\*(C`less\*(C'\fR و \f(CW\*(C`lrzip\*(C'\fR اکنون در virt\-rescue در دسترس هستند. علاوه بر این، \f(CW\*(C`rsync\*(C'\fR را می‌توان از طریق API برای انجام کپی‌های افزایشی (incremental) استفاده کرد. .PP ابزار \&\f(CW\*(C`virt\-sparsify\*(C'\fR برای افزایش کارایی از فرمت qcow2 v3 استفاده می‌کند. .PP بهبودهای \&\f(CW\*(C`virt\-sysprep\*(C'\fR: .IP \(bu 4 تولید UUIDهای جدید برای PVها و VGها .IP \(bu 4 حذف شناسه ماشین محلی (local machine ID) (توسط Wanlong Gao) .IP \(bu 4 حذف داده‌های ABRT (توسط Wanlong Gao) .IP \(bu 4 حذف کلیدها و فایل‌های لاگ puppet (توسط Wanlong Gao) .IP \(bu 4 حذف فایل‌های حسابداری فرایندها (process accounting) (توسط Wanlong Gao) .IP \(bu 4 پارامتر جدید \fI\-\-firstboot\fR برای امکان اجرای اسکریپت‌های راه‌اندازی نخستین (firstboot) جهت سفارشی‌سازی مهمان‌ها .IP \(bu 4 حذف فیلد HOSTNAME از فایل‌های \f(CW\*(C`ifcfg\-eth*\*(C'\fR (توسط Wanlong Gao) .IP \(bu 4 بهبودهای متفرقه برای SuSE (توسط Olaf Hering) .IP \(bu 4 حذف حافظه نهان (cache) صفحات راهنما (توسط Wanlong Gao) .IP \(bu 4 حذف داده‌های خرابی تولیدشده توسط kexec\-tools (توسط Wanlong Gao) .PP ابزار \&\f(CW\*(C`virt\-make\-fs\*(C'\fR اکنون می‌تواند فلاپی دیسک‌های مجازی (VFD) ایجاد کند. .PP ابزار \&\f(CW\*(C`guestmount\*(C'\fR دارای گزینه \fI\-\-pid\-file\fR شده است که می‌توان از آن برای جلوگیری از شرایط مسابقه (race condition) میان لغو سوار کردن (unmounting) فایل‌سیستم و استفاده از ایمیج دیسک زیرین استفاده کرد. .PP \fIپیوندهای زبان‌های برنامه‌نویسی (language bindings)\fR .IX Subsection "language bindings" .PP پیوندهای کامل برای زبان Lua در این نسخه اضافه شده‌اند (با تشکر از Jerome Vuarand برای پیشنهادات فراوان). .PP در Ruby، هش آرگومان‌های اختیاری به صورت اختیاری درآمده است. .PP در Python، آرگومان‌های اختیاری دیگر از مقادیر ویژه "نگهبان" (sentinel) استفاده نمی‌کنند، بنابراین هر عدد صحیحی را می‌توان به عنوان یک آرگومان اختیاری ارسال کرد. .PP پیوندهای Erlang اکنون همراه با مثال‌ها و آزمون‌ها ارائه می‌شوند. .PP پیوندهای Erlang اکنون پارامترهای عدد صحیح ۶۴ بیتی را به درستی مدیریت می‌کنند. .PP آزمون‌های خودکار 'bindtests' اکنون صحت و سازگاری ۶۴ بیتی در ارسال پارامترها را بررسی می‌کنند. در نتیجه چندین باگ در پیوندها کشف و رفع شدند. .PP مدیریت بهتر توابع مسدودکننده (blocking) و غیرمسدودکننده (non\-blocking) فراخوانی‌های libguestfs را کارآمدتر می‌کند. .PP \fIبازرسی سیستم (inspection)\fR .IX Subsection "inspection" .PP مهمان‌های ویندوزی با رجیستری‌های با اندازه نامحدود اکنون پشتیبانی می‌شوند. با افزودن API ابزار hivex به API ابزار libguestfs، بازرسی و ویرایش رجیستری ویندوز در سیستم‌های مهمان بسیار کارآمدتر و آسان‌تر شده است. .PP پشتیبانی بهتر از مهمان‌های SuSE (توسط Olaf Hering). .PP بازگرداندن معماری برنامه‌های نصب‌شده (توسط John Eckersberg). .PP سیستم‌عامل Windows 8 اکنون پشتیبانی می‌شود. .PP توزیع Fedora 18 اکنون پشتیبانی می‌شود. .PP بازرسی دیسک‌های ISO/CD/DVD اکنون می‌تواند از پایگاه‌داده libosinfo استفاده کند. .PP \fIپورت‌ها (ports)\fR .IX Subsection "ports" .PP ابزار libguestfs بدون اپلاینس را می‌توان روی Mac OS X کامپایل کرد (توسط Masami HIRATA). .PP توزیع RHEL 5 اکنون به طور صریح از طریق شاخه 'oldlinux' در مخزن اصلی git پشتیبانی می‌شود. .PP معماری PowerPC 64 bit اکنون پشتیبانی می‌شود. همچنین libguestfs برای باگ‌های مربوط به ترتیب بایت‌ها (endianness) بررسی شده و این باگ‌ها برطرف گردیده‌اند. .PP \fIدیمن (daemon)\fR .IX Subsection "daemon" .PP یک صفحه راهنما برای دیمن (\fBguestfsd\fR\|(8)) گنجانده شده است. .SS "امنیت (Security)" .IX Subsection "Security" \fIفایل تاریخچه guestfish\fR .IX Subsection "guestfish history file" .PP فایل تاریخچه \fR\f(CI$HOME\fR\fI/.guestfish\fR اکنون با مجوزهای 0600 ایجاد می‌شود (به جای 0644 قبلی)، بنابراین دیگر برای تمام کاربران سیستم قابل خواندن نیست. .PP \fICVE\-2012\-2690\fR .IX Subsection "CVE-2012-2690" .PP نسخه‌های قدیمی هر دو ابزار \f(CW\*(C`virt\-edit\*(C'\fR و دستور \f(CW\*(C`edit\*(C'\fR در \f(CW\*(C`guestfish\*(C'\fR فایلی جدید حاوی تغییرات ایجاد می‌کردند اما مجوزها و مشخصات فایل جدید را مطابق با فایل قدیمی تنظیم نمی‌کردند. نتیجه این بود که اگر فایلی حساس از نظر امنیتی مانند \fI/etc/shadow\fR را ویرایش می‌کردید، پس از ویرایش برای همگان قابل خواندن باقی می‌ماند. .PP به این مشکل شناسه CVE\-2012\-2690 اختصاص داده شد و در libguestfs نسخه ≥ 1.16 برطرف شده است. .PP برای اطلاعات بیشتر، ببینید: https://bugzilla.redhat.com/show_bug.cgi?id=788642 .SS "رابط‌های برنامه‌نویسی جدید (New APIs)" .IX Subsection "New APIs" .Vb 10 \& acl\-delete\-def\-file \& acl\-get\-file \& acl\-set\-file \& canonical\-device\-name \& cap\-get\-file \& cap\-set\-file \& create\-flags \& device\-index \& disk\-has\-backing\-file \& disk\-format \& disk\-virtual\-size \& filesystem\-available \& fill\-dir \& fstrim \& get\-cachedir \& get\-libvirt\-requested\-credentials \& get\-libvirt\-requested\-credential\-prompt \& get\-libvirt\-requested\-credential\-challenge \& get\-libvirt\-requested\-credential\-defresult \& get\-tmpdir \& hivex\-close \& hivex\-commit \& hivex\-node\-add\-child \& hivex\-node\-children \& hivex\-node\-delete\-child \& hivex\-node\-get\-child \& hivex\-node\-get\-value \& hivex\-node\-name \& hivex\-node\-parent \& hivex\-node\-set\-value \& hivex\-node\-values \& hivex\-open \& hivex\-root \& hivex\-value\-key \& hivex\-value\-type \& hivex\-value\-utf8 \& hivex\-value\-value \& inspect\-list\-applications2 (John Eckersberg) \& list\-ldm\-volumes \& list\-ldm\-partitions \& ldmtool\-create\-all \& ldmtool\-diskgroup\-disks \& ldmtool\-diskgroup\-name \& ldmtool\-diskgroup\-volumes \& ldmtool\-remove\-all \& ldmtool\-scan \& ldmtool\-scan\-devices \& ldmtool\-volume\-hint \& ldmtool\-volume\-partitions \& ldmtool\-volume\-type \& ls0 \& max\-disks \& mke2fs (Wanlong Gao) \& mklost\-and\-found \& mkswap [added label and uuid optional arguments] \& mktemp (Wanlong Gao) \& nr\-devices \& parse\-environment \& parse\-environment\-list \& rm\-f \& rsync \& rsync\-in \& rsync\-out \& set\-cachedir \& set\-libvirt\-supported\-credentials \& set\-libvirt\-requested\-credential \& set\-tmpdir \& shutdown [backported to 1.16 and 1.18] \& tar\-in [added compress flag] \& tar\-out [added compress, numericowner, excludes flags] \& umount [added force and lazy optional arguments] \& utsname \& xfs\-admin (Wanlong Gao) \& xfs\-growfs (Wanlong Gao) \& xfs\-info (Wanlong Gao) \& xfs\-repair (Wanlong Gao) .Ve .PP تنها در API زبان C: .PP .Vb 2 \& guestfs_push_error_handler \& guestfs_pop_error_handler .Ve .SS "ساختار داخلی (Internals)" .IX Subsection "Internals" نرم‌افزار qemu نسخه ≥ 1.1 مورد نیاز است (نسخه ≥ 1.2 ترجیح داده می‌شود). .PP نرم‌افزار febootstrap نسخه ≥ 3.20 مورد نیاز است. .PP کتابخانه libvirt اختیاری است، اما اگر می‌خواهید از بک‌اند جدید libvirt برای راه‌اندازی اپلاینس استفاده کنید، libvirt نسخه ≥ 0.10.2 مورد نیاز خواهد بود. .PP ابزار Coverity روی کل پایگاه کد اجرا شد و مشکلات زیادی برطرف گردید (با تشکر از Ondrej Vasik و Kamil Dudka). .PP توابعی که قبلاً آرگومان اختیاری نداشتند اکنون می‌توانند به توابعی با آرگومان‌های اختیاری تبدیل شوند، که گسترش API را بسیار منعطف‌تر می‌سازد. سازگاری رو به عقب در سطح کد منبع و باینری برای کاربران API حفظ شده است. .PP روش نمایش APIها و ساختارهای libguestfs در مولد کد (generator) تغییر کرده و به جای چندتایی (tuple) از ساختار OCaml استفاده می‌کند. این امر توصیفات مولد را انعطاف‌پذیرتر و درک آن‌ها را آسان‌تر می‌سازد. برای جزئیات به کامیت‌های 39d1a7db و eb185eef مراجعه کنید. .PP تفکیک کدهای کتابخانه به فایل‌های بیشتر: .IP \(bu 4 بک‌اندهای راه‌اندازی اکنون در فایل‌های جداگانه قرار دارند؛ مانند \fIsrc/launch\-appliance.c\fR، \f(CW\*(C`src/launch\-libvirt.c\*(C'\fR. .IP \(bu 4 کدهای عملیاتی تولیدشده برای کامپایل سریع‌تر اکنون میان چند فایل \fIsrc/action*.c\fR تقسیم شده‌اند. .IP \(bu 4 فایل حجیم \fIsrc/guestfs.c\fR اکنون به واحدهای منطقی کوچک‌تر تقسیم شده است. .PP مستندات POD اکنون با استفاده از یک برنامه بازنویسی‌شده پرل به جای pod2* + اسکریپت‌های شل تولید می‌شوند. .PP صفحات راهنما اکنون حاوی تاریخ‌های پایدار هستند (توسط Hilko Bengen). .PP آزمون‌های ردشده (skipped) اکنون با کد خروج ۷۷ پایان می‌یابند تا در خروجی \f(CW\*(C`make check\*(C'\fR به صورت \f(CW\*(C`SKIP:\*(C'\fR نمایش داده شوند. .PP آزمون موازی mount\-local به زبان C بازنویسی شد (RHBZ#838081). .PP زبان Ruby نسخه 1.8.5 اکنون پشتیبانی می‌شود (اگرچه Ruby نسخه ≥ 1.9 ترجیح داده می‌شود). .PP پیوندهای Perl را می‌توان از طریق \f(CW\*(C`./configure \-\-disable\-perl\*(C'\fR غیرفعال کرد (توسط Wulf C. Krueger). توجه داشته باشید که Perl همچنان برای ساخت libguestfs مورد نیاز است. .PP پیوندهای Java اکنون با استفاده از \f(CW\*(C`./configure \-\-with\-java\*(C'\fR یا \f(CW\*(C`./configure \-\-without\-java\*(C'\fR فعال/غیرفعال می‌شوند (توسط Wulf C. Krueger). .PP گزینه‌های جدید پیکربندی: \f(CW\*(C`./configure \-\-enable\-code\-profiling\*(C'\fR و \&\f(CW\*(C`./configure \-\-enable\-code\-coverage\*(C'\fR. .PP اصلاحات متعدد در استفاده از اعداد صحیح ۶۴ بیتی در پیوندهای زبان‌های مختلف. .PP بک‌اند اپلاینس اکنون به جای vgabios از sgabios استفاده می‌کند (توسط Dan Berrange). .PP اسکریپت \f(CW\*(C`./run\*(C'\fR اکنون متغیرهای محیطی کافی تنظیم می‌کند تا بتوانید برنامه‌های OCaml، Python، Ruby، Java، GJS، Erlang و Lua را اجرا کنید. .PP فلگ \f(CW\*(C`./run \-\-test\*(C'\fR برای اجرای آزمون‌ها با حداقل خروجی. این گزینه همچنین زمان صرف‌شده برای اجرای هر آزمون را چاپ می‌کند. .PP اسکریپت \f(CW\*(C`./run\*(C'\fR اکنون مسیرها را به صورت تجمیعی می‌سازد، به این معنی که می‌توانید دوبار از \f(CW\*(C`./run\*(C'\fR استفاده کنید یا اسکریپت‌های \f(CW\*(C`./run\*(C'\fR مربوط به libguestfs و libvirt را با هم به کار ببرید. .PP می‌توانید فهرستی از دستورات خارجی مورد نیاز دیمن را استخراج کنید، که ساخت اپلاینس را در برخی توزیع‌ها آسان‌تر می‌سازد (توسط Olaf Hering). .PP دستور \f(CW\*(C`virt\-rescue\*(C'\fR اکنون در طول اجرای \f(CW\*(C`make check\*(C'\fR آزمایش می‌شود. .PP مولد کد اکنون فایل‌های تولیدشده بلااستفاده را حذف می‌کند. این کار هنگام جابجایی با git rebase، git bisect و غیره مفید است. .PP آزمون‌ها اکنون در یک دایرکتوری سطح بالای جداگانه \f(CW\*(C`tmp/\*(C'\fR در سورس اجرا می‌شوند. این امر امکان برچسب‌گذاری دایرکتوری برای SELinux (sVirt) را فراهم می‌کند و پاکسازی آن را نیز آسان‌تر می‌سازد. .PP دستور \f(CW\*(C`make syntax\-check\*(C'\fR اکنون تا حد زیادی کار می‌کند و بسیاری از مشکلات کد اصلی که توسط syntax\-check شناسایی شده بودند برطرف گردیدند (با تشکر از Jim Meyering). .PP حالت Emacs (\-*\- foo \-*\-) به فایل‌های تولیدشده اضافه شده است. .PP خروجی نوار پیشرفت (progress bar) اکنون به \fI/dev/tty\fR ارسال می‌شود تا در خروجی معمولی برنامه تداخل ایجاد نکند. ابزارهای virt\-resize و virt\-sparsify اکنون در صورتی که stdout یک tty نباشد، نوار پیشرفت را پنهان می‌کنند. .PP اکنون گزینه \f(CW\*(C`./configure \-\-without\-libvirt\*(C'\fR وجود دارد. این گزینه برای آزمایش کامپایل کد بدون libvirt کاربرد دارد. .PP اکنون یک مینی‌کتابخانه داخلی برای اجرای دستورات وجود دارد. این امر به ما اجازه می‌دهد خطاهای دستورات خارجی را به رویدادها (events) هدایت کنیم. .PP کد مدیریت دایرکتوری‌های موقت و کش اپلاینس به طور کامل بازطراحی و بازنویسی شد. .PP کد مربوط به نادیده گرفتن/غیرفعال کردن موقت خطاها اکنون به این صورت است: .PP .Vb 3 \& guestfs_push_error_handler (g, NULL, NULL); \& guestfs_mkdir (g, "/foo"); /* We don\*(Aqt care if this fails. */ \& guestfs_pop_error_handler (g); .Ve .PP دایرکتوری \f(CW\*(C`tests/extra\*(C'\fR حذف شده است. "آزمون‌های اضافی" اکنون به تارگت‌های قابل اجرای مجزا تقسیم شده‌اند، مانند \f(CW\*(C`make check\-valgrind\*(C'\fR. از دستور \f(CW\*(C`make help\*(C'\fR برای دریافت خلاصه‌ای از تارگت‌ها استفاده کنید. .PP گزینه \f(CW\*(C`lpj\*(C'\fR هنگام استفاده از TCG به هسته اپلاینس ارسال می‌شود. این کار باید پایداری ساعت/زمان را بهبود بخشد (با تشکر از Marcelo Tosatti و Olaf Hering). .SS "باگ‌های رفع‌شده (Bugs fixed)" .IX Subsection "Bugs fixed" .IP https://bugzilla.redhat.com/882417 4 .IX Item "https://bugzilla.redhat.com/882417" ابزارهای libguestfs در صورت مطلق نبودن مسیر TMPDIR با پیام‌های خطای نامفهوم با شکست مواجه می‌شدند .IP https://bugzilla.redhat.com/882299 4 .IX Item "https://bugzilla.redhat.com/882299" دیسک‌های مهمان Windows 8 قابل سوار کردن نبودند: "The NTFS partition is in an unsafe state. Please resume and shutdown Windows fully (no hibernation or fast restarting), or mount the volume read\-only with the \*(Aqro\*(Aq mount option." .IP https://bugzilla.redhat.com/881953 4 .IX Item "https://bugzilla.redhat.com/881953" ابزار libguestfs: مهاجرت به /etc/hostname، /etc/vconsole.conf، /etc/locale.conf .IP https://bugzilla.redhat.com/880801 4 .IX Item "https://bugzilla.redhat.com/880801" دستور virt\-df با دو گزینه \-a نام نادرستی از ایمیج دیسک نمایش می‌داد .IP https://bugzilla.redhat.com/879416 4 .IX Item "https://bugzilla.redhat.com/879416" ابزار libguestfs\-test\-tool هنگام استفاده از گزینه \-\-help متوقف می‌شد .IP https://bugzilla.redhat.com/876579 4 .IX Item "https://bugzilla.redhat.com/876579" رابط برنامه‌نویسی mke2fs تبدیل نام دستگاه‌های بلوکی را روی آرگومان اختیاری journaldevice اعمال نمی‌کرد .IP https://bugzilla.redhat.com/860235 4 .IX Item "https://bugzilla.redhat.com/860235" سیاست SELinux باید به qemu اجازه نوشتن در unconfined_u:object_r:user_tmp_t:s0 را بدهد .IP https://bugzilla.redhat.com/859949 4 .IX Item "https://bugzilla.redhat.com/859949" درخواست قابلیت (RFE): دستور inspect\-list\-applications معماری بسته‌های RPM را بازنمی‌گرداند .IP https://bugzilla.redhat.com/859885 4 .IX Item "https://bugzilla.redhat.com/859885" دستور inspect\-list\-applications همه بسته‌های RPM نصب‌شده با نام یکسان و نسخه‌های متفاوت را فهرست نمی‌کرد .IP https://bugzilla.redhat.com/859876 4 .IX Item "https://bugzilla.redhat.com/859876" مسیرهای چاپ‌شده در guestfish به شکل استاندارد (canonicalized) درنمی‌آمدند .IP https://bugzilla.redhat.com/859875 4 .IX Item "https://bugzilla.redhat.com/859875" خروجی نوار پیشرفت باید به tty(?) stderr(?) ارسال شود .IP https://bugzilla.redhat.com/858696 4 .IX Item "https://bugzilla.redhat.com/858696" ابزار virt\-sysprep در برخی مهمان‌های Fedora خطای Guestfs.Error("read_lines: fopen: /etc/sysconfig/network: No such file or directory") گزارش می‌داد .IP https://bugzilla.redhat.com/858128 4 .IX Item "https://bugzilla.redhat.com/858128" ابزار libguestfs در فهرست کردن دستگاه‌هایی که دو بار توسط add\-drive\-ro\-with\-if اضافه شده بودند با شکست مواجه می‌شد .IP https://bugzilla.redhat.com/858126 4 .IX Item "https://bugzilla.redhat.com/858126" ابزار virt\-inspector در کار با برخی مهمان‌های ویندوزی شکست می‌خورد .IP https://bugzilla.redhat.com/853762 4 .IX Item "https://bugzilla.redhat.com/853762" ابزار virt\-sparsify باید از روش مطمئن‌تری برای تشخیص فرمت ورودی استفاده کند .IP https://bugzilla.redhat.com/853393 4 .IX Item "https://bugzilla.redhat.com/853393" ابزار libvirt سوکت‌های کنسول و سریال را برچسب‌گذاری نمی‌کرد .IP https://bugzilla.redhat.com/853159 4 .IX Item "https://bugzilla.redhat.com/853159" ابزار virt\-rescue در Fedora 18 کاملاً از کار افتاده بود .IP https://bugzilla.redhat.com/852394 4 .IX Item "https://bugzilla.redhat.com/852394" بازرسی libguestfs حجم رجیستری‌ها را به ۱۰۰ مگابایت محدود می‌کرد .IP https://bugzilla.redhat.com/852194 4 .IX Item "https://bugzilla.redhat.com/852194" دستور virt\-sparsify \-\-compress در صورت raw بودن فرمت خروجی با شکست مواجه می‌شد .IP https://bugzilla.redhat.com/847881 4 .IX Item "https://bugzilla.redhat.com/847881" درخواست قابلیت (RFE): امکان ارسال آرگومان‌های اضافی (مانند \-\-exclude) به tar\-out .IP https://bugzilla.redhat.com/847880 4 .IX Item "https://bugzilla.redhat.com/847880" دستور tar\-out باید گزینه \-\-numeric\-owner را مجاز کند (یا اجباری سازد) .IP https://bugzilla.redhat.com/845522 4 .IX Item "https://bugzilla.redhat.com/845522" دستور guestfish "copy\-out / localdir" با خطای "No such file or directory" شکست می‌خورد .IP https://bugzilla.redhat.com/845488 4 .IX Item "https://bugzilla.redhat.com/845488" نام‌های طولانی فایل در NTFS باعث شکست tar\-out، copy\-out و غیره با خطای "Cannot open: File name too long" می‌شد .IP https://bugzilla.redhat.com/842307 4 .IX Item "https://bugzilla.redhat.com/842307" درخواست قابلیت (RFE): نیاز به کمک در طراحی و پیاده‌سازی سیاست selinux برای libguestfs/sVirt .IP https://bugzilla.redhat.com/840572 4 .IX Item "https://bugzilla.redhat.com/840572" ابزارهای virt\-make\-fs / tar\-in باید به درستی از vfat پشتیبانی کنند .IP https://bugzilla.redhat.com/840115 4 .IX Item "https://bugzilla.redhat.com/840115" مشکل در دستور touch در guestfish \- رابط برنامه‌نویسی case_sensitive_path انتظار داشت فایل از قبل وجود داشته باشد .IP https://bugzilla.redhat.com/836710 4 .IX Item "https://bugzilla.redhat.com/836710" از دست رفتن داده‌ها هنگام نوشتن روی فایل‌های دیسک با فرمت qcow2 .IP https://bugzilla.redhat.com/834712 4 .IX Item "https://bugzilla.redhat.com/834712" دستورات lvresize و lvresize\-free در صورتی که اندازه LV را تغییر نمی‌دادید بدون دلیل با خطا مواجه می‌شدند: "New size (nn extents) matches existing size (nn extents)" .IP https://bugzilla.redhat.com/824716 4 .IX Item "https://bugzilla.redhat.com/824716" دستور compress\-device\-out از bzip2 پشتیبانی نمی‌کرد .IP https://bugzilla.redhat.com/824043 4 .IX Item "https://bugzilla.redhat.com/824043" گزینه ناشناخته سوار کردن در guestfish پیام خطای گیج‌کننده‌ای می‌داد .IP https://bugzilla.redhat.com/823887 4 .IX Item "https://bugzilla.redhat.com/823887" فایل‌هایی با نام‌های حاوی نویسه‌های چینی روی فایل‌سیستم‌های vfat قابل ایجاد نبودند .IP https://bugzilla.redhat.com/823885 4 .IX Item "https://bugzilla.redhat.com/823885" ابزار virt\-make\-fs نمی‌توانست فایل‌سیستم vfat حاوی فایل‌سیستم‌هایی با نویسه‌های چینی ایجاد کند .IP https://bugzilla.redhat.com/823883 4 .IX Item "https://bugzilla.redhat.com/823883" دستور virt\-make\-fs \-t fat با یک پیام خطای نامفهوم با شکست مواجه می‌شد .IP https://bugzilla.redhat.com/823821 4 .IX Item "https://bugzilla.redhat.com/823821" عملیات بازرسی در صورت خالی بودن /etc/HOSTNAME با شکست مواجه می‌شد .IP https://bugzilla.redhat.com/801117 4 .IX Item "https://bugzilla.redhat.com/801117" ابزار libguestfs نمی‌توانست آیکون مربوط به Windows 8 را دریافت کند .IP https://bugzilla.redhat.com/798979 4 .IX Item "https://bugzilla.redhat.com/798979" دیسک‌های نصب Ubuntu از نسخه oneiric به بعد شناسایی نمی‌شدند: "multi\-boot operating systems are not supported" .IP https://bugzilla.redhat.com/782167 4 .IX Item "https://bugzilla.redhat.com/782167" ابزار libguestfs دیسک‌های پویای ویندوز را در برخی پیکربندی‌ها (مانند spanned) شناسایی نمی‌کرد .IP https://bugzilla.redhat.com/713678 4 .IX Item "https://bugzilla.redhat.com/713678" همه پیام‌های febootstrap به کال‌بک‌های لاگ هدایت نمی‌شدند .IP https://bugzilla.redhat.com/627675 4 .IX Item "https://bugzilla.redhat.com/627675" کد بازرسی libguestfs نمی‌توانست مسیرهای /dev/disk/by\-id/* را مدیریت کند .IP https://bugzilla.redhat.com/602997 4 .IX Item "https://bugzilla.redhat.com/602997" دستور part\-get\-bootable با چینش نامرتب پارتیشن‌ها نتیجه نادرستی می‌داد .SH "همچنین ببینید (SEE ALSO)" .IX Header "SEE ALSO" \&\fBguestfs\-examples\fR\|(1), \&\fBguestfs\-faq\fR\|(1), \&\fBguestfs\-performance\fR\|(1), \&\fBguestfs\-recipes\fR\|(1), \&\fBguestfs\-testing\fR\|(1), \&\fBguestfs\fR\|(3), \&\fBguestfish\fR\|(1), http://libguestfs.org .SH "نویسنده (AUTHOR)" .IX Header "AUTHOR" Richard W.M. Jones .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 آن را در گزارش باگ پیوست کنید.