اگر بالاخره تصمیم گرفتید در مورد سیستم عامل لینوکس اطلاعات بیشتری کسب کنید، درک ساختار سیستم فایل زیربنایی آن مکان خوبی برای شروع است.
اگر اخیراً از ویندوز به لینوکس تغییر داده اید، فقدان سی درایو، دی درایو و این گونه قراردادهای نامگذاری آشنا ممکن است شما را گیج کند. اما نگران نباشید، زیرا هنگامی که متوجه شوید ساختار دایرکتوری لینوکس چگونه تنظیم شده است، تمام تردیدهای شما روشن خواهد شد.
ساختار دایرکتوری لینوکس
توسعه لینوکس از یونیکس الهام گرفته شده است، بنابراین از سلسله مراتب سیستم فایل مشابه یونیکس پیروی می کند. شما همچنین متوجه این شباهت در سایر سیستم عامل های مبتنی بر یونیکس مانند macOS و BSD خواهید شد. ساختار دایرکتوری لینوکس مانند یک درخت است که دایرکتوری ریشه (/) تنه درخت است که بقیه دایرکتوری ها از آن منشعب می شوند.
دایرکتوری ها عمدتا شامل سه نوع فایل هستند:
- فایل های عمومی: فایل های عمومی فایل های معمولی هستند که شامل داده های ASCII یا باینری هستند. فیلم ها، تصاویر، اسناد و غیره نمونه های رایج فایل های عمومی هستند.
- فایل های دایرکتوری: در لینوکس، دایرکتوری ها نیز به عنوان فایل هایی طبقه بندی می شوند که به عنوان فضای ذخیره سازی برای انواع فایل ها و دایرکتوری ها عمل می کنند.
- فایلهای دستگاه: ممکن است با دیدن درایو F: یا G: که هر زمان که یک USB را در ویندوز وصل میکنید، ایجاد شده آشنا باشید. به طور مشابه، در لینوکس، USB و سایر اجزای سخت افزاری به صورت /dev/device_id نشان داده می شوند.
بیایید با دایرکتوری های مختلف و کاربرد آنها در لینوکس آشنا شویم. توصیه می کنیم با رفتن به دایرکتوری ها با دستور cd و بررسی محتوای آنها با دستور ls همراه باشید.
اگر می خواهید درباره سیستم سلسله مراتبی لینوکس اطلاعات بیشتری کسب کنید، می توانید از دستور man hier استفاده کنید که صفحه دستی را نشان می دهد که سلسله مراتب سیستم فایل لینوکس را با جزئیات توصیف می کند.
1. دایرکتوری ریشه (/)
دایرکتوری ریشه که با یک اسلش رو به جلو (/) نشان داده می شود، همه دایرکتوری ها را در لینوکس ذخیره می کند. اگر در این دایرکتوری سی دی قرار دهید و از دستور ls استفاده کنید، لیستی از تمام دایرکتوری های موجود در دستگاه خود خواهید یافت. مسیر مطلق هر فایل از دایرکتوری ریشه می گذرد زیرا والد همه دایرکتوری های دیگر است.
2. /بوت
فهرست راه انداز شامل فایل های مهم مورد نیاز بوت لودر است. فایل سیستم رم اولیه یا initramfs نیز در اینجا همراه با هسته ذخیره می شود. شما نباید با این دایرکتوری در دستگاه اصلی خود سرهم بندی کنید. اگر می خواهید آزمایش کنید، این کار را در یک ماشین مجازی انجام دهید.
3. /dev
لینوکس همه چیز را به عنوان یک فایل در نظر می گیرد و سخت افزار نیز از این قاعده مستثنی نیست. دایرکتوری dev / حاوی فایلهای مجازی ویژهای است که اجزای سختافزاری مانند ماوس، صفحهکلید، دستگاههای ذخیرهسازی و غیره را نشان میدهد که به سیستم شما متصل هستند.
4. / و غیره
دایرکتوری etc شامل فایل های پیکربندی حیاتی سیستم مانند اسکریپت های راه اندازی، فایل های شبکه، فایل های مربوط به حساب کاربری و غیره است. شما باید فایل های پیکربندی را در دایرکتوری /etc ویرایش کنید تا تغییراتی در سراسر سیستم ایجاد کنید.
5. / خانه
دایرکتوری home / دایرکتوری اصلی یک کاربر را ذخیره می کند. اگر از یک محیط ویندوز سوئیچ می کنید، دایرکتوری home / مشابه دایرکتوری C:/Users را خواهید یافت. این شامل پیکربندی های خاص کاربر در داخل دایرکتوری هر کاربر است.
6. /bin
دایرکتوری bin / حاوی دستورات سیستم و سایر برنامه های اجرایی است. دستور ls که برای فهرست کردن زیرشاخه ها به همراه بسیاری از دستورات مفید دیگر استفاده می کنید در دایرکتوری bin / قرار دارد.
7. /انتخاب
دایرکتوری /opt شامل بسته های نرم افزاری اختیاری برای تسهیل سازگاری بهتر برنامه های خاص است. هنگامی که یک برنامه شخص ثالث را نصب می کنید که در مخزن توزیع رسمی موجود نیست، کد نرم افزار آن در فهرست /opt ذخیره می شود.
8. /proc
دایرکتوری proc / یک سیستم فایل کاذب است که حاوی اطلاعاتی در مورد فرآیندها و پارامترهای هسته است. در هنگام راهاندازی با دادهها پر میشود و هنگامی که دستگاه لینوکس خود را خاموش میکنید پاک میشود.
دایرکتوری proc/ همچنین خانه اطلاعات سیستمی مانند میزان مصرف حافظه، اطلاعات پردازنده و غیره است.
9. /tmp
دایرکتوری tmp / توسط سیستم و برنامه های کاربردی آن برای ذخیره فایل های موقت استفاده می شود. همچنین می توانید داده های موقت را در این پوشه ذخیره کنید، اما به یاد داشته باشید که با راه اندازی مجدد سیستم، داده ها حذف می شوند.
10. / ریشه
در لینوکس، هر کاربر یک پوشه خانگی جداگانه دارد و کاربر root نیز از این امر مستثنی نیست. دایرکتوری root / پوشه اصلی کاربر اصلی است. شما نمی توانید بدون امتیازات superuser به این فهرست دسترسی داشته باشید.
11. /usr
دایرکتوری usr/ حاوی بیشتر فایل ها، کتابخانه ها، برنامه ها و ابزارهای سیستم است. پوشه bin / به صورت نمادین به /usr/bin مرتبط است. همین امر در مورد دایرکتوری های /sbin و /lib نیز صدق می کند.
12. /var
دایرکتوری var فضای ذخیره سازی فایل های متغیر تولید شده توسط سیستم است و شامل لاگ ها، کش ها و فایل های قرقره می باشد. دادههای موجود در var/بهطور خودکار حذف نمیشوند، بنابراین sysadminها میتوانند گزارشهای سیستم را در صورت نیاز جمعآوری و بررسی کنند.
13. /رسانه
هنگامی که یک دستگاه رسانه قابل جابجایی مانند درایو USB، CD یا DVD را متصل میکنید، لینوکس یک زیر شاخه در زیر /media ایجاد میکند که محتویات دستگاه در آن قرار میگیرد. این معمولاً بهمحض اتصال دستگاه بهطور خودکار توسط سیستم انجام میشود. هنگامی که دستگاه را جدا میکنید، سیستم فهرست فرعی مربوطه را حذف میکند.
14. /mnt
دایرکتوری mnt/ برای نصب موقت دستگاه های ذخیره سازی در سیستم استفاده می شود. با این حال، برخی از توزیع های لینوکس نیز از /mnt به عنوان راه حل ذخیره سازی دائمی استفاده می کنند. برخلاف رسانه /، دستگاه ذخیرهسازی بهطور خودکار در /mnt توسط سیستم نصب نمیشود. Sysadmin ها باید به صورت دستی یک دستگاه ذخیره سازی را نصب کنند و جدول سیستم فایل را متناسب با آن پر کنند.
15. /lib
کتابخانه مجموعه ای از کدهای از پیش کامپایل شده است که باینری های اجرایی می توانند از آن استفاده کنند. در لینوکس، دایرکتوری lib/ به عنوان فضای ذخیره سازی برای تمام کتابخانه های مورد نیاز باینری ها در دایرکتوری bin / عمل می کند.
16. /sys
دایرکتوری sys/ حاوی اطلاعاتی در مورد اجزا و درایورهای مختلف سیستم است. این شبیه به /proc است اما ساختار متفاوتی دارد. Sysadmin ها از /proc و /sys به صورت متقابل برای جمع آوری داده ها استفاده می کنند.
17. / اجرا کنید
دایرکتوری /run اطلاعات سیستم را از زمان بوت ثبت می کند. میتوانید اطلاعاتی درباره دیمونهایی که در حال اجرا هستند، کاربرانی که وارد سیستم شدهاند و موارد دیگر پیدا کنید. داده های ذخیره شده در پوشه /run می تواند به شما ایده ای درباره نحوه استفاده از منابع سیستم از زمان راه اندازی بدهد.
پیکربندی فایل ها و پوشه ها در لینوکس
اکنون که متوجه شدید سلسله مراتب سیستم فایل لینوکس چگونه به نظر می رسد، می توانید فایل ها و پوشه های دستگاه لینوکس خود را برای ایجاد یک محیط شخصی سازی شده و امن تر پیکربندی کنید.
اگر مطمئن نیستید که چگونه فایلها و پوشهها را در لینوکس تغییر دهید، بازی کردن با مجوزهای دسترسی محل خوبی برای شروع است.