WIMLIB-IMAGEX(1) User Commands WIMLIB-IMAGEX(1)

wimlib-imagex - استخراج، ایجاد، تغییر یا سوار کردن یک بایگانی WIM

wimlib-imagex append arguments... (یا wimappend arguments...)
wimlib-imagex apply arguments... (یا wimapply arguments...)
wimlib-imagex capture arguments... (یا wimcapture arguments...)
wimlib-imagex delete arguments... (یا wimdelete arguments...)
wimlib-imagex dir arguments... (یا wimdir arguments...)
wimlib-imagex export arguments... (یا wimexport arguments...)
wimlib-imagex extract arguments... (یا wimextract arguments...)
wimlib-imagex info arguments... (یا wiminfo arguments...)
wimlib-imagex join arguments... (یا wimjoin arguments...)
wimlib-imagex mount arguments... (یا wimmount arguments...)
wimlib-imagex mountrw arguments... (یا wimmountrw arguments...)
wimlib-imagex optimize arguments... (یا wimoptimize arguments...)
wimlib-imagex split arguments... (یا wimsplit arguments...)
wimlib-imagex unmount arguments... (یا wimunmount arguments...)
wimlib-imagex update arguments... (یا wimupdate arguments...)
wimlib-imagex verify arguments... (یا wimverify arguments...)

دستور wimlib-imagex با فایل‌های بایگانی در قالب Windows Imaging (WIM) کار می‌کند. رابط کاربری آن شبیه به ابزار ImageX مایکروسافت است، اما wimlib-imagex چندسکویی بوده و دارای بهبودها و قابلیت‌های گسترش‌یافتهٔ مفیدی است.

برای انجام وظایف خود، wimlib-imagex از wimlib استفاده می‌کند؛ یک کتابخانهٔ متن‌باز C که رابط‌هایی را برای کار با بایگانی‌های WIM فراهم می‌سازد. کتابخانهٔ wimlib کاملاً مستقل از پیاده‌سازی معادل مایکروسافت (WIMGAPI یا wimgapi.dll) است. شما می‌توانید از wimlib در برنامه‌های خود استفاده کنید، هرچند برای استفاده در خط فرمان، wimlib-imagex پیشاپیش دسترسی به بیشتر قابلیت‌های wimlib را میسر کرده است.

قالب Windows Imaging (WIM) در اصل توسط مایکروسافت برای بایگانی کردن سیستم‌های فایل ویندوز، مانند NTFS طراحی شد. با این حال، با برخی محدودیت‌ها می‌توان از آن در پلتفرم‌های دیگر نیز استفاده کرد. یک بایگانی WIM شامل یک یا چند ایمیج است که هر یک از آن‌ها از نظر منطقی یک درخت دایرکتوری مستقل به شمار می‌رود. ایمیج‌ها با شروع از شمارهٔ ۱ ایندکس‌گذاری می‌شوند و هر کدام می‌توانند یک نام نیز داشته باشند. داده‌های فایل به عنوان «blob»های محتوا-آدرس‌پذیر ذخیره می‌شوند که در سراسر بایگانی یکتاسازی (deduplicate) می‌گردند. داده‌ها را می‌توان با استفاده از یکی از چندین الگوریتم فشرده‌سازی فشرده کرد.

یک به‌روزرسانی از قالب WIM که مایکروسافت همراه با ویندوز ۸ ارائه داد، از فشرده‌سازی یکپارچه (solid-mode) با الگوریتم LZMS برای دستیابی به نسبت فشرده‌سازی بهتر استفاده می‌کند. این‌گونه فایل‌ها «فایل‌های ESD» نیز نامیده می‌شوند و ممکن است به جای پسوند .wim دارای پسوند .esd باشند. کتابخانهٔ wimlib به طور کامل از این فایل‌ها پشتیبانی می‌کند، مگر در مواردی که رمزگذاری شده باشند.

دستور wimlib-imagex یکی از چندین دستور زیر (که در بخش خلاصه دستور فهرست شده‌اند) و آرگومان‌های اضافی را بسته به دستور مشخص‌شده می‌پذیرد. اگرچه wimlib-imagex با گزینهٔ --help یا در صورت فراخوانی نادرست اطلاعات نحوهٔ استفاده را نمایش می‌دهد، اما مستندات کامل هر یک از دستورهای wimlib-imagex را می‌توانید در صفحهٔ راهنمای اختصاصی مربوط به همان دستور بیابید.

