آشنایی با ساختار فایل سیستم ها در لینوکس
نوامبر 17
ساختار فایل سیستم ها در لینوکس

آشنایی با ساختار فایل سیستم ها در لینوکس

آشنایی با ساختار فایل سیستم ‌ها در لینوکس

«هرچیزی یک فایل تلقی می‌شود؛ حتی اگر در حقیقت فایل نباشد!» این جمله کوتاه می‌تواند ساختار فایل سیستم ها در لینوکس و دیگر سیستم عامل‌ها مانند گنو را به‌صورت خلاصه توضیح دهد.

فایل‌ها در سیستم عامل لینوکس، ساختاری درختی دارند و هر جزء از این درخت، یک فایل تلقی می‌شود. در حقیقت، سیستم‌ عامل‌های یونیکس مانند لینوکس و گنو، قصد دارند همه‌چیز را ساده نگه دارند و هرچیز را مانند دامنه‌ای از بیت‌ها درنظر بگیرند. بنابراین در سیستم لینوکس، اساساً همه‌چیز یک فایل است. خواه یک فایل حقیقی مانند موزیک یا فایل‌های Documents باشند و خواه یک دیوایس مانند کارت صوتی و پرینتر. شاید بتوانیم این رویکرد را یکی از نقاط قوت این سیستم‌ها درنظر بگیریم؛ را که ساختار فایل سیستم‌ها، به سیستم عامل اجازه می‌دهد انعطاف‌پذیرتر باشند. در نتیجه، کاربران می‌توانند اطلاعات را با توجه به سلیقه خود یا پارامترهای مختلف دیگر، تغییر دهند.

اگر کاربر ویندوز و مکینتاش هستید، شاید تا اینجای ماجرا کمی گیج شده باشید و هنوز به‌صورت کامل ساختار فایل سیستم ها در لینوکس را درک نکرده باشید. در ادامه این مقاله، ساختار فایل درختی لینوکس را کمی دقیق‌تر با هم بررسی می‌کنیم و با مفاهیمی مانند دایرکتوری روت (تنه درخت)‌ و دایرکتوری‌های اصلی بیشتر آشنا می‌شویم.

معرفی دیرکتوری‌های کاربردی در لینوکس

برخلاف ویندوز که چندین ریشه یا Root دارد، سیستم عامل لینوکس دارای یک ریشه اصلی به نام دایرکتوری روت است که با علامت اختصاری «/» نشان داده می‌شود. Directory Root درواقع همان تنه درخت ساختار درختی فایل‌ها در لینوکس است که تمامی فایل‌های دیگر و دایرکتوری‌های فرعی، بر روی این تنه قرار می‌گیرند.

در ادامه این مطلب، با مهم‌ترین دیرکتوری‌های لینوکس آشنا می‌شویم.

دیرکتوری خانه (Home Directory)

دایرکتوری خانه یا فهرست ورود به سیستم، جایی‌ست که هر کاربر فایل‌ها و اسناد شخصی خود را در آن ذخیره می‌کند. همانطور که می‌دانید، لینوکس یک محیط چندکاربره است، بنابراین هر کاربر دارای یک دایرکتوری خاص است که فقط خود آن شخص و مدیر سیستم، قابلیت دسترسی به آن را دارد.

دایرکتوری خانه مانند یک گاوصندوق امن، از دسترسی اطلاعات یک کاربر توسط دیگر کاربران سیستم عامل چندکاربره لینوکس، محافظت می‌کند.

پوشه خانه با علامت اختصاری /home/ قابل مشاهده است.

پوشه‌های Bin و Sbin

کلمه Bin مخفف باینری (اجرایی) است. این دایرکتوری دقیقاً همان جایی است که لینوکس تمامی فایل‌ها و برنامه‌های اصلی خود را نگه می‌دارد. کلمه Sbin نیز مخفف «سیستم باینری» است. مشابه دایرکتوری /bin/ پوشه‌های سیستم باینری نیز مکانی برای ذخیره برنامه‌های اجرایی هستند. با این تفاوت که سیستم باینری‌ها برای پیکربندی سیستم، نگهداری و وظایف اداری بکار می‌روند.

 لینوکس تصمیم گرفته است میان باینری‌های معمولی و باینری‌های سیستمی تمایز قائل شود تا دایرکتوری /sbin/ را برای برنامه‌های ضروری مانند بوت‌کردن و بازیابی اطلاعات، استفاده کند.

دایرکتوری /user/

کلمه User در دایرکتوری /user/ مخفف Unix System Resources است. درمقابل دایرکتوری‌های/bin  یا /sbin که به برنامه‌های سیستم تعلق دارند، پوشه یوزر متعلق به برنامه‌های کاربران لینوکس است. بنابراین می‌توان گفت برنامه‌های غیرضروری برای سیستم، در دایرکتوری یوزر نصب می‌شوند. 

با این حال نباید دایرکتوری User را دست کم بگیرید؛ چرا که user Directoryها، شامل تمام باینری‌های سطح کاربر، اسناد، کتابخانه‌ها، فایل‌های هدر و غیره هستند.

دایرکتوری  /etc

