فایلهای DMG تصاویر دیسک انحصاری Mac هستند، اما میتوان آنها را نصب کرد و به محتویات آنها در رایانه لینوکس دسترسی داشت.
باز کردن فایل های تصویری در لینوکس اغلب یک فرآیند ساده است. با این حال، فایلهای DMG کمی پیچیدهتر هستند، زیرا لینوکس از این نوع فایلها و همچنین سیستم فایلی که استفاده میکنند پشتیبانی نمیکند. اما اگر فقط نیاز به استخراج یک فایل DMG برای مشاهده و کپی محتوای آن در دستگاه لینوکس خود دارید، چند راه حل وجود دارد.
اجازه دهید ابتدا در مورد اینکه فایل DMG چیست و چرا سیستمهای مبتنی بر لینوکس در مقایسه با فایلهای تصویری مانند ISO، باز کردن آنها دشوارتر است صحبت کنیم.
فایل DMG چیست؟
برخلاف فایلهای تصویری کراس پلتفرم مانند ISO و IMG، فایلهای DMG فقط برای استفاده در مک هستند. این به این دلیل است که فایلهای DMG فرمتهای فایل تصویری دیسکی هستند که توسط اپل برای اشتراکگذاری و توزیع فایلها و نرمافزارهای محصولات خود ایجاد شدهاند.
فایل تصویر دیسک نوعی فایل است که مانند یک درایو دیسک فیزیکی عمل می کند. این نوع فایل ها از هارد دیسک های واقعی کلون می شوند و یک کپی «بایت در هر بایت» از تمام داده های ذخیره شده ارائه می کنند.
فایل های تصویری دیسک مانند DMG اغلب برای توزیع نرم افزار استفاده می شوند زیرا توسعه دهندگان می توانند به راحتی یک فایل تصویری از محیط فعلی خود با تمام وابستگی های آن ایجاد کنند و نرم افزار را به عنوان یک بسته توزیع کنند.
این کار نصب نرم افزار را برای کاربران آسان تر می کند زیرا همه وابستگی ها، پیکربندی ها و فایل ها از قبل وجود دارند، درست مانند نحوه ای که توسعه دهندگان آن را روی دستگاه های خود دارند.
چرا ممکن است بخواهید یک فایل DMG را در لینوکس استخراج کنید؟
اگرچه فرمت فایل DMG برای توزیع نرم افزار اپل ساخته شده است، اما از آن به عنوان راهی برای تهیه نسخه پشتیبان، محیط های آرشیو و به اشتراک گذاری انواع رسانه ها در یک بسته کاملاً فشرده نیز استفاده می شود.
و از آنجایی که macOS در حال حاضر با ابزار ایجاد DMG بومی عرضه می شود، کاربران مک احتمالاً به جای سایر فرمت های فایل تصویر دیسک مانند ISO از DMG استفاده خواهند کرد.
از آنجایی که همه از مک استفاده نمی کنند، استخراج یک فایل تصویری DMG در خارج از دستگاه مک ممکن است مشکل ساز باشد. پس چرا چنین فایلی را در لینوکس استخراج کنیم؟
طبق آمار Statista، مک حدود 17 درصد از بازار رایانه های شخصی ایالات متحده را به خود اختصاص داده است که آن را به عنوان دومین سیستم رایانه شخصی محبوب رتبه بندی می کند. این تعداد زیادی از افراد از مک استفاده می کنند، که به این معنی است که افراد بیشتری از DMG برای فشرده سازی و اشتراک گذاری فایل های خود استفاده می کنند.
بنابراین فرستادن یک فایل DMG توسط یک دوست یا خانواده آنقدرها هم که مردم فکر می کنند غیر معمول نیست. البته ممکن است دلایل دیگری نیز وجود داشته باشد که یک کاربر لینوکس بخواهد یک فایل DMG را در سیستم خود استخراج کند.
مشکل استخراج فایل های DMG در لینوکس
به عنوان یک فرمت تصویر اختصاصی، نصب و استخراج فایل های DMG در لینوکس سخت تر است، زیرا به طور رسمی از DMG پشتیبانی نمی کند.
از آنجایی که اکثر توزیعهای لینوکس از سیستمهای فایل توسعهپذیر مانند ext2، ext3 و ext4 استفاده میکنند، نصب تصویر HFS یا HFS+ در لینوکس منجر به ناسازگاریها میشود.
اگرچه این مشکلات استخراج فایلهای DMG را در خارج از مک سختتر میکند، اما راهحلهایی برای استخراج موفقیتآمیز فایلها در لینوکس وجود دارد.
نحوه استخراج فایل های DMG در لینوکس
بزرگترین مشکل استخراج یک فایل DMG در لینوکس این است که نصب آن منجر به خطای سیستم فایل بد می شود. برای نصب موفقیت آمیز DMG، باید ابزاری به نام “hfsprogs” را نصب کنید. این ابزار خط فرمان پورتی از ابزار HFS hdiutil اپل است که به سیستم آنها امکان میدهد تصاویر از نوع HFS را نصب کند.
با نصب hfsprogs، دستگاه لینوکس شما قادر به نصب تصاویر از نوع HFS مانند DMG خواهد بود.
قبل از نصب hfsprogs، مطمئن شوید که بسته ها را در رایانه خود به روز کنید.
اکنون، hfsprogs را در اوبونتو/دبیان با استفاده از:
sudo apt install hfsprogs
در Arch Linux، hfsprogs را از AUR با استفاده از yay نصب کنید:
yay -S hfsprogs
در Fedora، CentOS و RHEL، از موارد زیر استفاده کنید:
dnf install hfsplus-tools
برای نصب فایل تصویری DMG، اجازه دهید با ایجاد یک دایرکتوری جدید، یک نقطه اتصال جدید ایجاد کنیم:
sudo mkdir /mnt/mntpoint
بیایید فایل DMG را با اجرای:
sudo mount -t hfsplus /dmg/location/Image.dmg /mount/mntpoint
که باید فایل تصویر DMG را با موفقیت سوار شود. اما در این مورد، یک خطای نوع فایل سیستم اشتباه از ما خواسته شده است.
با اجرای دستور زیر، می توانید ببینید که ابزار یک خطای سیستم فایل بد را ایجاد می کند زیرا DMG فشرده شده است. لینوکس به خصوص نصب فایل های تصویری فشرده را دوست ندارد.
file image.dmg
دسترسی به فایل های فشرده DMG
برای حل این مشکل، از ابزاری به نام dmg2img استفاده می کنیم. این ابزار فایل DMG را به فایل IMG تبدیل و از حالت فشرده خارج می کند.
برای نصب dmg2img در اوبونتو/دبیان، اجرا کنید:
sudo apt install dmg2img
در آرچ لینوکس:
sudo pacman -S dmg2img
در توزیعهای مبتنی بر RPM، از:
sudo dnf install dmg2img
برای استفاده از dmg2img از:
dmg2img image.dmg
dmg2img اکنون DMG را فشرده و به یک فایل IMG تبدیل می کند. بیایید سعی کنیم فایل تصویر را با استفاده از:
sudo mount /img/file/location/image.img /mount/point/location
توجه داشته باشید که دیگر نیازی به استفاده از گزینه -t hfsplus در دستور ندارید زیرا لینوکس به صورت بومی از فایل های IMG پشتیبانی می کند.
حالا اگر محتویات Mount Point را مشاهده کنید، باید تمام فایل های داخل فایل DMG را ببینید.
حذف فایل های DMG در لینوکس
فایل های تصویری دیسک نصب شده به طور فعال منابع سیستم و فضای با ارزش حافظه را اشغال می کنند. فراموش نکنید که پس از هر بار استفاده، فایل های تصویر دیسک را جدا کنید.
برای unmount از دستور استفاده کنید:
sudo umount /mount/point/location
به خاطر داشته باشید که دستور این است
مقدار
و نه
باز کردن
.
برای بررسی اینکه آیا unmount موفقیت آمیز بوده است، کافی است در محل Mount Point ls یا cd کنید.
و از آنجایی که اکثر توزیعهای لینوکس از فایلهای IMG پشتیبانی میکنند، باید بتوانید آن را با استفاده از رابط کاربری گرافیکی با کلیک راست روی فایل و انتخاب گزینه mount که برای Linux Mint Open With Disk Image Mounter است، نصب کنید.
همانطور که می بینید، یک نماد mount ظاهر شده است. می توانید با کلیک راست روی نماد و انتخاب Unmount از این برای جدا کردن تصویر استفاده کنید.
اگر به محل Mount Point نگاه کنید، می بینید که فایل ها اکنون از بین رفته اند و نشان می دهد که فایل تصویر با موفقیت unmount شده است.
آیا باید روی لینوکس Mount یا Unzip کنید؟
اگر نیاز به استخراج فایل ها از یک فایل تصویری DMG دارید، چند ابزار شخص ثالث مانند hfsprogs وجود دارد که می توانید از آنها برای نصب فایل های DMG در لینوکس استفاده کنید.
اما اگر فقط نیاز به استخراج محتویات از فایل DMG دارید، ابزارهای خارج کردن فشرده مانند dmg2img و 7-Zip باید این کار را انجام دهند، البته با قابلیت های محدود. اگر نیاز به ویرایش، حذف یا افزودن هر فایلی به فایل DMG دارید، نصب صحیح تنها راه است.
چه بخواهید یک فایل DMG را در لینوکس نصب کنید یا از حالت فشرده خارج کنید، هر دو روش ممکن است گاهی اوقات به دلیل تفاوت در سیستم های فایل، نوع توزیع لینوکس مورد استفاده و خود فایل DMG غیرقابل اعتماد باشند. به عنوان آخرین راه حل، استخراج فایل DMG روی ماشین مجازی نصب شده با macOS احتمالا راه حل قابل اعتمادتری خواهد بود.