یکی از دغدغه‌های اصلی هر مدیر سیستم یا کاربری که از سرور مجازی لینوکس استفاده می‌کند، پایش و مشاهده فضای دیسک در لینوکس است. این فضا حکم شریان حیاتی سرور شما را دارد؛ کمبود آن می‌تواند منجر به از کار افتادن سرویس‌ها، عدم ذخیره شدن فایل‌های لاگ، و در نهایت کرش کردن وب‌سایت یا اپلیکیشن شما شود. برای پیشگیری از این مشکلات، درک عمیق ابزارهای خط فرمان و همچنین تسلط بر دستور بررسی فضای دیسک در لینوکس (df و du) ضروری است.
💡 به‌طور کلی، پایش فضای دیسک در دو سطح انجام می‌شود:
  • سطح فایل‌سیستم (Filesystem Level): برای مشاهده وضعیت کلی پارتیشن‌ها و فضای آزاد و مصرفی کل دیسک.
  • سطح دایرکتوری و فایل (Directory & File Level): برای یافتن اینکه کدام دایرکتوری یا فایل‌ها بیشترین حجم را اشغال کرده‌اند.
💡 Inode چیست؟
Inode یا گره شاخص، یک ساختار داده است که متادیتای هر فایل را ذخیره می‌کند (مانند مالکیت، دسترسی‌ها، زمان ایجاد و…، نه محتوای آن).
  • تعداد Inode‌ها محدود است و اگر تمام شوند (حتی اگر فضای دیسک پر نشده باشد)، نمی‌توانید فایل جدیدی ایجاد کنید.
حتماً زمانی که این مقاله را باز کرده‌اید، به دنبال راهی برای حل مشکل “Disk Full” یا پیشگیری از آن هستید. ما در وب‌داده درک می‌کنیم که این مشکل چقدر می‌تواند نگران‌کننده باشد، به‌ویژه در محیط‌های تولیدی (Production). ما در این راهنما، با تکیه بر تجربه فنی چندین ساله خود، نه تنها آموزش دستور df در لینوکس و گزینه‌ها را ارائه می‌دهیم، بلکه سناریوهای عیب‌یابی پیچیده (مانند مدیریت Inode) را نیز پوشش خواهیم داد تا شما به یک متخصص در مدیریت فضای سرور لینوکس تبدیل شوید. پس همراه ما باشید تا گام‌به‌گام این مهارت حیاتی را بیاموزیم.😉👇
مشاهده فضای دیسک در لینوکس

فضای دیسک (Disk Space) در لینوکس چیست؟

فضای دیسک در لینوکس، در واقع مجموعه‌ای از پارتیشن‌ها است که هر کدام با یک فایل‌سیستم خاص (مانند ext4، XFS، Btrfs) فرمت شده و سپس در یک نقطه اتصال (Mount Point) به ساختار درختی دایرکتوری‌های سیستم متصل می‌شوند. شما باید پارتیشن‌های خود را به مثابه آپارتمان‌هایی در یک ساختمان در نظر بگیرید؛ هر آپارتمان (پارتیشن) فضای مشخصی دارد که توسط مستأجر (دایرکتوری و فایل‌ها) اشغال شده و بخشی از آن همیشه برای تردد (عملیات سیستم) خالی نگهداری می‌شود. فضای دیسک در لینوکس شامل فضایی است که توسط فایل‌های سیستم عامل، برنامه‌ها، دیتابیس‌ها و اطلاعات کاربری شما اشغال شده است.
📝 نمودار ساختار فایل‌سیستم ساده:
/ (Root Directory)
├── /boot (هسته سیستم)
├── /etc (فایل‌های پیکربندی)
├── /home (فایل‌های کاربران)
│   └── user1
└── /var (فایل‌های متغیر: لاگ‌ها، دیتابیس‌ها)
    ├── /var/log (محل تجمع لاگ‌های حجیم)
    └── /var/www (فایل‌های وب‌سایت)
🔸 نکته فنی: تفاوت پارتیشن و فایل‌سیستم
پارتیشن یک تقسیم‌بندی فیزیکی یا منطقی از فضای دیسک سخت است، در حالی که فایل‌سیستم (مانند Ext4 یا XFS) ساختاری است که روی پارتیشن ایجاد می‌شود تا نحوه ذخیره‌سازی، سازماندهی و بازیابی داده‌ها را مشخص کند. دستور df وضعیت هر یک از این فایل‌سیستم‌های مانت شده را به شما نشان می‌دهد.

چرا پایش فضای دیسک در لینوکس حیاتی است؟