دایرکتوری /etc/ یکی از پرحاشیه‌ترین پوشه‌های سیستم لینوکس است! گفته می‌شود etc مخفف دو عبارت مختلف یعنی Etcetera و Editable Text Configuration است. در یک نگاه کلی، می‌توانیم بگوییم هردو عبارت تا حدودی صحیح هستند. چرا که پوشه etc هم جایی است که تمامی تنظیمات سیستم شما ذخیره شده‌اند و هم فضایی برای فایل‌هایی است که هیچ ربطی به تنظیمات ندارند!

پوشه /opt 

پوشه opt درواقع  مخفف optional یا دلخواه است. پوشه opt فضایی برای کاربران است تا از آن به‌صورت دلخواه استفاده یا نرم‌افزارهای خود را به‌صورت دستی در آن ذخیره کنند. به عنوان مثال، ما می‌توانیم نرم‌افزارهایی نظیر زوم، BlueJeans، Google Chrome و skypeforlinux را در دایرکتوری opt در تصویر زیر ببینیم.

دایرکتوری‌های کتابخانه یا /lib/

 lib مخفف کتابخانه است. این پوشه‌ها، دایرکتوری فایل‌های کتابخانه‌ای هستند. دایرکتوری‌های lib درواقع مانند یک پل ارتباطی در میان برنامه‌های مختلف سیستم شما عمل می‌کنند. برای مثال ارتباط میان موزیک پلیر و کارت صدای سیستم، از طریق همین پوشه کتابخانه‌ای، صورت می‌گیرد.

بطور کل، فایل‌های باینری داخل bin و sbin از این فایل‌های کتابخانه‌ای به‌صورت گسترده استفاده می‌کنند. 

دایرکتوری  var

 var مخفف متغیرها (variables) است. این فهرست شامل داده‌ها و اطلاعات متغیر مانند فایل‌های ثبت سیستم، فهرست‌های پست الکترونیکی و فایل‌های موقت است. به عنوان مثال،/var/crash  اطلاعات از کارافتادن فرایندهای مختلف را در سیستم نگهداری می‌کند. یا /var/log شامل همه فایل‌های log برای رایانه شما است.

دایرکتوری رسانه یا /media/

پوشه رسانه جایی است که سیستم عامل شما به طور خودکار دستگاه‌های خارجی مانند درایو  USBرا نصب می‌کند.

دایرکتوری /mnt نیز فضایی برای نصب دستی دیوایس‌هایی مانند فلاپی دیسک، هارد اکسترنال، درایو شبکه و غیره است. اساساً  /media و /mnt یکسان هستند. با این حال، توصیه می‌شود از پوشه  /mnt برای فایل‌هایی که نیازمند نصب دستی هستند استفاده کنید و نصب‌های خودکار را به پوشه /media/ بسپارید.

دایرکتوری proc/

در دایرکتوری /proc/، می توانید فایل‌هایی حاوی اطلاعات درمورد فرآیندها و منابع سیستم پیدا کنید. به عنوان مثال، هر فرآیند در کامپیوتر شما دارای یک پوشه با اطلاعات مربوط به آن فرآیند است؛ این پوشه حاوی اطلاعات ارزشمند، همان دایرکتوری proc است. درنظر داشته باشید این دایرکتوری یک فایل سیستم مجازی است و پس از خاموش‌شدن کامپیوتر، ناپدید می‌شود.

دایرکتوری ریشه (Root Directory)

این دایرکتوری متعلق به superuser (یعنی مدیر سیستم) است. درواقع می‌توانیم به پوشه /root/ به‌عنوان دایرکتوری اصلی کاربر اصلی نگاه کنیم.

دایرکتوری /srv/ 

دایرکتوری  serve directoryبرای نگهداری فایل‌های قابل سرو توسط سرویس‌ها استفاده می‌شود و اصطلاحاً یک فهرست خدمات است. اگر از یک وب سرور استفاده می‌کنید، می‌توانید به‌راحتی داده‌های مربوط به سایت را در این پوشه ذخیره کنید.

دایرکتوری /tmp/

 این دایرکتوری فضایی برای ذخیره و نگهداری فایل‌های موقت است. به عنوان مثال، هنگامی که شما در حال نوشتن یک سند word هستید، برنامه پردازنده یک فایل موقت ذخیره می‌کند و تمام آنچه را که تابه‌حال نوشته‌اید، ذخیره می‌کند. 

در چنین شرایطی، اگر به هر دلیل سیستم شما پیش از ذخیره فایل از کار بیفتد یا هنگ کند، برنامه پردازنده (مانند آفیس) می‌تواند این فهرست را جستجو کند تا آخرین نسخه ذخیره‌شده را برای بازیابی متن شما پیدا کند.

ساختار فایل سیستم ‌ها در لینوکس در یک نگاه

در این مقاله به بررسی بیش از 10 دایرکتوری مهم و کاربردی در سیستم عامل لینوکس پرداختیم. این مطلب می‌تواند راهنمای جامعی برای شناخت و استفاده از فایل سیستم در لینوکس باشد. آیا شما هم دایرکتوری‌های دیگری را در سیستم عامل لینوکس می‌شناسید؟ پیشنهاد می‌کنیم در قسمت نظرات برای ما و خوانندگان این مطلب بنویسید تا مطلب ما را کامل‌تر کنید.

 

دیدگاه نوشتن

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *