Со временем в Ubuntu Linux накапливаются временные и ненужные файлы, которые остаются после установки/удаления пакетов, зависимостей. Также довольно много места могут занимать файлы логов, старые версия ядер. В этой статье мы покажем, как очистить диск в Ubuntu, удалив временные и ненужные файлы.
Анализ использования дискового пространства в Ubuntu
Чтобы найти больше файлы и папки на диске в Linux, которые занимают много места можно использовать утилиту ncdu:
$ sudo ncdu /
Утилита выведет список файлов и каталогов и их размеры.
Так же вы можете использовать следующие команды для определения размера папок:
$ df -hT
$ du -h --max-depth
Очистка пакетов и зависимостей в Ubuntu
Много места на диске Ubuntu могут занимать файлы, оставшиеся после удаления или обновления пакетов и их зависимостей с помощью пакетного менеджера apt.
Удалить неиспользуемые пакеты из кэша:
$ sudo apt autoclean
Очистить каш apt в Ubuntu:
$ sudo apt clean
$ sudo du -sh /var/cache/apt
Удалить неиспользуемые зависимости:
$ sudo apt autoremove
$ sudo apt autoremove package_name
Если у вас используется пакетный менеджер snap, имейте в виду что он при удалении пакетов удаляет все старые версии, кроме последних трех.
Вы можете изменить настройки snap, чтобы он хранил только одну предыдущую версию пакета:
$ snap set system refresh.retain=2
Чтобы удалить все неиспользуемые пакеты snap, воспользуйтесь таким скриптом:
#!/bin/bash
set -eu
LANG=en_US.UTF-8 snap list --all | awk '/disabled/{print $1, $3}' |
while read snapname revision; do
snap remove "$snapname" --revision="$revision"
done
Вывести список удаленных пакетов dpkg:
$ dpkg -l | awk '/^rc/ {print $2}'
Чтобы удалить файлы таких пакетов, выполните команду:
$ dpkg -l | awk '/^rc/ {print $2}' | xargs dpkg --purge
или
$ aptitude purge ~c
Удаление старых версий ядра в Ubuntu
Старые версии ядер Ubuntu могут занимать на диске 200-500 Мб). Вывести список образов ядер в Ubuntu:
$ apt list --installed | egrep "linux-image|linux-headers"
или
$ dpkg --list | egrep "linux-image|linux-headers"
Предудущие версии ядер помечены как rc.
$ uname -a
Для удаления старой версии ядра используйте команду:
$ sudo apt purge linux-image-5.15.0-25-generic
В новых версиях Ubuntu для очистки старых версий ядер используется команда:
$ sudo apt-get autoremove
Чтобы удалить все версии ядер, кроме текущей и предпоследней, воспользуйтесь таким bash скриптом:
apt-get purge $(dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | head -n -1)
apt autoremove
update-grub
update-grub2
Очистка журналов в Ubuntu
Много свободного места на диске Ubuntu могут занимать файлы журналов.
Чтобы вывести текущий размер журнала:
$ journalctl --disk-usage
Удалять журналы старше 2 недель:
$ sudo journalctl --vacuum-time=2weeks
Уменьшить размер журнала до 200 Мб:
$ sudo journalctl --vacuum-size=200M