| guestfs-release-notes-1.50(1) | Virtualization Support | guestfs-release-notes-1.50(1) |
نام (NAME)
guestfs-release-notes - یادداشتهای انتشار libguestfs
یادداشتهای انتشار LIBGUESTFS 1.50 (RELEASE NOTES FOR LIBGUESTFS 1.50)
این سند حاوی یادداشتهای انتشار نسخه پایدار libguestfs 1.50 است. در اینجا تغییرات عمده نسبت به نسخه 1.48 شرح داده شده است.
بسته Libguestfs 1.50.0 در تاریخ ۷ فوریه ۲۰۲۳ منتشر شد.
پیوستهای زبانهای برنامهنویسی (Language bindings)
اصلاح پیوستهای PHP برای PHP8 (Geoff Amey).
رفع هشدارهای گوناگون مربوط به منسوخشدگی (deprecation) در پیوستهای GObject.
دیگر از کتابخانه منسوخشده distutils در پایتون استفاده نمیشود (با تشکر از Miro Hrončok).
بازرسی سیستم (Inspection)
هنگام فهرستکردن بستهها در مهمانهای مبتنی بر RPM، رابط برنامهنویسی (API) بازرسی دیگر امضاهای بستهها را بررسی نمیکند. دلیل این امر آن است که librpm جدیدتر استفادهشده توسط libguestfs امضاهای ذخیرهشده در مهمانهای قدیمیتر، مانند SHA1 در RHEL 6 را متوجه نمیشود (با تشکر از Panu Matilainen).
تابع "guestfs_inspect_get_hostname" در guestfs(3) اکنون میتواند فایلهای /etc/hostname حاوی کامنت را مدیریت و پردازش کند (با تشکر از Dawid Zamirski).
تابع "guestfs_file_architecture" در guestfs(3) اکنون قادر است فایلهای فشردهشده با الگوریتم zstd را تحلیل کند.
تابع "guestfs_inspect_get_osinfo" در guestfs(3) اکنون فیلد osinfo صحیحی را برای Windows 11 برمیگرداند. با این حال به دلیل تصمیمات شرکت مایکروسافت، این مهمانها همچنان نام محصول و رشتههای دیگری را برمیگردانند که آنها را به عنوان Windows 10 شناسایی میکند (با تشکر از Yaakov Selkowitz, Yongkui Guo).
رابط برنامهنویسی (API)
رابطهای برنامهنویسی جدید (New APIs)
تابع "guestfs_device_name" در guestfs(3) یک API جدید برای خواندن نام دستگاه مرتبط با یک درایو است، برای نمونه فراخوانی آن با 0 مقدار "/dev/sda" را برمیگرداند.
تابع "guestfs_clevis_luks_unlock" در guestfs(3) یک API جدید برای باز کردن قفل دیسکها با استفاده از طرح رمزنگاری کامل دیسک مبتنی بر شبکه Clevis/Tang است. افزون بر این، پشتیبانی از آن در guestfish و guestmount نیز پیادهسازی شده است (Laszlo Ersek).
تابع "guestfs_inspect_get_build_id" در guestfs(3) یک API جدید برای خواندن شناسه بیلد (build ID) از برخی مهمانهای لینوکس و ویندوز است. این شناسه در لینوکس کاربرد گستردهای ندارد، اما برای ویندوز در شناسایی ویندوز ۱۱ حیاتی است.
سایر تغییرات API (Other API changes)
در API تابع "guestfs_add_drive" در guestfs(3)، فیلدهای "name" و "iface" استفاده نمیشوند. مقدار "name" تقریباً از سال ۲۰۱۷ استفاده نشده بود، اما مستندات به تازگی برای انعکاس این موضوع بهروزرسانی شدهاند. فیلد "iface" نیز هرگز برای بکاند libvirt مجاز نبوده و با بکاند direct هم به درستی کار نمیکرد (Laszlo Ersek).
تابع "guestfs_readdir" در guestfs(3) دیگر محدود به حداکثر اندازه پیام نیست و میتواند دایرکتوریها را با هر اندازهای بخواند (Laszlo Ersek).
تغییرات ساخت (Build changes)
توجه داشته باشید که پیوستهای Augeas برای libguestfs دیگر همراه با libguestfs عرضه نمیشوند و باید به صورت جداگانه ساخته شوند. ببینید: https://people.redhat.com/~rjones/augeas برای RHEL 7+، بازسازی بسته Fedora Rawhide کارساز خواهد بود.
توجه داشته باشید که libguestfs اکنون به حداقل OCaml 4.04 نیاز دارد. این بسته روی RHEL 6 کامپایل نخواهد شد.
توجه داشته باشید که zstd اکنون یک پیشنیاز الزامی است.
ابزار OCaml gettext دیگر پیشنیاز libguestfs نیست. (از gettext ساده همچنان به صورت اختیاری برای ترجمه فایلهای منبع C استفاده میشود.)
افزودن پشتیبانی از OCaml 4.14.
اصلاح ساخت برای توابع غایب stdlib در OCaml 4.04.
اصلاح گزینه "./configure --disable-ocaml". برای ساخت libguestfs همچنان OCaml الزامی است، اما اکنون این گزینه پیوستهای OCaml مربوط به API را به درستی غیرفعال میکند.
افزودن پشتیبانی از بیلد روی توزیعهای Artix، Rocky و Virtuozzo (Halil Tezcan KARABULUT, Neil Hanlon, Andrey Drobyshev). علاوه بر این، در هنگام تشخیص توزیع محلی، ابتدا به $ID_LIKE در /etc/os-release پیش از $ID نگاه میکنیم که در آرچ لینوکس کمککننده است (با تشکر از S D Rausty).
افزودن پشتیبانی مقدماتی برای کامپایل libguestfs در macOS.
اصلاح توضیحات وبسایت درباره کلونکردن مخزن libguestfs (Kashyap Chamarthy).
دیگر از printf سفارشی glibc استفاده نمیکنیم.
دیگر از "LD_PRELOAD=libSegFault.so" در اپلاینس استفاده نمیکنیم. این ویژگی در glibc 2.35 حذف شد.
دیگر از پروبهای dtrace / systemtap استفاده نمیکنیم.
بخشهای داخلی (Internals)
اصلاح آزمونهای رگرسیون برای استفاده از مسیرهای صحیح (Nikolay Shirokovskiy).
بهبودهای گوناگون در مدیریت اپلاینس qcow2 (Andrey Drobyshev).
غیرفعالسازی جدولهای صفحهبندی ۵ سطحی (5-level page tables) در qemu. این کار مانع از بروز اشکال در نسخههای قدیمیتر qemu میشود.
غیرفعالسازی devicesfile مربوط به LVM2 در اپلاینس، زیرا با حجمهای منطقی (LV) کلونشدهای که UUID یکسانی دارند تداخل ایجاد میکند (Laszlo Ersek).
عدم استفاده از "-cpu max" در معماری RISC-V زیرا هنوز توسط شبیهساز TCG در qemu برای آن معماری پشتیبانی نمیشود. این قابلیت پس از پشتیبانی در qemu مجدداً فعال خواهد شد.
جلوگیری از یک هَنگ نادر که هنگام راهاندازی اپلاینس رخ میداد. مشخص شد علت این رخداد، استفاده از فراخوانی ناامن setenv(3) میان fork و exec بوده است (با تشکر از Siddhesh Poyarekar).
هنگام اجرای دستور file در داخل اپلاینس، اکنون seccomp غیرفعال میشود زیرا با پردازش فایلهای فشردهشده تداخل دارد (با تشکر از David Runge, Toolybird).
اشکالات رفعشده (Bugs fixed)
- https://bugzilla.redhat.com/2108425
- کامپایل libguestfs-1.48.4 با خطای Error: static declaration of ‘caml_alloc_initialized_string’ follows non-static declaration شکست میخورد
- https://bugzilla.redhat.com/2064182
- الزام امضاهای SHA 1 برای بازرسی بستهها در مهمانهای RHEL 6
- https://bugzilla.redhat.com/2033247
- مستندسازی محدودیت دیسکهای رمزگذاریشده RBD
- https://bugzilla.redhat.com/2012658
- ناتوانی libguestfs در تشخیص ایمیج مهمان Windows 11
- https://bugzilla.redhat.com/1965941
- شکست lvm-set-filter در guestfish با جدیدترین بسته lvm2
- https://bugzilla.redhat.com/1844341
- فهرست شدن دستگاه بلوکی تکراری هنگامی که iface بر روی 'virtio' تنظیم شده باشد
- https://bugzilla.redhat.com/1809453
- [درخواست قابلیت] افزودن پشتیبانی از دیسکهای رمزگذاریشده با LUKS به وسیله Clevis و Tang
- https://bugzilla.redhat.com/1794518
- بازنویسی نحوه استفاده libguestfs از setfiles به گونهای که روی بیتهای تغییرناپذیر (immutable) در ext4 متوقف نشود
- https://bugzilla.redhat.com/1674392
- عدم دریافت خروجی از فهرست دایرکتوری در صورت وجود تعداد بسیار زیادی فایل در آن پوشه (برگرداندن مقدار NULL)
- https://bugzilla.redhat.com/1554735
- درخواست قابلیت: گزینه customize --selinux-relabel باید پیشفرض باشد و از --no-selinux-relabel برای انصراف استفاده شود
همچنین ببینید (SEE ALSO)
guestfs-examples(1), guestfs-faq(1), guestfs-performance(1), guestfs-recipes(1), guestfs-testing(1), guestfs(3), guestfish(1), http://libguestfs.org
نویسندگان (AUTHORS)
حق نشر (COPYRIGHT)
Copyright (C) 2009-2025 Red Hat Inc.
مجوز (LICENSE)
این برنامه نرمافزار آزاد است؛ شما میتوانید آن را تحت شرایط «مجوز عمومی همگانی گنو» (GNU General Public License) طبق آنچه توسط بنیاد نرمافزارهای آزاد منتشر شده است، بازتوزیع کرده و/یا تغییر دهید؛ چه نسخه ۲ مجوز یا (به انتخاب خودتان) هر نسخه پس از آن.
این برنامه با این امید توزیع شده است که مفید واقع شود، اما بدون هرگونه ضمانت؛ حتی بدون ضمانت ضمنی تجاریبودن یا مناسببودن برای یک هدف خاص. برای جزئیات بیشتر به «مجوز عمومی همگانی گنو» مراجعه فرمایید.
شما باید به همراه این برنامه نسخهای از «مجوز عمومی همگانی گنو» را دریافت کرده باشید؛ در غیر این صورت به نشانی Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA نامه بنویسید.
اشکالات (BUGS)
برای دریافت فهرستی از اشکالات libguestfs، از این پیوند استفاده کنید: https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools
برای گزارش یک اشکال جدید در libguestfs، از این پیوند استفاده کنید: https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
هنگام گزارش اشکال، لطفاً موارد زیر را ارائه دهید:
- نسخه libguestfs.
- مکانی که libguestfs را از آن دریافت کردهاید (مانند کدام توزیع لینوکس، کامپایل از مبدأ و غیره).
- اشکال را به دقت شرح داده و راهی برای بازتولید آن ارائه کنید.
- دستور libguestfs-test-tool(1) را اجرا کرده و خروجی کامل و دستنخورده آن را درون گزارش اشکال جایگذاری کنید.
| 2026-07-14 | libguestfs-1.60.1 |