MKFS.EXT2(8) دستورهای مدیریتی و نگهداری MKFS.EXT2(8)

mkfs.ext2 - ساخت سیستمفایل ext2 در لینوکس

mkfs.ext2 [ گزینهها ] دستگاه [ تعداد_بلاکها ]

دستور mkfs.ext2 برای ساخت سیستمفایل گسترشیافته دوم (ext2) بر روی یک دستگاه یا پارتیشن استفاده میشود. این دستور پیوندی به ابزار mke2fs است.

دستور mke2fs برای ساخت سیستم‌فایل‌های ext2، ext3 یا ext4، معمولاً بر روی یک پارتیشن دیسک (یا فایل) به نام دستگاه استفاده می‌شود.

اندازه سیستم‌فایل توسط تعداد_بلاک‌ها مشخص می‌شود. اگر تعداد_بلاک‌ها فاقد پسوند باشد، به عنوان کیلوبایت با توان ۲ تفسیر می‌شود، مگر اینکه گزینه -b اندازه_بلاک مشخص شده باشد، که در این صورت تعداد_بلاک‌ها برحسب تعداد بلاک‌های اندازه_بلاک تفسیر می‌گردد. اگر پسوندهای 'k' ،'m' ،'g' یا 't' (چه با حروف بزرگ چه با حروف کوچک) به کار روند، برحسب کیلوبایت، مگابایت، گیگابایت، ترابایت و غیره با توان ۲ تفسیر می‌شود. اگر تعداد_بلاک‌ها حذف شود، mke2fs سیستم‌فایل را بر اساس اندازه دستگاه خواهد ساخت.

اگر mke2fs به صورت mkfs.XXX اجرا شود (مانند mkfs.ext2، mkfs.ext3 یا mkfs.ext4)، گزینه -t XXX به طور ضمنی اعمال می‌گردد؛ بنابراین mkfs.ext2 سیستم‌فایلی مناسب برای ext2، mkfs.ext3 سیستم‌فایلی برای استفاده با ext3، mkfs.ext4 سیستم‌فایلی برای استفاده با ext4 و به همین ترتیب خواهد ساخت.

پارامترهای پیش‌فرض برای سیستم‌فایل تازه ساخته‌شده، در صورتی که توسط گزینه‌های فهرست‌شده در زیر لغو نشوند، توسط فایل پیکربندی /etc/mke2fs.conf کنترل می‌شوند. برای جزئیات بیشتر به صفحه راهنمای mke2fs.conf(5) مراجعه کنید.

