Gentoo package size checker
Nov 15 2008Когда-то очень давно у меня был только внутренний жёский диск в ноутбуке на 80 Gb и мне было очень неуютно. Постоянно приходилось что-то удалять, как-то умещаться. Теперь у меня есть ещё внешний диск на 500 Gb, на котором только музыки 80 Gb (+ несколько неразобранной) и который тоже уже почти заполнен, но который можно почистить. Гигабайт эдак на 100 :)
С тех самых времён у меня осталось наследие в виде корневого раздела Gentoo на 3.5 Gb. Ясное дело, жить на таком разделе очень тесно, но возможности переразметить нету, да и времени особо тоже нету, чтобы 80 гигабай туда-сюда тягать. Конечно, я подключаю при сборке /var/tmp/portage с внешнего диска, /home у меня отдельным разделом (где и кэш squid живёт гигабайтный), но вот устанавливать пакеты всё равно куда-то приходится.
Для начала я бы советовал вычищать огромные логи из /var/log (у меня сегодня за ночь 400 Мб скопилось, но это из-за потери внешнего диска, откуда музыка игралась и откуда torrent работал). Всякий хлам там скапливается не особо часто, но бывают случаи. Также стоит держать только одно дерево исходников ядра в /usr/src, потому как это тоже немало. Кроме того, в случае особо сильного дефицита места разумно держать несобранное ядро. Если при сборке модулей будут проблемы, то можно начать сборку ядра и остановиться как только пойдут внутренние модули, после стандартных сборочных процедур. Ну и du -m вам в помощь.
Помимо удаления неиспользуемых пакетов иногда хочется понять, что вообще в системе сколько места занимает. Из стандартных утилит такое умеет equery, но как-то структурированно вывод у неё получить не вышло, посему я написал свою приблуду, которая сортирует пакеты по размеру и выводит полный список. Получение данных может занять приличное время, займите себя чем-нибудь полезным :)
Для запуска выполняем
chmod +x pkgsize
./pkgsize
Для отключения дополнительного вывода о прогрессе можно вызывать как
./pkgsize 2>/dev/null
Если у вас много пакетов в системе и вывод не умещается, то можно либо делать его в файл, либо использовать в пайпе с less
./pkgsize 2>/dev/null | less
{ Tags: bash, disks, du-m, equery, gentoo, kernel, less, logs, packages, perl, pipes, pkgsize, portage, scripts, size }




Recent Comments