شنبه, ۶ بهمن, ۱۴۰۳ / 25 January, 2025
ساختار دایرکتوری لینوکس
اگر کاربر ویندوز باشید و برای نخستین بار به دنیای لینوکس قدم بگذارید، قطعا ساختار دایرکتوریهای لینوکس بهنظرتان عجیب خواهد رسید.
در لینوکس، دیگر از درایو C و کلا درایوهای هارددیسک خبری نیست و علامت/ جایگزین آنها شده است و دایرکتوریهای موجود در این فولدر، همگی حروفی رمزآلود و سه یا چهار حرفی دارند.
استاندارد ساختار سیستم فایل سلسلهمراتبی لینوکس، (FHS) در سیستمهای عامل لینوکسی و یونیکسی ساختار سیستمفایل را مشخص میکند. این سیستم فایلها شامل دایرکتوریهایی است که بهطور پیشفرض فعال نیست.
دایرکتوری root (/)
همه چیز در سیستم لینوکس تحت دایرکتوری/ قرار دارد. نام این دایرکتوری root یا ریشه است. دایرکتوری روت شبیه به C: در ویندوز است، اما به یاد داشته باشید که دقیقا این گونه نیست و فقط مثالی است برای درک راحتتر این موضوع.
در ویندوز پارتیشنهای دیگر در درایوهای بعدی بهنامهای مثلا D: و... قرار دارد، اما این درایوها در لینوکس درون همان مسیر روت قرار میگیرد.
bin/ دایرکتوری الزامی برای کاربر
دایرکتوری bin/ شامل برنامههای (باینریها) مخصوص کاربر است که هنگام اجرای سیستم در حالت تککاربر باید فعال و حاضر باشد.
نرمافزارهایی چون فایرفاکس در usr/bin/ نصب میشود، در حالی که برنامههای مهم سیستمی همچون Bash و امثال آن در دایرکتوری bin/ قرار میگیرد.
دایرکتوری usr/ را معمولا در پارتیشن دیگری قرار میدهد، فایلهای موجود در bin/ برای سیستم مهم است؛ چرا که این دایرکتوری برای کارکرد صحیح سیستم نقش اساسی بازی میکند.
دایرکتوری sbin/ نیز عملکرد مشابهی دارد و باینریهای مدیریتی سیستم در آن قرار میگیرد.
boot/ دایرکتوری فایلهای بوت استاتیک
دایرکتوری boot/شامل فایلهایی است که برای بوت سیستم الزامی است. برای مثال فایلهای GRUB در این دایرکتوری قرار میگیرد.
همچنین هسته لینوکس در این دایرکتوری قرار دارد. فایلهای پیکربندی و تنظیمات بوتلودر در این دایرکتوری نیست و در etc/ قرار دارد.
cdrom/ مانت پوینت تاریخی سیدیها
دایرکتوری cdrom/ دیگر بخشی از استاندارد FHS نیست، اما هنوز در اوبونتو و دیگر سیستمهای عامل استفاده میشود.
این دایرکتوری محلی موقت برای دسترسی به سیدیرام است. هر چند محل استاندارد آن، دایرکتوری دیگری با نام media/ است.
dev/ فایلهای دستگاهها
لینوکس با دستگاهها نیز همانند فایلها برخورد میکند و دایرکتوری dev/ شامل تعدادی از فایلهای مخصوص میشود که همگی نماینده دستگاه خود هستند. البته اینها فایلهای حقیقی نیست و تنها به شکل فایل نشان داده میشود.
مثلا dev/sda/ نمایانگر نخستین درایو ساتا در سیستم است. اگر بخواهیم این درایو را پارتیشنبندی کنیم، باید بهکمک یک ویرایشگر مسیر dev/sda/ را پارتیشنبندی کنیم.
این دایرکتوری همچنین شامل شبهدستگاهها نیز میشود. شبهدستگاهها مجازی هستند و در حقیقت به سختافزاری نگاشت نشدهاند.
برای مثال dev/random/ عددی رندوم تولید میکند. dev/null/ دستگاه مخصوصی است که هیچ خروجی تولید نمیکند و بهطور خودکار تمام ورودیها را نادیده میگیرد. در واقع وقتی خروجی یک دستور را به دستگاه dev/null/ میفرستید، در حقیقت آن را نادیده میگیرید.
etc/ فایلهای تنظیمات
این دایرکتوری شامل فایلهای پیکربندی است و میتواند توسط ویرایشگرهای متن و واژهپردازهای سیستم ویرایش شود. باید توجه داشت که دایرکتوری etc/ شامل فایلهای تنظیمات تمام سیستم است.
فایلهای تنظیماتی که به هر کاربر مربوط میشود و مخصوص خود کاربر است در دایرکتوری home هر کاربر وجود دارد.
home/ ـ دایرکتوری کاربران
این دایرکتوری برای هر کاربر ساخته میشود. برای مثال اگر نام کاربری شما ali باشد، مسیری بهنام home/ali/ تولید میشود. این فولدر شامل دادههای هر کاربر و تنظیمات مرتبط با شناسه او خواهد بود.
همچنین کاربران ابتدای امر تنها میتوانند درون دایرکتوری home خود فایل ایجاد کرده و دسترسی نوشتن داشته باشند. برای ویرایش دیگر بخشهای سیستم، کاربران عادی باید از ادمین سیستم اجازه بگیرند.
lib/ دایرکتوری کتابخانههای مشترک
دایرکتوری lib/ شامل کتابخانههایی است که باینریهای اساسی سیستم که در bin/ و sbin/ اجرا میشود به آن نیاز دارد. این کتابخانهها همچنین توسط باینریهای موجود در usr/bin/ نیز استفاده میشود.
lost+found/ دایرکتوری فایلهای ریکاوری شده
هر سیستم فایل لینوکس یک دایرکتوری lost+found دارد. اگر سیستم فایل بههر دلیلی خراب شود، در بوت بعدی سیستم فایل از اول چک میشود. فایلهای خرابشده و یافته شده در این عملیات در این دایرکتوری قرار میگیرد تا بتوان بیشتر فایلها را ریکاوری کرد.
media/ دستگاههای جانبی
دایرکتوری media/ شامل زیرشاخههایی است که در آن دستگاههای وصل شده به سیستم نشان داده میشود. منظور از این دستگاهها، دستگاههای حافظه است.
از این رو هاردهای اکسترنال، فلشدرایوها، امپیتری پلیرها و... در این شاخه قرار میگیرد. همچنین در سیستم فایل استاندارد FHS، سیدی رام نیز در این فولدر قرار دارد.
mnt/ ـ نقاط اتصال موقت
از قدیم عرف بود که مدیرهای سیستم از دایرکتوری mnt (که مخفف عبارت mount) است، برای مانتکردن درایوهایی با سیستم فایل غیر از لینوکس استفاده کنند.
مثلا اگر پارتیشن ویندوزی را مانت میکردند، آن را به mnt/windows/ وصل میکردند. هر چند میتوان هر فایلسیستمی را در هر نقطه از سیستم قرار داد.
opt/ پکیجهای اختیاری
دایرکتوری opt/ (مخفف Optional) شامل زیردایرکتوریهایی میشود که پکیجهای اختیاری نرمافزاری در آن قرار میگیرد. این دایرکتوری معمولا توسط نرمافزارهای تجاری که از ساختار استاندارد لینوکسی پیروی نمیکند در این دایرکتوری قرار میگیرد.
proc/ فایلهای کرنل و پروسسها
دایرکتوری proc/ همانند دایرکتوری dev/ است و شامل فایلهای استاندارد نیست. این فایلهای مخصوص اطلاعات سیستم و پروسسها را نشان میدهد.
root/ دایرکتوری مخصوص شناسه root
دایرکتوری root/ در واقع دایرکتوری home/ است، اما برای شناسه root. این دایرکتوری مستقیما از/ ریشه گرفته است و در پارتیشن اصلی سیستم قرار میگیرد، در حالی که میتوان دایرکتوری home/ را به پارتیشنها و دیسکهای دیگر نسبت داد.
run/ دایرکتوری وضعیت نرمافزارها
دایرکتوری run/ نسبتا جدید است و جای استانداردی به نرمافزارها میدهد که فایلهای موقت هنگام اجرا از جمله سوکتها و شناسه پروسسها را در آنجا قرار دهد. این فایلها در tmp/ قرار نمیگیرد؛ چرا که tmp/ میتواند پاک شود.
sbin/ باینریهای مدیریتی سیستم
دایرکتوری sbin/ مشابه دایرکتوری bin/ است. این دایرکتوری شامل باینریهای اساسی سیستم است که توسط شناسه root و برای مقاصد مدیریتی میتواند اجرا شود.
selinux/ سیستم فایل مجازی SELinux
اگر توزیع شما از SElinux برای امنیت سیستم استفاده میکند (فدورا و ردهت دو مثال است که از selinux استفاده میکند).
این دایرکتوری در آنها وجود دارد و شامل فایلهایی است که توسط SElinux استفاده میشود. این دایرکتوری مشابه proc/ است. اوبونتو از SELinux استفاده نمیکند و حضور این فولدر در اوبونتو باگ است.
srv/ دادههای سرویس
این دایرکتوری دادههایی را در بر میگیرد که سرویسها در اختیار سیستم قرار میدهد. اگر از Apache HTTP Server برای میزبانی یک وبسایت استفاده کنید، فایلهای وبسایت خود را در این فولدر قرار خواهید داد.
tmp/ فایلهای موقت
نرمافزارها فایلهای موقت را در این دایرکتوری ذخیره میکند. این فایلها وقتی سیستم ریست میشود، حذف شده و میتواند توسط نرمافزارهایی مثل tmpwatch نیز حذف شود. بنابراین این محل برای ذخیرهسازی فایلها مناسب نیست.
usr/ باینریهای کاربر
در این دایرکتوری نرمافزارها و فایلهای مورد استفاده کاربران، قرار میگیرد. برای مثال نرمافزارهای غیراساسی همچون فایرفاکس در این دایرکتوری قرار گرفته و در bin/ ذخیره نمیشود.
کتابخانههای مورد نیاز این نرمافزارها نیز در دایرکتوری usr/lib/ قرار میگیرد. دایرکتوری usr/ همچنین دایرکتوریهای دیگری درون خود دارد که به همین منظور بهکار میرود؛ همانند usr/share/.
دایرکتوری usr/local/ شامل نرمافزارهای کامپایلشده لوکال است که بهطور پیشفرض در این دایرکتوری میرود. این دایرکتوری باعث میشود نرمافزارهای کامپایل شده درون سیستم پخش نشود.
var/ دایرکتوری فایلهای دادهای متغیر
دایرکتوری var/ دایرکتوری قابل نوشتنی است که در مقابل با usr/ قرار میگیرد. دایرکتوری usr/ در شرایط عادی فقط خواندنی است.
فایلهای گزارش (log) و چیزهای دیگر که بهصورت عادی در usr/ قرار میگیرد، به دایرکتوری var/ میرود. برای مثال فایلهای گزارش را میتوان در دایرکتوری var/log/ مشاهده کرد.
محمدرضا قربانی
ایران مسعود پزشکیان دولت چهاردهم پزشکیان مجلس شورای اسلامی محمدرضا عارف دولت مجلس کابینه دولت چهاردهم اسماعیل هنیه کابینه پزشکیان محمدجواد ظریف
پیاده روی اربعین تهران عراق پلیس تصادف هواشناسی شهرداری تهران سرقت بازنشستگان قتل آموزش و پرورش دستگیری
ایران خودرو خودرو وام قیمت طلا قیمت دلار قیمت خودرو بانک مرکزی برق بازار خودرو بورس بازار سرمایه قیمت سکه
میراث فرهنگی میدان آزادی سینما رهبر انقلاب بیتا فرهی وزارت فرهنگ و ارشاد اسلامی سینمای ایران تلویزیون کتاب تئاتر موسیقی
وزارت علوم تحقیقات و فناوری آزمون
رژیم صهیونیستی غزه روسیه حماس آمریکا فلسطین جنگ غزه اوکراین حزب الله لبنان دونالد ترامپ طوفان الاقصی ترکیه
پرسپولیس فوتبال ذوب آهن لیگ برتر استقلال لیگ برتر ایران المپیک المپیک 2024 پاریس رئال مادرید لیگ برتر فوتبال ایران مهدی تاج باشگاه پرسپولیس
هوش مصنوعی فناوری سامسونگ ایلان ماسک گوگل تلگرام گوشی ستار هاشمی مریخ روزنامه
فشار خون آلزایمر رژیم غذایی مغز دیابت چاقی افسردگی سلامت پوست