Заметки о решаемых задачах АйТишников

Сделал - запиши. Нашёл - сохрани :)

Прошу прощения за рекламу на сайте. Я постарался сделать это максимально ненавязчиво и по минимуму. При чтении заинтересовавших вас статей она не будет вам мешать.
И если есть возможность поставить мой сайт в исключения у блокировщика рекламы, я буду очень признателен вам.

Очистка Linux Ubuntu от apt-кэш, конфиг файлов, deb пакетов

Очистка Linux Ubuntu от apt-кэш, конфиг файлов, deb пакетов

 

 

 

Когда вы долго работаете с системой, активно выбирали из всего разнообразия программ нужные вам и определившись с выбором решили остановиться на достигнутом, то ни что не мешает теперь подчистить систему от скопившегося хлама.

Что попадает под определение хлам?

  • apt-cache – это файлы apt скачанные с репозиториев и находящиеся у вас на диске, именно их использует программа Synaptic для установки пакетов и утилит. Чем чаще и интенсивнее вы устанавливаете пакеты, тем больше их скапливается в кэше (система их не удаляет для того, чтобы при повторной установке пакета не качать его снова).
  • Конфиг файлы deb пакетов – это файлы, оставшиеся в системе, после удаления основной программы.
  • Устаревшие и неиспользуемые ядра

 

Для того, чтобы удалить описанные выше пакеты, файлы и настройки создадим простенький скрипт.

Создаем файл cleanubuntu.sh и вставляем в него следующий код:

#!/bin/bash
OLDCONF=$(dpkg -l|grep "^rc"|awk '{print $2}')
CURKERNEL=$(uname -r|sed 's/-*[a-z]//g'|sed 's/-386//g')
LINUXPKG="linux-(image|headers|ubuntu-modules|restricted-modules)"
METALINUXPKG="linux-(image|headers|restricted-modules)-(generic|i386|server|common|rt|xen)"
OLDKERNELS=$(dpkg -l|awk '{print $2}'|grep -E $LINUXPKG |grep -vE $METALINUXPKG|grep -v$CURKERNEL)
YELLOW="033[1;33m"
RED="033[0;31m"
ENDCOLOR="033[0m"
if [ $USER != root ]; then
echo -e $RED"Ошибка: вы должны быть root"
echo -e $YELLOW"Выходим..."$ENDCOLOR
exit 0
fi
echo -e $YELLOW"Очищаем кэш apt..."$ENDCOLOR
aptitude clean
echo -e $YELLOW"Удаляем старые конфиги..."$ENDCOLOR
sudo aptitude purge $OLDCONF
echo -e $YELLOW"Удаляем старые ядра..."$ENDCOLOR
sudo aptitude purge $OLDKERNELS
echo -e $YELLOW"Опусташаем все корзины..."$ENDCOLOR
rm -rf /home/*/.local/share/Trash/*/** &> /dev/null
rm -rf /root/.local/share/Trash/*/** &> /dev/null
echo -e $YELLOW"Скрипт закончил работу!"$ENDCOLOR

Даем скрипту права на запуск:

chmod +x cleanubuntu.sh

 

Соответственно запускаем командой:

sudo ./cleanubuntu.sh

 

P.S. Для корректной работы скрипта установите утилиту aptitude:

sudo apt-get install aptitude

 

Для регулярного запуска можно использовать планировщик Cron.

Вот и всё. Пользуемся чистой осью :).


 

 

24 ноября 2011, 12:17    Александр Linux 0    592 0

 

 

 

 



Комментарии ()

    Вы должны авторизоваться, чтобы оставлять комментарии.