جدول محتوایی

لینوکس از یک ساختار سلسله‌مراتبی استاندارد برای سازماندهی فایل‌ها و دایرکتوری‌ها استفاده می‌کند. این ساختار به نام Filesystem Hierarchy Standard (FHS) شناخته می‌شود.

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

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

/
├── bin      # دستورات اساسی سیستم
├── boot    # فایل‌های بوت لودر
├── dev     # فایل‌های دستگاه‌ها
├── etc     # فایل‌های پیکربندی سیستم
├── home    # دایرکتوری کاربران
├── lib     # کتابخانه‌های اشتراکی سیستم
├── media   # نقطه اتصال رسانه‌های قابل حمل
├── mnt     # نقطه اتصال موقت برای سیستم‌های فایل
├── opt     # نرم‌افزارهای اضافی/اختیاری
├── proc    # اطلاعات فرآیندها و سیستم
├── root    # دایرکتوری کاربر روت
├── run     # داده‌های فرآیندهای در حال اجرا
├── sbin    # دستورات مدیریتی سیستم
├── srv     # داده‌های سرویس‌های سیستم
├── sys     # رابط سیستم فایل sysfs
├── tmp     # فایل‌های موقت
├── usr     # برنامه‌های کاربردی و فایل‌های خواندنی
└── var     # فایل‌های متغیر سیستم

توضیح کامل هر دایرکتوری

1 – / (Root)

پایه‌ترین دایرکتوری در لینوکس

شامل تمام دایرکتوری‌های دیگر می‌شود

فقط کاربر root می‌تواند در این سطح تغییرات ایجاد کند

2 – /bin (Binary)

شامل دستورات اساسی و ضروری سیستم است

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

lscpmvrmcatechobash

این دستورات برای بازیابی سیستم در حالت single-user ضروری هستند

3 – /boot

شامل فایل‌های مورد نیاز برای بوت سیستم:

vmlinuz: هسته لینوکس

initramfs: تصویر اولیه سیستم فایل برای بوت

grub/: فایل‌های bootloader

  • معمولاً در یک پارتیشن جداگانه قرار می‌گیرد

4 – /dev (Devices)

شامل فایل‌های دستگاه‌های سیستم:

/dev/sda: اولین هارد دیسک

/dev/tty: ترمینال‌ها

/dev/null: دستگاه null

/dev/random: تولیدکننده اعداد تصادفی

توسط سیستم به صورت خودکار ایجاد و مدیریت می‌شود

5 – /etc (Configuration)

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

/etc/passwd: اطلاعات کاربران

/etc/group: اطلاعات گروه‌ها

/etc/fstab: تنظیمات mount سیستم فایل

/etc/hosts: تنظیمات DNS محلی

/etc/ssh/: تنظیمات SSH

نباید فایل‌های اجرایی در اینجا قرار گیرند

6 – /home

دایرکتوری شخصی کاربران غیر root

هر کاربر دایرکتوری مخصوص به خود دارد :

/home/username/

معمولاً شامل:

~/Desktop/~/Documents/~/Downloads/

فایل‌های پیکربندی کاربر (~/.bashrc~/.ssh/)

7 – /lib و /lib64

شامل کتابخانه‌های اشتراکی (shared libraries) مورد نیاز توسط برنامه‌های در /bin/ و /sbin/

/lib64/ در سیستم‌های 64 بیتی برای کتابخانه‌های 64 بیتی

8 – /media

نقطه اتصال (mount point) برای دستگاه‌های قابل حمل:

USB drives

CD/DVD

کارت حافظه

به صورت خودکار توسط سیستم ایجاد می‌شود

9 – /mnt (Mount)

نقطه اتصال موقت برای سیستم‌های فایل

معمولاً برای mount دستی استفاده می‌شود

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

10 – /opt (Optional)

برای نصب نرم‌افزارهای اضافی و اختیاری

معمولاً هر برنامه دایرکتوری مخصوص به خود دارد:

/opt/google/chrome/

/opt/oracle/

11 – /proc (Process)

سیستم فایل مجازی که اطلاعات فرآیندها و سیستم را نشان می‌دهد

فایل‌های مهم :

/proc/cpuinfo: اطلاعات CPU
/proc/meminfo: حافظه
/proc/[PID]/: هر فرآیند

12 – /root

دایرکتوری خانگی کاربر root

با /home/root/ اشتباه گرفته نشود

13 – /run

داده‌های فرآیندهای در حال اجرا

شامل:

PID فایل‌ها

سوکت‌ها

قفل‌ها

محتوای آن با هر بوت مجدد می‌شود

14 – /sbin (System Binaries)

دستورات مدیریتی سیستم:

fdisk: مدیریت پارتیشن‌ها
iptables: فایروال
reboot: راه‌اندازی مجدد

معمولاً فقط توسط root قابل اجرا هستند

15 – /srv (Service)

داده‌های سرویس‌های سیستم :

وب سرور: /srv/www/

FTP: /srv/ftp/

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

16 – /sys

سیستم فایل مجازی برای تعامل با هسته

اطلاعات مربوط به دستگاه‌ها، درایورها و برخی ویژگی‌های هسته

17 – /tmp (Temporary)

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

معمولاً با هر راه‌اندازی مجدد پاک می‌شود

دسترسی همه کاربران به این دایرکتوری آزاد است

18 – /usr (User System Resources)

شامل برنامه‌های کاربردی و فایل‌های خواندنی :

/usr/
├── bin    # دستورات کاربران
├── sbin   # دستورات مدیریتی
├── lib    # کتابخانه‌ها
├── share  # داده‌های مستقل از معماری
├── local  # برنامه‌های نصب شده محلی
└── src    # کد منبع

بزرگترین دایرکتوری در سیستم

19. /var (Variable)

شامل فایل‌های متغیر سیستم :

/var/
├── log    # فایل‌های لاگ سیستم
├── cache  # داده‌های cache
├── spool  # داده‌های در صف پردازش
├── mail   # ایمیل‌های سیستم
└── www    # فایل‌های وب سرور (در برخی توزیع‌ها)

اندازه این دایرکتوری معمولاً به مرور زمان افزایش می‌یابد

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

حساس به حروف بزرگ و کوچک File با file متفاوت است

همه چیز فایل است : حتی دستگاه‌ها و فرآیندها به صورت فایل نمایش داده می‌شوند

مسیرها با / جدا می‌شوند (برخلاف ویندوز که از \ استفاده می‌کند)

دایرکتوری‌های پنهان : با نقطه شروع می‌شوند (مثل .bashrc)

سلسله مراتبی : ساختار درختی با یک ریشه (/)

این ساختار استاندارد در تمام توزیع‌های لینوکس رعایت می‌شود، اگرچه ممکن است در برخی توزیع‌ها تغییرات جزئی وجود داشته باشد

مقدمات لینوکس Linux Essentials

نظر شما درباره این پست چه بود ؟

دسته بندی شده در:

برچسب شده در:

, ,