# آشنایی با ساختار دایرکتوری لینوکس و فایلهای مهم
لینوکس برخلاف ویندوز ساختاری سلسلهمراتبی دارد که همهچیز از ریشه یا `/` شروع میشود. شناخت این ساختار و دایرکتوریهای کلیدی به شما کمک میکند تا بهتر سیستم را مدیریت کنید، فایلهای مورد نظر را پیدا کرده و به درستی عمل کنید.
در این مقاله با مهمترین دایرکتوریها در لینوکس و کاربرد هرکدام آشنا میشویم.
---
## 📁 نمای کلی ساختار دایرکتوری لینوکس
```
/
├── bin
├── boot
├── dev
├── etc
├── home
├── lib
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin
├── srv
├── sys
├── tmp
├── usr
└── var
```
---
## دایرکتوریهای مهم در لینوکس
### `/` (Root Directory)
پایه و اساس همه چیز. تمام فایلها و پوشهها از این نقطه منشأ میگیرند.
---
### `/bin`
شامل برنامههای اجرایی پایهای و ضروری سیستم است. مثل `ls`, `cp`, `mv`, `bash`.
```bash
ls /bin
```
---
### `/boot`
حاوی فایلهای مورد نیاز برای بوت سیستم مثل کرنل (`vmlinuz`)، فایلهای GRUB و initrd است.
```bash
ls /boot
```
---
### `/dev`
فایلهای مربوط به دستگاهها (device files) در این دایرکتوری هستند. مثلاً `sda` برای دیسکها، `tty` برای ترمینالها.
```bash
ls /dev
```
---
### `/etc`
شامل تنظیمات و فایلهای پیکربندی سیستم و سرویسها است. مثل `passwd`, `hosts`, `network`, `fstab`.
```bash
ls /etc
cat /etc/passwd
```
---
### `/home`
دایرکتوری خانگی کاربران معمولی. مثلاً فایلهای کاربری `ali` در `/home/ali` ذخیره میشوند.
```bash
ls /home
```
---
### `/root`
دایرکتوری خانگی کاربر ریشه (Root). با `/` فرق دارد.
```bash
ls /root
```
> ⚠️ فقط کاربر root دسترسی کامل به این دایرکتوری دارد.
---
### `/lib` و `/lib64`
کتابخانههای ضروری برای اجرای فایلهای باینری در `/bin` و `/sbin`.
```bash
ls /lib
```
---
### `/media` و `/mnt`
محل سوار کردن (Mount) دیسکها و دستگاههای خارجی مثل USB یا DVD.
```bash
ls /media
```
---
### `/opt`
مکان نصب نرمافزارهای شخص ثالث (Third Party) که خارج از مدیریت پکیج سیستم هستند.
---
### `/proc`
یک سیستم فایل مجازی برای مشاهده اطلاعات هسته (Kernel) و پردازهها (Processes).
```bash
cat /proc/cpuinfo
cat /proc/meminfo
```
---
### `/sys`
شبیه `/proc` است اما برای مشاهده اطلاعات سختافزار.
```bash
ls /sys/class
```
---
### `/run`
اطلاعات زمان اجرا سیستم مثل PID فایلها و سوکتها.
---
### `/sbin`
دستورات سیستمی و مدیریتی برای root مانند `fsck`, `reboot`, `ifconfig`.
```bash
ls /sbin
```
---
### `/srv`
میزبان دادههای مربوط به سرویسهایی مثل وب یا FTP.
---
### `/tmp`
محل ذخیره فایلهای موقتی. اغلب بعد از هر ریبوت پاک میشود.
```bash
ls /tmp
```
---
### `/usr`
یکی از بزرگترین دایرکتوریها که شامل نرمافزارها، کتابخانهها، مستندات، و فایلهای اجرایی است.
- `/usr/bin` → برنامهها
- `/usr/lib` → کتابخانهها
- `/usr/share` → فایلهای عمومی
---
### `/var`
شامل فایلهایی که به طور مداوم تغییر میکنند: لاگها، صف پرینتر، کش و ...
```bash
ls /var/log
```
---
## 🧠 خلاصه
| دایرکتوری | کاربرد |
|-----------|--------|
| `/bin` | ابزارهای سیستمی پایه |
| `/etc` | فایلهای پیکربندی |
| `/home` | فایلهای کاربران |
| `/root` | خانه کاربر root |
| `/boot` | فایلهای بوت |
| `/proc` | اطلاعات سیستم و پردازهها |
| `/var` | لاگها، کش، تغییرات دائمی |
| `/usr` | برنامهها و کتابخانهها |