نکته: در صورت نصب بودن پیوندهای سخت (hard links) یا فایل‌های دسته‌ای مناسب، هر دستور wimlib-imagex COMMAND می‌تواند به سادگی به شکل wimCOMMAND نیز فراخوانی شود؛ برای نمونه، wimapply به جای wimlib-imagex apply. برای رعایت اختصار، مستندات از نام‌های کوتاه‌تر استفاده می‌کنند.

موارد زیر برخی از ویژگی‌های عمومی یا سناریوهای کاربردی پشتیبانی‌شده توسط wimlib-imagex به همراه دستورهای مربوطه هستند:

•
نمایش اطلاعات دربارهٔ یک فایل WIM (wiminfo)
•
فهرست کردن فایل‌های درون یک ایمیج WIM (wimdir)
•
استخراج یا «اعمال» (apply) یک ایمیج کامل WIM (wimapply)
•
استخراج فایل‌ها یا دایرکتوری‌ها از یک ایمیج WIM (wimextract)
•
گرفتن (capture) یک ایمیج WIM و ذخیرهٔ آن در یک فایل WIM جدید (wimcapture)
•
گرفتن یک ایمیج WIM و الحاق آن به یک فایل WIM موجود (wimappend)
•
تغییر یک ایمیج WIM از طریق افزودن، حذف یا تغییر نام فایل‌ها (wimupdate)
•
(فقط لینوکس) سوار کردن فقط‌خواندنی یک ایمیج WIM (wimmount)
•
(فقط لینوکس) سوار کردن خواندنی-نوشتنی یک ایمیج WIM (wimmountrw)
•
حذف یک ایمیج از یک فایل WIM (wimdelete)
•
صادر کردن (export) یک یا چند ایمیج از یک فایل WIM (wimexport)
•
تغییر نام یا توضیحات یک ایمیج WIM (wiminfo)
•
تغییر ایندکس ایمیج قابل بوت یک فایل WIM (wiminfo)
•
بازسازی و در صورت تمایل فشرده‌سازی مجدد یک فایل WIM (wimoptimize)
•
تقسیم یک فایل WIM به چند بخش مجزا (wimsplit)
•
پیوستن بخش‌های یک WIM چندبخشی به یکدیگر (wimjoin)
•
بررسی اعتبار و یکپارچگی ساختار یک فایل WIM (wimverify)

این بخش برخی از قابلیت‌های برجستهٔ wimlib-imagex را با جزئیات بیشتر بررسی می‌کند.

