نویسنده: fema co
4 فوریه 2024
0 301
پیدا کردن فایل‌های حجیم در سرور لینوکس با استفاده از دستورات

پیدا کردن فایل‌های حجیم در سرور لینوکس با استفاده از دستورات

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

جهت درک بهتر مقاله میتوانید از آموزش زیر استفاده کنید: آموزش دستورات لینوکس

چرا پیدا کردن فایل‌های حجیم در سرور لینوکس اهمیت دارد؟

پر شدن فضای دیسک مشکلات متعددی ایجاد می‌کند که برخی از آن‌ها عبارتند از:

  1. کاهش سرعت و عملکرد سیستم: وقتی دیسک پر باشد، فرآیندهای مختلف سیستم دچار اختلال می‌شوند، از جمله نوشتن فایل‌های جدید یا به‌روزرسانی اطلاعات.
  2. اختلال در سرویس‌ها: برنامه‌های سروری که به ذخیره‌سازی موقت نیاز دارند (مثل دیتابیس‌ها یا سرورهای وب) ممکن است در اثر پر شدن دیسک متوقف شوند.
  3. مدیریت بهتر اطلاعات: فایل‌های غیرضروری و قدیمی می‌توانند فضای ارزشمندی را اشغال کنند که می‌توان از آن برای کارهای مهم‌تر استفاده کرد.
  4. جلوگیری از مشکلات امنیتی: گاهی اوقات فایل‌های حجیم شامل لاگ‌های قدیمی یا اطلاعات غیرضروری هستند که نگه داشتن آن‌ها می‌تواند مشکلات امنیتی ایجاد کند.

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

1. دستور du (Disk Usage)

du یکی از قدرتمندترین ابزارهای لینوکس برای نمایش میزان فضای اشغال‌شده توسط فایل‌ها و پوشه‌ها است.

کاربردهای اساسی:

نمایش حجم یک پوشه:

du -sh /path/to/directory

توضیحات:

  • -s: فقط حجم کل را نمایش می‌دهد.
  • -h: خروجی را در قالب خوانا (مثل MB یا GB) نشان می‌دهد.

نمایش حجم تمام فایل‌ها و زیرپوشه‌ها:

du -ah /path/to/directory

توضیحات:

  • -a: تمام فایل‌ها را نمایش می‌دهد.
  • -h: حجم فایل‌ها را به صورت خوانا نشان می‌دهد.

نمایش فایل‌ها و پوشه‌ها بر اساس حجم:

du -ah /path/to/directory | sort -rh | head -n 10

توضیحات:

  • sort -rh: خروجی را از بزرگ به کوچک مرتب می‌کند.
  • head -n 10: فقط 10 فایل یا پوشه بزرگ‌تر را نشان می‌دهد.
مثال عملی:

اگر بخواهید حجم فایل‌ها در /var/log را مشاهده کنید:

du -sh /var/log/*

این دستور نشان می‌دهد که هر فایل یا پوشه در این مسیر چقدر فضا اشغال کرده است.

2. دستور find

find ابزاری بسیار قدرتمند است که امکان جستجوی فایل‌ها بر اساس معیارهای مختلف مثل اندازه، زمان ایجاد، و نوع فایل را فراهم می‌کند.

پیدا کردن فایل‌های حجیم:

یافتن فایل‌های بزرگ‌تر از 1 گیگابایت:

find / -type f -size +1G

توضیحات:

  • /: جستجو را از مسیر ریشه شروع می‌کند.
  • -type f: فقط فایل‌ها را جستجو می‌کند.
  • -size +1G: فایل‌های بزرگ‌تر از 1 گیگابایت را پیدا می‌کند.

جستجو در یک مسیر خاص:

find /home/famaserver -type f -size +500M

این دستور فایل‌های بزرگ‌تر از 500 مگابایت را در مسیر /home/famaserver پیدا می‌کند.

نمایش حجم فایل‌های پیدا‌شده:

find / -type f -size +1G -exec du -h {} +
  • این دستور علاوه بر مسیر فایل، حجم هر فایل را نیز نشان می‌دهد.
پیدا کردن فایل‌های قدیمی و حجیم:

گاهی اوقات فایل‌های قدیمی می‌توانند فضای زیادی اشغال کنند. برای یافتن فایل‌هایی که بیش از 30 روز از ایجادشان می‌گذرد:

find / -type f -size +500M -mtime +30

توضیح:

  • -mtime +30: فایل‌هایی که آخرین تغییرشان بیش از 30 روز پیش بوده است.

 

3. دستور ls

دستور ls برای نمایش لیست فایل‌ها و پوشه‌ها به‌کار می‌رود، اما با چند تنظیم می‌توان فایل‌های حجیم را پیدا کرد.

نمایش فایل‌های بزرگ‌تر:

مرتب‌سازی فایل‌ها بر اساس حجم:

ls -lhS /path/to/directory

توضیحات:

  • -l: نمایش جزئیات فایل.
  • -h: خروجی خوانا (مثلاً MB یا GB).
  • -S: مرتب‌سازی فایل‌ها بر اساس حجم.

نمایش 10 فایل بزرگ‌تر:

ls -lhS /path/to/directory | head -n 10
ترکیب با سایر دستورات:

با ترکیب ls و sort می‌توان فایل‌های حجیم را شناسایی کرد:

ls -l /path/to/directory | sort -k 5 -n | tail -n 10

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

4. ابزار ncdu

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

نصب ncdu:

برای نصب این ابزار:

در اوبونتو یا دبیان:

sudo apt install ncdu

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

sudo yum install ncdu

اجرای ابزار:

اجرای ncdu در یک مسیر:

ncdu /path/to/directory

این ابزار امکان پیمایش تعاملی در پوشه‌ها و مشاهده فایل‌های حجیم را فراهم می‌کند.

5. دستور df

دستور df فضای استفاده‌شده و باقی‌مانده دیسک را نمایش می‌دهد و برای شناسایی پارتیشن‌های پر کاربردی است.

مشاهده فضای دیسک:
df -h

توضیحات:

  • -h: نمایش خروجی در قالب خوانا.

مشاهده فضای دیسک یک پارتیشن خاص:

df -h /dev/sda1

 

نکات پیشرفته برای بهینه‌سازی فضای دیسک

1. فشرده‌سازی فایل‌ها

فایل‌هایی که کمتر مورد استفاده قرار می‌گیرند، می‌توانند فشرده شوند:

gzip filename

یا:

tar -czvf archive.tar.gz /path/to/directory

2. حذف لاگ‌های غیرضروری

پوشه /var/log معمولاً شامل فایل‌های لاگ قدیمی است. می‌توانید با پاک کردن این لاگ‌ها فضای قابل توجهی آزاد کنید:

sudo rm -rf /var/log/*.old

3. انتقال فایل‌ها به سرور دیگر

می‌توانید فایل‌های حجیم را به سرور دیگری منتقل کنید:

scp largefile user@remote-server:/path/to/destination

4. پاک کردن فایل‌های کش

فایل‌های کش معمولاً فضای زیادی اشغال می‌کنند. برای پاک کردن آن‌ها:(اوبونتو یا دبین)

sudo apt-get clean

یا:(centos)

sudo yum clean all

 

نتیجه‌گیری

مدیریت فضای دیسک در سرورهای لینوکس یکی از وظایف اساسی مدیران سیستم است. با استفاده از ابزارها و دستورات ذکرشده در این مقاله، می‌توانید فایل‌های حجیم را شناسایی و فضای دیسک را بهینه‌سازی کنید. انتخاب ابزار مناسب به نیاز شما و ساختار سرورتان بستگی دارد.

 

اشتراک گذاری
+

برای پاک‌سازی فایل‌های حجیم در سرور لینوکس از چه روشی برای اتصال استفاده کنیم؟

روش‌هایی مانند استفاده از SSH و اتصال VNC وجود دارند که می‌توانند شما را به سرور لینوکسی متصل کنند.

+

با کدام دستور می‌توان برای حذف فایل‌ها و پوشه‌ها اقدام کرد؟

می‌توانید با واردکردن دستور rm -f file_name فایل‌های مدنظر و با واردکردن دستور  rm -rf dir_name پوشه‌های مدنظر خود را به‌راحتی پاک کنید.

+

با کدام دستور می‌توان محاسبه فضای پوشه‌ها و زیر پوشه‌ها را انجام داد؟

اگر به دنبال محاسبه فضای پوشه هستید می‌توانید با واردکردن دستور du -hsx * | sort -rh | head -10 به‌راحتی فضای همه پوشه‌ها و زیر پوشه‌ها را محاسبه و به‌صورت نزولی مرتب کنید.

+

1. چگونه فایل‌های حجیم را در کل سرور پیدا کنم؟

از دستور find به صورت زیر استفاده کنید:

find / -type f -size +1G

 

+

2. آیا می‌توان فایل‌های حجیم را مستقیماً حذف کرد؟

بله، با ترکیب find و rm می‌توانید این کار را انجام دهید:

find / -type f -size +1G -exec rm -f {} +

+

3. چگونه فایل‌های قدیمی‌تر از 30 روز را پیدا کنم؟

از دستور زیر استفاده کنید:

find / -type f -mtime +30

منابع:

فاماسرور

مقالات مرتبط این مطلب پیشنهاد می شود

خدمات فاما سرور

  • سرور مجازی

    سرور مجازی

    سرور مجازی یکی از سرویس های پر استفاده و مقرون بصرفه برای کسب و کارهای کوچک و خدمات سایر در ضمینه IT و شبکه میباشد که توان پشتیبانی از 128 هسته و 512 گیگ رم را دارد.

  • سرور اختصاصی

    سرور اختصاصی

    سرور های اختصاصی فاماسرور از دو گروه نسل جدید و پردازش سنگین استفاده میشود که میتوانید تا 155 گیگاهرتز پردازش و تا 1.5 ترابایت رم را در اختیار داشته باشید.

  • بیگ بلوباتن

    بیگ بلوباتن

    سرور بیگ بلوباتن اختصاصی و مجازی یکی از خدمات , برای استفاده از کلاس های آموزشی , جلسات و ... بصورت دوطرفه و با کیفیت تضمین شده میباشد.

  • هاست لینوکس

    هاست لینوکس

    در هاست لینوکس با منابع گوناگون امکان میزبانی از سایت های بزرگ و پر بازدید نیز وجود دارد و میتوان از مزایا و خدمات آن استفاده کرد.

  • هاست ویندوز

    هاست ویندوز

    هاست های ویندوز فاماسرور میزبانی شده در ایران و هلند میباشد که با سخت افزار ها و استوریج های نسل جدید میزبانی و پشتیبانی میشوند.

  • ثبت دامنه

    ثبت دامنه

    ثبت دامنه های بین المللی , دامنه ir و دامنه های با پسوند های مختلف در فاماسرور پشتیبانی میشوند.