GDISK(8) راهنمای GPT fdisk GDISK(8)

gdisk - ابزار تعاملی دستکاری جدول پارتیشن GUID (GPT)

gdisk [ -l ] device

ابزار GPT fdisk (معروف به gdisk) یک برنامه متنی مبتنی بر منو برای ایجاد و دستکاری جداول پارتیشن است. این ابزار به طور خودکار جدول پارتیشن قدیمی Master Boot Record (MBR) یا برچسب دیسک BSD ذخیره‌شده بدون پارتیشن نگه‌دارنده MBR را به قالب جدیدتر جدول پارتیشن شناسه یکتای سراسری (GPT) تبدیل می‌کند، یا یک جدول پارتیشن GUID را بارگذاری می‌نماید. هنگامی که با گزینه خط فرمان -l اجرا شود، برنامه جدول پارتیشن فعلی را نمایش داده و سپس خارج می‌شود.

برنامه GPT fdisk عمدتاً بر روی هدرهای GPT و جداول پارتیشن کار می‌کند؛ با این حال، در صورت نیاز می‌تواند یک MBR محافظتی (protective MBR) تازه ایجاد کند. (هیچ کدی از بارگذار بوت در MBR محافظتی دستکاری نخواهد شد.) اگر یک MBR محافظتی غیرمعمول ایجاد کرده‌اید، مانند MBR ترکیبی ساخته‌شده توسط gptsync یا قابلیت اختصاصی ساخت MBR ترکیبی در خود gdisk، این مورد نباید توسط بیشتر عملیات‌های معمولی دستخوش تغییر شود. برخی از گزینه‌های پیشرفته بازیابی داده نیازمند درک تفاوت‌های میان داده‌های اصلی و پشتیبان، و همچنین تفاوت هدرهای GPT با جداول پارتیشن هستند. برای اطلاعات درباره تفاوت‌های MBR و GPT و همچنین اصطلاحات و ساختار GPT، به مستندات تفصیلی gdisk در نشانی https://www.rodsbooks.com/gdisk یا دانشنامه ویکی‌پدیا مراجعه کنید.

برنامه gdisk از یک رابط کاربری شبیه به fdisk لینوکس استفاده می‌کند، اما gdisk پارتیشن‌های GPT را ویرایش می‌نماید. این ابزار همچنین قابلیت تبدیل پارتیشن‌های MBR یا برچسب‌های دیسک BSD به پارتیشن‌های GPT را دارد. همانند برنامه اصلی fdisk، ابزار gdisk ساختارهای دیسک را تا زمانی که صریحاً آن‌ها را بر روی دیسک ننویسید تغییر نمی‌دهد، بنابراین در صورت بروز اشتباه می‌توانید با گزینه 'q' از برنامه خارج شوید تا پارتیشن‌های شما بدون تغییر باقی بمانند.

به طور معمول، gdisk بر روی فایل‌های دستگاه‌های دیسک عمل می‌کند، مانند /dev/sda یا /dev/hda در لینوکس، /dev/disk0 در مک او‌اس، یا /dev/ad0 یا /dev/da0 در FreeBSD. این برنامه همچنین می‌تواند بر روی فایل‌های ایمیج دیسک عمل کند، که می‌توانند نسخه‌های کپی کامل دیسک (مثلاً ایجادشده با dd) یا ایمیج‌های خام دیسک مورد استفاده شبیه‌سازهایی چون QEMU یا VMWare باشند. توجه داشته باشید که تنها ایمیج‌های دیسک خام (raw) پشتیبانی می‌شوند؛ gdisk نمی‌تواند بر روی فرمت‌های فشرده یا دیگر فرمت‌های پیشرفته ایمیج دیسک کار کند.

سیستم پارتیشن‌بندی MBR از ترکیبی از آدرس‌دهی سیلندر/هد/سکتور (CHS) و آدرس‌دهی منطقی بلوک (LBA) استفاده می‌کند. روش اول دست‌وپاگیر و محدودکننده است. قالب GPT آدرس‌دهی CHS را کنار گذاشته و منحصراً از حالت 64-بیتی LBA استفاده می‌کند. بدین ترتیب، ساختارهای داده GPT و در نتیجه gdisk، نیازی به سر و کار داشتن با هندسه‌های CHS و تمام مشکلات ناشی از آن‌ها ندارند. کاربران fdisk متوجه خواهند شد که gdisk فاقد گزینه‌ها و محدودیت‌های مرتبط با هندسه CHS است.

برای بهترین نتیجه، در صورت امکان همواره باید از برنامه جدول پارتیشن مخصوص همان سیستم‌عامل استفاده کنید. برای مثال، پارتیشن‌های Mac OS X را با برنامه Disk Utility مک و پارتیشن‌های لینوکس را با ابزار gdisk لینوکس یا برنامه GNU Parted ایجاد کنید.

هنگام شروع، gdisk تلاش می‌کند نوع پارتیشن‌بندی در حال استفاده روی دیسک را شناسایی کند. اگر داده‌های معتبر GPT پیدا کند، gdisk از آن‌ها استفاده خواهد کرد. اگر gdisk یک MBR یا برچسب دیسک BSD معتبر بیابد اما داده GPT پیدا نکند، تلاش می‌کند MBR یا برچسب دیسک را به قالب GPT تبدیل نماید. (البته احتمال دارد برچسب‌های دیسک BSD پارتیشن‌های ابتدایی یا انتهایی غیرقابل استفاده‌ای داشته باشند زیرا با ساختارهای داده GPT هم‌پوشانی دارند.) ابزار GPT fdisk می‌تواند دیسک‌های Apple Partition Map (APM) را که در مک‌های مبتنی بر 680x0 و PowerPC استفاده می‌شوند شناسایی کند، اما نمی‌تواند داده‌های آن‌ها را به کار گیرد. در هنگام خروج با گزینه 'w'، ابزار gdisk جدول MBR یا برچسب دیسک را با یک GPT جایگزین می‌کند. این عمل بالقوه خطرناک است! ممکن است سیستم شما غیرقابل بوت شود، و اگر دیسک از کدهای نوع ناشناخته استفاده کند، ممکن است کدهای نوع پارتیشن خراب شوند. مشکلات بوت به‌ویژه زمانی محتمل هستند که با سیستم‌عاملی چندگانه (multi-boot) کار کنید که از GPT پشتیبانی نمی‌کند. اگر اشتباهاً gdisk را روی یک دیسک MBR اجرا کرده‌اید، می‌توانید با استفاده از گزینه 'q' بدون اعمال هیچ تغییری با خیال راحت از برنامه خارج شوید.

