Как удалить неиспользуемые приложения Flatpak, чтобы освободить место на диске в Linux

В этой статье мы объясним, как Flatpak расходует дисковое пространство, а также расскажем о эффективных командах и методах удаления неиспользуемых приложений Flatpak, чтобы освободить это пространство.
TL;DR
Основными командами для очистки неиспользуемых приложений flatpak являются:
flatpak uninstall --unused
чтобы удалить среды выполнения и расширения, которые больше не нужны ни одному установленному приложению.flatpak repair
для исправления поврежденных или несовместимых объектов и удаления недопустимых данных.flatpak remove --delete-data --unused
чтобы также удалить потерянные данные пользователя для каждого приложения.
Кроме того, вы можете очистить кэш метаданных AppStream и вручную удалить оставшиеся файлы объектов.
Понимание использования диска Flatpak Apps
Приложения Flatpak работают в «песочницах» и содержат все необходимые им библиотеки, что приводит к большему использованию дискового пространства, чем при использовании традиционных пакетов.
Каждое обновление может загружать полностью новую версию среды выполнения или расширения, а затем сохранять старую версию до тех пор, пока она не будет удалена.
Среды выполнения (например, org.gnome.Platform
или org.kde.Platform
) используются несколькими приложениями, поэтому со временем накапливаются устаревшие версии, если их не удалять.
Чтобы узнать больше об использовании диска Flatpak, пожалуйста, перейдите по следующей ссылке:
Проверка использования диска Flatpak
Flatpak хранит каждое приложение вместе с его средой выполнения и расширениями в пользовательских (~/.local/share/flatpak
) и системных (/var/lib/flatpak
) репозиториях, часто оставляя неиспользуемые среды выполнения после обновлений или удаления.
Вы можете проверить, сколько места занимает Flatpak, используя следующие команды:
du -sh ~/.local/share/flatpak du -sh /var/lib/flatpak
Или перечислите установленные среды выполнения по размеру:
flatpak list --runtime --columns=application,size
Пример вывода:
--columns=application,size Application ID Installed size org.freedesktop.Platform 604.3 MB org.freedesktop.Platform 675.7 MB org.freedesktop.Platform.GL.default 538.1 MB org.freedesktop.Platform.GL.default 538.1 MB org.freedesktop.Platform.GL.default 463.3 MB org.freedesktop.Platform.GL.default 463.3 MB org.freedesktop.Platform.VAAPI.Intel 46.9 MB org.freedesktop.Platform.VAAPI.Intel 51.8 MB org.freedesktop.Platform.ffmpeg-full 30.4 MB org.freedesktop.Platform.openh264 763.9 kB org.freedesktop.Platform.openh264 789.5 kB org.gimp.GIMP.HEIC 8.1 MB org.gnome.Platform 1.0 GB org.gnome.Platform 1.0 GB

Список установленных сред выполнения Flatpak по размеру
Это помогает выявить необычно большие промежутки времени выполнения или приложения.
Удаление неиспользуемых сред выполнения и расширений Flatpak
Удалите все среды выполнения и расширения, которые больше не требуются:
flatpak uninstall --unused
Это эквивалентно «автоматическому удалению» для Flatpak и может освободить гигабайты памяти, если вы давно не запускали программу.
Удаление потерянных данных приложения
Чтобы также удалить пользовательские данные для удаленных приложений:
flatpak remove --delete-data --unused
Это позволяет очистить каталоги ~/.var/app/<app-id>
, которые в противном случае остаются на диске, освобождая дополнительное пространство.
Восстановление и удаление Поврежденных или оставшихся файлов
Исправьте все сломанные или несовместимые объекты; это может привести к удалению недействительных файлов:
flatpak repair # для пользовательских установок flatpak --user repair
Это позволяет сканировать и удалять все потерянные или поврежденные объекты.
Очистить кэши AppStream
Flatpak поддерживает метаданные AppStream в:
~/.local/share/flatpak/appstream/
/var/lib/flatpak/appstream/
Вы можете безопасно удалить эти кэши; они будут восстановлены при следующем обновлении:
rm -rf ~/.local/share/flatpak/appstream/* sudo rm -rf /var/lib/flatpak/appstream/*
Это может освободить десятки мегабайт и ускорить запросы метаданных.
Ручная очистка репозиториев объектов
Иногда /var/lib/flatpak/repo/objects
или ~/.local/share/flatpak/repo/objects
содержат данные полностью удалённых приложений. Убедившись, что вы удалили всё ненужное, вы можете полностью удалить эти каталоги:
sudo rm -rf /var/lib/flatpak/repo/objects rm -rf ~/.local/share/flatpak/repo/objects
Flatpak воссоздаст их по мере необходимости, а вы сможете вернуть оставшиеся блоки.
Автоматизация регулярной очистки
Чтобы избежать раздувания системы в будущем, добавьте задание cron или таймер systemd для еженедельной очистки:
sudo nano /etc/cron.weekly/flatpak-clean
Добавьте в него следующее содержимое:
#!/bin/sh flatpak uninstall --unused -y flatpak remove --delete-data --unused -y flatpak repair -y
Сделайте его исполняемым:
sudo chmod +x /etc/cron.weekly/flatpak-clean
Это сводит к минимуму занимаемую площадь вашего Флэтпака.
Обратите внимание, что скрипты, размещённые в /etc/cron.weekly/
, выполняются демоном cron
еженедельно. Точный день и время могут варьироваться в зависимости от конфигурации вашей системы.
Скрипты в /etc/cron.weekly/
выполняются от имени пользователя root. Поэтому просто убедитесь, что команды в скрипте безопасны для выполнения с повышенными привилегиями.
Шпаргалка
Действие | Команда |
---|---|
Удалите неиспользуемые среды выполнения и расширения | flatpak uninstall --unused |
Удаление потерянных данных приложения | flatpak remove --delete-data --unused |
Ремонтная установка | flatpak repair``flatpak --user repair |
Очистить кэши AppStream | rm -rf ~/.local/share/flatpak/appstream/*``sudo rm -rf /var/lib/flatpak/appstream/* |
Ручная обрезка репозиториев объектов | sudo rm -rf /var/lib/flatpak/repo/objects``rm -rf ~/.local/share/flatpak/repo/objects |
Выполнение этих действий обычно позволяет освободить от нескольких сотен мегабайт до нескольких гигабайт памяти, в зависимости от того, как долго вы не удаляли временные файлы Flatpak.