اندازه بلاک‌ها را برحسب بایت مشخص می‌کند. مقادیر معتبر اندازه بلاک توان‌هایی از عدد ۲ از ۱۰۲۴ تا ۶۵۵۳۶ بایت هستند (با این حال توجه داشته باشید که هسته لینوکس تنها می‌تواند سیستم‌فایل‌هایی با اندازه بلاک کوچک‌تر یا مساوی با اندازه صفحه حافظه سیستم (page size) را سوار کند - یعنی ۴ کیلوبایت در سامانه‌های x86، و تا ۶۴ کیلوبایت در ppc64 یا aarch64 بسته به پیکربندی هسته). در صورت حذف، اندازه بلاک به صورت مکاشفه‌ای بر اساس اندازه سیستم‌فایل و کاربرد مورد انتظار از آن تعیین می‌شود (گزینه -T را ببینید). در بیشتر موارد رایج، اندازه پیش‌فرض بلاک ۴ کیلوبایت است. اگر قبل از اندازه_بلاک یک علامت منفی ('-') قرار گیرد، mke2fs از روش‌های مکاشفه‌ای برای تعیین اندازه بلاک مناسب استفاده می‌کند، با این قید که اندازه بلاک حداقل به میزان اندازه_بلاک بایت خواهد بود. این ویژگی برای برخی دستگاه‌های سخت‌فزاری خاص که نیاز دارند اندازه بلاک مضربی از ۲ کیلوبایت باشد مفید است.
پیش از ایجاد سیستم‌فایل، دستگاه را برای یافتن بلاک‌های خراب (bad blocks) بررسی می‌کند. اگر این گزینه دو بار مشخص شود، به جای آزمون سریع فقط‌خواندنی، یک آزمون کندتر خواندن-نوشتن انجام خواهد شد.
اندازه کلاستر را برحسب بایت برای سیستم‌فایل‌هایی که از ویژگی bigalloc استفاده می‌کنند مشخص می‌کند. مقادیر معتبر اندازه کلاستر از ۲ تا ۳۲۷۶۸ برابر اندازه بلاک سیستم‌فایل متغیر است و باید توانی از ۲ باشد. اندازه کلاستر تنها در صورتی قابل تعیین است که ویژگی bigalloc فعال باشد (برای جزئیات بیشتر درباره bigalloc به صفحه راهنمای ext4(5) مراجعه کنید). اندازه پیش‌فرض کلاستر در صورت فعال بودن bigalloc برابر ۱۶ برابر اندازه بلاک است.
محتویات دایرکتوری داده‌شده یا فایل تاربال را درون دایرکتوری ریشه سیستم‌فایل کپی می‌کند. ورودی تاربال تنها در صورتی در دسترس است که mke2fs با پشتیبانی از libarchive کامپایل شده باشد و کتابخانه مشترک libarchive در زمان اجرا موجود باشد. مقدار ویژه "-" تاربال را از ورودی استاندارد می‌خواند.
استفاده از ورودی/خروجی مستقیم (Direct I/O) هنگام نوشتن روی دیسک. این کار مانع از کثیف شدن حجم زیادی از حافظه نهان میانگیر توسط mke2fs می‌شود که ممکن است بر سایر برنامه‌های در حال اجرا روی یک سرور شلوغ تأثیر بگذارد. با این حال، این گزینه باعث می‌شود mke2fs بسیار کندتر اجرا شود، بنابراین استفاده از ورودی/خروجی مستقیم یک مصالحه است.
رفتار کدهای هسته را هنگام شناسایی خطاها تغییر می‌دهد. در تمامی حالت‌ها، خطای سیستم‌فایل سبب می‌شود که e2fsck(8) سیستم‌فایل را در راه‌اندازی بعدی بررسی کند. رفتار_در_برابر_خطا می‌تواند یکی از موارد زیر باشد:
ادامه اجرای عادی.
سوار کردن مجدد سیستم‌فایل به صورت فقط‌خواندنی.
ایجاد یک وحشت هسته (kernel panic).
تنظیم گزینه‌های پیشرفته برای سیستم‌فایل. گزینه‌های پیشرفته با کاما جدا می‌شوند و می‌توانند با علامت مساوی ('=') آرگومان دریافت کنند. گزینه -E در نسخه‌های پیشین mke2fs به صورت -R بود. گزینه -R هنوز برای سازگاری با گذشته پذیرفته می‌شود، اما منسوخ شده است. گزینه‌های پیشرفته زیر پشتیبانی می‌شوند:
در صورت فعال بودن، mke2fs فرض می‌کند که دستگاه ذخیره‌سازی از پیش صفر شده است، از صفر کردن ژورنال و جداول آی‌نودها صرف‌نظر می‌کند، و پرچم‌های گروه بلاک را نشانه‌گذاری می‌کند تا نشان دهد جدول آی‌نود صفر شده است.
تلاش برای دور ریختن (discard) بلاک‌ها در زمان اجرای mkfs (دور ریختن اولیه بلاک‌ها بر روی دستگاه‌های حالت جامد و حافظه‌های ذخیره‌سازی با تخصیص پویا مفید است). هنگامی که دستگاه اعلام کند دور ریختن داده‌ها را نیز صفر می‌کند (هر خواندن پس از دور ریختن و پیش از نوشتن، صفر برمی‌گرداند)، تمام جداول آی‌نود هنوز صفرنشده به عنوان صفرشده علامت‌گذاری می‌شوند. این کار مقداردهی اولیه سیستم‌فایل را به طور چشمگیری سرعت می‌بخشد. این رفتار به صورت پیش‌فرض فعال است.
ویژگی casefold را در سوپربلاک فعال می‌کند و نام_کدگذاری را به عنوان کدگذاری مورد استفاده قرار می‌دهد. اگر نام_کدگذاری مشخص نشود، از کدگذاری تعریف‌شده در mke2fs.conf(5) استفاده می‌شود.
پارامترهایی برای عملیات کدگذاری نویسه‌های نام فایل تعریف می‌کند. اگر پرچمی با استفاده از این پارامتر تغییر داده نشود، از مقدار پیش‌فرض آن استفاده می‌شود. پرچم‌های_کدگذاری باید فهرستی جداشده با کاما از پرچم‌هایی باشد که باید فعال شوند. برای غیرفعال کردن یک پرچم، پیشوند "no" را به آن اضافه کنید.

تنها پرچمی که در حال حاضر می‌توان تنظیم کرد strict است که مشخص می‌کند رشته‌های نامعتبر باید توسط سیستم‌فایل رد شوند. در پیکربندی پیش‌فرض، پرچم strict غیرفعال است.