اگر MBR اصلی از پارتیشن‌های منطقی (logical) استفاده کرده باشد، تبدیل MBR به GPT حداقل یک شکاف در شماره‌گذاری پارتیشن‌ها باقی خواهد گذاشت. این شکاف‌ها بی‌ضرر هستند، اما در صورت تمایل می‌توانید با استفاده از گزینه 's' آن‌ها را حذف کنید. (انجام این کار ممکن است مستلزم به‌روزرسانی فایل /etc/fstab شما باشد.)

هنگام ایجاد یک جدول پارتیشن تازه، ممکن است در نظر گرفتن موارد زیر لازم باشد:

*
برای دیسک‌های داده (غیر بوت)، و برای دیسک‌های بوت استفاده‌شده در رایانه‌های مبتنی بر BIOS همراه با GRUB به عنوان بارگذار بوت، پارتیشن‌ها را می‌توان به هر ترتیبی و با هر اندازه دلخواهی ایجاد کرد.
*
دیسک‌های بوت برای سیستم‌های مبتنی بر EFI نیازمند یک پارتیشن سیستمی EFI (کد داخلی 0xEF00 در gdisk) هستند که با قالب FAT-32 فرمت شده باشد. توصیه می‌شود اندازه این پارتیشن 550 مگابایت (MiB) در نظر گرفته شود. (پارتیشن‌های ESP کوچکتری نیز متداول هستند، اما برخی سیستم‌های EFI درایورهای FAT ناپایداری دارند که برای عملکرد قابل اطمینان نیاز به پارتیشن بزرگتری ایجاد می‌کند.) فایل‌های مرتبط با بوت در اینجا ذخیره می‌شوند. (توجه داشته باشید که GNU Parted چنین پارتیشن‌هایی را دارای نشان "boot flag" شناسایی می‌کند.)
*
برخی از بارگذارهای بوت در سیستم‌های مبتنی بر BIOS از یک پارتیشن بوت BIOS (کد داخلی 0xEF02 در gdisk) استفاده می‌کنند که بارگذار بوت مرحله دوم در آن ذخیره می‌شود، که احتمالاً بدون استفاده از سیستم فایل خواهد بود. (ابزار GRUB2 ممکن است به صورت اختیاری از چنین پارتیشنی استفاده کند.) این پارتیشن معمولاً می‌تواند بسیار کوچک باشد (حدود 32 تا 200 کیلوبایت، اگرچه در عمل 1 مگابایت رایج‌تر است)، اما برای جزئیات بیشتر باید مستندات بارگذار بوت خود را بررسی کنید.
*
اگر قرار است ویندوز از یک دیسک GPT بوت شود، ایجاد یک پارتیشن از نوع Microsoft Reserved (کد داخلی 0x0C01 در gdisk) توصیه می‌شود. اندازه این پارتیشن باید حدود 128 مگابایت (MiB) باشد. این پارتیشن معمولاً پس از پارتیشن سیستم EFI و بلافاصله قبل از پارتیشن‌های داده ویندوز قرار می‌گیرد. (توجه داشته باشید که نسخه‌های قدیمی GNU Parted تمام پارتیشن‌های FAT را به عنوان این نوع ایجاد می‌کردند، که در عمل باعث غیرقابل استفاده شدن پارتیشن برای ذخیره‌سازی عادی فایل در هر دو سیستم‌عامل ویندوز و Mac OS X می‌شد.)
*
ابزارهای GPT در برخی سیستم‌عامل‌ها مقداری فضای خالی (معمولاً 128 مگابایت) پس از هر پارتیشن ایجاد می‌کنند. هدف این است که ابزارهای آینده دیسک بتوانند از این فضا استفاده کنند. چنین فضای خالی برای دیسک‌های GPT الزامی نیست، اما ایجاد آن ممکن است به نگهداری دیسک در آینده کمک کند. شما می‌توانید از گزینه موقعیت‌دهی نسبی پارتیشن در GPT fdisk (مثلاً مشخص کردن سکتور شروع به صورت '+128M') برای ساده‌سازی ایجاد چنین فاصله‌هایی استفاده کنید.

فهرست کردن جدول پارتیشن برای دستگاه مشخص‌شده و سپس خروج.

بیشتر تعاملات با gdisk از طریق منوهای تعاملی حالت متنی آن انجام می‌شود. سه منو وجود دارد: منوی اصلی، منوی بازیابی و تبدیل، و منوی کارشناسان (experts). منوی اصلی عملکردهایی را فراهم می‌کند که بیشترین کاربرد را در وظایف معمولی پارتیشن‌بندی دارند، مانند ایجاد و حذف پارتیشن‌ها، تغییر کدهای نوع پارتیشن و غیره. عملکردهای مشخص عبارتند از:

ذخیره داده‌های پارتیشن در یک فایل پشتیبان. با این گزینه می‌توانید از جدول پارتیشن فعلی درون حافظه در یک فایل دیسک نسخه پشتیبان بگیرید. فایل حاصل یک فایل باینری شامل MBR محافظتی، هدر اصلی GPT، هدر پشتیبان GPT و یک کپی از جدول پارتیشن، به همان ترتیب است. توجه داشته باشید که پشتیبان‌گیری از ساختارهای داده فعلی درون حافظه انجام می‌شود، بنابراین اگر برنامه را اجرا کنید، تغییراتی ایجاد کنید و سپس از این گزینه استفاده نمایید، فایل پشتیبان تغییرات شما را منعکس خواهد کرد. همچنین توجه داشته باشید که گزینه بازیابی در منوی بازیابی و تبدیل قرار دارد؛ گزینه پشتیبان‌گیری به منظور تشویق به استفاده از آن در منوی اصلی قرار داده شده است.
تغییر نام GPT یک پارتیشن. این نام به صورت یک رشته UTF-16 کدگذاری می‌شود، اما ورود و نمایش مناسب هر کاراکتری فراتر از مقادیر پایه‌ای ASCII نیازمند پشتیبانی مناسب از محلی‌سازی (locale) و فونت است. در اکثر موارد، لینوکس نام پارتیشن را نادیده می‌گیرد، اما ممکن است در برخی سیستم‌عامل‌ها مهم باشد. ابزار GPT fdisk یک نام پیش‌فرض بر اساس کد نوع پارتیشن تنظیم می‌کند. توجه داشته باشید که نام پارتیشن GPT با نام سیستم فایل متفاوت است، نام سیستم فایل در ساختارهای داده خود سیستم فایل کدگذاری می‌شود.
حذف یک پارتیشن. این عمل ورودی مربوطه را از جدول پارتیشن حذف می‌کند اما به داده‌های درون سکتورهایی که در ابتدا روی دیسک به این پارتیشن اختصاص یافته بودند آسیبی نمی‌رساند. اگر یک پارتیشن MBR ترکیبی متناظر وجود داشته باشد، gdisk آن را نیز حذف می‌کند و هر پارتیشن محافظتی MBR مجاور از نوع 0xEE (پارتیشن EFI GPT) را گسترش می‌دهد تا فضای آزاد جدید را پر کند.
نمایش اطلاعات تفصیلی پارتیشن. اطلاعات خلاصه‌ای که با دستور 'p' تولید می‌شوند ناگزیر بسیاری از جزئیات را حذف می‌کنند، مانند GUID یکتای پارتیشن و ترجمه کد نوع داخلی gdisk به یک نام ساده و خوانا. گزینه 'i' این اطلاعات را برای یک پارتیشن مشخص نمایش می‌دهد.
نمایش خلاصه‌ای از انواع پارتیشن‌ها. جدول GPT از یک GUID برای شناسایی انواع پارتیشن برای سیستم‌عامل‌ها و اهداف خاص استفاده می‌کند. برای سهولت در ورود داده‌ها، gdisk این مقادیر را به مقادیر دو بایتی (هگزادسیمال چهار رقمی) که با کدهای معادل آن‌ها در MBR مرتبط هستند فشرده می‌کند. به طور مشخص، کد MBR در مقدار هگزادسیمال 0x0100 ضرب می‌شود. به عنوان مثال، کد فضای swap لینوکس در MBR برابر 0x82 است و در gdisk به صورت 0x8200 در می‌آید. با این حال، تطابق یک‌به‌یک امکان‌پذیر نیست. مهم‌تر از همه اینکه کدهای تمامی انواع پارتیشن‌های FAT و NTFS با یک کد GPT واحد مطابقت دارند (که در gdisk با 0x0700 وارد می‌شود). برخی سیستم‌عامل‌ها از یک کد MBR واحد استفاده می‌کنند اما کدهای بسیار بیشتری در GPT به کار می‌گیرند. برای این موارد، gdisk شماره کدها را به صورت متوالی اضافه می‌کند، مانند 0xa500 برای برچسب دیسک FreeBSD، سپس 0xa501 برای بوت FreeBSD، بعد 0xa502 برای swap در FreeBSD و به همین ترتیب. توجه داشته باشید که این کدهای دو بایتی منحصر به gdisk هستند. فهرست کدهای نوع را می‌توان به طور اختیاری با یک رشته جستجو فیلتر کرد؛ به عنوان مثال، وارد کردن linux فقط کدهای نوع پارتیشنی را نشان می‌دهد که توضیحات آن‌ها حاوی رشته Linux باشد. این جستجو بدون حساسیت به حروف کوچک و بزرگ انجام می‌شود.
ایجاد یک پارتیشن جدید. این دستور از گزینه معادل در fdisk الگوبرداری شده است، هرچند تفاوت‌هایی وجود دارد. شما یک شماره پارتیشن، سکتور شروع و سکتور پایان وارد می‌کنید. هر دو سکتور شروع و پایان را می‌توان به صورت مقادیر مطلق بر حسب شماره سکتور یا موقعیت‌هایی اندازه‌گیری‌شده با کیبی‌بایت (K)، مبی‌بایت (M)، گیبی‌بایت (G)، تبی‌بایت (T) یا پبی‌بایت (P) مشخص کرد؛ برای مثال، 40M موقعیت ۴۰ مبی‌بایت از ابتدای دیسک را مشخص می‌کند. همچنین می‌توانید موقعیت‌ها را نسبت به ابتدا یا انتهای محدوده پیش‌فرض مشخص‌شده با قرار دادن یک علامت '+' یا '-' قبل از عدد تعیین کنید، مانند +2G برای مشخص کردن نقطه‌ای ۲ گیبی‌بایت پس از سکتور شروع پیش‌فرض، یا -200M برای تعیین نقطه‌ای ۲۰۰ مبی‌بایت قبل از آخرین سکتور موجود. فشردن کلید Enter بدون هیچ ورودی، مقدار پیش‌فرض را انتخاب می‌کند که برای سکتور شروع برابر ابتدای بزرگترین بلوک در دسترس و برای سکتور پایان برابر انتهای همان بلوک است. نقاط شروع و پایان پیش‌فرض ممکن است برای بهینه‌سازی هم‌ترازی پارتیشن تنظیم شوند.
پاک کردن تمام داده‌های پارتیشن. این شامل داده‌های هدر GPT، تمام تعاریف پارتیشن و MBR محافظتی می‌شود. هم‌ترازی سکتور به مقدار پیش‌فرض (۱ مبی‌بایت، یا ۲۰۴۸ سکتور در دیسکی با سکتورهای ۵۱۲ بایتی) بازنشانی می‌شود.
نمایش داده‌های خلاصه و پایه‌ای پارتیشن‌ها. این شامل شماره‌های پارتیشن، شماره‌های سکتور شروع و پایان، اندازه پارتیشن‌ها، کدهای نوع پارتیشن در gdisk و نام پارتیشن‌ها است. برای اطلاعات بیشتر، از دستور 'i' استفاده کنید.
خروج از برنامه بدون ذخیره تغییرات. اگر فقط قصد مشاهده اطلاعات را داشته‌اید یا اگر مرتکب اشتباهی شده‌اید و می‌خواهید تمام تغییرات را لغو کنید، از این گزینه استفاده نمایید.
ورود به منوی بازیابی و تبدیل. این منو شامل گزینه‌های بازیابی اضطراری (برای رفع اشکال ساختارهای آسیب‌دیده داده GPT) و گزینه‌هایی برای تبدیل به یا از سایر سیستم‌های پارتیشن‌بندی، از جمله ایجاد MBRهای ترکیبی است.
مرتب‌سازی ورودی‌های پارتیشن. شماره‌های پارتیشن GPT نیازی به مطابقت با ترتیب پارتیشن‌ها روی دیسک ندارند. اگر می‌خواهید با یکدیگر مطابقت داشته باشند، می‌توانید از این گزینه استفاده کنید. توجه داشته باشید که برخی ابزارهای پارتیشن‌بندی هر بار که تغییراتی ایجاد می‌کنند پارتیشن‌ها را مرتب می‌سازند. چنین تغییراتی در نام فایل‌های دستگاه شما منعکس خواهد شد، بنابراین در صورت استفاده از این گزینه ممکن است لازم باشد فایل /etc/fstab را ویرایش کنید.
تغییر کد نوع یک پارتیشن. شما کد نوع را با استفاده از یک عدد هگزادسیمال دو بایتی، همان‌طور که پیش‌تر توضیح داده شد، وارد می‌کنید. همچنین می‌توانید در صورت در دست داشتن GUID مستقیماً آن را وارد کنید، اگر gdisk آن را نشناسد.
بررسی و اعتبارسنجی دیسک. این گزینه مشکلات گوناگون را بررسی می‌کند، مانند مقادیر نادرست CRC و عدم تطابق میان داده‌های اصلی و پشتیبان. البته این گزینه بیشتر مشکلات را به صورت خودکار اصلاح نمی‌کند؛ برای این کار باید از گزینه‌های موجود در منوی بازیابی و تبدیل استفاده کنید. در صورت عدم یافتن هیچ مشکلی، این دستور خلاصه‌ای از فضای تخصیص‌نیافته دیسک را نمایش می‌دهد.
نوشتن داده‌ها. از این دستور برای ذخیره تغییرات خود استفاده کنید.
ورود به منوی متخصصان (experts). استفاده از این گزینه دسترسی به امکاناتی را فراهم می‌کند که می‌توانید با آن‌ها حتی بیش از آنچه در منوی اصلی مجاز است، دچار دردسر شوید.
?
چاپ منو. این دستور (یا هر دستور ناشناخته دیگری) را تایپ کنید تا خلاصه‌ای از گزینه‌های موجود را مشاهده نمایید.

