ساختار دایرکتوری ها در لینوکس

ساختار دایرکتوری ها در لینوکس (Linux File Structures)

اگر به تازگی از ویندوز به لینوکس مهاجرت نموده اید، شاید کمی ساختار فایلها در لینوکس برای شما گیج کننده باشد. همانطور که در ویندوز مشاهده میکنید هر پارتیشن با یک حرف (Letter) مشخص میشود. مثلا Drive ویندوز با حرف \:C مشخص شده است. و دیگر درایو ها با حرف \:D و … اما در لینوکس همه چیز متفاوت است. دیگر چیزی به نام Letter یا حرف C:\ D:\ E:\ F و … وجود ندارد. و همه درایو ها و پارتیشن ها در یک پوشه با نام /media میباشند. در ادامه تی ام ال منیجر را در پست ساختار دایرکتوری ها در لینوکس دنبال کنید تا به صورت کلی با Linux File Structures آشنا شوید.

معمولا توزیع های لینوکس از استاندارد FHS برای مشخص نمودن نوع فایل سیستم خود استفاده میکنند. البته در لینوکس بعضی از دایرکتوری ها وجود دارند که در این فایل سیستم (File-System Hierarchy Standard) تعریف نشده اند.

دایرکتوری ریشه (Root Directory) یا علامت /

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

root-directory

دایرکتوری /bin

دایرکتوری /bin شامل باینری های اصلی کاربر از قبیل برنامه ها میباشد. اما برنامه های از قبیل Firefox در پوشه /usr/bin قرار گرفته اند. ولی برنامه های مهم سیستمی و ابزارهای پر اهمیت مثل Bash shell در آدرس /bin قرار دارند.

bin-directory

معمولا برای امنیت داده ها میتوان دایرکتوری /usr را در پارتیشن دیگری ذخیره نمود.

قرار گرفتن برنامه های اصلی سیستم در دایرکتوری /bin به این هدف میباشد تا کلیه برنامه های مورد نیاز سیستم در دسترس باشند.

دایرکتوری /sbin هم همانند دایرکتوری /bin میباشد با این تفاوت که در دایرکتوری /sbin باینری های ضروری مدیریت قرار دارد.

دایرکتوری /boot

در دایرکتوری /boot فایلهای مربوط به Boot لینوکس قرار دارد مثلا فایلهای GRUB boot loader و هسته لینوکس (Linux Kernels) در این پوشه ذخیره شده اند. تنظیمات و پیکربندی های مربوط به boot در دایرکتوری /boot قرار ندارند بلکه در دایرکتوری /etc موجود میباشند.

دایرکتوری /cdrom

قبلا از دایرکتوری /cdrom برای mount کردن CD ROM ها در این دایرکتوری استفاده میشد. اما دیگر این دایرکتوری در استاندارد FHS نمیباشد. ولی هنوز هم میتوانید این دایرکتوری را در توزیع های همچون Ubuntu و دیگر سیستم عامل های لینوکس پیدا کنید. در حال حاضر مکان استاندارد برای رسانه های موقت همچون CD ROM در دایرکتوری /media میباشد.

پیشنهاد: اگر میخواهید بیشتر با سیستم عامل UBUNTU آشنا شوید میتوانید از آموزش کار با Ubuntu استفاده کنید. همچنین در صورت علاقه به صفحه آموزش کامل لینوکس سر بزنید. تا لینوکس را از مبتی تا حرفه ای دنبال کنید.

دایرکتوری /dev

کلیه دستگاه ها (Devices) در لینوکس با یک فایل مشخص میشوند. در دایرکتوری /dev فایلهای مخصوصی وجود دارند که هر کدام از آنها مشخص کننده یک دستگاه هستند. در واقع این فایلها واقعا فایل نمی باشند. و فقط شکل فایل هستند. برای مثال /dev/sda مشخص کننده اولین هارد دیسک SATA در سیستم است. یعنی اگر بخواهید این هارد دیسک را پارتیشن بندی کنید باید به برنامه مدیریت پارتیشن خود بگوید آدرس /dev/sda را پارتیشن بندی کن.

دایرکتوری /etc

در دایرکتوری /etc کلیه فایلهای پیکربندی (تنظیمات مربوط به سیستم عامل) لینوکس وجود دارد. این فایلها را میتوان با برنامه های ویرایشگر متن ویرایش نمود و تنظیمات را تغییر داد.

etc-directory

دایرکتوری /etc مخصوص تنظیمات و پیکربندی های اصلی لینوکس میباشد و تنظیمات مربوط به کاربر ها در دایرکتوری مربوط به حساب کاربری همان کاربر ها است.

دایرکتوری /home

دایرکتوری /home شامل پوشه های مربوط به کاربران میباشد. برای مثال اگر در سیستم عامل لینوکس شما یک کاربر با نام TMLMANAGER وجود داشته باشد در دایرکتوری /home هم یک دایرکتوری برای همان کاربر با نام آن کاربر وجود دارد. در دایرکتوری /home فایلهای مربوط به کاربران وجود دارد. و هر کاربر فقط میتواند به فایلهای دایرکتوری خود دسترسی داشته باشد.

home-directory

دایرکتوری /lib

دایرکتوری /lib شامل داده های میباشد که باینری های اصلی موجود در دایرکتوری های /bin و /sbin نیازمند آنها هستند. داده های مورد نیاز /usr/bin در دایرکتوری /usr/lib وجود دارند.

