Intereting Posts
Ошибка конфигурации Apache2 Есть ли способ восстановить мой отредактированный vi файл? Как распечатать все строки, не содержащие строку вместе со смежными строками? Manjaro Linux – кабель отсоединен, даже если подключен совпадение шаблонов и захват в unix сортировать каждый столбец (поле) в файле отдельно FPC. Не уверен, как отформатировать его Как узнать, какая конкретная электронная почта в Thunderbird / Icedove содержит вредоносное ПО Doc.Dropper.Agent-1552723, на которое указывает Clamscan? Разница между версиями wget Почему строки вывода grep, похоже, не соответствуют выражению? Манекен ALSA – как настроить? awk отправить сообщение, если Как отправить ловушку snmp при регистрации журнала syslog? Сценарий bash для взятия двух строк в текстовом файле и формирования столбцов вдоль одной строки Почему существует разница в длительности выполнения команды с различными методами перенаправления?

Поиск всех больших файлов в корневой файловой системе

У меня есть сервер linux, который в настоящее время находится ниже пространства:

/dev/sda3 20G 15G 4.2G 78% / /dev/sda6 68G 42G 23G 65% /u01 /dev/sda2 30G 7.4G 21G 27% /opt /dev/sda1 99M 19M 76M 20% /boot tmpfs 48G 8.2G 39G 18% /dev/shm 

Как вы видете. / составляет 78%. Я хочу проверить, какие файлы или папки потребляют пространство.

Я попробовал это:

 find . -type d -size +100M 

Что показывает результат следующим образом:

 ./u01/app/june01.dbf ./u01/app/temp01.dbf ./u01/app/smprd501.dbf ./home/abhishek/centos.iso ./home/abhishek/filegroup128.jar 

Теперь это моя проблема. Мне нужно только имя тех файлов, которые находятся в папках, которые занимают место в / а не в /u01 или /home . Поскольку / является базой всего, он показывает мне каждый файл моего сервера.

Можно получить большие файлы, которые вносят вклад в 78% от?

Пытаться:

 find / -xdev -type f -size +100M 

В нем перечислены все файлы размером более 100 МБ.

Если вы хотите узнать о каталоге, вы можете попробовать ncdu .

Если вы не используете Linux, вам может потребоваться использовать -size +204800 или -size +104857600c , поскольку суффикс M для обозначения мегабайт не находится в POSIX.

 find / -xdev -type f -size +102400000c 

В дополнение к ответу @Gnouc вы также можете добавить ls -la чтобы получить более подробную информацию. У вас должны быть sudo privileges для этого.

 $ find / -xdev -type f -size +100M -exec ls -la {} \; | sort -nk 5 

Следующая команда не только найдет вам 50 самых больших файлов (> 100M) в вашей файловой системе, но и сортирует ( sort GNU) самой большой:

 find / -xdev -type f -size +100M -exec du -sh {} ';' | sort -rh | head -n50 

-xdev Не -xdev каталоги на другие файловые системы.

В BSD find -x что эквивалентно устаревшему -xdev primary.

Для всех файлов и каталогов это еще проще:

 du -ahx / | sort -rh | head -20 

(флаг -x – это то, что требуется для ограничения одной файловой системы)

Если вы не используете GNU sort (от coreutils ), используйте его без -h :

 du -ax / | sort -rn | head -20 

Для текущего каталога (для более быстрых результатов) замените / . ,