•
پشتیبانی چندسکویی. دستور wimlib-imagex بر روی سیستم‌های شبه‌یونیکس (عمدتاً لینوکس، و همچنین FreeBSD، Mac OS X و غیره) و ویندوز پشتیبانی می‌شود. بیشتر کدها بین تمام پلتفرم‌ها مشترک است، اما ویژگی‌های اختصاصی هر سیستم‌عامل نیز در صورت امکان پشتیبانی می‌شوند.
•
فشرده‌سازی و استخراج با الگوریتم‌های XPRESS، LZX و LZMS. کتابخانهٔ wimlib شامل پیاده‌سازی‌های پیشرفته‌ای از تمامی این الگوریتم‌هاست. این پیاده‌سازی‌ها در طول زمان بهبود یافته‌اند و اکنون معمولاً عملکرد و نسبت فشرده‌سازی بهتری نسبت به معادل‌های مایکروسافتی خود ارائه می‌دهند، در حالی که سازگاری کامل آن‌ها نیز حفظ شده است.
•
پشتیبانی از فشرده‌سازی یکپارچه (solid-mode) یا «فایل ESD». فایل‌های ESD نسخهٔ به‌روزشده‌ای از قالب WIM هستند که با بهره‌گیری از فشرده‌سازی یکپارچهٔ LZMS به نسبت فشرده‌سازی بالاتری دست می‌یابند.
•
فشرده‌سازی چندنخی (Multithreaded). به طور پیش‌فرض، فشرده‌سازی داده‌ها در wimlib به صورت چندنخی انجام می‌شود و از تمامی پردازنده‌های در دسترس استفاده خواهد کرد.
•
در سیستم‌های شبه‌یونیکس، یکپارچگی با libntfs-3g امکان گرفتن یک ایمیج WIM را مستقیماً از یک حجم NTFS یا اعمال یک ایمیج را مستقیماً بر روی یک حجم NTFS فراهم می‌کند. این قابلیت اجازه می‌دهد داده‌ها و فراداده‌های ویژهٔ NTFS، مانند توصیف‌کننده‌های امنیتی (security descriptors) و جریان‌های داده‌های نام‌گذاری‌شده (named data streams) ذخیره و بازیابی شوند؛ مواردی که در غیر این صورت فقط در ویندوز پشتیبانی می‌شدند.
•
در سیستم‌های شبه‌یونیکس، پشتیبانی اختیاری از ذخیره و بازیابی مجوزهای استاندارد فایل یونیکس (مالک/گروه/حالت)، فایل‌های خاص یونیکس و ویژگی‌های گسترش‌یافته (extended attributes). (این یک افزونهٔ اختصاصی wimlib است؛ نرم‌افزارهای WIM مایکروسافت این اطلاعات اضافی را نادیده می‌گیرند.)
•
در لینوکس، پشتیبانی از سوار کردن ایمیج‌های WIM از طریق FUSE (سیستم فایل در فضای کاربری)، هم به صورت فقط‌خواندنی و هم خواندنی-نوشتنی.
•
بایگانی‌های چندبخشی (Split WIMs). یک WIM چندبخشی بایگانی‌ای است که به چندین فایل مجزا تقسیم شده است. دستور wimsplit می‌تواند از یک فایل مستقل WIM نسخهٔ چندبخشی ایجاد کند و wimjoin می‌تواند بخش‌های مجزا را مجدداً به یک فایل WIM مستقل تبدیل نماید.
•
بایگانی‌های دلتا (Delta WIMs). یک WIM دلتا فراداده‌های ایمیج را نگه می‌دارد اما داده‌های فایلی را که پیشاپیش در یک فایل WIM دیگر وجود دارند ذخیره نمی‌کند. یک WIM دلتا را می‌توان با استفاده از wimcapture به همراه گزینهٔ --delta-from ساخت.
•
بایگانی‌های WIM با قابلیت لوله‌کشی ("Pipable" WIMs). به عنوان یک قابلیت اختصاصی در wimlib (ناسازگار با پیاده‌سازی مایکروسافت)، دستور wimcapture از گرفتن ایمیج و هدایت آن به خروجی استاندارد در قالبی ویژه و با قابلیت لوله‌کشی (piping) پشتیبانی می‌کند؛ این خروجی بعداً می‌تواند با ارسال به wimapply از طریق ورودی استاندارد اعمال شود. از جمله کاربردهای این ویژگی، ارسال یا دریافت ایمیج‌ها از طریق شبکه با استفاده از لوله‌کشی (pipe) به منظور تصویربرداری و بازیابی سریع سیستم فایل است.
•
پشتیبانی از جدول‌های یکپارچگی WIM. اگرچه داده‌های فایل درون بایگانی‌های WIM همیشه دارای مجموع مقابله‌ای (checksum) هستند، می‌توان یک سری مجموع مقابله‌ای اضافی («جدول یکپارچگی») نیز به خود فایل WIM اضافه کرد تا اطمینان بیشتری از سلامت آن حاصل شود. گزینهٔ --check در چندین دستور wimlib-imagex می‌تواند برای بررسی یا افزودن این مجموع‌های مقابله‌ای به کار رود.
•
پشتیبان‌گیری افزایشی سریع. با توجه به اینکه بایگانی‌های WIM از داده‌های محتوا-آدرس‌پذیر استفاده می‌کنند، محتوای فایل‌ها به طور خودکار یکتاسازی (deduplicate) می‌شود. علاوه بر این، با استفاده از گزینهٔ --update-of در wimcapture یا wimappend، می‌توانید فرآیند ایمیج‌گیری را بهینه‌سازی کنید تا فایل‌هایی که بر اساس برچسب‌های زمانی تغییری نکرده‌اند، حتی از روی دیسک خوانده هم نشوند.
•
پشتیبانی از فراداده‌های ایمیج مخصوص ویندوز. هنگام گرفتن ایمیج از سیستم‌عامل ویندوز، wimlib با بررسی فایل‌های سیستمی شناخته‌شده، به طور خودکار فیلدهای فرادادهٔ XML مانند جزئیات نگارش ویندوز را پر می‌کند.
•
پشتیبانی از WIMBoot. در ویندوز ۸.۱ و نسخه‌های جدیدتر، فایل‌ها می‌توانند به کمک درایور فیلتر Windows Overlay Filesystem (WOF) مایکروسافت، از یک بایگانی WIM به عنوان منبع خارجی استفاده کنند («externally backed»). با استفاده از گزینهٔ --wimboot، دستور wimapply به جای استخراج کامل فایل‌ها، تنها «فایل‌های اشاره‌گر» متصل به بایگانی WIM را ایجاد می‌کند.
•
پشتیبانی از عکس‌های فوری VSS. در ویندوز، اجرای wimcapture یا wimappend همراه با گزینهٔ --snapshot به طور خودکار یک عکس فوری موقت VSS ایجاد کرده و ایمیج را از روی آن استخراج می‌کند. این ویژگی امکان ایمیج‌گیری از یک سیستم ویندوز فعال و در حال کار («زنده») را فراهم می‌سازد.
•
پشتیبانی از مسیرهای طولانی در ویندوز. دستور wimlib-imagex می‌تواند فایل‌هایی با مسیرهایی بیش از محدودیت ۲۶۰ نویسه‌ای (MAX_PATH) در زیرسیستم Win32 را ذخیره و استخراج کند.
•
پشتیبانی از حالت بدون دسترسی مدیر (Non-Administrator) در ویندوز. شما می‌توانید wimlib-imagex را با وجود برخی محدودیت‌ها، بدون دسترسی‌های مدیر سیستم (Administrator) اجرا کنید.