دومین منوی gdisk منوی بازیابی و تبدیل است که دسترسی به گزینه‌های بازیابی داده و قابلیت‌های مرتبط با تبدیل پارتیشن‌ها بین طرح‌های پارتیشن‌بندی مختلف را فراهم می‌آورد (به عنوان مثال، تبدیل برچسب‌های دیسک BSD به پارتیشن‌های GPT یا ایجاد MBRهای ترکیبی). برخی از گزینه‌های این منو جهت راحتی کار، عملکردهای منوی اصلی را تکرار می‌کنند. گزینه‌های این منو عبارتند از:

بازسازی هدر GPT از نسخه پشتیبان. با این گزینه می‌توانید از هدر پشتیبان GPT برای بازسازی هدر اصلی GPT استفاده کنید. این گزینه زمانی که هدر اصلی GPT آسیب دیده یا از بین رفته باشد (مثلاً بر اثر استفاده نادرست از دستور dd) بسیار کاربردی است.
بارگذاری جدول پارتیشن پشتیبان. به طور معمول، gdisk تنها از جدول پارتیشن اصلی استفاده می‌کند (اگرچه سلامت نسخه پشتیبان هنگام شروع برنامه بررسی می‌شود). اگر جدول پارتیشن اصلی آسیب دیده باشد، می‌توانید با این گزینه نسخه پشتیبان را از روی دیسک بارگذاری کرده و به جای آن استفاده کنید. توجه داشته باشید اگر به تازگی یک دیسک MBR را به قالب GPT تبدیل کرده باشید، این گزینه تقریباً به طور قطع هیچ ورودی یا ورودی‌های عجیبی از پارتیشن تولید خواهد کرد، چرا که هیچ جدول پارتیشن پشتیبانی روی دیسک وجود ندارد.
استفاده از هدر اصلی GPT و بازسازی نسخه پشتیبان. این گزینه زمانی مفید است که هدر پشتیبان GPT آسیب دیده یا از بین رفته باشد.
بارگذاری جدول پارتیشن اصلی. این گزینه جدول پارتیشن اصلی را دوباره از دیسک بارگذاری می‌کند. این گزینه فقط زمانی مفید است که تلاش کرده باشید از جدول پارتیشن پشتیبان (از طریق گزینه 'c') استفاده کنید اما وضعیت آن بدتر از جدول پارتیشن اصلی باشد.
بارگذاری MBR و ساخت یک GPT تازه از روی آن. اگر GPT شما خراب شده یا با MBR مغایرت دارد و می‌خواهید از MBR به عنوان مبنایی برای مجموعه جدیدی از پارتیشن‌های GPT استفاده کنید، از این گزینه بهره ببرید.
تبدیل GPT به MBR و خروج. این گزینه تا جای ممکن پارتیشن‌ها را به قالب MBR تبدیل می‌کند، ساختارهای داده GPT را از بین می‌برد، MBR جدید را ذخیره کرده و خارج می‌شود. اگر GPT را امتحان کرده‌اید و متوجه شده‌اید که MBR برای شما عملکرد بهتری دارد از این گزینه استفاده کنید. توجه داشته باشید که این تابع حداکثر چهار پارتیشن اولیه MBR یا سه پارتیشن اولیه و به تعداد ممکن پارتیشن منطقی ایجاد می‌کند. هر پارتیشن منطقی نیازمند حداقل یک بلوک تخصیص‌نیافته بلافاصله قبل از اولین بلوک خود است. بنابراین، ممکن است در دیسک‌هایی با پارتیشن‌های فشرده و متراکم حداکثر چهار پارتیشن تبدیل شوند؛ با این حال، اگر هنگام ایجاد پارتیشن‌ها فضای خالی میان آن‌ها قرار داده شده باشد و اگر اندازه دیسک کمتر از ۲ تبی‌بایت باشد، تبدیل همه پارتیشن‌ها به فرمت MBR امکان‌پذیر خواهد بود. همچنین گزینه 'h' را ببینید.
ایجاد یک MBR ترکیبی (hybrid MBR). این یک راهکار موقت و نه‌چندان اصولی است که به سیستم‌عامل‌های ناآگاه از GPT، یا آن‌هایی که قادر به بوت از یک دیسک GPT نیستند، امکان می‌دهد با ایجاد ورودی‌های MBR به حداکثر سه پارتیشن روی دیسک دسترسی پیدا کنند. توجه داشته باشید که این ورودی‌های MBR ترکیبی به سادگی می‌توانند با ورودی‌های GPT از هماهنگی خارج شوند، به ویژه هنگامی که از ابزارهای ناآگاه از حالت ترکیبی برای ویرایش دیسک استفاده شود. بنابراین، در صورت استفاده از چنین ابزارهایی ممکن است نیاز به ایجاد مجدد MBR ترکیبی داشته باشید. بر خلاف گزینه 'g'، این گزینه از تبدیل هیچ پارتیشنی به پارتیشن‌های منطقی MBR پشتیبانی نمی‌کند.
نمایش اطلاعات تفصیلی پارتیشن. این گزینه با گزینه 'i' در منوی اصلی یکسان است.
بارگذاری داده‌های پارتیشن از یک فایل پشتیبان. این گزینه برعکس گزینه 'b' در منوی اصلی عمل می‌کند. توجه داشته باشید که بازیابی داده‌های پارتیشن از هر چیزی به جز دیسک اصلی توصیه نمی‌شود.
بازگشت به منوی اصلی. این گزینه به شما امکان می‌دهد دستورات منوی اصلی را وارد کنید.
چاپ داده‌های MBR محافظتی. با این گزینه می‌توانید خلاصه‌ای از پارتیشن‌های MBR محافظتی را مشاهده کنید. این ممکن است شما را قادر سازد مشکلات آشکار را شناسایی کرده یا به تعیین پارتیشن‌ها در یک MBR ترکیبی کمک نماید.
چاپ جدول پارتیشن. این گزینه با گزینه 'p' در منوی اصلی یکسان است.
خروج بدون ذخیره تغییرات. این گزینه با گزینه 'q' در منوی اصلی یکسان است.
تبدیل پارتیشن‌های BSD به پارتیشن‌های GPT. این گزینه بر روی برچسب‌های دیسک BSD که درون پارتیشن‌های GPT (یا MBR تبدیل‌شده) قرار دارند کار می‌کند. کدهای نوع پارتیشن‌های تبدیل‌شده احتمالاً نیاز به تنظیم دستی خواهند داشت. ابزار gdisk هنگام اجرا تلاش می‌کند برچسب‌های دیسک BSD ذخیره‌شده بر روی دیسک اصلی را تبدیل کند، اما این تبدیل احتمالاً پارتیشن‌های اول یا آخری ایجاد می‌کند که غیرقابل استفاده هستند. تنوع فراوان گونه‌های BSD بدان معناست که احتمال ناتوانی gdisk در تبدیل یک برچسب دیسک BSD در مقایسه با احتمال بروز مشکل در تبدیل MBR بالا است.
بررسی و اعتبارسنجی دیسک. این گزینه با گزینه 'v' در منوی اصلی یکسان است.
نوشتن جدول روی دیسک و خروج. این گزینه با گزینه 'w' در منوی اصلی یکسان است.
ورود به منوی متخصصان. این گزینه با گزینه 'x' در منوی اصلی یکسان است.
?
چاپ منو. این گزینه (یا هر ورودی ناشناخته دیگری) خلاصه‌ای از گزینه‌های منو را نمایش می‌دهد.