اگر فعال باشد و ویژگی uninit_bg نیز فعال باشد، جدول آی‌نود به طور کامل توسط mke2fs صفر نخواهد شد. این کار مقداردهی اولیه سیستم‌فایل را به طور چشمگیری سرعت می‌بخشد، اما مستلزم آن است که هسته هنگام نخستین سوار شدن سیستم‌فایل، پایان مقداردهی اولیه را در پس‌زمینه انجام دهد. اگر مقدار گزینه حذف شود، مقدار پیش‌فرض ۱ برای فعال کردن صفرسازی تنبل جدول آی‌نود در نظر گرفته می‌شود.
اگر فعال باشد، آی‌نود ژورنال به طور کامل توسط mke2fs صفر نخواهد شد. این کار مقداردهی اولیه سیستم‌فایل را به طور محسوس سرعت می‌بخشد، اما ریسک اندکی دارد در صورتی که سیستم پیش از آنکه ژورنال یک بار به طور کامل بازنویسی شود دچار خرابی ناگهانی شود. اگر مقدار گزینه حذف شود، مقدار پیش‌فرض ۱ برای فعال کردن صفرسازی تنبل آی‌نود ژورنال اعمال می‌شود.
تنظیم فاصله زمانی اولیه به‌روزرسانی MMP به فاصله_زمانی ثانیه. تعیین مقدار ۰ به معنای استفاده از فاصله زمانی پیش‌فرض است. فاصله زمانی مشخص‌شده باید کمتر از ۳۰۰ ثانیه باشد. نیاز به فعال بودن ویژگی mmp دارد.
عدم تلاش برای دور ریختن (discard) بلاک‌ها در زمان اجرای mkfs.
به‌طور معمول mke2fs صفات پیشرفته (extended attributes) فایل‌ها را در سلسله‌مراتب دایرکتوری مشخص‌شده از طریق گزینه (اختیاری) -d کپی می‌کند. این گزینه کپی کردن را غیرفعال کرده و فایل‌ها را در سیستم‌فایل تازه ساخته‌شده بدون هیچ صفت پیشرفته‌ای باقی می‌گذارد.
اگر ویژگی سیستم‌فایل sparse_super2 فعال باشد، این گزینه کنترل می‌کند که ۰، ۱ یا ۲ سوپربلاک پشتیبان در سیستم‌فایل ساخته شود.
ساخت سیستم‌فایل با فاصله (افست) مشخص‌شده از ابتدای دستگاه یا فایل. این گزینه می‌تواند هنگام ایجاد ایمیج‌های دیسک برای ماشین‌های مجازی مفید باشد.
تنظیم اندازه فایل برای ردیابی آی‌نودهای پیوندزدوده‌شده اما همچنان باز و آی‌نودهایی که عملیات کوتاه کردن (truncate) آن‌ها در جریان است. فایل بزرگ‌تر امکان مقیاس‌پذیری بهتری را فراهم می‌کند؛ رزرو چند بلاک به ازای هر پردازنده ایده‌آل است.
قرار دادن بیت‌مپ‌های تخصیص و جدول آی‌نود در ابتدای دیسک. این گزینه نیازمند فعال بودن ویژگی flex_bg سیستم‌فایل است تا تأثیرگذار باشد، و همچنین ژورنال را در ابتدای سیستم‌فایل ایجاد خواهد کرد. این گزینه برای دستگاه‌های فلش که از فلش SLC در ابتدای دیسک بهره می‌برند سودمند است. همچنین محدوده بلاک‌های داده پیوسته را به حداکثر می‌رساند، که می‌تواند برای برخی موارد کاربردی خاص، مانند درایوهای Shingled پشتیبانی‌شده مفید باشد.
مشخص کردن اینکه کدام انواع سهمیه (usrquota، grpquota، prjquota) باید در سیستم‌فایل ایجادشده فعال شوند. آرگومان این گزینه پیشرفته باید فهرستی جداشده با دونقطه باشد. این گزینه تنها زمانی اثرگذار است که ویژگی quota تنظیم شده باشد. انواع سهمیه پیش‌فرضی که در صورت مشخص نشدن این گزینه مقداردهی می‌شوند، هر دو سهمیه کاربر و گروه هستند. در صورت فعال بودن ویژگی پروژه، سهمیه‌های پروژه نیز مقداردهی اولیه خواهند شد.
رزرو فضای کافی به گونه‌ای که جدول توصیف‌کننده‌های گروه بلاک بتواند برای پشتیبانی از سیستم‌فایلی که دارای حداکثر_تغییر_اندازه_برخط بلاک است رشد کند.
شماره بازنگری (revision) سیستم‌فایل را مشخص می‌کند. سیستم‌فایل‌های بازنگری ۰ سازگاری با هسته‌های لینوکس پیش از نسخه 1.2 (مربوط به پیش از سال ۱۹۹۵) را فراهم می‌کنند. این گزینه تنها برای آزمون یا افرادی که مایل به استفاده از سیستم‌های لینوکس بسیار کهن و تاریخی هستند مورد نیاز است. پیش‌فرض کنونی (پشتیبانی‌شده توسط تمامی سیستم‌های لینوکس امروزی) بازنگری ۱ است.
مشخص کردن شناسه عددی کاربر و گروه برای دایرکتوری ریشه. اگر هیچ UID:GID مشخص نشود، از شناسه کاربر و گروه کاربری که mke2fs را اجرا می‌کند استفاده می‌شود. در mke2fs نسخه 1.42 و پیش از آن، UID و GID دایرکتوری ریشه به طور پیش‌فرض بر روی UID و GID کاربر اجراکننده دستور mke2fs تنظیم می‌شد. گزینه root_owner= امکان مشخص کردن صریح این مقادیر را فراهم می‌آورد تا از اثرات جانبی برای کاربرانی که انتظار ندارند محتوای سیستم‌فایل بر اساس کاربر اجراکننده mke2fs تغییر کند جلوگیری به عمل آید.
مشخص کردن مجوزهای دایرکتوری ریشه در قالب هشت‌هشتی (اکتال). اگر هیچ مجوزی مشخص نشود، مجوزهای دایرکتوری ریشه مطابق با umask پیش‌فرض سیستم‌فایل تنظیم خواهد شد.
پیکربندی سیستم‌فایل برای یک آرایه RAID با اندازه_گام بلاک‌های سیستم‌فایل. این تعداد بلاک‌هایی است که پیش از رفتن به دیسک بعدی روی دیسک خوانده یا نوشته می‌شود، که گاهی اوقات به عنوان اندازه_تکه (chunk size) شناخته می‌شود. این گزینه بیشتر بر محل قرارگیری متاداده‌های سیستم‌فایل مانند بیت‌مپ‌ها در زمان اجرای mke2fs تأثیر می‌گذارد تا از قرار گرفتن آن‌ها بر روی یک دیسک منفرد جلوگیری شود که می‌تواند به کارایی آسیب بزند. همچنین ممکن است توسط تخصیص‌دهنده بلاک مورد استفاده قرار گیرد.
پیکربندی سیستم‌فایل برای یک آرایه RAID با پهنای_نواره بلاک‌های سیستم‌فایل در هر نواره (stripe). این مقدار معمولاً برابر با اندازه_گام ضرب‌در N است، که در آن N تعداد دیسک‌های حامل داده در آرایه RAID است (برای مثال در RAID 5 یک دیسک توازن وجود دارد، بنابراین N برابر با تعداد دیسک‌های آرایه منهای یک خواهد بود). این گزینه به تخصیص‌دهنده بلاک اجازه می‌دهد تا در صورت امکان، هنگام نوشتن داده‌ها از عملیات خواندن-اصلاح-نوشتن بر روی داده‌های توازن در یک نواره RAID جلوگیری کند.
تنظیم پرچمی در سوپربلاک سیستم‌فایل مبنی بر اینکه ممکن است با استفاده از کدهای آزمایشی هسته، مانند سیستم‌فایل ext4dev سوار شود.
اجبار کردن mke2fs به ایجاد سیستم‌فایل، حتی اگر دستگاه مشخص‌شده یک پارتیشن بر روی یک دستگاه ویژه بلوکی نباشد، یا اگر سایر پارامترها نامعقول به نظر برسند. برای اجبار mke2fs به ساخت سیستم‌فایل حتی در حالتی که سیستم‌فایل در حال استفاده به نظر می‌رسد یا سوار شده است (کاری بسیار خطرناک)، این گزینه باید دو بار مشخص شود.
تعداد بلاک‌ها در یک گروه بلاک را مشخص می‌کند. معمولاً دلیلی وجود ندارد که کاربر این پارامتر را تغییر دهد، زیرا مقدار پیش‌فرض بهینه‌ترین حالت برای سیستم‌فایل است. (برای مدیرانی که سیستم‌فایل را بر روی آرایه‌های RAID ایجاد می‌کنند، بهتر است از پارامتر RAID به نام stride به عنوان بخشی از گزینه -E استفاده شود تا اینکه تعداد بلاک‌ها در هر گروه دستکاری گردد). این گزینه عموماً توسط توسعه‌دهندگانی استفاده می‌شود که در حال توسعه موارد آزمایشی هستند.
اگر ویژگی bigalloc فعال باشد، گزینه -g تعداد کلاسترها در یک گروه بلاک را مشخص خواهد کرد.
تعداد گروه‌های بلاکی را مشخص می‌کند که با یکدیگر بسته‌بندی می‌شوند تا یک گروه بلاک مجازی بزرگ‌تر (یا "گروه flex_bg") در سیستم‌فایل ext4 ایجاد نمایند. این کار محلی‌سازی متاداده و کارایی را در پردازش‌های سنگین روی متاداده بهبود می‌بخشد. تعداد گروه‌ها باید توانی از ۲ باشد و تنها زمانی می‌تواند مشخص شود که ویژگی flex_bg سیستم‌فایل فعال باشد.
نسبت بایت به آی‌نود را مشخص می‌کند. mke2fs به ازای هر بایت_به_ازای_آی‌نود بایت فضا روی دیسک، یک آی‌نود می‌سازد. هرچه نسبت بایت_به_ازای_آی‌نود بزرگ‌تر باشد، آی‌نودهای کمتری ساخته خواهد شد. این مقدار معمولاً نباید کوچک‌تر از اندازه بلاک سیستم‌فایل باشد، زیرا در آن صورت آی‌نودهای بیشتری نسبت به آنچه که قابل استفاده باشد ساخته خواهد شد. هشدار داده می‌شود که تغییر این نسبت در یک سیستم‌فایل پس از ایجاد آن امکان‌پذیر نیست، بنابراین در انتخاب مقدار مناسب برای این پارامتر دقت کنید. توجه داشته باشید که تغییر اندازه سیستم‌فایل، تعداد آی‌نودها را برای حفظ این نسبت تغییر می‌دهد.
اندازه هر آی‌نود را برحسب بایت مشخص می‌کند. مقدار اندازه_آی‌نود باید توانی از ۲ بزرگ‌تر یا مساوی ۱۲۸ باشد. هرچه اندازه_آی‌نود بزرگ‌تر باشد، جدول آی‌نود فضای بیشتری مصرف می‌کند که فضای قابل استفاده در سیستم‌فایل را کاهش داده و می‌تواند بر عملکرد تأثیر منفی بگذارد. تغییر این مقدار پس از ساخته شدن سیستم‌فایل امکان‌پذیر نیست.
سیستم‌فایل‌هایی با اندازه آی‌نود ۱۲۸ بایت از برچسب‌های زمانی پس از ۱۹ ژانویه ۲۰۳۸ پشتیبانی نمی‌کنند. آی‌نودهای ۲۵۶ بایت یا بزرگ‌تر از برچسب‌های زمانی توسعه‌یافته، شناسه‌های پروژه و امکان ذخیره برخی صفات پیشرفته درون جدول آی‌نود برای بهبود کارایی پشتیبانی می‌کنند.
اندازه پیش‌فرض آی‌نود توسط فایل mke2fs.conf(5) کنترل می‌شود. در فایل mke2fs.conf همراه با e2fsprogs، اندازه پیش‌فرض آی‌نود برای تمامی سیستم‌فایل‌ها ۲۵۶ بایت است، به جز برای GNU Hurd زیرا تنها از آی‌نودهای ۱۲۸ بایتی پشتیبانی می‌کند.
ایجاد سیستم‌فایل همراه با ژورنال ext3. اگر گزینه -J مشخص نشود، پارامترهای پیش‌فرض ژورنال برای ایجاد ژورنالی با اندازه مناسب (با توجه به اندازه سیستم‌فایل) که در داخل سیستم‌فایل ذخیره می‌شود استفاده خواهد شد. توجه داشته باشید برای اینکه بتوانید عملاً از ژورنال استفاده کنید، باید از هسته‌ای استفاده نمایید که از ext3 پشتیبانی کند.
ایجاد ژورنال ext3 با استفاده از گزینه‌های مشخص‌شده در خط فرمان. گزینه‌های ژورنال با کاما جدا می‌شوند و ممکن است با استفاده از علامت مساوی ('=') آرگومان دریافت کنند. گزینه‌های ژورنال زیر پشتیبانی می‌شوند:
پیوست کردن سیستم‌فایل به دستگاه بلوکی ژورنال مستقر بر روی ژورنال_خارجی. ژورنال خارجی باید پیش از این با استفاده از دستور زیر ایجاد شده باشد:
mke2fs -O journal_dev ژورنال_خارجی
توجه داشته باشید که ژورنال_خارجی باید با همان اندازه بلاک سیستم‌فایل جدید ایجاد شده باشد. علاوه بر این، در حالی که پشتیبانی برای اتصال چندین سیستم‌فایل به یک ژورنال خارجی واحد وجود دارد، هسته لینوکس و e2fsck(8) در حال حاضر هنوز از ژورنال‌های خارجی مشترک پشتیبانی نمی‌کنند.
به جای مشخص کردن مستقیم نام دستگاه، ژورنال_خارجی می‌تواند با استفاده از LABEL=برچسب یا UUID=شناسه_یکتا نیز مشخص شود تا ژورنال خارجی از طریق برچسب حجم یا شناسه یکتای ذخیره‌شده در سوپربلاک ext2 در ابتدای ژورنال شناسایی گردد. برای نمایش برچسب و شناسه یکتای دستگاه ژورنال از dumpe2fs(8) استفاده کنید. همچنین گزینه -L در tune2fs(8) را ببینید.
ایجاد ناحیه ژورنال اضافی برای تأیید سریع (fast commit) با اندازه اندازه_تأیید_سریع کیلوبایت. این گزینه تنها در صورتی معتبر است که ویژگی fast_commit بر روی سیستم‌فایل فعال باشد. اگر این گزینه مشخص نشود و ویژگی fast_commit فعال باشد، اندازه ناحیه تأیید سریع به طور پیش‌فرض برابر اندازه_ژورنال تقسیم بر ۶۴ مگابایت خواهد بود. اندازه کل ژورنال با تنظیم ویژگی fast_commit برابر اندازه_ژورنال + ( اندازه_تأیید_سریع * ۱۰۲۴) مگابایت است. کل اندازه ژورنال نباید بیشتر از ۱۰,۲۴۰,۰۰۰ بلاک سیستم‌فایل یا نیمی از کل اندازه سیستم‌فایل (هر کدام که کوچک‌تر باشد) باشد.
مشخص کردن مکان ژورنال. آرگومان مکان_ژورنال می‌تواند به صورت شماره بلاک مشخص شود، یا اگر عدد دارای پسوند واحدها (مانند 'M' ،'G' و غیره) باشد به عنوان افست از ابتدای سیستم‌فایل تفسیر می‌شود.
ایجاد یک ژورنال داخلی (یعنی ذخیره‌شده درون سیستم‌فایل) به اندازه اندازه_ژورنال مگابایت. اندازه ژورنال باید حداقل ۱۰۲۴ بلاک سیستم‌فایل (یعنی ۱ مگابایت با بلاک‌های ۱ کیلوبایتی، ۴ مگابایت با بلاک‌های ۴ کیلوبایتی و غیره) باشد و نباید بیشتر از ۱۰,۲۴۰,۰۰۰ بلاک سیستم‌فایل یا نیمی از کل اندازه سیستم‌فایل (هر کدام که کمتر باشد) باشد.
تنها یکی از گزینه‌های size یا device می‌تواند برای یک سیستم‌فایل مشخص شود.
فهرست بلاک‌های خراب را از نام_فایل می‌خواند. توجه داشته باشید که شماره بلاک‌ها در فهرست بلاک‌های خراب باید با همان اندازه بلاک استفاده‌شده توسط mke2fs ایجاد شده باشد. در نتیجه، استفاده از گزینه -c برای mke2fs روش بسیار ساده‌تر و کم‌خطاتری برای بررسی یک دیسک از نظر بلاک‌های خراب پیش از قالب‌بندی آن است، زیرا mke2fs به طور خودکار پارامترهای صحیح را به برنامه badblocks ارسال خواهد کرد.
تنظیم برچسب حجم (volume label) برای سیستم‌فایل به برچسب_جدید_حجم. حداکثر طول برچسب حجم ۱۶ بایت است.
درصد بلاک‌های سیستم‌فایل را که برای کاربر ارشد (مدیر سیستم) رزرو می‌شوند مشخص می‌کند. این کار از تکه‌تکه‌شدگی (fragmentation) جلوگیری می‌کند و به دیمون‌های متعلق به root، مانند syslogd(8)، اجازه می‌دهد تا پس از اینکه فرآیندهای بدون مجوز از نوشتن بر روی سیستم‌فایل منع شدند، همچنان به درستی به کار خود ادامه دهند. درصد پیش‌فرض ۵٪ است.
آخرین دایرکتوری سوارشده برای سیستم‌فایل را تنظیم می‌کند. این کار ممکن است برای ابزارهایی که بر اساس آخرین دایرکتوری سوارشده تصمیم می‌گیرند سیستم‌فایل در کجا باید سوار شود، مفید باشد.
باعث می‌شود mke2fs عملاً سیستم‌فایل را نسازد، بلکه آنچه را که در صورت ساخت سیستم‌فایل انجام می‌داد نمایش دهد. این کار می‌تواند برای تعیین مکان سوپربلاک‌های پشتیبان برای یک سیستم‌فایل خاص استفاده شود، مادامی که پارامترهای mke2fs که در زمان ایجاد اولیه سیستم‌فایل ارسال شده بودند مجدداً استفاده شوند (البته همراه با گزینه -n!).
محاسبه پیش‌فرض تعداد آی‌نودهایی را که باید برای سیستم‌فایل رزرو شوند (که بر اساس تعداد بلاک‌ها و نسبت بایت_به_ازای_آی‌نود است) لغو می‌کند. این گزینه به کاربر اجازه می‌دهد تعداد آی‌نودهای مورد نظر را به طور مستقیم مشخص کند.
مقدار پیش‌فرض فیلد "سیستم‌عامل سازنده" (creator operating system) سیستم‌فایل را لغو می‌کند. این فیلد به طور پیش‌فرض بر روی نام سیستم‌عاملی تنظیم می‌شود که فایل اجرایی mke2fs برای آن کامپایل شده است.
ساخت سیستم‌فایل با ویژگی‌های مشخص‌شده (گزینه‌های سیستم‌فایل)، با لغو گزینه‌های پیش‌فرض سیستم‌فایل. ویژگی‌هایی که به صورت پیش‌فرض فعال هستند توسط رابطه base_features مشخص می‌شوند؛ یا در بخش [defaults] در فایل پیکربندی /etc/mke2fs.conf، یا در زیربخش‌های [fs_types] برای انواع کاربرد همان‌طور که توسط گزینه -T مشخص شده است، که توسط رابطه features موجود در زیربخش‌های [fs_types] برای نوع سیستم‌فایل و کاربرد بیشتر تعدیل می‌شود. برای جزئیات بیشتر به صفحه راهنمای mke2fs.conf(5) مراجعه کنید. تنظیمات پیکربندی ویژه نوع سیستم‌فایل در بخش [fs_types] پیش‌فرض‌های سراسری موجود در [defaults] را لغو خواهد کرد.

