اطلاعیه

بستن
هنوز اطلاعیه ای در دست نیست.

چطور فایل ها و دایرکتوری هایی که در Linux فضای زیادی از Disk را مصرف کرده اند پیدا کنیم؟

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    چطور فایل ها و دایرکتوری هایی که در Linux فضای زیادی از Disk را مصرف کرده اند پیدا کنیم؟

    همانند یک ادمین لینوکس شما نیز باید در فواصل زمانی معین چک کنید که چه file ها و directory هایی فضای بیشتری از هارد دیسک را مصرف کرده اند. این کار خیلی ضروری هست که فایل های غیرضروری که فضای هارد دیسک را اشغال کرده اند را پیدا کنید و آنها را از روی دیسک حذف کنید که فضای آزاد بیشتری در اختیار داشته باشید.

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

    دستور du در لینوکس برای مشاهده فضای مصرفی فایل ها و دایرکتوری ها

    دستور find در لینوکس برای جستجو و پیدا کردن فایل ها و دایرکتوری ها



    چطور file ها و directory های بزرگ را در linux پیدا کنیم؟

    دستور زیر را برای پیدا کردن بزرگ ترین دایرکتوری ها در پارتیشن /home اجرا کنید :
    کد PHP:
    # du -a /home | sort -n -r | head -n 5 
    کد PHP:
    [mohammad@localhost ~]$ du -/home sort --head -n 5
    92901272    
    /home
    92901268    
    /home/mohammad
    50752980    
    /home/mohammad/VirtualBox VMs
    44734952    
    /home/mohammad/VirtualBox VMs/WINDOWS7
    44734600    
    /home/mohammad/VirtualBox VMs/WINDOWS7/WINDOWS7.vdi
    [mohammad@localhost ~]$ 
    در دستور بالا 5 تا از بزرگترین دایرکتوری های /home من نمایش داده میشود.



    پیدا کردن بزرگترین دایرکتوری ها در linux

    اگر شما میخواهید بزرگترین دایرکتوری ها را در دایرکتوری جاری خود مشاهده کنید، دستور زیر را اجرا کنید :
    کد PHP:
    # du -a | sort -n -r | head -n 5 
    کد PHP:
    [root@localhost ~]# du -a | sort -n -r | head -n 5
    5390956    .
    4200360    ./gns-downloads
    1736356    
    ./gns-downloads/qemu-2.3.0
    1661996    
    ./gns-downloads/PyQt-gpl-5.5.1
    660752    
    ./.local
    [root@localhost ~]
    اجازه دهید پارامترهای این دستور را تفکیک کنیم و ببینیم هر پارامتری چه میگوید :

    کامند du : ارزیابی فضای استفاده شده فایل
    آپشن a : نمایش همه file ها و folder ها
    دستور sort : خطوط فایل های متنی را مرتب میکند.
    آپشن -n : مقایسه کردن با توجه به مقدار عددی رشته (string numerical value)
    آپشن -r : معکوس کردن نتیجه مقایسه ها
    دستور head : خروجی گرفتن از بخش اول فایل ها
    آپشن -n : پرینت کردن اولین "n" خط از فایل (در اینجا ما 5 خط اول را نمایش میدیم)

    برخی از شما دوست دارید نتیجه بالا به صورت human readable (که برای انسان قابل درک تر میباشد) نمایش داده شود. شما ممکن است بخواهید بزرگترین فایل ها را به KB, MB, یا GB نمایش دهید، که برای این کار از دستور زیر استفاده کنید :
    کد PHP:
    # du -hs * | sort -rh | head -5 
    کد PHP:
    [root@localhost ~]# du -hs * | sort -rh | head -5
    4.1G    gns-downloads
    44M    Telegram
    20M    tsetup.0.9.56
    .tar.xz
    20M    linux
    448K    xdman_mint_ubuntu
    .deb
    [root@localhost ~]
    در دستور بالا، خواستیم دایرکتوری هایی که بیشترین حجم را دارند نمایش دهیم، که چه چیزهایی بیشترین فضای دیسک را مصرف کرده است. اگر شما احساس میکنید که برخی دایرکتوری ها مهم نیستند، شما میتونید به سادگی تعداد کمی از زیر شاخه ها یا کل folder را برای به دست اوردن فضای بیشتر delete کنید.

    برای نمایش بزرگترین فایل ها و فولدرها، به همراه زیر شاخه ها (sub-directories) دستور زیر را اجرا کنید :
    کد PHP:
    # du -Sh | sort -rh | head -5 
    کد PHP:
    [root@localhost mohammad]# du -Sh | sort -rh | head -5
    43G    ./VirtualBox VMs/WINDOWS7
    6.1G    
    ./Videos
    5.2G    
    ./.local/share/Trash/files
    5.2G    
    ./Downloads/FlareGet/Videos
    2.9G    
    ./Documents/mobil/103APPLE
    [root@localhost mohammad]
    توضیح دادن معنی هر یک از آپشن های که در کامند بالا استفاده شده است :

    دستور du : تخمین زدن فضای استفاده شده توسط فایل
    آپشن -h : چاپ کردن سایز به فرمت قابل خواندن توسط انسان منظور human readable میباشد. (به عنوان مثال 10MB)
    آپشن -S : نمایش ندادن سایز زیر شاخه ها
    آپشن -s : نمایش تنها جمع هر یک از augument
    دستور sort : مرتب کردن خط های فایل های متنی
    آپشن -r : معکوس کردن نتیجه مقایسه
    آپشن -h : مقایسه عددهای قابل خواندن توسط انسان
    دستور head : خروجی گرفتن از بخش اول فایل ها



    پیدا کردن فقط فایل هایی که سایز بیشتری دارند

    اگر شما میخواهیدکه تنها بزرگترین فایلها (سایز بیشتر) را نمایش دهید، دستور زیر را اجرا کنید :
    کد PHP:
    # find -type f -exec du -Sh {} + | sort -rh | head -n 5 
    کد PHP:
    [root@localhost mohammad]# find -type f -exec du -Sh {} + | sort -rh | head -n 5
    43G    ./VirtualBox VMs/WINDOWS7/WINDOWS7.vdi
    2.8G    
    ./VirtualBox VMs/centos 6.5/centos 6.5.vdi
    2.3G    
    ./Downloads/FlareGet/Videos/The-Martian-2015-1080p.mkv
    2.2G    
    ./Downloads/FlareGet/Videos/In-the-Heart-of-the-Sea-2015-1080p.mkv
    2.1G    
    ./Videos/sniper.mkv
    [root@localhost mohammad]
    برای جستجوی فایل های بزرگتر در مسیر خاص، دستور find را بعلاوه مسیر مورد نظر وارد کنید :
    کد PHP:
    # find /home/tecmint/Downloads/ -type f -exec du -Sh {} + | sort -rh | head -n 5
    OR
    # find /home/tecmint/Downloads/ -type f -printf "%s %p\n" | sort -rn | head -n 5 
    کد PHP:
    [root@localhost mohammad]# find /root/ -type f -exec du -Sh {} + | sort -rh | head -n 5
    144M    /root/gns-downloads/qemu-2.3.0.tar
    74M    
    /root/gns-downloads/Python-3.5.1.tar
    72M    
    /root/gns-downloads/PyQt-gpl-5.5.1/QtWidgets/QtWidgets.so
    72M    
    /root/gns-downloads/PyQt-gpl-5.5.1/QtWidgets/libQtWidgets.so
    57M    
    /root/.wine/drive_c/windows/system32/gecko/2.40/wine_gecko/xul.dll
    [root@localhost mohammad]
    کد PHP:
    [root@localhost mohammad]# find /root/ -type f -printf "%s %p\n" | sort -rn | head -n 5
    150251520 /root/gns-downloads/qemu-2.3.0.tar
    77363200 
    /root/gns-downloads/Python-3.5.1.tar
    74556534 
    /root/gns-downloads/PyQt-gpl-5.5.1/QtWidgets/QtWidgets.so
    74556534 
    /root/gns-downloads/PyQt-gpl-5.5.1/QtWidgets/libQtWidgets.so
    59256853 
    /root/.wine/drive_c/windows/system32/gecko/2.40/wine_gecko/xul.dll
    [root@localhost mohammad]
    در کامند بالا میخواهیم بزرگترین فایل را در دایرکتوری /root نمایش دهیم.


    همچنین توصیه میشود مطالعه کنید :

    دستور df در لینوکس برای بررسی فضای دیسک در لینوکس


    پیدا کردن بزرگترین فایل ها و فولدرها کار سختی نخواهد بود. حتی اگر شما ادمین تازه کاری هستید میتوانید به سادگی آنها را پیدا کنید. اگر این آموزش برای شما مفید بوده است، لطفا آن را در شبکه های اجتماعی به اشتراک بگذارید.
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 01-31-2021, 11:45 PM.

درباره انجمن منطقه لینوکسی ها

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

شبکه های اجتماعی
در حال انجام ...
X