آشنایی با فایل سیستم لینوکس

آشنایی با فایل سیستم لینوکس

علی مرادی

مفهوم لودینگ بوت ، پارتیشن بندی دیسک ، جدول پارتیشن ، BIOS ، UEFI ، انواع فایل سیستم و غیره برای اکثر ما کمی شناخته شده است. ما اغلب با این اصطلاحات روبرو می شویم اما بندرت اتفاق می افتد که اینها و معنای آنها را با جزئیات بدانیم. این مقاله در تلاش برای تحقق این شکاف به ساده ترین شکل ممکن تلاش کند.

Partition Table:

یكی از اولین تصمیمی كه هنگام نصب توزیع لینوكس با آن روبرو می شویم ، پارتیشن بندی دیسک آن ، فایل سیستم مورد استفاده ، پیاده سازی رمزگذاری برای امنیت است كه با تغییر در معماری و سیستم عامل متفاوت است. یکی از پر کاربردترین معماری ها ، اینتل در حال تحولاتی است و درک این تغییرات مهم است که از طرف دیگر نیاز به دانش در مورد فرآیند بوت شدن دارد.

بسیاری از توسعه دهندگان هر دو ویندوز و لینوکس را بر روی یک دستگاه اجرا می کنند که ممکن است موضوع ترجیح یا نیاز باشد. امروزه بیشتر دستگاه های راه انداز بوت به اندازه کافی هوشمند هستند تا بتوانند هر تعداد سیستم عامل را در همان جعبه تشخیص دهند و منوی لازم را برای بوت شدن در مورد دلخواه خود فراهم کنند. راه دیگر برای دستیابی به همان هدف ، استفاده از مجازی سازی با استفاده از Xen ، QEMU ، KVM یا هر ابزار تصویری ترجیحی دیگر است.

BIOS در مقابل UEFI:

تا اواخر دهه ۹۰ BIOS که مخفف Basic Input/Output System است تنها راه برای بوت کردن سیستم اینتل بود. BIOS اطلاعات پارتیشن بندی را در منطقه ویژه ای به نام Master Boot Record یا (MBR) نگه می دارد به گونه ای که کد اضافی در بخش اول هر پارتیشن قابل بوت ذخیره می شود.

در اواخر دهه ۹۰ مداخله مایکروسافت با اینتل منجر به رابط firmware extensible جهانی (UEFI) شد که هدف اولیه آن بوت ایمن بود. این مکانیسم بوت شدن ثابت شده است به عنوان یک چالش برای روت های مخصوصا که با بخش های بوت متصل می شوند و تشخیص با BIOS سخت بود.

Boot با BIOS:

بوت شدن با BIOS نیاز به قرار دادن کدهای بوت یا دنباله بوت در MBR دارد که در بخش اول دیسک بوت قرار می گیرد. در صورت نصب بیش از یک سیستم عامل ، لودر نصب شده توسط یک بوت لودر معمولی جایگزین می شود که کدهای بوت را بر روی هر دیسک قابل راه اندازی در حین نصب و به روزرسانی به طور خودکار قرار می دهد ، به این معنی که کاربر انتخاب خود را برای شروع به کار در هر سیستم عامل نصب شده دارد.

با این حال ، به ویژه در ویندوز دیده می شود که یک بار گیرنده غیر ویندوز سیستم را به طور ویژه برنامه های خاصی را به روز نمی کند ، یعنی IE ، اما دوباره قانونی سخت و سریع وجود ندارد و در هر جایی مستند نیست.

Boot با UEFI:

UEFI آخرین فناوری بوت شدن است که با همکاری نزدیک مایکروسافت با اینتل تولید شده است. UEFI به لود شدن سیستم عامل نیاز دارد تا به صورت دیجیتالی امضا شود ، راهی برای متوقف کردن وصل کردن rootkits با پارتیشن boot. اما مشکل بوت شدن لینوکس با استفاده از UEFI پیچیده است. با شروع به کار با لینوکس در UEFI ، کلیدهای مورد استفاده باید تحت GPL عمومی شوند که خلاف پروتکل لینوکس است.

با این حال هنوز هم غیرفعال کردن  Secure boot ‘و فعال کردن‘ Legacy Boot to امکان نصب Linux در مشخصات UEFI وجود دارد. کدهای بوت در UEFI در زیر شاخه های زیر قرار داده شده است /EFI ، پارتیشن ویژه در بخش اول دیسک.

انواع فایل سیستم های لینوکس:

توزیع استاندارد لینوکس ، انتخاب دیسک پارتیشن بندی را با فرمت های پرونده ذکر شده در زیر فراهم می کند ، که هر یک از آنها دارای معنی ویژه ای هستند.

  • ext2
  • ext3
  • ext4
  • jfs
  • ReiserFS
  • XFS
  • Btrfs

ext2, ext3, ext4:

این نسخه های مترقی Extended Filesystem یا (ext) هستند که در درجه اول برای MINIX ساخته شده اند. نسخه دوم توسعه یافته (ext2) نسخه بهبود یافته بود. Ext3 بهبود عملکرد اضافه شده است. Ext4 علاوه بر ارائه ویژگی های اضافی ، عملکرد دیگری نیز داشت.