نظارت مستمر بر فضای دیسک در لینوکس برای حفظ سلامت و پایداری سرور شما یک ضرورت است، نه یک انتخاب. این کار به شما کمک می‌کند تا پیش از وقوع فاجعه، مشکلات را شناسایی و حل کنید.
  • پیشگیری از خرابی سرویس: زمانی که فضای دیسک سرور لینوکس پر می‌شود، بسیاری از سرویس‌ها قادر به نوشتن فایل‌های موقت یا لاگ‌های جدید نیستند و متوقف می‌شوند. برای مثال، دیتابیس‌ها ممکن است نتوانند تراکنش‌ها را کامل کنند یا وب‌سرور نتواند جلسات (Sessions) جدید ایجاد کند.
  • بهبود عملکرد سرور: دیسک‌های بسیار پر (مثلاً بالای 90%) می‌توانند باعث Fragment شدن اطلاعات و کاهش شدید سرعت خواندن/نوشتن (I/O) شوند که تأثیر مستقیمی بر زمان پاسخگویی وب‌سایت شما دارد.
  • مدیریت بهینه هزینه: با پایش دقیق متوجه می‌شوید که آیا واقعاً به ارتقاء فضای ذخیره‌سازی نیاز دارید یا تنها با حذف فایل‌های اضافی می‌توانید مشکل را برطرف کنید. این امر به مدیریت فضای دیسک سرور لینوکس و بهینه سازی کمک می‌کند.

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

دستور df که مخفف “Disk Free” است، اولین و مهم‌ترین ابزار برای مشاهده فضای دیسک در لینوکس در سطح پارتیشن (فایل‌سیستم) است. این دستور وضعیت فضای آزاد، مصرفی و ظرفیت کل هر پارتیشن مانت شده را نشان می‌دهد.

دستور df (Disk Free)؛ مشاهده فضای آزاد پارتیشن‌ها

برای مشاهده یک خروجی مفید و قابل درک، باید از سوئیچ‌های صحیح استفاده کنید. مهم‌ترین گزینه‌ها به شرح زیر است:
دستورتوضیحخروجی
df -hh مخفف Human-readable (قابل خوانش برای انسان) است. خروجی را به واحدهای مگابایت (M)، گیگابایت (G) و ترابایت (T) تبدیل می‌کند.ضروری‌ترین حالت برای استفاده روزمره.
df -Tنوع فایل‌سیستم (مانند ext4، XFS، tmpfs) هر پارتیشن را نمایش می‌دهد.برای عیب‌یابی و شناخت ساختار سرور مهم است.
df -iبه‌جای فضای دیسک، وضعیت Inode‌ها (تعداد گره‌های شاخص) را نمایش می‌دهد.برای بررسی مشکل تعداد فایل‌های کوچک (Inodes full) حیاتی است.
df -aپارتیشن‌های موقت و مجازی (مانند /dev/shm) را نیز نمایش می‌دهد.برای دید جامع‌تر از سیستم.
📝 دستور پرکاربرد:
df -hTia
توضیح دستور: این دستور به‌صورت خلاصه، وضعیت کلی (a)، در واحدهای خوانا (h)، به همراه نوع فایل‌سیستم (T) و وضعیت Inodeها (i) را نمایش می‌دهد.

تفاوت کلیدی: فضای Free در مقابل Available

این یکی از نکات فنی بسیار مهم در آموزش دستور df در لینوکس و گزینه‌ها است که بسیاری از کاربران مبتدی از آن غافلند. در خروجی df، دو ستون اصلی وجود دارد: Free و Available.
ستونتعریفکاربرد
Free (آزاد)فضای کاملاً خالی روی دیسک که توسط هیچ چیزی اشغال نشده است.شامل فضایی است که لینوکس برای کاربر Root و کارهای سیستم رزرو می‌کند.
Available (قابل استفاده)فضایی که در حال حاضر برای کاربران عادی و برنامه‌ها جهت نوشتن فایل‌های جدید در دسترس است.این عدد، نشان‌دهنده فضای واقعی است که می‌توانید از آن استفاده کنید.
به‌طور معمول، لینوکس حدود 5% از فضای دیسک را برای کاربر root رزرو می‌کند (برای اطمینان از اینکه حتی در صورت پر شدن دیسک، مدیر سیستم بتواند وارد شده و فایل‌های موقت را پاک کند). بنابراین، همیشه باید ستون Available را برای تصمیم‌گیری در مورد فضای باقی‌مانده در نظر بگیرید.

تحلیل مصرف دایرکتوری‌ها: دستور بررسی فضای دیسک در لینوکس (du و ncdu)