دایرکتوری /lost+found

در همه فایل سیستم های لینوکس میتوان دایرکتوری /lost+found را پیدا نمود. به طور کلی اگر فایل سیستم به مشکلی بر بخورد لینوکس به صورت خود کار در فرایند boot بعدی شروع به بررسی فایل سیستم میکند. و هر فایل خراب شده ای پیدا شود آنرا در دایرکتوری lost+found قرار میدهد. در نتیجه به سادگی میتوان تا جایی که ممکن است داده ها را ریکاوری نمود.

دایرکتوری /media

دایرکتوری /media شامل زیر دایرکتوری های میباشد که در واقع دستگاه های مربوط به رسانه های جدا شونده (Removable Media) در آن میباشند. برای مثال زمانی که یک CD را در CD ROM قرار میدهید میتوانید محتوای درون CD را از دایرکتوری /media پیدا کنید. یا مثلا زمانی که یک USB Flash را به سیستم خود متصل میکنید یک دایرکتوری با نام فلش در دایرکتوری /media ساخته میشود و از طریق آن دایرکتوری میتوانید به محتوای درون فلش دسترسی پیدا کنید.

دایرکتوری /mnt

در زمان های گذشته از دایرکتوری /mnt برای Mount کردن موقت فایل سیستم ها استفاده میشد. برای مثال برای Mount نمودن پارتیشن ویندوز در لینوکس از این دایرکتوری استفاده میشد.

دایرکتوری /opt

دایرکتوری /opt شامل زیر دایرکتوری های برای بسته های نرم افزاری دلخواه میباشد. اما اخیرا توسط بعضی از برنامه های اختصاصی که ساختار استاندارد HFS را رعایت نمیکنند مورد استفاده قرار میگیرد. مثلا در صورت نصب یک نرم افزار اختصاصی برنامه به آدرس /opt/application میرود.

دایرکتوری /proc

دایرکتوری /proc همانند دایرکتوری /dev میباشد از این لحاظ که در این دایرکتوری هم فایلهای استاندارد وجود ندارد. دایرکتوری /proc شامل فایلهای بخصوصی برای نشان دادن اطلاعات Process ها و سیستم میباشند.

دایرکتوری /root

دایرکتوری /root در واقع همان آدرس پروفایل حساب کاربری root میباشد. دقیقا همانند دیگر حساب های کاربری که آدرس پروفایل آنها در دایرکتوری /home با نام خود آنها است. دایرکتوری /root هم برای حساب کاربری root میباشد.

دایرکتوری /run

دایرکتوری /run را که میتوان گفت نسبتا جدید میباشد مکانی استاندارد برای ذخیره فایلهای موقتی برنامه ها همانند Process ID و Socket ها میباشد. این فایلها را نمیتوان در دایرکتوری /tmp ذخیره نمود چرا که ممکن است به صورت دستی حذف شود.

دایرکتوری /sbin

همانطور که در بخش /bin دایرکتوری گفته شد دایرکتوری /sbin هم شامل باینری های میباشد که کاربر root از آنها برای مدیریت سیستم استفاده میکند.

دایرکتوری /selinux

معمولا توزیع های لینوکس همانند Fedora و Redhat از دایرکتوری /selinux برای امنیت استفاده میکنند. دایرکتوری /selinux شامل فایلهای مخصوصی میباشد که میتوان گفت همانند دایرکتوری /proc است.

دایرکتوری /srv

دایرکتوری /srv شامل داده های مربوط به سرویس های ارائه شده توسط سیستم میباشد. مثلا اگر شما از سرویس Apache برای راه اندازی یک وبسایت http استفاده کنید. در واقع فایلهای وبسایت خود را در دایرکتوری /srv ذخیره میکنید.

دایرکتوری /tmp

همانند ویندوز برنامه در لینوکس هم فایلهای موقتی که درست میکنند را در دایرکتوری /tmp ذخیره میکنند. فایلهای که در دایرکتوری /tmp میباشند با اولین ریستارت حذف میشوند.

دایرکتوری /usr

دایرکتوری /usr شامل فایلها و برنامه های استفاده شده کاربران میباشد. البته با فایلها و برنامه های استفاده شده سیستم متفاوت است. مثلا برنامه های غیر ضروری در دایرکتوری /usr/bin میباشند. یا باینری های مدیریتی غیر ضروری در آدرس /usr/sbin ذخیره میشوند. یا library ها در دایرکتوری /usr/lib ذخیره میشود.

usr-directory

دایرکتوری /var

دایرکتوری /var همتای نوشتنی دایرکتوری /usr میباشد. این دایرکتوری در وضعیت عادی باید در حالت Read Only باشد. همه فایلهای log و غیره در وضعیت عادی باید در دایرکتوری /var نوشته شوند.


برای دریافت نسخه PDF مقاله های سایت ابتدا در سایت ثبت نام کنید تا بتوانید به کلیه مقالات به صورت کاملا رایگان دسترسی پیدا کنید. ورود به سایت | ثبت نام در سایت


با لایک کردن و اشتراک گذاری مطالب سایت در گوگل پلاس از تی ام ال منیجر حمایت کنید

محمد برغمدی

امام علی علیه السلام: با مردم آنگونه معاشرت كنيد، كه اگر مرديد بر شما اشك ريزند، و اگر زنده مانديد، با اشتياق سوي شما آيند.

پاسخ دهید

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