.\" Copyright 2011-2024 Roderick W. Smith (rodsmith@rodsbooks.com) .\" May be distributed under the GNU General Public License .TH "SGDISK" "8" "1.0.10" "Roderick W. Smith" "GPT fdisk Manual" .SH "نام (NAME)" sgdisk \- ابزار خط فرمان برای دستکاری پارتیشن‌های GPT در لینوکس .SH "خلاصه دستور (SYNOPSIS)" .BI "sgdisk " [ options ] .I device .SH "توضیحات (DESCRIPTION)" بسته GPT fdisk ابزاری متنی و منومحور برای ایجاد و دستکاری جداول پارتیشن است. این بسته از دو برنامه تشکیل شده است: برنامه تعاملی متنی \fBgdisk\fR و برنامه خط فرمانی \fBsgdisk\fR. هر دو برنامه می‌توانند جدول پارتیشن قدیمی Master Boot Record (MBR) یا دیسک‌لیبل BSD که بدون پارتیشن حامل MBR ذخیره شده است را به فرمت جدیدتر Globally Unique Identifier (GUID) Partition Table (GPT) تبدیل کنند، یا یک جدول پارتیشن GUID را بارگذاری نمایند. این صفحه راهنما به مستندسازی برنامه خط فرمانی \fBsgdisk\fR می‌پردازد. برخی از گزینه‌های پیشرفته دستکاری و بازیابی داده‌ها نیازمند درک تمایز میان داده‌های اصلی و نسخه پشتیبان و همچنین میان هدرهای GPT و جداول پارتیشن هستند. برای اطلاعات درباره مقایسه MBR با GPT و همچنین واژگان و ساختار GPT، مستندات گسترده \fBgdisk\fR را در \fIhttps://www.rodsbooks.com/gdisk\fR مشاهده کنید یا به ویکی‌پدیا مراجعه نمایید. برنامه \fBsgdisk\fR از یک رابط کاربری کاملاً مبتنی بر خط فرمان استفاده می‌کند، که آن را برای استفاده در اسکریپت‌ها یا توسط کارشناسانی که می‌خواهند یک یا دو تغییر سریع روی دیسک اعمال کنند مناسب می‌سازد. (البته برنامه ممکن است هنگام مواجهه با برخی خطاهای خاص از کاربر سوال بپرسد.) نام برنامه بر اساس \fBsfdisk\fR انتخاب شده است، اما گزینه‌های کاربری این دو برنامه کاملاً با یکدیگر تفاوت دارند. به‌طور معمول، \fBsgdisk\fR روی فایل‌های دستگاه دیسک کار می‌کند، مانند \fI/dev/sda\fR یا \fI/dev/hda\fR در لینوکس، \fI/dev/disk0\fR در Mac OS X، یا \fI/dev/ad0\fR یا \fI/dev/da0\fR در FreeBSD. این برنامه همچنین می‌تواند روی فایل‌های ایمیج دیسک عمل کند، که می‌توانند رونوشت کاملی از کل دیسک (مثلاً ایجادشده با \fBdd\fR) یا ایمیج‌های خام دیسک مورد استفاده شبیه‌سازهایی مانند QEMU یا VMWare باشند. توجه داشته باشید که فقط ایمیج‌های خام دیسک (\fIraw\fR) پشتیبانی می‌شوند؛ \fBsgdisk\fR نمی‌تواند روی فرمت‌های فشرده یا سایر فرمت‌های پیشرفته ایمیج دیسک کار کند. سیستم پارتیشن‌بندی MBR از ترکیبی از آدرس‌دهی سیلندر/هد/سکتور (CHS) و آدرس‌دهی بلوک منطقی (LBA) استفاده می‌کند. روش اول دست‌وپاگیر و محدودکننده است. GPT آدرس‌دهی CHS را کنار گذاشته و منحصراً از حالت 64\-بیتی LBA استفاده می‌کند. بنابراین، ساختارهای داده GPT و در نتیجه \fBsgdisk\fR نیازی به درگیر شدن با هندسه‌های CHS و تمام مشکلات ناشی از آن ندارند. برای بهترین نتیجه، در صورت امکان همواره باید از برنامه جدول پارتیشن مخصوص هر سیستم‌عامل استفاده کنید. برای مثال، پارتیشن‌های Mac OS X را باید با برنامه Mac OS X Disk Utility و پارتیشن‌های لینوکس را با برنامه‌های لینوکسی \fBgdisk\fR، \fBsgdisk\fR یا GNU Parted ایجاد کنید. در هنگام شروع، \fBsgdisk\fR تلاش می‌کند نوع پارتیشن استفاده‌شده روی دیسک را شناسایی کند. اگر داده‌های معتبر GPT بیابد، از آن استفاده خواهد کرد. اگر \fBsgdisk\fR یک MBR یا دیسک‌لیبل BSD معتبر پیدا کند اما داده‌های GPT وجود نداشته باشد، تلاش می‌کند MBR یا دیسک‌لیبل را به فرمت GPT تبدیل کند. (البته دیسک‌لیبل‌های BSD به احتمال زیاد دارای پارتیشن‌های ابتدایی یا انتهایی غیرقابل استفاده خواهند بود، زیرا با ساختارهای داده GPT هم‌پوشانی دارند.) برنامه GPT fdisk می‌تواند دیسک‌های Apple Partition Map (APM) را که در مکینتاش‌های مبتنی بر 680x0 و PowerPC استفاده می‌شوند شناسایی کند، اما نمی‌تواند از داده‌های آن‌ها استفاده کند. اگر گزینه‌ای را تعیین کنید که منجر به تغییرات در یک MBR یا دیسک‌لیبل BSD شود، \fBsgdisk\fR آن تغییرات را نادیده می‌گیرد مگر اینکه از گزینه \fI\-g\fR (\fI\-\-mbrtogpt\fR)، \fI\-z\fR (\fI\-\-zap\fR) یا \fI\-Z\fR (\fI\-\-zap\-all\fR) استفاده شود. اگر از گزینه \fI\-g\fR استفاده کنید، \fBsgdisk\fR جدول MBR یا دیسک‌لیبل را با یک GPT جایگزین می‌کند. \fIاین عمل بالقوه خطرناک است!\fR سیستم شما ممکن است غیرقابل بوت شود و اگر دیسک از کدهای نوع ناشناخته استفاده کند، کدهای نوع پارتیشن ممکن است خراب شوند. مشکلات بوت به‌ویژه زمانی محتمل هستند که دیسک را با سیستم‌عامل‌های ناآگاه از GPT به صورت چندبوتی (multi-boot) استفاده کنید. تبدیل MBR به GPT در صورتی که MBR اصلی از پارتیشن‌های منطقی (logical) استفاده کرده باشد، حداقل یک شکاف در شماره‌گذاری پارتیشن‌ها باقی خواهد گذاشت. این شکاف‌ها بی‌ضرر هستند، اما در صورت تمایل می‌توانید با استفاده از گزینه \fI\-s\fR (\fI\-\-sort\fR) آن‌ها را حذف کنید. (انجام این کار ممکن است مستلزم به‌روزرسانی فایل \fI/etc/fstab\fR شما باشد.) هنگام ایجاد یک جدول پارتیشن تازه، ممکن است نکات زیر حائز اهمیت باشند: .TP .B * برای دیسک‌های داده (غیربوت) و دیسک‌های بوت مورد استفاده در رایانه‌های مبتنی بر BIOS همراه با لودر بوت GRUB، پارتیشن‌ها را می‌توان به هر ترتیب و با هر اندازه دلخواهی ایجاد کرد. .TP .B * دیسک‌های بوت برای سیستم‌های مبتنی بر EFI نیازمند یک \fIEFI System Partition\fR (کد داخلی \fBgdisk\fR برابر با 0xEF00) هستند که با فرمت FAT-32 قالب‌بندی شده باشد. توصیه می‌شود اندازه این پارتیشن 550 مگابایت (MiB) در نظر گرفته شود. (پارتیشن‌های ESP کوچک‌تر رایج هستند، اما برخی از نسخه‌های EFI دارای درایورهای ناقص یا ناپایدار FAT هستند که برای عملکرد قابل اعتماد به پارتیشن بزرگ‌تری نیاز دارند.) فایل‌های مربوط به بوت در اینجا ذخیره می‌شوند. (توجه داشته باشید که GNU Parted چنین پارتیشن‌هایی را به صورت داشتن "boot flag" تنظیم‌شده شناسایی می‌کند.) .TP .B * برخی از لودرهای بوت برای سیستم‌های مبتنی بر BIOS از یک \fIBIOS Boot Partition\fR (کد داخلی \fBgdisk\fR برابر با 0xEF02) استفاده می‌کنند که در آن لودر بوت ثانویه ذخیره می‌شود؛ احتمالاً حتی بدون بهره‌گیری از یک سیستم‌فایل. (GRUB2 می‌تواند به صورت اختیاری از چنین پارتیشنی استفاده کند.) این پارتیشن معمولاً می‌تواند بسیار کوچک باشد (حدود ۳۲ تا ۲۰۰ کیلوبایت، اگرچه در عمل ۱ مگابایت رایج‌تر است)، اما برای جزئیات بیشتر باید به مستندات لودر بوت خود مراجعه کنید. .TP .B * اگر قرار است ویندوز از یک دیسک GPT بوت شود، ایجاد پارتیشنی از نوع \fIMicrosoft Reserved\fR (کد داخلی \fBsgdisk\fR برابر با 0x0C01) توصیه می‌شود. اندازه این پارتیشن باید حدود ۱۲۸ مگابایت باشد. این پارتیشن معمولاً بعد از EFI System Partition و بلافاصله قبل از پارتیشن‌های داده ویندوز قرار می‌گیرد. (توجه داشته باشید که GNU Parted تمام پارتیشن‌های FAT را از این نوع ایجاد می‌کند که این امر عملاً باعث غیرقابل استفاده شدن پارتیشن برای ذخیره‌سازی عادی فایل در هر دو سیستم‌عامل ویندوز و Mac OS X می‌شود.) .TP .B * ابزارهای GPT در برخی سیستم‌عامل‌ها فضای خالی (معمولاً ۱۲۸ مگابایت) بعد از هر پارتیشن ایجاد می‌کنند. هدف این است که ابزارهای آینده دیسک بتوانند از این فضا استفاده کنند. چنین فضای خالی برای دیسک‌های GPT الزامی نیست، اما ایجاد آن ممکن است به نگهداری دیسک در آینده کمک کند. .SH "گزینه‌ها (OPTIONS)" برخی گزینه‌ها هیچ آرگومانی دریافت نمی‌کنند، برخی دیگر یک آرگومان دریافت می‌کنند (معمولاً یک شماره پارتیشن)، و برخی دیگر آرگومان‌های ترکیبی با جداکننده دونقطه دریافت می‌کنند. برای نمونه، گزینه \fI\-n\fR (\fI\-\-new\fR) یک شماره پارتیشن، شماره سکتور شروع و شماره سکتور پایان دریافت می‌کند، مانند \fBsgdisk \-n 2:2000:50000 /dev/sdc\fR که پارتیشن جدیدی با شماره ۲ ایجاد می‌کند که از سکتور ۲۰۰۰ شروع شده و در سکتور ۵۰۰۰۰ روی \fI/dev/sdc\fR به پایان می‌رسد. گزینه‌های غیرمرتبط را می‌توان با یکدیگر ترکیب کرد؛ با این حال، برخی از چنین ترکیب‌هایی بی‌معنی خواهند بود (مانند حذف یک پارتیشن و سپس تغییر کد نوع GUID آن). برنامه \fBsgdisk\fR گزینه‌ها را به ترتیبی که وارد شده‌اند تفسیر می‌کند، بنابراین اثرات می‌توانند بسته به ترتیب متفاوت باشند. برای نمونه، دستور \fBsgdisk \-s \-d 2\fR ابتدا ورودی‌های جدول پارتیشن را مرتب می‌کند و سپس پارتیشن ۲ را از فهرست تازه مرتب‌شده حذف می‌کند؛ اما دستور \fBsgdisk \-d 2 \-s\fR پارتیشن ۲ اصلی را حذف می‌کند و سپس جدول پارتیشن تغییریافته را مرتب می‌سازد. بررسی خطا و فرصت‌های تصحیح اشتباهات در \fBsgdisk\fR حداقلی است. اگرچه برنامه تلاش می‌کند ساختارهای داده GPT را معتبر نگه دارد، اما قبل از انجام اقدامات خود از کاربر تاییدیه نمی‌خواهد. مگر اینکه حتماً به یک برنامه خط فرمانی نیاز داشته باشید، باید به جای \fBsgdisk\fR از برنامه تعاملی \fBgdisk\fR استفاده کنید، زیرا \fBgdisk\fR به شما امکان می‌دهد در صورت بروز اشتباه، بدون ذخیره تغییرات از برنامه خارج شوید. اگرچه \fBsgdisk\fR بر پایه همان کد دستکاری پارتیشن در \fBgdisk\fR ساخته شده است، اما ویژگی‌های کمتری نسبت به همتای تعاملی خود پیاده‌سازی می‌کند. گزینه‌های موجود در \fBsgdisk\fR عبارتند از: .TP .B \-a, \-\-set\-alignment=value تنظیم مضرب تراز سکتور. برنامه GPT fdisk شروع پارتیشن‌ها را با سکتورهایی که مضربی از این مقدار هستند تراز می‌کند، که مقدار پیش‌فرض آن روی دیسک‌های تازه فرمت‌شده ۱ مگابایت (۲۰۴۸ روی دیسک‌هایی با سکتورهای ۵۱۲ بایتی) است. این مقدار تراز برای دستیابی به عملکرد بهینه با درایوهای Western Digital Advanced Format و درایوهای مشابه که اندازه سکتور فیزیکی آن‌ها بزرگ‌تر از سکتور منطقی است، با برخی از انواع آرایه‌های RAID، و با دستگاه‌های SSD ضروری است. هنگامی که از گزینه \fI\-I\fR استفاده شود، همین مقدار تراز برای تعیین نقاط پایان پارتیشن نیز استفاده می‌شود؛ اما پارتیشن‌ها در یک واحد کمتر از مضرب این مقدار خاتمه می‌یابند تا طول پارتیشن مضربی از این مقدار باقی بماند. .TP .B \-A, \-\-attributes=list|[partnum:show|or|nand|xor|=|set|clear|toggle|get[:bitnum|hexbitmask]] مشاهده یا تنظیم ویژگی‌های پارتیشن. از \fIlist\fR برای مشاهده مقادیر ویژگی‌های تعریف‌شده (شناخته‌شده) استفاده کنید. هنگام استفاده از این گزینه، شماره پارتیشن (و حتی نام فایل دستگاه) را حذف کنید. سایر موارد نیازمند یک شماره پارتیشن هستند. گزینه‌های \fIshow\fR و \fIget\fR تنظیمات فعلی ویژگی را نمایش می‌دهند (به ترتیب همه ویژگی‌ها یا برای یک بیت خاص). گزینه‌های \fIor\fR، \fInand\fR، \fIxor\fR، \fI=\fR، \fIset\fR، \fIclear\fR و \fItoggle\fR به شما امکان می‌دهند مقدار بیت ویژگی را تغییر دهید. گزینه‌های \fIset\fR، \fIclear\fR، \fItoggle\fR و \fIget\fR روی یک شماره بیت عمل می‌کنند؛ سایر موارد روی یک ماسک بیتی هگزادسیمال کار می‌کنند. برای مثال، دستور \fBsgdisk \-A 4:set:2 /dev/sdc\fR را وارد کنید تا ویژگی بیت ۲ (قابل بوت در BIOS سنتی) را روی پارتیشن ۴ در \fI/dev/sdc\fR تنظیم کند. .TP .B \-b, \-\-backup=file ذخیره داده‌های پارتیشن در یک فایل پشتیبان. با استفاده از این گزینه می‌توانید از جدول پارتیشن فعلی درون حافظه در یک فایل دیسک نسخه پشتیبان تهیه کنید. فایل حاصل یک فایل باینری شامل MBR محافظتی، هدر اصلی GPT، هدر پشتیبان GPT و یک نسخه از جدول پارتیشن به همین ترتیب خواهد بود. توجه داشته باشید که نسخه پشتیبان از ساختارهای داده فعلی درون حافظه گرفته می‌شود؛ بنابراین اگر برنامه را اجرا کنید، تغییراتی ایجاد نمایید و سپس از این گزینه استفاده کنید، نسخه پشتیبان بازتاب‌دهنده تغییرات شما خواهد بود. اگر ساختارهای داده GPT آسیب دیده باشند، ممکن است نسخه پشتیبان وضعیت آسیب‌دیده را به درستی منعکس نکند؛ در عوض، بازتاب‌دهنده تفسیر اولیه GPT fdisk از GPT خواهد بود. .TP .B \-B, \-\-byte\-swap\-name=partnum جابه‌جایی ترتیب بایت‌ها (byte order) برای نام پارتیشن مشخص‌شده. برخی از ابزارهای پارتیشن‌بندی، از جمله GPT fdisk نسخه 1.0.7 و نسخه‌های پیش از آن، ممکن است نام پارتیشن را با ترتیب بایت نادرست روی رایانه‌های big-endian (مانند مِین‌فریم‌های IBM s390 و مک‌های مبتنی بر PowerPC) بنویسند. این قابلیت این مشکل را برطرف می‌کند. .TP .B \-c, \-\-change\-name=partnum:name تغییر نام GPT یک پارتیشن. این نام به صورت رشته UTF\-16 کدگذاری می‌شود، اما وارد کردن و نمایش مناسب هر کاراکتری فراتر از مقادیر پایه‌ای ASCII نیازمند پشتیبانی مناسب از محلی‌سازی (locale) و قلم است. در بیشتر موارد، لینوکس نام پارتیشن را نادیده می‌گیرد، اما ممکن است در برخی سیستم‌عامل‌ها مهم باشد. اگر می‌خواهید نامی را تعیین کنید که حاوی فاصله است، آن را درون علامت نقل‌قول قرار دهید، مانند \fIsgdisk \-c 1:"Sample Name" /dev/sdb\fR. توجه داشته باشید که نام GPT یک پارتیشن از نام سیستم‌فایل که در ساختارهای داده سیستم‌فایل کدگذاری می‌شود، مجزا است. .TP .B \-C, \-\-recompute-chs محاسبه مجدد مقادیر CHS در MBR محافظتی یا ترکیبی. این گزینه گاهی اوقات می‌تواند کمک‌کننده باشد چنانچه ابزار دیسک، سیستم‌عامل یا BIOS مقادیر CHS استفاده‌شده توسط پارتیشن‌ها در MBR محافظتی یا ترکیبی را نپذیرد. به‌ویژه، مشخصات GPT مقدار CHS برابر با 0xFFFFFF را برای پارتیشن‌های بزرگ‌تر از ۸ گیبی‌بایت الزامی می‌داند، اما این مقدار از نظر فنی بر اساس استانداردهای معمول غیرمجاز است. برخی از بایوس‌ها در صورت مواجهه با این مقدار متوقف می‌شوند. این گزینه مقدار نرمال‌تری از CHS را مجدداً محاسبه می‌کند \-\- مقدار 0xFEFFFF برای پارتیشن‌های بزرگ‌تر از ۸ گیبی‌بایت، که امکان بوت شدن این بایوس‌ها را فراهم می‌سازد. .TP .B \-d, \-\-delete=partnum حذف یک پارتیشن. این اقدام ورودی را از جدول پارتیشن حذف می‌کند اما داده‌های درون سکتورهایی که در اصل به آن پارتیشن روی دیسک تخصیص یافته بودند را دستکاری نمی‌کند. اگر پارتیشن MBR ترکیبی متناظری وجود داشته باشد، \fBgdisk\fR آن را نیز حذف می‌کند و هر پارتیشن محافظتی MBR مجاور از نوع 0xEE (EFI GPT) را برای پر کردن فضای خالی جدید گسترش می‌دهد. .TP .B \-D, \-\-display\-alignment نمایش مقدار فعلی تراز سکتور. پارتیشن‌ها بر روی مضاربی از مقدار سکتور گزارش‌شده توسط این گزینه ایجاد خواهند شد. می‌توانید مقدار تراز را با گزینه \-a تغییر دهید. .TP .B \-e, \-\-move\-second\-header انتقال ساختارهای داده پشتیبان GPT به انتهای دیسک. از این گزینه استفاده کنید اگر دیسک‌هایی را به یک آرایه RAID اضافه کرده‌اید و در نتیجه یک دیسک مجازی با فضایی ایجاد شده است که پس از ساختارهای داده پشتیبان GPT قرار می‌گیرد. این دستور ساختارهای داده پشتیبان GPT را به انتهای دیسک، یعنی جایی که به آن تعلق دارند، منتقل می‌کند. .TP .B \-E, \-\-end\-of\-largest نمایش شماره سکتور پایان بزرگ‌ترین بلوک سکتورهای در دسترس روی دیسک. یک اسکریپت می‌تواند این مقدار را ذخیره کرده و به عنوان بخشی از گزینه \fI\-n\fR برای ایجاد یک پارتیشن بازگرداند. اگر هیچ سکتور تخصیص‌نیافته‌ای در دسترس نباشد، این تابع مقدار 0 را برمی‌گرداند. .TP .B \-f, \-\-first\-in\-largest نمایش شماره سکتور شروع بزرگ‌ترین بلوک سکتورهای در دسترس روی دیسک. یک اسکریپت می‌تواند این مقدار را ذخیره کرده و به عنوان بخشی از گزینه \fI\-n\fR برای ایجاد یک پارتیشن بازگرداند. اگر هیچ سکتور تخصیص‌نیافته‌ای در دسترس نباشد، این تابع مقدار 0 را برمی‌گرداند. توجه داشته باشید که این پارامتر نسبت به تراز پارتیشن کور است؛ زمانی که در عمل یک پارتیشن ایجاد می‌کنید، نقطه شروع آن ممکن است نسبت به این مقدار تغییر کند. .TP .B \-F, \-\-first\-aligned\-in\-largest مشابه با \fI\-f\fR (\fI\-\-first\-in\-largest\fR)، با این تفاوت که شماره سکتور را با اعمال اصلاحات تراز فعلی برمی‌گرداند. از این تابع استفاده کنید اگر نیاز دارید نقطه شروع واقعی پارتیشن را محاسبه کنید نه یک نقطه شروع تئوری، یا نقطه شروع واقعی را در حالتی که مقدار تراز را روی ۱ تنظیم کرده‌اید. .TP .B \-g, \-\-mbrtogpt تبدیل یک دیسک دارای MBR یا دیسک‌لیبل BSD به دیسک GPT. به عنوان یک اقدام ایمنی، استفاده از این گزینه روی دیسک‌های دارای MBR یا دیسک‌لیبل BSD در صورتی که قصد ذخیره تغییرات خود را دارید الزامی است تا از آسیب تصادفی به چنین دیسک‌هایی جلوگیری شود. .TP .B \-G, \-\-randomize\-guids تصادفی‌سازی GUID دیسک و GUIDهای یکتای تمام پارتیشن‌ها (اما نه GUIDهای کد نوع پارتیشن آن‌ها). این تابع ممکن است پس از شبیه‌سازی یک دیسک استفاده شود تا تمام GUIDها را بار دیگر یکتا سازد. .TP .B \-h, \-\-hybrid ایجاد یک MBR ترکیبی. این گزینه از یک تا سه شماره پارتیشن را که با علامت دونقطه از هم جدا شده‌اند، به عنوان آرگومان دریافت می‌کند. شما می‌توانید به صورت اختیاری یک پارتیشن نهایی "EE" را تعیین کنید تا نشان دهد EFI GPT (نوع 0xEE) باید در انتهای جدول قرار گیرد، در غیر این صورت در ابتدای جدول قرار خواهد گرفت و به دنبال آن پارتیشن(های) تعیین‌شده توسط شما می‌آیند. کدهای نوع آن‌ها بر اساس کدهای نوع GPT fdisk تقسیم بر 0x0100 تعیین می‌شوند، که معمولاً برای پارتیشن‌های ویندوز صحیح است. اگر فلگ فعال/قابل بوت (active/bootable) باید تنظیم شود، باید این کار را در برنامه دیگری مانند \fBfdisk\fR انجام دهید. برنامه \fBgdisk\fR گزینه‌های بیشتری برای ایجاد MBR ترکیبی ارائه می‌دهد. .TP .B \-i, \-\-info=partnum نمایش اطلاعات تفصیلی پارتیشن. اطلاعات خلاصه‌ای که توسط دستور \fI\-p\fR تولید می‌شود لزوماً بسیاری از جزئیات، مانند GUID یکتای پارتیشن و ترجمه کد نوع داخلی پارتیشن در \fBsgdisk\fR به یک نام ساده نوع را حذف می‌کند. گزینه \fI\-i\fR این اطلاعات را برای یک پارتیشن منفرد نمایش می‌دهد. .TP .B \-I, \-\-align\-end در صورت امکان، نقاط پایانی پارتیشن‌ها را در یک واحد کمتر از مضرب مقدار تراز، تراز می‌کند. هنگامی که هم نقاط شروع و هم نقاط پایان تراز باشند، اندازه پارتیشن‌ها مضاربی از مقدار تراز خواهد بود، که این امر برای عملکرد صحیح برخی از ابزارهای رمزنگاری پارتیشن ضروری است. این گزینه برای تمام پارتیشن‌هایی که \fBپس از\fR این گزینه در خط فرمان ایجاد می‌شوند اعمال می‌گردد. توجه داشته باشید که این ترازسازی همیشه امکان‌پذیر نیست؛ برای مثال، اگر فضای خالی در انتهای دیسک کمتر از مقدار تراز باشد، در حالی که پارتیشن نهایی فعلی تراز شده باشد، و اگر از \fBsgdisk\fR خواسته شود در آن فضا پارتیشنی بسازد، انتهای آن تراز \fBنخواهد شد\fR. .TP .B \-j, \-\-move\-main\-table=sector تنظیم سکتور شروع جدول پارتیشن اصلی. این مقدار معمولاً ۲ است، اما در برخی موارد ممکن است نیاز به افزایش داشته باشد، مثلاً زمانی که یک سیستم روی تراشه (SoC) برای خواندن کد بوت از سکتور ۲ کدنویسی سخت‌افزاری (hard-code) شده باشد. توصیه می‌شود از تغییر این مقدار خودداری کنید مگر اینکه انجام آن کاملاً ضروری باشد. .TP .B \-k, \-\-move\-backup\-table=sector تنظیم سکتور شروع جدول پارتیشن دوم/پشتیبان. جدول پشتیبان معمولاً درست قبل از آخرین سکتور قرار می‌گیرد که هدر پشتیبان را نگهداری می‌کند. مقدار پیش‌فرض بنابراین اندازه دیسک منهای یک، منهای اندازه کل جدول پارتیشن (به سکتور، معمولاً ۳۲) است. احتمالاً دلایل بسیار کمی برای تغییر این مقدار وجود دارد، و در حالی که استاندارد EFI الزامی در این مورد تعیین نمی‌کند، بیشتر ابزارها فرض می‌کنند که جدول پشتیبان در انتهای انتهایی دیسک قرار دارد. .TP .B \-l, \-\-load\-backup=file بارگذاری داده‌های پارتیشن از یک فایل پشتیبان. این گزینه معکوس گزینه \fI\-b\fR است. توجه داشته باشید که بازیابی داده‌های پارتیشن از هر چیزی به جز دیسک اصلی توصیه نمی‌شود. این گزینه حتی اگر جدول پارتیشن اصلی دیسک خراب باشد نیز کار خواهد کرد؛ با این حال، بیشتر گزینه‌های دیگر در همان خط فرمان نادیده گرفته خواهند شد. .TP .B \-L, \-\-list\-types نمایش خلاصه‌ای از انواع پارتیشن. سیستم GPT از یک GUID برای شناسایی انواع پارتیشن برای سیستم‌عامل‌ها و اهداف خاص استفاده می‌کند. برای سهولت در ورود داده‌ها، \fBsgdisk\fR این مقادیر را در قالب مقادیر دو بایتی (چهار رقم هگزادسیمال) فشرده می‌کند که با کدهای معادل MBR آن‌ها مرتبط است. به طور مشخص، کد MBR در مقدار هگزادسیمال 0x0100 ضرب می‌شود. برای مثال، کد فضای swap لینوکس در MBR برابر با 0x82 است و در \fBgdisk\fR برابر با 0x8200 است. البته تطابق یک‌به‌یک غیرممکن است. به‌ویژه، کدهای تمام انواع پارتیشن‌های FAT و NTFS با یک کد GPT منفرد (که در \fBsgdisk\fR به صورت 0x0700 وارد می‌شود) مطابقت دارند. برخی سیستم‌عامل‌ها از یک کد MBR واحد استفاده می‌کنند اما در GPT کدهای بسیار بیشتری به کار می‌برند. برای این موارد، \fBsgdisk\fR شماره کدهای متوالی اضافه می‌کند، مانند 0xa500 برای دیسک‌لیبل FreeBSD، کد 0xa501 برای بوت FreeBSD، کد 0xa502 برای swap در FreeBSD و غیره. توجه داشته باشید که این کدهای دو بایتی مختص \fBgdisk\fR و \fBsgdisk\fR هستند. این گزینه نیازی به تعیین یک نام فایل معتبر دستگاه دیسک ندارد. .TP .B \-m, \-\-gpttombr تبدیل دیسک از فرمت GPT به فرمت MBR. این گزینه از یک تا چهار شماره پارتیشن را که با دونقطه از هم جدا شده‌اند، به عنوان آرگومان دریافت می‌کند. کدهای نوع آن‌ها بر اساس کدهای نوع GPT fdisk تقسیم بر 0x0100 تعیین می‌شوند. اگر فلگ فعال/قابل بوت باید تنظیم شود، باید این کار را در برنامه دیگری مانند \fBfdisk\fR انجام دهید. برنامه \fBgdisk\fR گزینه‌های بیشتری برای تبدیل MBR ارائه می‌دهد. تبدیل بیش از چهار پارتیشن از فرمت GPT به MBR یا تبدیل پارتیشن‌هایی که فراتر از مرز ۲ ترابایت (2TiB) شروع می‌شوند یا بزرگ‌تر از ۲ ترابایت هستند، امکان‌پذیر نیست. .TP .B \-n, \-\-new=partnum:start:end ایجاد یک پارتیشن جدید. شما یک شماره پارتیشن، سکتور شروع و یک سکتور پایان وارد می‌کنید. هر دو سکتور شروع و پایان را می‌توان به صورت مقادیر مطلق بر حسب شماره سکتور یا موقعیت‌هایی اندازه‌گیری‌شده با کیبی‌بایت (K)، مبی‌بایت (M)، گیبی‌بایت (G)، تبی‌بایت (T) یا پبی‌بایت (P) مشخص کرد؛ برای نمونه، \fI\fB40M\fR\fR موقعیتی با فاصله ۴۰ مگابایت از ابتدای دیسک را مشخص می‌کند. شما می‌توانید موقعیت‌ها را نسبت به شروع یا پایان محدوده پیش‌فرض مشخص‌شده با قرار دادن علامت '+' یا '\-' قبل از عدد تعیین کنید، مانند \fI\fB+2G\fR\fR برای تعیین نقطه‌ای با ۲ گیگابایت بعد از سکتور شروع پیش‌فرض، یا \fI\fB\-200M\fR\fR برای تعیین نقطه‌ای ۲۰۰ مگابایت قبل از آخرین سکتور در دسترس. مقدار 0 برای شروع یا پایان، مقدار پیش‌فرض را تعیین می‌کند که همان شروع بزرگ‌ترین بلوک در دسترس برای سکتور شروع و پایان همان بلوک برای سکتور پایان است. مقدار 0 برای partnum باعث می‌شود برنامه از اولین شماره پارتیشن در دسترس استفاده کند. استفاده‌های بعدی از گزینه‌های \fI\-A\fR (\fI\-\-attributes\fR)، \fI\-c\fR (\fI\-\-change\-name\fR)، \fI\-t\fR (\fI\-\-typecode\fR) و \fI\-u\fR (\fI\-\-partition\-guid\fR) نیز می‌توانند از \fI0\fR برای ارجاع به همان پارتیشن استفاده کنند. .TP .B \-N, \-\-largest\-new=num ایجاد یک پارتیشن جدید که بزرگ‌ترین بلوک فضای در دسترس روی دیسک را پر می‌کند. در صورت تمایل می‌توانید از گزینه \fI\-a\fR (\fI\-\-set\-alignment\fR) برای تنظیم تراز استفاده کنید. مقدار 0 برای num باعث می‌شود برنامه از اولین شماره پارتیشن در دسترس استفاده کند. استفاده‌های بعدی از گزینه‌های \fI\-A\fR (\fI\-\-attributes\fR)، \fI\-c\fR (\fI\-\-change\-name\fR)، \fI\-t\fR (\fI\-\-typecode\fR) و \fI\-u\fR (\fI\-\-partition\-guid\fR) نیز می‌توانند از \fI0\fR برای ارجاع به همان پارتیشن استفاده کنند. .TP .B \-o, \-\-clear پاک کردن تمام داده‌های پارتیشن. این شامل داده‌های هدر GPT، تمام تعاریف پارتیشن و MBR محافظتی می‌شود. توجه داشته باشید که این عملیات، مانند بیشتر عملیات‌های دیگر، روی دیسک آسیب‌دیده با شکست مواجه خواهد شد. اگر می‌خواهید دیسکی را که می‌دانید آسیب دیده است برای استفاده GPT آماده کنید، ابتدا باید با گزینه \-Z آن را پاک‌سازی کرده و سپس به طور عادی پارتیشن‌بندی کنید. این گزینه حتی اگر جدول پارتیشن اصلی دیسک خراب باشد نیز کار خواهد کرد؛ با این حال، بیشتر گزینه‌های دیگر در همان خط فرمان نادیده گرفته خواهند شد. .TP .B \-O, \-\-print\-mbr نمایش اطلاعات خلاصه پایه پارتیشن \fIMBR\fR. این شامل شماره پارتیشن‌ها، شماره‌های سکتور شروع و پایان، اندازه‌های پارتیشن، کدهای نوع پارتیشن MBR و نام پارتیشن‌ها است. این گزینه عمدتاً برای عیب‌یابی مشکلات جدول پارتیشن، به‌ویژه روی دیسک‌های دارای MBR ترکیبی مفید است. .TP .B \-p, \-\-print نمایش اطلاعات خلاصه پایه پارتیشن GPT. این شامل شماره پارتیشن‌ها، شماره‌های سکتور شروع و پایان، اندازه‌های پارتیشن، کدهای نوع پارتیشن \fBsgdisk\fR و نام پارتیشن‌ها است. برای اطلاعات بیشتر، از گزینه \fI\-i\fR (\fI\-\-info\fR) استفاده کنید. .TP .B \-P, \-\-pretend وانمود کردن به اعمال تغییرات مشخص‌شده. ساختارهای داده GPT درون حافظه مطابق با پارامترهای دیگر تغییر می‌کنند، اما تغییرات روی دیسک نوشته نمی‌شوند. .TP .B \-r, \-\-transpose جابه‌جا کردن ورودی‌های دو پارتیشن در جدول پارتیشن. یک یا هر دو پارتیشن می‌توانند خالی باشند، اگرچه جابه‌جا کردن دو پارتیشن خالی بی‌معنی است. برای نمونه، اگر پارتیشن‌های ۱ تا ۴ تعریف شده باشند، جابه‌جا کردن ۱ و ۵ منجر به جدولی با پارتیشن‌های شماره‌گذاری‌شده ۲ تا ۵ می‌شود. جابه‌جا کردن پارتیشن‌ها به این روش هیچ تأثیری بر تخصیص فضای دیسک آن‌ها ندارد؛ این کار فقط ترتیب آن‌ها را در جدول پارتیشن تغییر می‌دهد. .TP .B \-R, \-\-replicate=second_device_filename تکثیر جدول پارتیشن دستگاه اصلی روی دستگاه دوم مشخص‌شده. توجه داشته باشید که جدول پارتیشن تکثیرشده یک رونوشت دقیق است، شامل تمام GUIDها؛ اگر دستگاه باید GUIDهای یکتای خود را داشته باشد، باید از گزینه \-G روی دیسک جدید استفاده کنید. .TP .B \-s, \-\-sort مرتب‌سازی ورودی‌های پارتیشن. شماره‌های پارتیشن GPT لزوماً نیازی به مطابقت با ترتیب پارتیشن‌ها روی دیسک ندارند. اگر می‌خواهید با هم مطابقت داشته باشند، می‌توانید از این گزینه استفاده کنید. توجه داشته باشید که برخی از ابزارهای پارتیشن‌بندی هر زمان که تغییری ایجاد می‌کنند، پارتیشن‌ها را مرتب می‌سازند. چنین تغییراتی در نام فایل‌های دستگاه شما منعکس خواهد شد، بنابراین در صورت استفاده از این گزینه ممکن است لازم باشد \fI/etc/fstab\fR را ویرایش کنید. .TP .B \-t, \-\-typecode=partnum:{hexcode|GUID} تغییر کد نوع یک پارتیشن منفرد. شما کد نوع را با استفاده از یک عدد هگزادسیمال دو بایتی، همان‌طور که پیش‌تر توضیح داده شد، یا یک مقدار GUID کاملاً مشخص، مانند EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 وارد می‌کنید. .TP .B \-T, \-\-transform\-bsd=partnum تبدیل پارتیشن‌های BSD به پارتیشن‌های GPT. این گزینه روی دیسک‌لیبل‌های BSD نگهداری‌شده درون پارتیشن‌های GPT (یا MBR تبدیل‌شده) کار می‌کند. کدهای نوع پارتیشن‌های تبدیل‌شده احتمالاً به تنظیم دستی نیاز خواهند داشت. \fBsgdisk\fR هنگام اجرا تلاش می‌کند دیسک‌لیبل‌های BSD ذخیره‌شده روی دیسک اصلی را تبدیل کند، اما این تبدیل احتمالاً پارتیشن‌های اول یا آخری تولید می‌کند که غیرقابل استفاده هستند. تنوع فراوان شاخه‌های BSD بدان معناست که احتمال ناتوانی \fBsgdisk\fR در تبدیل یک دیسک‌لیبل BSD در مقایسه با احتمال بروز مشکلات در تبدیل MBR بالا است. .TP .B \-u, \-\-partition-guid=partnum:guid تنظیم GUID یکتای پارتیشن برای یک پارتیشن به صورت مجزا. مقدار GUID می‌تواند یک GUID کامل یا 'R' برای تنظیم یک GUID تصادفی باشد. .TP .B \-U, \-\-disk-guid=guid تنظیم GUID برای کل دیسک. مقدار GUID می‌تواند یک GUID کامل یا 'R' برای تنظیم یک GUID تصادفی باشد. .TP .B \-\-usage چاپ خلاصه‌ای کوتاه از گزینه‌های موجود. .TP .B \-v, \-\-verify بررسی سلامت دیسک. این گزینه مشکلات مختلفی را بررسی می‌کند، مانند CRCهای نادرست و عدم تطابق داده‌های اصلی و پشتیبان. البته این گزینه به طور خودکار بیشتر مشکلات را تصحیح نمی‌کند؛ برای این کار باید از گزینه‌های موجود در منوی بازیابی و تبدیل استفاده کنید. اگر مشکلی یافت نشود، این دستور خلاصه‌ای از فضای تخصیص‌نیافته دیسک را نمایش می‌دهد. این گزینه حتی اگر جدول پارتیشن اصلی دیسک خراب باشد نیز کار خواهد کرد؛ با این حال، بیشتر گزینه‌های دیگر در همان خط فرمان نادیده گرفته خواهند شد. .TP .B \-V, \-\-version نمایش اطلاعات نسخه برنامه. از این گزینه می‌توان بدون تعیین نام فایل دستگاه استفاده کرد. .TP .B \-z, \-\-zap پاک‌سازی (نابودی) ساختارهای داده GPT و سپس خروج. از این گزینه در صورتی استفاده کنید که می‌خواهید دیسک GPT را با استفاده از \fBfdisk\fR یا برنامه دیگری که از GPT ناآگاه است، دوباره پارتیشن‌بندی کنید. این گزینه فقط ساختارهای داده GPT را از بین می‌برد؛ MBR دست‌نخورده باقی می‌ماند. این امر آن را برای از بین بردن ساختارهای داده GPT پس از اینکه دیسک توسط یک ابزار ناآگاه از GPT برای MBR دوباره پارتیشن‌بندی شد، مفید می‌سازد؛ با این حال، خطر آسیب رسیدن به لودرهای بوت یا حتی ابتدای اولین پارتیشن یا انتهای آخرین پارتیشن MBR وجود دارد. اگر آن را روی یک دیسک GPT معتبر استفاده کنید، MBR با تعریف نامناسب پارتیشن EFI GPT (0xEE) باقی خواهد ماند که می‌توانید با استفاده از ابزاری دیگر آن را حذف کنید. .TP .B \-Z, \-\-zap\-all پاک‌سازی (نابودی) ساختارهای داده GPT و MBR و سپس خروج. این گزینه عملکردی بسیار شبیه به \fI\-z\fR دارد، اما از آنجا که MBR را نیز همانند GPT پاک می‌کند، در صورتی مناسب‌تر است که بخواهید پس از استفاده از این گزینه دیسک را دوباره پارتیشن‌بندی کنید، و اگر از قبل دیسک را دوباره پارتیشن‌بندی کرده‌اید، کاملاً نامناسب است. .TP .B \-?, \-\-help چاپ خلاصه‌ای از گزینه‌ها. .SH "مقادیر بازگشتی (RETURN VALUES)" برنامه \fBsgdisk\fR بسته به موفقیت یا شکست خود مقادیر مختلفی را برمی‌گرداند: .TP .B 0 اجرای عادی برنامه .TP .B 1 تعداد بسیار کم آرگومان‌ها .TP .B 2 هنگام خواندن جدول پارتیشن خطایی رخ داده است .TP .B 3 دیسک غیر-GPT شناسایی شده و گزینه \fI\-g\fR داده نشده است، اما عملیات نیازمند یک عمل نوشتن است .TP .B 4 یک خطا از ذخیره تغییرات جلوگیری کرد .TP .B 5 هنگام خواندن از ورودی استاندارد خطایی رخ داد (هرگز نباید با sgdisk رخ دهد، اما ممکن است با gdisk رخ دهد) .TP .B 8 عملیات تکثیر دیسک (\-R) با شکست مواجه شد .SH "ایرادات (BUGS)" ایرادات و محدودیت‌های شناخته‌شده عبارتند از: .TP .B * این برنامه تنها روی لینوکس، FreeBSD و Mac OS X به درستی کامپایل می‌شود. نسخه‌های لینوکس برای x86\-64 (۶۴ بیتی)، x86 (۳۲ بیتی) و PowerPC (۳۲ بیتی) آزمایش شده‌اند که نسخه x86\-64 بیشترین آزمون‌ها را پشت سر گذاشته است. .TP .B * نسخه FreeBSD این برنامه نمی‌تواند تغییرات جدول پارتیشن را زمانی که پارتیشن‌های موجود روی آن دیسک سوار (mount) شده‌اند، بر روی دیسک بنویسد. (همین مشکل در بسیاری دیگر از ابزارهای FreeBSD مانند \fBgpt\fR، \fBfdisk\fR و \fBdd\fR نیز وجود دارد.) این محدودیت را می‌توان با وارد کردن دستور \fBsysctl kern.geom.debugflags=16\fR در خط فرمان پوسته برطرف کرد. .TP .B * فیلدهای مورد استفاده برای نمایش شماره سکتورهای شروع و پایان برای پارتیشن‌ها در گزینه \fI\-p\fR دارای پهنای ۱۴ کاراکتر هستند. این مقدار به محدودیتی در حدود ۴۵ پبی‌بایت (PiB) ترجمه می‌شود. در دیسک‌های بزرگ‌تر، ستون‌های نمایش‌داده‌شده از حالت تراز خارج خواهند شد. .TP .B * برنامه هنگام تبدیل از فرمت MBR تنها می‌تواند تا ۱۲۸ پارتیشن (۴ پارتیشن اصلی و ۱۲۴ پارتیشن منطقی) را بارگذاری کند. این محدودیت را می‌توان با تغییر خط \fI#define MAX_MBR_PARTS\fR در فایل کد منبع \fIbasicmbr.h\fR و کامپایل مجدد افزایش داد؛ با این حال، چنین تغییری مستلزم استفاده از یک جدول پارتیشن بزرگ‌تر از حد معمول خواهد بود. (محدودیت ۱۲۸ پارتیشن به این دلیل انتخاب شد که این تعداد برابر با ۱۲۸ پارتیشنی است که توسط رایج‌ترین اندازه جدول پارتیشن پشتیبانی می‌شود.) .TP .B * تبدیل از فرمت MBR گاهی اوقات به دلیل فضای ناکافی در ابتدا یا (معمولاً) انتهای دیسک با شکست مواجه می‌شود. تغییر اندازه جدول پارتیشن (با استفاده از گزینه 's' در منوی کارشناسان) گاهی اوقات می‌تواند این مشکل را رفع کند؛ با این حال، در موارد حاد ممکن است لازم باشد قبل از تبدیل با \fBgdisk\fR، اندازه یک پارتیشن را با استفاده از GNU Parted یا ابزاری مشابه تغییر دهید. .TP .B * تبدیل‌های MBR تنها در صورتی کار می‌کنند که دیسک دارای توصیف‌کننده‌های صحیح پارتیشن LBA باشد. این توصیف‌کننده‌ها باید روی هر دیسک با اندازه بیش از ۸ گیبی‌بایت یا روی دیسک‌های کوچک‌تر پارتیشن‌بندی‌شده با هر نرم‌افزاری غیر از نرم‌افزارهای بسیار باستانی وجود داشته باشند. .TP .B * پشتیبانی از دیسک‌لیبل BSD می‌تواند پارتیشن‌های اول یا آخری ایجاد کند که با ساختارهای داده GPT هم‌پوشانی دارند. این مشکل را گاهی می‌توان با تنظیم اندازه جدول پارتیشن جبران کرد، اما در موارد حاد ممکن است لازم باشد پارتیشن(های) آسیب‌دیده حذف شوند. .TP .B * به دلیل ماهیت بسیار متغیر ساختارهای دیسک‌لیبل BSD، تبدیل از این فرمت ممکن است غیرقابل اعتماد باشد \-\- پارتیشن‌ها ممکن است حذف شوند، به نحوی تبدیل شوند که با سایر پارتیشن‌ها هم‌پوشانی ایجاد کنند، یا با مقادیر شروع یا پایان نادرست تبدیل گردند. از این قابلیت با احتیاط استفاده کنید! .TP .B * بوت شدن پس از تبدیل دیسک MBR یا دیسک‌لیبل BSD احتمالاً مختل خواهد شد. گاهی اوقات نصب مجدد لودر بوت مشکل را برطرف می‌کند، اما در مواقع دیگر ممکن است لازم باشد لودر بوت را تغییر دهید. به جز روی پلتفرم‌های مبتنی بر EFI، ویندوز حداقل تا Windows 7 RC از بوت شدن از دیسک‌های GPT پشتیبانی نمی‌کند. ایجاد یک MBR ترکیبی (با استفاده از گزینه 'h' در منوی بازیابی و تبدیل) یا رها کردن GPT به نفع MBR ممکن است تنها گزینه‌های شما در این حالت باشد. .PP .SH "نویسندگان (AUTHORS)" نویسنده اصلی: 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) .SH "همچنین ببینید (SEE ALSO)" .BR cfdisk (8), .BR cgdisk (8), .BR fdisk (8), .BR gdisk (8), .BR mkfs (8), .BR parted (8), .BR sfdisk (8), .BR fixparts (8). \fIhttps://en.wikipedia.org/wiki/GUID_Partition_Table\fR \fIhttps://developer.apple.com/technotes/tn2006/tn2166.html\fR \fIhttps://www.rodsbooks.com/gdisk\fR .SH "در دسترس بودن (AVAILABILITY)" دستور \fBsgdisk\fR بخشی از بسته \fIGPT fdisk\fR است و از سوی Rod Smith در دسترس قرار دارد.