JFS:

Journaled File System یا (JFS) توسط IBM برای AIX UNIX تهیه شده است که به عنوان جایگزینی برای سیستم ext استفاده شده است. JFS جایگزینی برای ext4 است که در حال حاضر مورد استفاده قرار می گیرد و در آنجا پایداری با استفاده از منابع بسیار کم امکان پذیر است. هنگامی که قدرت CPU محدود است ، JFS مفید است.

ReiserFS:

این به عنوان جایگزینی برای ext3 با عملکرد و ویژگی های پیشرفته معرفی شده است. زمانی وجود داشت که فرمت پرونده پیش فرض SuSE Linux ReiserFS بود اما بعداً Reiser از کار خارج شد و SuSe چاره ای جز بازگشت به ext3 نداشت. ReiserFS پسوند سیستم را بطور پویا پشتیبانی می کند که از ویژگی های نسبتاً پیشرفته ای بود اما سیستم فایل فاقد منطقه خاصی از عملکرد بود.

XFS:

XFS، JFS با سرعت بالا بود که هدف آن پردازش موازی I / O بود. ناسا هنوز از این فایل سیستم در سرور ذخیره سازی ۳۰۰+ ترابایت خود استفاده می کند.

Btrfs:

سیستم فایل B-Tree یا (Btrfs) بر تحمل خطا ، اجرای سرگرم کننده ، سیستم تعمیر ، پیکربندی ذخیره سازی بزرگ تمرکز دارد و هنوز در دست توسعه است. Btrfs برای سیستم تولید توصیه نمی شود.

قالب پرونده کلاستری:

فایل پرونده های دسته بندی شده برای بوت شدن مورد نیاز نیست اما در نقطه نظر ذخیره سازی از فرم اشتراک گذاری محیطی متناسب است.

قالب پرونده غیر لینوکس:

فرمت فایل های زیادی وجود ندارد که تحت لینوکس در دسترس هستند اما توسط سیستم عامل های دیگر استفاده می شوند. Viz. ، NTFS توسط مایکروسافت ، HFS توسط Apple / Mac OS و غیره. بسیاری از این موارد را می توان در زیر لینوکس با نصب آنها با استفاده از ابزارهای خاصی مانند ntfs-3g در سیستم فایل NTFS Mount نصب کرد اما در زیر لینوکس ترجیح داده نمی شود.

قالب پرونده یونیکس:

برخی از فرمت های فایل وجود دارد که به طور گسترده در لینوکس استفاده می شود اما در زیر لینوکس مخصوصاً برای نصب سیستم ریشه لینوکس ترجیح داده نمی شود. به عنوان مثال ، UFS BSD.

Ext4 ترجیحی و رایج ترین فایل سیستم لینوکس است. در موارد خاص XFS و ReiserFS استفاده می شوند. Btrfs هنوز در محیط آزمایشی مورد استفاده قرار می گیرد.

پارتیشن بندی دیسک:

مرحله اول پارتیشن بندی دیسک است. در هنگام تقسیم بندی باید نکات زیر را در نظر داشته باشیم.

  • پارتیشن نگه داشتن نسخه پشتیبان و بازیابی در ذهن.
  • علامت محدودیت فضا در پارتیشن.
  • مدیریت دیسک – عملکرد اداری.

مدیریت Logical Volume:

LVM یک پارتیشن بندی پیچیده است که در نصب بزرگ ذخیره سازی مورد استفاده قرار می گیرد. ساختار LVM پارتیشن بندی دیسک فیزیکی واقعی را پوشانده است.

Swap:

Swap برای صفحه بندی حافظه در لینوکس بطور خاص در هنگام hibernation سیستم استفاده می شود. مرحله فعلی سیستم در هنگام مکث سیستم (Hibernate) در یک نقطه از زمان به Swap نوشته می شود.

سیستمی که هرگز به hibernation نمی رود ، به فضای مبادله ای برابر با اندازه RAM آن نیاز دارد.

رمزگذاری:

آخرین مرحله رمزگذاری که با خیال راحت تضمین داده است. رمزگذاری می توانید در سطح دیسک و همچنین راهنمای باشد. در رمزگذاری دیسک ، کل دیسک رمزگذاری شده است و نیاز به نوعی کدهای ویژه برای رمزگشایی آن دارد.

با این حال یک مسئله پیچیده است. کد رمزگشایی نمی تواند بر روی همان دیسک تحت رمزگذاری باقی بماند ، از این رو ما به سخت افزار خاص خاصی احتیاج داریم یا اجازه دهید مادربرد این کار را انجام دهد.

رمزگذاری دیسک دستیابی به آن نسبتاً آسان است و پیچیدگی کمتری دارد. در این حالت کد رمزگشایی در همان دیسک ، جایی در فهرست های مختلف باقی می ماند.

رمزگذاری دیسک در ساختن سرور ضروری است و ممکن است یک مسئله حقوقی باشد براساس موقعیت جغرافیایی که شما در حال اجرای آن هستید.

امیدواریم از این مقاله بهره لازم را برده و برای شما مفید بوده باشد. نظرات خود را با ما به اشتراک بگذارید.