سومین منوی gdisk منوی متخصصان (experts) است. این منو گزینه‌های پیشرفته‌ای را فراهم می‌کند که ارتباط نزدیکی با بازیابی یا تبدیل میان سیستم‌های پارتیشن‌بندی ندارند. گزینه‌های آن عبارتند از:

تنظیم مشخصه‌ها (attributes). ساختار GPT یک فیلد مشخصه ۶۴-بیتی ارائه می‌دهد که می‌توان از آن برای تنظیم ویژگی‌ها برای هر پارتیشن استفاده کرد. ابزار gdisk از چهار مشخصه پشتیبانی می‌کند: پارتیشن سیستم (system partition)، فقط‌خواندنی (read-only)، مخفی (hidden)، و عدم سوار کردن خودکار (do not automount). می‌توانید مشخصه‌های دیگری نیز تنظیم کنید، اما شماره‌های آن‌ها به چیز مفیدی ترجمه نمی‌شوند. در عمل، به نظر می‌رسد بیشتر سیستم‌عامل‌ها این مشخصه‌ها را نادیده می‌گیرند.
تعویض ترتیب بایت‌ها (byte order) برای نام پارتیشن مشخص‌شده. برخی از ابزارهای پارتیشن‌بندی، از جمله GPT fdisk نسخه 1.0.7 و قدیمی‌تر، ممکن است نام پارتیشن را با ترتیب بایت نادرست روی رایانه‌های big-endian (مانند سرورهای بزرگ IBM s390 و مک‌های مبتنی بر PowerPC) بنویسند. این قابلیت این مشکل را برطرف می‌کند.
تغییر GUID پارتیشن. با استفاده از این گزینه می‌توانید یک GUID یکتای سفارشی برای یک پارتیشن وارد کنید. (توجه داشته باشید که این به شناسه GUID اشاره دارد که یک پارتیشن را به طور یکتا مشخص می‌کند، نه به کد نوع آن که می‌توانید با گزینه 't' در منوی اصلی تغییر دهید.) به طور معمول، gdisk این شماره را به صورت تصادفی اختصاص می‌دهد؛ با این حال، اگر به دلیل تخصیص‌های معیوب GUID (امیدواریم نه در gdisk) یا یک تصادف بسیار نادر، دو پارتیشن با GUID یکسان داشته باشید، ممکن است بخواهید شماره را به صورت دستی تنظیم کنید.
نمایش مقدار هم‌ترازی سکتور. برای جزئیات بیشتر به توضیحات گزینه 'l' مراجعه کنید.
انتقال ساختارهای داده پشتیبان GPT به انتهای دیسک. اگر دیسک‌هایی را به یک آرایه RAID اضافه کرده‌اید و در نتیجه دیسکی مجازی با فضایی که پس از ساختارهای داده پشتیبان GPT قرار می‌گیرد ایجاد شده است، از این دستور استفاده کنید. این دستور ساختارهای داده پشتیبان GPT را به انتهای دیسک، جایی که به آن تعلق دارند، منتقل می‌کند.
تصادفی‌سازی مجدد GUID دیسک و تمام GUIDهای یکتای پارتیشن‌ها (اما نه GUIDهای کد نوع پارتیشن). این عملکرد را می‌توان پس از شبیه‌سازی (clone) یک دیسک با ابزاری دیگر استفاده کرد تا همه GUIDها مجدداً منحصر‌به‌فرد شوند.
تغییر GUID دیسک. هر دیسک دارای یک کد GUID یکتا است که gdisk هنگام ایجاد ساختارهای داده GPT به طور تصادفی اختصاص می‌دهد. با این گزینه می‌توانید یک GUID تصادفی جدید تولید کرده یا یکی را به صورت دستی وارد نمایید.
محاسبه مجدد مقادیر CHS در MBR محافظتی یا ترکیبی. اگر یک ابزار دیسک، سیستم‌عامل یا BIOS مقادیر CHS استفاده‌شده توسط پارتیشن‌ها در MBR محافظتی یا ترکیبی را نپذیرد، این گزینه گاهی می‌تواند مفید واقع شود. به طور خاص، مشخصات فنی GPT نیازمند مقدار CHS برابر 0xFFFFFF برای پارتیشن‌های بزرگتر از ۸ گیبی‌بایت است، اما این مقدار از نظر استانداردهای معمول از نظر فنی نامعتبر است. برخی از بایوس‌ها در صورت مواجهه با این مقدار متوقف (hang) می‌شوند. این گزینه یک مقدار عادی‌تر CHS (یعنی 0xFEFFFF برای پارتیشن‌های بزرگتر از ۸ گیبی‌بایت) را مجدداً محاسبه می‌کند و امکان بوت را برای این BIOSها فراهم می‌سازد.
نمایش اطلاعات تفصیلی پارتیشن. این گزینه با گزینه 'i' در منوی اصلی یکسان است.
تنظیم مکان جدول پارتیشن اصلی. این مقدار معمولاً ۲ است، اما در برخی موارد ممکن است نیاز به افزایش داشته باشد، مانند زمانی که یک سیستم بر روی چیپ (SoC) برای خواندن کد بوت از سکتور ۲ برنامه‌ریزی سخت‌افزاری شده باشد. توصیه می‌کنم این مقدار را تغییر ندهید مگر اینکه انجام این کار کاملاً ضروری باشد.
تنظیم مکان جدول پارتیشن پشتیبان. این جدول پارتیشن معمولاً درست قبل از متادیتای پشتیبان در انتهای دیسک قرار دارد، اما در موارد بسیار نادر ممکن است نیاز به جابجایی داشته باشد. توصیه می‌کنم این مقدار را تغییر ندهید مگر اینکه انجام این کار کاملاً ضروری باشد.
تغییر مقدار هم‌ترازی سکتور. دیسک‌هایی با سکتورهای منطقی بیشتر در هر سکتور فیزیکی (مانند درایوهای پیشرفته جدید با Advanced Format)، برخی پیکربندی‌های RAID و بسیاری از حافظه‌های SSD، در صورتی که پارتیشن‌ها به درستی با ساختارهای داده داخلی آن‌ها هم‌تراز نباشند، ممکن است دچار افت عملکرد شوند. در دیسک‌های جدید، ابزار GPT fdisk به طور پیش‌فرض سعی می‌کند پارتیشن‌ها را در مرزهای ۱ مبی‌بایت (۲۰۴۸ سکتور در دیسک‌هایی با سکتورهای ۵۱۲ بایتی) هم‌تراز کند، که عملکرد را برای همه این انواع دیسک بهینه می‌سازد. در دیسک‌های از پیش پارتیشن‌بندی‌شده، GPT fdisk تلاش می‌کند مقدار هم‌ترازی استفاده‌شده در آن دیسک را شناسایی کند، اما در دیسک‌های بزرگتر از ۳۰۰ گیگابایت هم‌ترازی ۸ سکتوری تعیین می‌کند حتی اگر مقادیر هم‌ترازی کمتری شناسایی شده باشند. در هر دو صورت، با استفاده از این گزینه می‌توان آن را تغییر داد. مقدار هم‌ترازی همچنین بر مقدار سکتور پایان پیش‌فرض هنگام ایجاد یک پارتیشن جدید تأثیر می‌گذارد؛ در صورت امکان، با یک واحد کمتر از مضربی از مقدار هم‌ترازی هم‌تراز خواهد شد. این کار باید اندازه پارتیشن‌ها را مضربی از مقدار هم‌ترازی نگه دارد. برخی از ابزارهای رمزنگاری دیسک نیاز دارند که اندازه پارتیشن‌ها مقداری مشخص (معمولاً ۴۰۹۶ بایت) باشد، بنابراین هم‌ترازی پیش‌فرض ۱ مبی‌بایت برای آن‌ها بسیار مناسب است.
بازگشت به منوی اصلی. این گزینه به شما امکان می‌دهد دستورات منوی اصلی را وارد کنید.
ایجاد یک MBR محافظتی جدید. اگر MBR محافظتی فعلی به گونه‌ای آسیب دیده باشد که gdisk به طور خودکار آن را شناسایی و اصلاح نکند، یا اگر بخواهید یک MBR ترکیبی را به یک GPT "خالص" با یک MBR محافظتی معمولی تبدیل کنید، از این گزینه استفاده نمایید.
چاپ داده‌های MBR محافظتی. با این گزینه می‌توانید خلاصه‌ای از پارتیشن‌های MBR محافظتی را مشاهده کنید. این عمل ممکن است شما را قادر سازد مشکلات آشکار را شناسایی کرده یا به تعیین پارتیشن‌ها در یک MBR ترکیبی کمک نماید.
چاپ جدول پارتیشن. این گزینه با گزینه 'p' در منوی اصلی یکسان است.
خروج بدون ذخیره تغییرات. این گزینه با گزینه 'q' در منوی اصلی یکسان است.
ورود به منوی بازیابی و تبدیل‌ها. این گزینه با گزینه 'r' در منوی اصلی یکسان است.
تغییر اندازه جدول پارتیشن. اندازه پیش‌فرض جدول پارتیشن ۱۲۸ ورودی است. به طور رسمی، اندازه‌های کمتر از ۱۶ کیلوبایت (۱۲۸ ورودی، با توجه به اندازه معمول هر ورودی) توسط مشخصات GPT پشتیبانی نمی‌شوند؛ با این حال، در عمل به نظر می‌رسد که کار می‌کنند و گاهی اوقات می‌توانند در تبدیل دیسک‌های MBR مفید باشند. اندازه‌های بزرگتر نیز به خوبی عمل می‌کنند. البته سیستم‌عامل‌ها ممکن است محدودیت‌های خاص خود را برای تعداد پارتیشن‌ها اعمال نمایند.
تعویض جای دو ورودی در جدول پارتیشن. یکی از پارتیشن‌ها ممکن است خالی باشد. برای مثال، اگر پارتیشن‌های ۱ تا ۴ تعریف شده باشند، جابجایی ۱ و ۵ باعث ایجاد جدولی با پارتیشن‌های شماره ۲ تا ۵ می‌شود. تعویض پارتیشن‌ها به این روش هیچ تأثیری بر تخصیص فضای دیسک آن‌ها ندارد؛ فقط ترتیب آن‌ها را در جدول پارتیشن تغییر می‌دهد.
شبیه‌سازی جدول پارتیشن دستگاه فعلی بر روی دستگاهی دیگر. از شما خواسته می‌شود نام فایل دستگاه جدید را تایپ کنید. پس از تکمیل عملیات نوشتن، می‌توانید به ویرایش جدول پارتیشن دستگاه اصلی ادامه دهید. توجه داشته باشید که جدول پارتیشن تکثیرشده یک کپی دقیق شامل تمام GUIDها است؛ اگر دستگاه جدید باید GUIDهای یکتای خود را داشته باشد، باید از گزینه f بر روی دیسک جدید استفاده کنید.
بررسی و اعتبارسنجی دیسک. این گزینه با گزینه 'v' در منوی اصلی یکسان است.
پاک کردن (نابودی) ساختارهای داده GPT و خروج. اگر می‌خواهید با استفاده از fdisk یا برنامه دیگری که از GPT پشتیبانی نمی‌کند، یک دیسک GPT را دوباره پارتیشن‌بندی کنید، از این گزینه بهره ببرید. به شما حق انتخاب داده می‌شود که آیا MBR موجود حفظ شود یا خیر، در صورتی که یک MBR ترکیبی با پارتیشن‌های قابل نجات باشد یا قبلاً پارتیشن‌های جدید MBR ایجاد کرده باشید و بخواهید بقایای پارتیشن‌های GPT خود را پاک کنید. اگر قبلاً پارتیشن‌های جدید MBR ایجاد کرده‌اید، ممکن است این گزینه به اولین و/یا آخرین پارتیشن‌های MBR آسیب برساند! چنین رویدادی بعید است، اما در صورتی که پارتیشن‌های جدید MBR شما با ساختارهای قدیمی داده GPT هم‌پوشانی داشته باشند، ممکن است رخ دهد.
?
چاپ منو. این گزینه (یا هر ورودی ناشناخته دیگری) خلاصه‌ای از گزینه‌های منو را نمایش می‌دهد.