مجموعه ویژگی‌های سیستم‌فایل با استفاده از مجموعه ویژگی‌های مشخص‌شده توسط این گزینه ویرایش می‌شود، یا اگر این گزینه داده نشود، توسط رابطه default_features برای نوع سیستم‌فایل در حال ساخت، یا در بخش [defaults] فایل پیکربندی تعیین می‌گردد.

مجموعه ویژگی‌های سیستم‌فایل شامل فهرستی از ویژگی‌های جداشده با کاما است که باید فعال شوند. برای غیرفعال کردن یک ویژگی، کافی است یک نویسه توان ('^') را به ابتدای نام ویژگی اضافه کنید. ویژگی‌هایی که دارای وابستگی هستند با موفقیت حذف نخواهند شد. شبه‌ویژگی سیستم‌فایل "none" تمام ویژگی‌های سیستم‌فایل را پاک خواهد کرد.

برای اطلاعات بیشتر درباره ویژگی‌هایی که می‌توان تنظیم کرد، لطفاً به صفحه راهنمای ext4(5) مراجعه فرمایید.

اجرای ساکت و بی‌صدا. زمانی که mke2fs در یک اسکریپت اجرا می‌شود مفید است.
فقط نوشتن سوپربلاک و توصیف‌کننده‌های گروه. این یک اقدام نهایی و اضطراری است که تنها در موارد بسیار نادری باید انجام شود که تمامی سوپربلاک‌ها و سوپربلاک‌های پشتیبان خراب شده‌اند، و کاربران باتجربه به دنبال آخرین راهکار بازیابی هستند. این گزینه باعث می‌شود mke2fs سوپربلاک و توصیف‌کننده‌های گروه را دوباره مقداردهی کند، بدون آنکه جدول آی‌نود و بیت‌مپ‌های بلاک و آی‌نود را دستکاری نماید. بلافاصله پس از استفاده از این گزینه، برنامه e2fsck باید اجرا شود، و هیچ تضمینی وجود ندارد که داده‌ها قابل نجات باشند. به دلیل تنوع گسترده گزینه‌های احتمالی mke2fs که بر چیدمان روی دیسک تأثیر می‌گذارند، هنگام استفاده از این گزینه بسیار حیاتی است که دقیقاً همان گزینه‌های قالب‌بندی مانند اندازه بلاک، نوع سیستم‌فایل، پرچم‌های ویژگی و سایر متغیرهای تنظیمی را مشخص کنید، در غیر این صورت سیستم‌فایل دچار خرابی‌های بیشتری خواهد شد. در برخی موارد، مانند سیستم‌فایل‌هایی که تغییر اندازه داده شده‌اند یا ویژگی‌هایی پس از زمان قالب‌بندی روی آن‌ها فعال شده است، بازنویسی صحیح همه سوپربلاک‌ها غیرممکن است و دست‌کم بخشی از خرابی سیستم‌فایل رخ خواهد داد. بهتر است این کار را روی یک کپی کامل از سیستم‌فایل اجرا کنید تا در صورت کار نکردن بتوان گزینه‌های دیگر را آزمود.
نوع سیستم‌فایل (مانند ext2، ext3، ext4 و غیره) را که باید ساخته شود مشخص می‌کند. اگر این گزینه مشخص نشود، mke2fs پیش‌فرضی را بر اساس نحوه اجرای دستور (برای مثال استفاده از نامی به شکل mkfs.ext2، mkfs.ext3 و غیره) یا بر اساس پیش‌فرض تعریف‌شده توسط فایل /etc/mke2fs.conf انتخاب خواهد کرد. این گزینه کنترل می‌کند که چه گزینه‌های پیش‌فرضی برای سیستم‌فایل، بر اساس بخش پیکربندی fstypes در /etc/mke2fs.conf، استفاده شوند.

