Со временем любая операционная система может засоряться по мере установки и удаления программ. Если ваш диск более 1 Тб, вы можете не утруждать себя очисткой Ubuntu, чтобы освободить место на диске. Но если ваш жесткий диск имеет ограниченное пространство, например, у меня 128 ГБ SSD в ноутбуке, освобождение дискового пространства становится необходимостью.
В этой статье я покажу вам некоторые из самых простых трюков, чтобы очистить вашу систему Ubuntu и получить больше места. Я также поделюсь некоторыми продвинутыми трюками, чтобы у вас был выбор.
Но перед этим давайте посмотрим, как найти свободное место, оставшееся на Ubuntu.
Проверьте свободное место на Убунту
Всегда полезно сначала проверить свободное дисковое пространство в Linux. Сделать это в Ubuntu довольно просто. Просто используйте инструмент Disk Usage Analyzer. Выполните поиск в меню и запустите программу. Здесь вы должны увидеть используемое дисковое пространство, а также оставшееся свободное место:
Как только вы узнали о состоянии свободного места на диске, пришло время очистить систему и освободить здесь еще немного свободного места.
Как освободить дисковое пространство в Ubuntu и Linux Mint
Существует несколько способов очистки дискового пространства в Ubuntu и других системах на базе Ubuntu. Здесь я покажу несколько трюков из командной строки, а также некоторые опции GUI.
Хоть я и упомянул несколько способов здесь, если вы новичок, избегайте тех, которые помечены как "для экспертов". Не то, чтобы вы не можете их использовать, но лучше избегать, если вы не знаете, что делаете.
Я использую Ubuntu 16.04 во время написания этой статьи, но вы можете использовать те же шаги для Ubuntu 18.04 и других версий Ubuntu, Linux Mint, Elementary OS и других дистрибутивов Linux на основе Ubuntu.
Вы также можете посмотреть видео, если не хотите читать.
1. Избавьтесь от пакетов программ, которые больше не требуются [Рекомендуется]
Если вы читали руководство по командам apt-get, вы могли наткнуться на опцию apt-get command 'autoremove'.
Эта опция удаляет библиотеки и пакеты, которые были установлены автоматически для создания зависимостей устанавливаемого пакета. Если пакет был удален, то эти автоматически установленные пакеты бесполезны в системе.
Эта команда также удаляет старые ядра Linux, которые были автоматически установлены при обновлении системы.
Это простая команда, которую вы можете запускать время от времени, чтобы освободить место в системе Ubuntu:
sudo apt-get autoremove
Как видите, эта она освободила 300 Мб свободного пространства в моей системе.
2. Удалите ненужные приложения [Рекомендуется]
У всех нас есть несколько игр и/или приложений, которые мы почти не используем. Думаете, это не так? Попробуйте найти всё установленное программное обеспечение в вашей системе Ubuntu.
Скорее всего, у вас установлено несколько приложений, которые вы редко используете. Может быть, вы установили их после просмотра какого-либо крутого обзора, из любопытства или для выполнения определенной задачи.
Если вам нужно больше места, избавиться от неиспользуемых или менее часто используемых приложений - это всегда хорошая идея.
Вы можете удалить программы в Ubuntu прямо в центре программного обеспечения или с помощью приведенной ниже команды, если знаете правильное название приложения:
sudo apt-get remove package-name1 package-name2
3. Очистка APT-кэша в Ubuntu
Ubuntu использует APT (Advanced Package Tool) для установки, удаления и управления программным обеспечением в системе, при этом он сохраняет кэш ранее загруженных и установленных пакетов даже после их удаления.
Система управления пакетами APT хранит кэш DEB пакетов в /var/cache/apt/archives. Со временем этот кэш может увеличиваться и содержать множество пакетов, которые вам не нужны.
Вы можете увидеть размер этого кэша с помощью команды du ниже:
sudo du -sh /var/cache/apt
Как видите, у меня более 500 Мб кэш-памяти. Когда у вас почти нет места, эти 500 Мб могут быть очень полезными.
Теперь у вас есть два способа очистить APT кэш.
Либо удалить только устаревшие пакеты, как те, которые были заменены недавним обновлением, что делает их совершенно ненужными.
sudo apt-get autoclean
Либо удалить кэш apt целиком (освобождает больше дискового пространства):
sudo apt-get clean
4. Очистка логов системных журналов [Средний уровень]
Каждый дистрибутив Linux имеет механизм протоколирования, который поможет Вам исследовать, что происходит в Вашей системе. В Ubuntu у вас будут данные журнала ядра, сообщения системного журнала, стандартный вывод и ошибки в различных службах.
Проблема в том, что с течением времени эти журналы занимают значительное место на диске. Вы можете проверить размер журнала с помощью этой команды:
journalctl --disk-usage
Есть способы очистить системные журналы. Самый простой для вас - это очистить журналы, которые старше определенного дня.
sudo journalctl --vacuum-time=3d
Вот пример:
abhishek@itsfoss:~$ journalctl --disk-usage
Archived and active journals take up 1.8G in the file system.
abhishek@itsfoss:~$ sudo journalctl --vacuum-time=3d
Vacuuming done, freed 1.7G of archived journals from /var/log/journal/1b9ab93094fa2984beba73fd3c48a39c
5. Удаление старых версии Snap-приложений [Средний уровень]
Вы, наверное, уже знаете, что Snap-пакеты больше по размеру. Кроме того, в Snap хранятся как минимум две старые версии приложения (в случае, если вы хотите вернуться к предыдущей версии). Это съедает огромную часть пространства. В моем случае эта часть составляла более 5 GB.
du -h /var/lib/snapd/snaps
4.0K /var/lib/snapd/snaps/partial
5.6G /var/lib/snapd/snaps
Алан Поуп (Alan Pope), член команды Snapcraft в Canonical, создал небольшой скрипт, который вы можете использовать и запускать для очистки всех старых версий ваших snap приложений.
Здесь вам нужно создать новый shell скрипт и использовать следующие строки в нем:
#!/bin/bash
# Removes old revisions of snaps
# CLOSE ALL SNAPS BEFORE RUNNING THIS
set -eu
snap list --all | awk '/disabled/{print $1, $3}' |
while read snapname revision; do
snap remove "$snapname" --revision="$revision"
done
Дайте ему разрешение на выполнение, запустите скрипт оболочки с помощью sudo и увидите магию. Скрипт удалил старые пакеты Snap и освободил более 2,5 ГБ пространства, используемого Snap.
du -h /var/lib/snapd/snaps
4.0K /var/lib/snapd/snaps/partial
2.5G /var/lib/snapd/snaps
6. Очистка кэша эскизов [Средний уровень]
Ubuntu автоматически создает эскизы для просмотра в файловом менеджере. Эти эскизы хранятся в скрытом каталоге в вашем аккаунте пользователя в каталоге ~/.cache/thumbnails.
Со временем количество эскизов будет резко возрастать. Более того, кэш эскизов со временем будет содержать множество лишних элементов, которые больше не существуют.
Вы можете проверить размер кэша эскизов с помощью следующей команды:
du -sh ~/.cache/thumbnails
В моей системе кэш эскизов размером более 300 Мб.
Так что это хорошая практика - очищать кэш эскизов каждые несколько месяцев или около того. Самый быстрый способ - использовать терминал (во избежание ошибок просто скопируйте команду):
rm -rf ~/.cache/thumbnails/*
7. Поиск и удаление дубликатов файлов
Иногда у вас могут быть дубликаты файлов в разных местах вашей системы. Избавление от дубликатов, безусловно, освободит некоторое пространство и очистит вашу систему Ubuntu.
Для этой задачи можно использовать графический интерфейс, такой как FSlint, или инструмент командной строки, такой как FDUPES.
Другие методы очистки системы [Для экспертов]
Удаление старых ядер Linux, которые были установлены вручную [Для экспертов].
Команда, рассмотренная в пункте 1, удаляет старое ядро Linux. Но она не сработает, если вручную установить ядро в Ubuntu. Но удаление старого, неиспользуемого ядра Linux все равно сэкономит Вам много места.
Поэтому, если Вы вручную установили ядро Linux, возможно, Вы сможете вручную и удалить его.
Сначала перечислите все установленные ядра Linux:
sudo dpkg --list 'linux-image*'
Удаление старых ядер - то же самое, что и удаление любого другого пакета. Я использую shell для набора номеров версий, чтобы немного сэкономить время на перепечатывании. Это подскажет вам список пакетов, которые будут удалены, так что вы можете дважды проверить этот список перед тем, как продолжить.
Замечание: Замените VERSION на версию ядра, которую хотите удалить.
sudo apt-get remove linux-image-VERSION
Я рекомендую хранить как минимум два или, желательно, три ядра, включая самые последние. Таким образом, у вас будет по крайней мере одно/два других ядра для загрузки, если по какой-то причине последнее ядро не может быть загружено.
Удаление осиротевших пакетов [Для экспертов]
Этого шага лучше всего избегать, если вы новичок. Я не являюсь поклонником этого метода и советую вам избегать его.
Во-первых, давайте посмотрим, что такое осиротевший пакет в Ubuntu.
Предположим, вы установили пакет "myprogram". Но у этого пакета есть зависимость от библиотеки 'mylib'. Эта библиотека обычно устанавливается автоматически с помощью 'myprogram'. Когда вы удаляете 'myprogram', mylib может остаться в системе. Таким образом, mylib, в данном случае, становится сиротским пакетом.
Теперь команда, перечисленная в пункте 1, удаляет такие осиротевшие пакеты. Но представьте себе случай, когда вы вручную установили mylib перед установкой myprogram. Команда 'apt autoremove' в данном случае может не удалить осиротевший пакет. Следовательно, вам придется удалить его вручную.
Сначала вы должны найти все осиротевшие пакеты, а затем удалить их. К счастью, у нас есть GUI-инструмент для этого: gtkorphan, графическая оболочка для deborphan.
Установите gtkorphan через терминал:
sudo apt-get install gtkorphan
А чтобы удалить осиротевшие пакеты, найдите инструмент Removed Orphaned Package и запустите его:
Честно говоря, я бы не рекомендовал этот вариант, если конечно тебе действительно не нужен каждый Мб свободного пространства.
Бонус: Использование графических инструментов GUI для освобождения пространства в Ubuntu
Мы видели несколько вариантов работы с командной строкой, чтобы освободить место в системе Linux, но я пойму, если вы не хотите использовать команды.
Запоминать все команды или использовать их все по очереди может быть неудобно. И именно поэтому у нас есть ряд GUI инструментов, которые помогут вам сделать это за несколько кликов с помощью простого в использовании интерфейса.
Stacer - это один из таких инструментов, который вы можете использовать.
Завершение
Итак, вы видели несколько способов очистки системы Ubuntu. Лично я использую apt-get autoremove чаще, чем любые другие команды, показанные здесь. Регулярное использование этой команды освобождает систему от лишних файлов.
Надеюсь, эта статья помогла Вам освободить место в Ubuntu, Linux Mint и других подобных дистрибутивах. Дайте мне знать, сработало ли это для Вас, или у Вас есть другой совет, которым Вы можете поделиться.