در بسیاری از مواقع، شما متوجه می‌شوید که پارتیشن /home یا /var شما پر شده است، اما نمی‌دانید کدام دایرکتوری یا پروژه این حجم را اشغال کرده است. اینجا جایی است که دستور du (Disk Usage) وارد عمل می‌شود و به شما کمک می‌کند تا ریشه مشکل را پیدا کنید. این ابزار کلیدی در دستور بررسی فضای دیسک در لینوکس (df و du)، مکمل df است.

دستور du (Disk Usage)؛ یافتن دایرکتوری‌های پرحجم

دستور du برای تخمین فضای مصرفی یک دایرکتوری خاص یا مجموعه‌ای از دایرکتوری‌ها طراحی شده است. رایج‌ترین سوئیچ‌های آن عبارت‌اند از:
دستورتوضیحکاربرد
du -hHuman-readable؛ خروجی را خوانا (M/G/T) می‌کند.ضروری برای فهم حجم‌ها.
du -sSummarize؛ تنها جمع کل حجم یک دایرکتوری را نمایش می‌دهد (بدون لیست کردن ساب‌دایرکتوری‌ها).برای خلاصه گرفتن از حجم یک دایرکتوری خاص.
du -aAll؛ اندازه فایل‌ها را نیز علاوه بر دایرکتوری‌ها نمایش می‌دهد.برای دیدن دقیق اندازه هر فایل.
💡 تکنیک طلایی: یافتن 10 دایرکتوری بزرگ‌تر
این دستور ترکیبی، سنگ بنای مدیریت فضای دیسک سرور لینوکس و بهینه سازی است. ما از du برای محاسبه حجم، از sort -hr برای مرتب‌سازی بر اساس حجم به‌صورت نزولی (hr = human readable, reverse) و از head -n 10 برای نمایش 10 نتیجه اول استفاده می‌کنیم:
du -sh * | sort -hr | head -n 10
📝 خروجی نمونه:
8.2G    wordpress-site-backup/
5.1G    mysql-database/
2.7G    logs/
...

ncdu؛ رابط کاربری سریع برای مدیریت فضای دیسک سرور لینوکس

برای کاربرانی که می‌خواهند به‌سرعت فضای دیسک را کاوش کنند، ncdu (ncurses Disk Usage) بهترین ابزار است. این یک رابط کاربری متنی (TUI) است که حجم دایرکتوری‌ها را به‌صورت گرافیکی و تعاملی نمایش می‌دهد و امکان جابجایی بین دایرکتوری‌ها و حذف فایل‌ها را فراهم می‌کند.
نمونه موردی: تجربه واقعی از سرور مشتری (2024)
یک بار سرور یکی از مشتریان در عرض چند ساعت بدون دلیل مشخصی پر شد. با اجرای دستور df -h، متوجه شدیم که پارتیشن /var کاملاً پر است. به‌جای اجرای چندین باره du در زیرشاخه‌ها، بلافاصله ncdu /var را اجرا کردیم. در عرض ۱۰ ثانیه، مشخص شد که یک فایل لاگ Nginx به دلیل تنظیمات نادرست، حجمی بالغ بر 120 گیگابایت پیدا کرده است! ncdu به ما اجازه داد تا بلافاصله آن فایل را شناسایی و حذف کنیم و سرور را نجات دهیم. این مثال نشان می‌دهد که ابزارهای بصری مانند ncdu چقدر می‌توانند در سناریوهای بحرانی ارزشمند باشند.

سناریوهای عیب‌یابی و بهینه‌سازی فضای دیسک سرور لینوکس

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

پیدا کردن فایل‌های بزرگ با دستور find در لینوکس

برای پیدا کردن فایل‌های بزرگ با دستور find در لینوکس (که اغلب دلیل اصلی پر شدن دیسک هستند)، می‌توانید از دستور قدرتمند find استفاده کنید.
📝 دستور کلیدی:
find /var -type f -size +100M -exec ls -lh {} \;
  • -type f: جستجو فقط در بین فایل‌ها.
  • -size +100M: فایل‌های بزرگتر از ۱۰۰ مگابایت. (می‌توانید از G برای گیگابایت نیز استفاده کنید).
  • -exec ls -lh {} \;: پس از یافتن هر فایل، آن را با دستور ls -lh نمایش می‌دهد تا حجم دقیق و آدرس کامل آن را ببینید.

مدیریت مشکل پر شدن Inode‌ها