اگر گزینه -O برای افزودن یا حذف صریح گزینه‌های سیستم‌فایل که باید در سیستم‌فایل تازه ساخته‌شده تنظیم شوند استفاده شود، ممکن است سیستم‌فایل حاصل توسط نوع_سیستم‌فایل درخواست‌شده پشتیبانی نشود. (به عنوان مثال، دستور "mke2fs -t ext3 -O extent /dev/sdXX" سیستم‌فایلی ایجاد می‌کند که توسط پیاده‌سازی ext3 در هسته لینوکس پشتیبانی نمی‌شود؛ و دستور "mke2fs -t ext3 -O ^has_journal /dev/hdXX" سیستم‌فایلی می‌سازد که فاقد ژورنال است و بنابراین توسط کدهای سیستم‌فایل ext3 در هسته لینوکس پشتیبانی نخواهد شد).

نحوه استفاده از سیستم‌فایل را مشخص می‌کند تا mke2fs بتواند پارامترهای بهینه سیستم‌فایل را برای آن کاربرد برگزیند. انواع کاربرد پشتیبانی‌شده در فایل پیکربندی /etc/mke2fs.conf تعریف شده‌اند. کاربر می‌تواند یک یا چند نوع کاربرد را با استفاده از فهرستی جداشده با کاما مشخص کند.