گزینه‌های زیر در تمامی دستورهای wimlib-imagex قابل استفاده هستند:

نمایش راهنما و خروج.
نمایش نگارش و اطلاعات حقوقی و سپس خروج.
عدم نمایش پیام‌های اطلاعاتی و نشانگرهای پیشرفت فرآیند.

به طور پیش‌فرض، رفتار wimlib-imagex در رابطه با حساسیت به بزرگی و کوچکی حروف بین سیستم‌های شبه‌یونیکس و ویندوز تا حدی متفاوت است. ایمیج‌های WIM ممکن است (هرچند معمولاً چنین نیست) چندین فایل با نام‌هایی داشته باشند که فقط در بزرگی و کوچکی حروف با یکدیگر متفاوتند. در ساختار داخلی، wimlib نام فایل‌ها را حساس به حروف ذخیره می‌کند، اما در ویندوز، مسیرهایی که توسط کاربر برای کار در ایمیج WIM وارد می‌شوند (مانند استخراج، افزودن، تغییر نام، یا حذف فایل‌ها) به طور پیش‌فرض غیرحساس به بزرگی و کوچکی حروف در نظر گرفته می‌شوند تا رفتار «مورد انتظار» فراهم شود. این امر با رفتار پیش‌فرض در سیستم‌های شبه‌یونیکس تفاوت دارد؛ چرا که در آن سیستم‌ها مسیرها همیشه حساس به بزرگی و کوچکی حروف هستند.

توجه داشته باشید که با فعال بودن عدم حساسیت به حروف، ممکن است ارجاع به یک مسیر به دلیل وجود چندین فایل یا دایرکتوری با نام‌های یکسان (با صرف‌نظر از حروف) با ابهام مواجه شود. در چنین شرایطی، اگر فایل یا دایرکتوری‌ای با نام دقیقاً یکسان وجود داشته باشد، همان انتخاب می‌شود؛ در غیر این صورت، یکی از فایل‌ها یا دایرکتوری‌هایی که تطابق دارند به صورت تصادفی انتخاب خواهد شد.

رفتار پیش‌فرض حساسیت به حروف در wimlib-imagex را می‌توان با تنظیم صریح متغیر محیطی WIMLIB_IMAGEX_IGNORE_CASE تغییر داد؛ مقدار 1 باعث برخورد غیرحساس به حروف با مسیرها می‌شود و مقدار 0 رفتار حساس به حروف را اعمال می‌کند.

صرف‌نظر از این تنظیمات، گزینه‌ها و آرگومان‌های غیرمسیری همیشه باید با حروف کوچک وارد شوند.

نرم‌افزار wimlib-imagex می‌تواند تحت شرایط «مجوز عمومی همگانی گنو» (GNU GPL)؛ نگارش ۳ یا (به انتخاب خودتان) هر نگارش بالاتر بازتوزیع شده و/یا تغییر داده شود. هیچ‌گونه ضمانتی برای آن وجود ندارد، تا حدی که قانون مجاز می‌داند.

باگ‌ها را به https://wimlib.net/forums گزارش دهید. بازخوردها و پیشنهادات نیز با کمال میل پذیرفته می‌شوند.

wimappend(1), wimapply(1), wimcapture(1), wimdelete(1), wimdir(1), wimexport(1), wimextract(1), wiminfo(1), wimjoin(1), wimmount(1), wimmountrw(1), wimoptimize(1), wimsplit(1), wimunmount(1), wimupdate(1), wimverify(1),

January 2026 wimlib 1.14.5