در بسیاری از موارد، هنگام وارد کردن اطلاعات می‌توانید با فشردن کلید Enter یک گزینه پیش‌فرض را انتخاب کنید. هنگامی که تنها یک گزینه ممکن باشد، gdisk معمولاً اعلان ورودی را به طور کامل نادیده می‌گیرد.

اشکالات و محدودیت‌های شناخته‌شده عبارتند از:

*
این برنامه فقط در لینوکس، FreeBSD، Mac OS X و ویندوز به درستی کامپایل می‌شود. نسخه‌های لینوکس برای سامانه‌های x86-64 (۶۴-بیتی)، x86 (۳۲-بیتی) و PowerPC (۳۲-بیتی) آزمایش شده‌اند که نسخه x86-64 بیشترین آزمایش را داشته است. در FreeBSD، نسخه‌های ۳۲-بیتی (x86) و ۶۴-بیتی (x86-64) آزمایش شده‌اند. توسط نویسنده تنها نسخه‌های ۳۲-بیتی برای Mac OS X و ویندوز آزمایش شده‌اند، اگرچه گزارش‌هایی از کامپایل موفق نسخه‌های ۶۴-بیتی شنیده شده است.
*
نسخه FreeBSD برنامه زمانی که پارتیشن‌های موجود روی دیسک سوار (mount) شده باشند، نمی‌تواند تغییرات جدول پارتیشن را بر روی دیسک بنویسد. (همین مشکل در بسیاری از ابزارهای دیگر FreeBSD مانند gpt، fdisk و dd نیز وجود دارد.) این محدودیت را می‌توان با وارد کردن عبارت sysctl kern.geom.debugflags=16 در خط فرمان شل برطرف کرد.
*
فیلدهای مورد استفاده برای نمایش شماره سکتورهای شروع و پایان برای پارتیشن‌ها در دستور 'p' دارای پهنای ۱۴ کاراکتر هستند. این مقدار معادل محدودیتی در حدود ۴۵ پبی‌بایت (PiB) است. در دیسک‌های بزرگتر، ستون‌های نمایش‌داده‌شده از تراز خارج خواهند شد.
*
در نسخه ویندوز، در فیلد نام پارتیشن فقط از کاراکترهای ASCII پشتیبانی می‌شود. اگر یک پارتیشن موجود از کاراکترهای غیر ASCII در قالب UTF-16 استفاده کند، احتمالاً در نمایش گزینه‌های منوی 'i' و 'p' مخدوش خواهند شد؛ با این حال، هنگام بارگذاری و ذخیره پارتیشن‌ها باید حفظ شوند. باینری‌های لینوکس، FreeBSD و OS X از نام‌های پارتیشن کامل UTF-16 پشتیبانی می‌کنند.
*
این برنامه هنگام تبدیل از فرمت MBR فقط می‌تواند تا ۱۲۸ پارتیشن (۴ پارتیشن اولیه و ۱۲۴ پارتیشن منطقی) را بارگذاری کند. این محدودیت را می‌توان با تغییر خط #define MAX_MBR_PARTS در فایل کد منبع basicmbr.h و کامپایل مجدد افزایش داد؛ با این حال، چنین تغییری مستلزم استفاده از یک جدول پارتیشن بزرگتر از حد معمول خواهد بود. (محدودیت ۱۲۸ پارتیشن از آنجا انتخاب شد که این تعداد با ۱۲۸ پارتیشن پشتیبانی‌شده توسط متداول‌ترین اندازه جدول پارتیشن برابر است.)
*
تبدیل از قالب MBR گاهی اوقات به دلیل کمبود فضا در ابتدا یا (معمولاً) در انتهای دیسک با شکست مواجه می‌شود. تغییر اندازه جدول پارتیشن (با استفاده از گزینه 's' در منوی متخصصان) گاهی اوقات می‌تواند بر این مشکل غلبه کند؛ با این حال، در موارد حاد ممکن است لازم باشد قبل از تبدیل با gdisk، اندازه یک پارتیشن با استفاده از GNU Parted یا ابزاری مشابه تغییر داده شود.
*
تبدیل‌های MBR تنها در صورتی کار می‌کنند که دیسک دارای توصیف‌کننده‌های سکتور LBA صحیح برای پارتیشن‌ها باشد. این توصیف‌کننده‌ها باید در هر دیسکی با اندازه بیش از ۸ گیبی‌بایت یا در دیسک‌های کوچکتری که با نرم‌افزارهای غیربسیار قدیمی پارتیشن‌بندی شده‌اند وجود داشته باشند.
*
پشتیبانی از برچسب دیسک BSD می‌تواند پارتیشن‌های ابتدایی و/یا انتهایی ایجاد کند که با ساختارهای داده GPT هم‌پوشانی دارند. این موضوع گاهی اوقات می‌تواند با تنظیم اندازه جدول پارتیشن جبران شود، اما در موارد حاد ممکن است لازم باشد پارتیشن(های) آسیب‌دیده حذف شوند.
*
به دلیل ماهیت بسیار متغیر ساختارهای برچسب دیسک BSD، تبدیل از این فرمت ممکن است غیرقابل اعتماد باشد – پارتیشن‌ها ممکن است حذف شوند، به روشی تبدیل شوند که باعث ایجاد هم‌پوشانی با سایر پارتیشن‌ها شود، یا با مقادیر شروع یا پایان نادرست تبدیل گردند. از این قابلیت با احتیاط استفاده کنید!
*
بوت شدن پس از تبدیل یک دیسک با برچسب دیسک MBR یا BSD احتمالاً با اختلال مواجه می‌شود. گاهی اوقات نصب مجدد یک بارگذار بوت مشکل را حل می‌کند، اما در زمان‌های دیگر ممکن است لازم باشد بارگذار بوت را تغییر دهید. به استثنای پلتفرم‌های مبتنی بر EFI، سیستم‌عامل ویندوز حداقل تا ویندوز 7 از بوت شدن از روی دیسک‌های GPT پشتیبانی نمی‌کند. در این مورد ایجاد یک MBR ترکیبی (با استفاده از گزینه 'h' در منوی بازیابی و تبدیل) یا صرف نظر کردن از GPT به نفع MBR ممکن است تنها گزینه‌های شما باشند.

نویسنده اصلی: Roderick W. Smith (rodsmith@rodsbooks.com)

مشارکت‌کنندگان:

* Yves Blusseau (1otnwmz02@sneakemail.com)

* David Hubbard (david.c.hubbard@gmail.com)

* Justin Maggard (justin.maggard@netgear.com)

* Dwight Schauer (das@teegra.net)

* Florian Zumbiehl (florz@florz.de)

cfdisk(8), cgdisk(8), fdisk(8), mkfs(8), parted(8), sfdisk(8), sgdisk(8), fixparts(8).

https://en.wikipedia.org/wiki/GUID_Partition_Table

https://developer.apple.com/technotes/tn2006/tn2166.html

https://www.rodsbooks.com/gdisk

دستور gdisk بخشی از بسته GPT fdisk است و از Rod Smith در دسترس می‌باشد.

1.0.10 Roderick W. Smith