اگر این گزینه مشخص نشود، mke2fs یک نوع کاربرد پیش‌فرض واحد را بر اساس اندازه سیستم‌فایل در حال ساخت انتخاب می‌کند. اگر اندازه سیستم‌فایل کمتر از ۳ مگابایت باشد، mke2fs از نوع سیستم‌فایل floppy استفاده خواهد کرد. اگر اندازه سیستم‌فایل بزرگ‌تر یا مساوی ۳ اما کمتر از ۵۱۲ مگابایت باشد، mke2fs(8) از نوع سیستم‌فایل small استفاده می‌کند. اگر اندازه سیستم‌فایل بزرگ‌تر یا مساوی ۴ ترابایت اما کمتر از ۱۶ ترابایت باشد، mke2fs(8) از نوع سیستم‌فایل big استفاده می‌کند. اگر اندازه سیستم‌فایل بزرگ‌تر یا مساوی ۱۶ ترابایت باشد، mke2fs(8) از نوع سیستم‌فایل huge استفاده خواهد کرد. در غیر این صورت، mke2fs(8) از نوع پیش‌فرض سیستم‌فایل default استفاده می‌کند.

تنظیم شناسه منحصربه‌فرد سراسری (UUID) سیستم‌فایل به شناسه_یکتا. قالب UUID مجموعه‌ای از ارقام هگزادسیمال است که با خط تیره جدا شده‌اند، مانند این: "c1b9d5a2-f162-11cf-9ece-0020afc76f16". پارامتر شناسه_یکتا همچنین می‌تواند یکی از مقادیر زیر باشد:
پاک کردن UUID سیستم‌فایل
تولید یک UUID تصادفی جدید
تولید یک UUID جدید بر پایه زمان
اجرا با نمایش جزئیات کامل (verbose).
چاپ نسخه mke2fs و خروج.
پیش از بازنویسی یک بلاک سیستم‌فایل، محتوای پیشین بلاک را در یک فایل بازگردانی می‌نویسد. این فایل بازگردانی می‌تواند با e2undo(8) برای بازیابی محتوای پیشین سیستم‌فایل در صورت بروز هرگونه مشکل استفاده شود. اگر رشته خالی به عنوان آرگومان undo_file ارسال شود، فایل بازگردانی در فایلی با نام mke2fs-دستگاه.e2undo در دایرکتوری مشخص‌شده توسط متغیر محیطی E2FSPROGS_UNDO_DIR یا دستورالعمل undo_dir در فایل پیکربندی نوشته خواهد شد.
هشدار: از فایل بازگردانی نمی‌توان برای بازیابی در برابر قطع ناگهانی برق یا فروپاشی سیستم استفاده کرد.

