نحوه کار پارتیشن بندی دیسک رکورد اصلی بوت در لینوکس
مدیریت کارآمد ذخیره سازی یک جنبه حیاتی برای حفظ یک محیط محاسباتی سازمان یافته است.
در این راهنمای دقیق، آپشن های پارتیشنبندی دیسک Master Boot Record (MBR) با استفاده از دستور parted
در لینوکس را تحلیل خواهیم کرد.
علاوه بر این، ما روند گفت ن هارد دیسک جدید در VMware و همچنین نحوه قالب بندی و نصب پارتیشن جدید ایجاد شده را با استفاده از mkfs
و fstab
به ترتیب پوشش خواهیم داد.
فهرست مطالب
در اینجا چیزی است که ما در این راهنمای جامع پوشش خواهیم داد:
نحوه ایجاد یک جدول پارتیشن MBR جدید
نحوه فرمت کردن پارتیشن با mkfs
مروری بر MBR
MBR یک طرح پارتیشن بندی قدیمی است که در سیستم های مبتنی بر BIOS استفاده می شود، با یک بخش 512 بایتی در ابتدای دستگاه ذخیره سازی که حاوی اطلاعات پارتیشن و بوت لودر است.
512 بایت MBR به صورت زیر سازماندهی شده است:
Master Boot Code (446 bytes): این بخش شامل کد اجرایی است که مسئول بارگذاری سیستم عامل است. پارتیشن فعال (قابل بوت) را پیدا می کند و کنترل را به بخش بوت آن منتقل می کند.
جدول پارتیشن (64 بایت): 64 بایت بعدی برای جدول پارتیشن رزرو شده است که می تواند حداکثر چهار پارتیشن اصلی یا سه پارتیشن اصلی و یک پارتیشن توسعه یافته را توصیف کند.
امضای MBR (2 بایت): دو بایت آخر حاوی یک امضا (0x55AA) است که نشان می دهد این یک MBR معتبر است.
معرفی نرم افزار Parted Utility
parted
یک ابزار خط فرمان است که برای ایجاد، تغییر اندازه و مدیریت پارتیشنهای دیسک در سیستمهای لینوکس طراحی شده است.
مجموعه ای جامع از ویژگی ها برای انجام وظایف مربوط به دیسک ارائه می دهد و به دلیل انعطاف پذیری و قابلیت های قوی آن به طور گسترده ای مورد استفاده قرار می گیرد. اهداف اولیه parted
عبارتند از:
ایجاد پارتیشن و تغییر اندازه: parted
به کاربران امکان میدهد پارتیشنهای جدید روی دیسک ایجاد کنند، اندازه پارتیشنهای موجود را تغییر دهند و تخصیص فضای دیسک را تنظیم کنند.
پشتیبانی از سیستم فایل: از سیستم های فایل مختلف، از جمله ext2، ext3، ext4، FAT، NTFS و غیره پشتیبانی می کند و به کاربران امکان می دهد فایل سیستمی را انتخاب کنند که به بهترین وجه با نیازهای خود مطابقت دارد.
دستکاری جدول پارتیشن: parted
مدیریت جداول پارتیشن را تسهیل می کند، از جمله ایجاد، اصلاح و حذف پارتیشن ها در این جداول.
عملیات در سطح بخش: ابزار در سطح بخش عمل می کند و امکان کنترل دقیق و دستکاری ساختارهای دیسک را فراهم می کند.
نحوه نصب Parted
با استفاده از این دستور می توانید parted
روی سیستم خود نصب کنید:
yum install parted
قبل از ایجاد پارتیشن باید دیسک جدیدی را به ماشین مجازی خود اضافه کنیم. من از VMware استفاده می کنم. ادامه دهید و ماشین مجازی RHEL را راه اندازی کنید.
ابتدا باید به گزینه Player در گوشه بالا سمت چپ و سپس به گزینه Manage بروید. با استفاده از این گزینه می توانید تنظیمات ماشین مجازی را انتخاب کنید.
روی " گفت ن به هارد دیسک جدید" کلیک کنید. سپس هارد دیسک را انتخاب کنید و دکمه next را فشار دهید تا ظرفیت دیسک را درخواست کند. برای اهداف یادگیری، فقط 5 گیگابایت دیسک اضافه کنید.
ادامه کلیک کنید تا به گزینه پایان برسید.
ما روی ایجاد پارتیشن تمرکز می کنیم، پس روی قسمت هایی که برای پارتیشن مورد نیاز نیستند تمرکز نمی کنیم.
سپس، ماشین مجازی خود را مجددا راه اندازی کنید تا هارد دیسک جدید اضافه شده را منعکس کند.
نحوه شناسایی دیسک ها
شناسایی دیسک ها گامی مهم در فرآیند پارتیشن بندی دیسک است زیرا تضمین می کند که با دستگاه ذخیره سازی صحیح روی سیستم خود کار می کنید.
از دستور lsblk
برای نمایش اطلاعات مربوط به دستگاه های بلوک، از جمله هارد دیسک ها و پارتیشن ها استفاده کنید.
lsblk
به دنبال دیسکی باشید که می خواهید پارتیشن بندی کنید. نام دیسکها معمولاً در قالب /dev/sdX
هستند، که در آن «X» یک حرف کوچک است که نشاندهنده دیسک است. به عنوان مثال، /dev/sda
، /dev/sdb
، و غیره.
نحوه راه اندازی Parted
یک ترمینال را باز کنید و برای دیسک parted
راه اندازی کنید:
parted /dev/sdX
این ابزار parted
را با امتیازات بالا آغاز می کند و آن را هدایت می کند تا روی دستگاه ذخیره سازی مشخص شده ( /dev/sdX
) تمرکز کند.
پس از اجرا، کاربر وارد حالت تعاملی parted
برای دستگاه مشخص شده می شود و پیکربندی و مدیریت پارتیشن ها را در آن دستگاه ذخیره سازی خاص امکان پذیر می کند.
نحوه ایجاد یک جدول پارتیشن MBR جدید
اگر دیسک پارتیشن بندی نشده است، یک جدول پارتیشن MBR جدید با استفاده از این دستور ایجاد کنید:
(parted) mklabel msdos
این به parted
دستور می دهد تا یک جدول پارتیشن MBR جدید در دستگاه ذخیره سازی انتخاب شده فعلی ایجاد کند. این عمل هر گونه اطلاعات پارتیشن موجود در دستگاه را حذف می کند و عملاً با یک صفحه تمیز برای پارتیشن بندی شروع می شود.
توجه به این نکته مهم است که این دستور باید با احتیاط استفاده شود، زیرا جدول پارتیشن موجود و تمام داده های مرتبط روی دستگاه را پاک می کند.
نحوه ایجاد پارتیشن های اولیه
می توانید یک پارتیشن اصلی با نوع سیستم فایل مشخص شده، شروع و پایان ایجاد کنید:
(parted) mkpart primary [filesystem-type] [start] [end]
mkpart
: این دستور parted
است که برای ایجاد یک پارتیشن جدید استفاده می شود. عبارت mkpart مخفف عبارت make partition است.
primary
: نوع پارتیشنی که باید ایجاد شود را مشخص می کند. در این مورد، یک پارتیشن اولیه است. پارتیشن های اولیه پارتیشن های اصلی روی دیسک هستند و می توان از آنها برای نصب یک سیستم عامل یا ذخیره داده ها استفاده کرد.
[filesystem-type]
: این مکان نگهدارنده را با نوع فایل سیستم مورد نظر برای پارتیشن جایگزین کنید. انواع سیستم فایل رایج عبارتند از ext4
، ntfs
، fat32
و غیره.
[start]
و [end]
: این مکاننماها نقطه شروع و پایان پارتیشن را نشان میدهند که بر حسب مگابایت (MB) یا به صورت درصدی از اندازه کل دیسک مشخص شدهاند. به عنوان مثال، ممکن است تعریف کنید که پارتیشن با 1 گیگابایت شروع و به 10 گیگابایت ختم شود.
نحوه نمایش اطلاعات پارتیشن
از این دستور برای تایید طرح پارتیشن استفاده کنید:
(parted) print free
هنگامی که در حالت تعاملی parted
(parted) print free
وارد میکنید، خلاصهای از فضای آزاد موجود بر روی دیسک انتخابشده، شامل جزئیاتی مانند نقاط شروع و پایان فضای تخصیصنخورده، اندازه آن، و هرگونه محدودیت در آن ارائه میشود. ایجاد پارتیشن های جدید در آن فضا.
در اینجا خروجی است:
(parted) print free Model: ABC Storage Device Disk /dev/sdX: 1000GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 32.3kB 1049kB 1017kB Free Space 1 1049kB 256MB 255MB primary ext4 boot 2 256MB 512MB 256MB primary linux-swap 3 512MB 1000GB 1000GB primary ntfs
ctrl + d
را فشار دهید تا از قسمت جدا شده خارج شوید.
نحوه فرمت پارتیشن با mkfs
پس از پارتیشن بندی، پارتیشن را با یک فایل سیستم دلخواه (مثلا: ext4) فرمت کنید.
mkfs.[filesystem-type] /dev/sdX1
این به سیستم می گوید که یک سیستم فایل از نوع مشخص شده در پارتیشن تعیین شده ایجاد کند. پس از اجرای این دستور، فایل سیستم انتخابی روی پارتیشن ایجاد می شود و آماده ذخیره فایل ها و داده ها خواهد بود.
نحوه نصب خودکار با fstab
با استفاده از این دستور می توانید UUID پارتیشن را پیدا کنید:
sudo blkid /dev/sdX1
/etc/fstab
ویرایش کنید تا یک ورودی برای نصب خودکار داشته باشد و مطمئن شوید که نوع فایل سیستم مانند نوع سیستم فایل mkfs.[filesystem-type]
فایل /etc/fstab
که مخفف "جدول سیستم های فایل" است، یک فایل پیکربندی حیاتی در سیستم عامل های یونیکس و یونیکس مانند، از جمله لینوکس است. برای تعیین نحوه نصب دستگاه های ذخیره سازی (مانند هارد دیسک ها و پارتیشن ها) در سیستم فایل استفاده می شود.
هدف اصلی فایل /etc/fstab
این است که مشخص کند چگونه دستگاههای ذخیرهسازی مختلف در طول فرآیند راهاندازی سیستم نصب شوند.
UUID=[your-uuid] /dir-to-mount-path [filesystem-type] defaults 0 0
در اینجا یک مثال است:
UUID=127854Vd344HHttRpq977739 /kedar ext4 defaults 0 0
UUID=127854Vd344HHttRpq977739
: این قسمت شناسه منحصر به فرد جهانی (UUID) دستگاه بلوک یا پارتیشنی که قرار است نصب شود را مشخص می کند. UUID یک شناسه منحصربهفرد است که به سیستم فایل اختصاص داده میشود و حتی در صورت تغییر نام دستگاه، یک مرجع ثابت را تضمین میکند. در این مورد، UUID "127854Vd344HHttRpq977739" است.
/kedar
: این قسمت نقطه اتصال را نشان می دهد که دایرکتوری در سیستم فایل است که دستگاه مشخص شده توسط UUID در آن متصل می شود. در این مثال، نقطه اتصال "/kedar" است.
ext4
: این نوع فایل سیستم روی دستگاه را مشخص می کند. در این مورد، "ext4" است که یک سیستم فایل رایج در لینوکس است.
defaults
: گزینه «پیشفرض» مخفف مجموعهای از گزینههای نصب معمولی است. این شامل گزینه هایی مانند دسترسی خواندن/نوشتن است و امکان اجرای باینری ها از سیستم فایل را فراهم می کند. در صورت نیاز به گزینه های خاص تر، می توان آنها را به صراحت فهرست کرد.
0
: این قسمت نشان دهنده گزینه dump است. توسط دستور dump
برای تعیین اینکه آیا فایل سیستم باید پشتیبان گیری شود یا خیر استفاده می شود. مقدار 0 نشان می دهد که نیازی به پشتیبان گیری خودکار نیست.
0
: آخرین فیلد نشان دهنده گزینه pass است. این توسط ابزار fsck
(بررسی سیستم فایل) برای تعیین ترتیب تحلیل سیستم های فایل در زمان بوت استفاده می شود. مقدار 0 نشان می دهد که سیستم فایل نباید تحلیل شود.
این ورودی /etc/fstab
سیستم را هدایت میکند تا دستگاهی را که توسط UUID مشخص شده مشخص شده و به صورت ext4 فرمت شده است، در دایرکتوری "/kedar" در طول فرآیند بوت سوار کند. Mount با گزینه های پیش فرض انجام می شود و نیازی به پشتیبان گیری خودکار یا تحلیل سیستم فایل وجود ندارد.
در اینجا چند دلیل برای استفاده از UUID به جای نام پارتیشن آورده شده است
نام دستگاه ها (به عنوان مثال، /dev/sda1
) می تواند تغییر کند، به خصوص در سیستم هایی با چندین دستگاه ذخیره سازی یا زمانی که پیکربندی های سخت افزاری اصلاح می شوند. UUID ها ثابت می مانند.
در طول فرآیند بوت، ممکن است چندین دستگاه ذخیره سازی به طور همزمان شناسایی شوند. UUID ها امکان شرایط مسابقه را حذف می کنند، جایی که سیستم عامل ممکن است نام های مختلفی را به یک دستگاه فیزیکی در نمونه های مختلف بوت اختصاص دهد.
اگر نام دستگاه در /etc/fstab
استفاده شود و نام ها به دلیل تغییرات سخت افزاری تغییر کنند، ممکن است به خطاهای نصب یا خرابی داده ها منجر شود. UUID ها اطمینان حاصل می کنند که دستگاه صحیح همیشه نصب شده است.
UUID ها بیشتر از نام دستگاه ها برای انسان قابل خواندن هستند و کمتر مستعد اشتباهات تایپی هستند و خواندن و نگهداری فایل /etc/fstab
را آسان تر می کنند.
UUID ها هنگام انتقال یک دستگاه ذخیره سازی از یک سیستم به سیستم دیگر یکسان باقی می مانند و از نصب صحیح بدون تغییر /etc/fstab
برای سیستم جدید اطمینان حاصل می کنند.
در اینجا یک مثال /etc/fstab
با استفاده از UUID آورده شده است:
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /mnt/data ext4 defaults 0 2
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
با UUID واقعی پارتیشن جایگزین کنید.
نحوه نصب پارتیشن
هنگامی که همه چیز انجام شد، ما پارتیشن را در یکی از دایرکتوری های شما نصب می کنیم.
mount -av
اگر این پیغام "موفقیتآمیز نصب شده" را در دایرکتوری kedar
برگرداند، پس پارتیشن شما روی دایرکتوری kedar
سوار شده است.
اکنون هر بار که سیستم خود را روشن می کنید، پارتیشن مشخص شده به طور خودکار بر روی دایرکتوری "/kedar" نصب می شود و دسترسی یکپارچه به محتویات آن را در طول جلسات محاسباتی شما تضمین می کند.
این پیکربندی پیوسته mount با ورود در فایل /etc/fstab
تسهیل میشود و پیوستی ثابت و قابل اعتماد از پارتیشن را در طول فرآیند راهاندازی سیستم فراهم میکند.
نحوه ایجاد پارتیشن های منطقی
پارتیشن های منطقی یک مفهوم کلیدی در پارتیشن بندی دیسک هستند، به ویژه در سیستم هایی که از طرح پارتیشن بندی Master Boot Record (MBR) استفاده می کنند.
MBR حداکثر چهار پارتیشن اصلی را امکان پذیر می کند و برای غلبه بر این محدودیت، می توان یکی از پارتیشن های اولیه را به عنوان پارتیشن توسعه یافته تعیین کرد.
در داخل پارتیشن توسعه یافته، می توان چندین پارتیشن منطقی ایجاد کرد.
دیسک را شناسایی کنید
با شناسایی دیسکی که می خواهید پارتیشن های منطقی را در آن ایجاد کنید، شروع کنید. می توانید از دستورات lsblk
یا fdisk -l
برای فهرست کردن دیسک های موجود و پارتیشن های آنها استفاده کنید
lsblk
Parted for the Disk را اجرا کنید
از دستور parted
برای راهاندازی رابط تعاملی برای دیسک انتخابی استفاده کنید («X» را با شناسه دیسک مناسب جایگزین کنید:
parted /dev/sdX
یک پارتیشن توسعه یافته ایجاد کنید
اگر قبلاً ایجاد نشده است، باید یک پارتیشن توسعه یافته ایجاد کنید که در آن پارتیشن های منطقی قرار می گیرند.
این مرحله ضروری است زیرا پارتیشن های منطقی فقط می توانند در یک پارتیشن توسعه یافته وجود داشته باشند. فرض کنید فضای خالی از 50٪ تا 100٪ از دیسک است:
(parted) mkpart extended 50% 100%
ایجاد پارتیشن های منطقی
اکنون، در پارتیشن توسعه یافته، می توانید پارتیشن های منطقی ایجاد کنید. مثال زیر یک پارتیشن منطقی با استفاده از سیستم فایل ext4 از 0% تا 25% پارتیشن توسعه یافته ایجاد می کند.
شما همچنین می توانید اندازه را با استفاده از فرمت مگابایت بدهید. برای آن باید فضای آزاد را بدانید. می توانید این کار را با استفاده از دستور print free
در داخل parted انجام دهید.
(parted) mkpart logical ext4 0% 25%
می توانید این مرحله را برای ایجاد پارتیشن های منطقی اضافی با اندازه ها یا فایل سیستم های مختلف تکرار کنید.
کنوانسیون شماره گذاری طرح پارتیشن بندی
در طرح پارتیشن بندی Master Boot Record (MBR)، قرارداد شماره گذاری برای پارتیشن های منطقی در یک پارتیشن توسعه یافته معمولاً از 5 شروع می شود. این به این دلیل است که چهار پارتیشن اصلی (در صورت وجود) به اعداد 1 تا 4 اختصاص داده می شوند و پارتیشن های منطقی شماره گذاری می شوند. شروع از 5
در اینجا یک طرح شماره گذاری رایج وجود دارد:
پارتیشن اصلی 1: /dev/sdX1
پارتیشن اصلی 2: /dev/sdX2
پارتیشن اصلی 3: /dev/sdX3
پارتیشن اصلی 4: /dev/sdX4
پارتیشن توسعه یافته: /dev/sdX4
(پارتیشن توسعه یافته به عنوان یکی از چهار مورد محاسبه می شود)
پارتیشن منطقی 5: /dev/sdX5
پارتیشن منطقی 6: /dev/sdX6
پارتیشن منطقی 7: /dev/sdX7
و غیره.
بسته بندی
از شما برای تحلیل نحوه پارتیشن بندی دیسک MBR امروز با من متشکرم. میتوانید عمیقتر در حوزه تخصص لینوکس غوطهور شوید و در آموزشهای آینده من برای محتوای روشنتر همراه باشید.
شما می توانید من را دنبال کنید:
ارسال نظر