همان‌طور که در مقدمه گفتیم، پر شدن Inode‌ها می‌تواند باعث مشکل فضای دیسک در لینوکس شود، حتی اگر df -h نشان دهد که هنوز فضای آزاد زیادی دارید. این مشکل زمانی رخ می‌دهد که تعداد زیادی فایل بسیار کوچک (مانند فایل‌های کش یا ایمیل‌های اسپم) دارید.
نحوه تشخیص: دستور df -i را اجرا کنید. اگر درصد استفاده از ستون IUse% به 90٪ یا بالاتر رسیده باشد، مشکل Inode دارید.
راهکار عملی: باید دایرکتوری‌هایی را پیدا کنید که بیشترین تعداد فایل را دارند. اغلب این دایرکتوری‌ها شامل /var/spool/postfix (ایمیل‌ها) یا دایرکتوری‌های کش موقت هستند.
for i in /*; do echo -n "$i: "; find "$i" | wc -l; done | sort -hr | head -n 10
⚠️ نکته احتیاطی: خطر حذف اشتباه
حذف فایل‌ها در سرور لینوکس غیرقابل بازگشت است! ⚠️ هشدار: هرگز از دستور rm -rf در دایرکتوری‌هایی که از محتوای آن‌ها مطمئن نیستید یا در مسیرهای مهم سیستمی (مانند /, /bin, /etc) استفاده نکنید. قبل از حذف، حتماً با دستوراتی مانند ls -lh یا du -sh، ماهیت و حجم فایل را تأیید کنید.
svgexport 58 چگونگی استفاده و مشاهده فضای دیسک در لینوکسسرور مجازی ایران
بهترین VPS ایران با پنل مدیریت اختصاصی، هارد NVMe و پهنای باند بالا
برای مشاهده پلن‌های
سرور مجازی ایران وب‌داده
روی دکمه زیر کلیک کنید

مدیریت منابع در سرور مجازی وب‌داده

یکی از مزایای اصلی استفاده از خدمات سرور مجازی (VPS) وب‌داده، انعطاف‌پذیری در مدیریت منابع است. تیم فنی ما همواره بر سلامت سرورها نظارت دارد و به شما کمک می‌کند تا منابع سرور را بهینه کنید. اگر با وجود مدیریت فضای دیسک سرور لینوکس و بهینه سازی همچنان مشکل کمبود فضا داشتید، می‌توانید به‌راحتی و در عرض چند دقیقه، فضای دیسک خود را بدون نیاز به جابجایی سرور، ارتقاء دهید.
  • فضای دیسک پرسرعت SSD: استفاده از دیسک‌های SSD NVMe برای عملکرد بهینه.
  • پشتیبانی 24/7: کمک فنی در عیب‌یابی مشکلات ناگهانی Disk Full.
  • قابلیت مقیاس‌پذیری: امکان افزایش منابع (CPU, RAM, Disk) به‌صورت آنی.

جمع‌بندی؛ مدیریت مؤثر فضای دیسک در لینوکس

امیدوارم این مقاله جامع و کاربردی، تسلط شما را بر ابزارهای کلیدی مشاهده فضای دیسک در لینوکس چند برابر کرده باشد. شما اکنون دیگر یک کاربر مبتدی نیستید؛ بلکه با آموزش دستور df در لینوکس و گزینه‌ها، دستور du، و ترفند طلایی ncdu، به یک مدیر سیستم توانا تبدیل شده‌اید که می‌تواند پیش از بحرانی شدن شرایط، از پر شدن دیسک جلوگیری کند.
به یاد داشته باشید، موفقیت در مدیریت فضای دیسک در لینوکس در گرو پایش مستمر و استفاده درست از سه ابزار اصلی است: df برای تصویر کلی فایل‌سیستم، du برای تحلیل جزئیات دایرکتوری و find برای شکار فایل‌های بزرگ یا کوچک اضافی. اگر به دنبال یک پلتفرم مطمئن با پایداری بالا هستید که در کنار شما به پایش و بهینه سازی منابع بپردازد، خدمات سرور وب‌داده بهترین انتخاب است. در صورتی که سوالی داشتید یا نیاز به راهنمایی بیشتری در مورد پیدا کردن فایل‌های بزرگ با دستور find در لینوکس داشتید، می‌توانید در بخش نظرات با ما در ارتباط باشید.

سؤالات متداول درباره مدیریت فضای دیسک

1- دستور بررسی فضای دیسک در لینوکس (df و du) چه تفاوتی با هم دارند؟

تفاوت اصلی در سطح کاربری است. df (Disk Free) فضای آزاد و مصرفی کل پارتیشن‌ها را در سطح فایل‌سیستم گزارش می‌دهد، در حالی که du (Disk Usage) فضای مصرفی یک دایرکتوری یا یک فایل مشخص را محاسبه می‌کند. اگر می‌خواهید بدانید چقدر از کل دیسک باقی مانده، از df استفاده کنید؛ اگر می‌خواهید بدانید کدام پوشه بزرگ است، از du استفاده کنید.

نرسی مزداب
نرسی مزداب

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

مقاله‌ها: 154
پاسخی بگذارید

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