اگر روی یک مقدار عددی صحیح غیرصفر تنظیم شود، از مقدار آن برای تعیین این‌که هر چند وقت یک بار sync(2) در طول مقداردهی اولیه جدول آی‌نود فراخوانی شود، استفاده می‌شود.
مکان فایل پیکربندی را مشخص می‌کند (به mke2fs.conf(5) مراجعه کنید).
اگر روی یک مقدار عددی صحیح غیرصفر تنظیم شود، از مقدار آن برای تعیین نخستین گروه بلاک متا استفاده می‌شود. این متغیر بیشتر برای مقاصد اشکال‌زدایی کاربرد دارد.
اگر روی یک مقدار عددی صحیح غیرصفر تنظیم شود، از مقدار آن برای تعیین اندازه سکتور منطقی دستگاه استفاده می‌شود.
اگر روی یک مقدار عددی صحیح غیرصفر تنظیم شود، از مقدار آن برای تعیین اندازه سکتور فیزیکی دستگاه استفاده می‌شود.
در صورت تنظیم، پیام بررسی خودکار سیستم‌فایل ناشی از شمارش دفعات سوار شدن یا فاصله زمانی بررسی نمایش داده نخواهد شد.

این نسخه از mke2fs توسط تئودور تسو (Theodore Ts'o) با نشانی <tytso@mit.edu> نوشته شده است.

mke2fs بخشی از بسته e2fsprogs است و از نشانی http://e2fsprogs.sourceforge.net در دسترس است.

mke2fs.conf(5), badblocks(8), dumpe2fs(8), e2fsck(8), tune2fs(8), ext4(5)

مه ۲۰۲۵ e2fsprogs