Bash - работа с приложениями и утилитами
-
🧹 Удаление списков пакетов APT (
/var/lib/apt/lists/)
Команда:
rm -rf /var/lib/apt/lists/*удаляет все файлы в каталоге, где APT хранит списки пакетов (индексы репозиториев, метаданные, Release-файлы и др.).
Разберём подробно, что означает каждый элемент, зачем это делается, и в каких случаях нельзя использовать эту команду.
1. Что означает каждая часть командыrmКоманда удаления файлов и директорий в Unix/Linux.
-rРекурсивное удаление:
- удаляет файлы;
- удаляет папки и всё их содержимое.
-fПринудительное удаление:
- без подтверждения,
- игнорирует ошибки (например, если файл отсутствует).
/var/lib/apt/lists/*Каталог, где хранятся загруженные APT списки пакетов:
- индексы репозиториев,
- файлы
Packages, - метаданные о версиях,
- локальные кэши источников.
Символ
*означает: удалить всё внутри каталога, но не сам каталог.
2. Что именно удаляетсяПосле выполнения:
rm -rf /var/lib/apt/lists/*будет удалено буквально:
- все кешированные списки пакетов репозиториев;
- все индексы пакетов;
- метаданные репозиториев;
- файлы Release / InRelease;
- индексация зависимостей.
Важно:Сами установленные пакеты это не затрагивает.
Это влияет только на списки, используемые для поиска и установки.
3. Что происходит после удаленияAPT перестанет "видеть" списки пакетов.
При попытке установить что-либо:
sudo apt install nanoAPT потребует обновить списки, и предложит выполнить:
sudo apt updateПосле чего заново скачает метаданные всех репозиториев.
4. Применение в Docker (наиболее распространено)Для уменьшения размера Docker-образов после установки пакетов обычно делают так:
RUN apt-get update \ && apt-get install -y --no-install-recommends \ curl wget nano \ && rm -rf /var/lib/apt/lists/*Зачем?
- уменьшает размер образа на 20–80 МБ;
- ускоряет деплой;
- улучшает кеширование слоёв Docker.
🧰 5. Применение в LXC, Proxmox, chroot
Можно безопасно очищать списки, например, чтобы:
- пересоздать кэш APT;
- исправить повреждённые списки;
- обновить stuck-обновления;
- уменьшить размер контейнера.
Пример:
sudo rm -rf /var/lib/apt/lists/* sudo apt update
6. Когда НЕ стоит выполнять эту командуНе используйте её:
В автономных системах (offline)Если у вас:
- локальные зеркала APT,
- нет выхода в интернет,
- офлайн-серверы
— после удаления списков вы НЕ сможете установить новые пакеты.
Если повреждён DNS / сетьAPT не сможет скачать списки — система останется без возможности установки пакетов.
В YunoHost при некорректных зеркалахПотому что YunoHost активно использует APT и большое количество репозиториев.
🧾 7. Современные альтернативы (2025)
Очистка кэша deb-пакетов (не списков):
sudo apt cleanУдаление только старых пакетов:
sudo apt autocleanУдаление списка только одного репозитория:
sudo rm /var/lib/apt/lists/deb.debian.org_debian_dists_bookworm_*Полное перевосстановление APT-метаданных:
sudo rm -rf /var/lib/apt/lists/* sudo apt clean sudo apt update --fix-missing
8. ИтогКоманда:
rm -rf /var/lib/apt/lists/*полностью очищает списки пакетов APT и широко используется:
- для уменьшения размера Docker-образов,
- для восстановления повреждённых списков,
- при проблемах с зависимостями,
- для очистки устаревших кешей.
Однако требует интернет-соединения или локального зеркала, иначе пакетный менеджер останется без метаданных.
-
Консольные браузеры
Вот актуальный на 2025 год список рабочих консольных браузеров для Linux (все ставятся через пакетный менеджер и реально поддерживаются).
Браузер Установка (Debian/Ubuntu/Mint) Плюсы Минусы Особенности lynx sudo apt install lynxСамый лёгкий, быстрый, работает везде Нет JS, нет картинок, очень аскетичный Идеален для чтения текста и API w3m sudo apt install w3m w3m-imgПоддержка картинок в терминале (kitty, xterm с sixel), табло, JS частично через внешние скрипты Картинки только в некоторых терминалах Лучший для просмотра с картинками links2 sudo apt install links2Графический режим (-g) — рисует в framebuffer, поддержка таблиц Старый, но живой Можно запускать с графикой без X11 elinks sudo apt install elinksСамый функциональный текстовый: вкладки, Lua-скрипты, поддержка CSS Нет картинок, JS почти нет Лучший текстовый браузер в 2025 году browsh Скачать с https://www.browsh.org или через пакет Настоящий современный браузер (на базе Firefox), JS, CSS, картинки Требует X11 или Wayland + framebuffer Визуально почти как Chrome в терминале bomber go install github.com/nalgeon/bomber@latestНовый (2024–2025), написан на Go, поддержка JS и CSS Пока экспериментальный Очень перспективный edbrowse sudo apt install edbrowseРедактор + браузер, работает как ed/vi, поддержка JS Очень специфический интерфейс Для любителей ed и автоматизации surfraw sudo apt install surfrawНе браузер, а набор «поисковых эльфов» (google, wiki, archlinux и т.д.) Только поиск и быстрые ссылки Удобно вместо «sr google …» Самые интересные и живые в 2025 году (мой личный топ):
- elinks — до сих пор активно развивается, лучший чисто текстовый браузер.
- w3m + w3m-img — если у тебя терминал kitty, alacritty с sixel или iterm2 — будешь видеть картинки.
- browsh — реально современный веб в консоли (YouTube, Reddit, даже Netflix прогружается).
Установка одной строкой:wget https://github.com/browsh-org/browsh/releases/latest/download/browsh_linux_amd64.deb sudo apt install ./browsh_linux_amd64.deb browsh - bomber — новый, быстрый, написан на Go, уже умеет многое из современного веба.
Быстрая установка всего самого крутого сразу (Debian/Ubuntu/Mint):
sudo apt update а sudo apt install lynx w3m w3m-img elinks links2 edbrowse surfraw # + browsh отдельно (см. выше) -
Установка и удаление Snap
Вот самый чистый, актуальный и проверенный на 2025 год способ установки и полного удаления Snap в Ubuntu/Debian/Mint/Pop!_OS и производных.
Установка Snap (2025)
sudo apt update sudo apt install snapd # это всё, что нужно sudo systemctl enable --now snapd.socket # на всякий случайПосле этого просто:
snap install hello-world # проверкаПолное удаление Snap (ничего не останется)
# 1. Список установленных snap-пакетов snap list # 2. Удалить ВСЕ snap-пакеты одной командой (2025 способ) sudo snap remove --purge $(snap list | awk '!/^Name|^snapd$/ {print $1}') # 3. Удалить сам snapd и всё, что с ним связано sudo apt purge -y snapd gnome-software-plugin-snap 2>/dev/null || true sudo apt autoremove -y # 4. Удалить остатки (это важно!) sudo rm -rf /snap /var/snap /var/lib/snapd /var/cache/snapd rm -rf ~/snap # 5. (Опционально) Убить запущенные процессы snap, если висели sudo killall snapd || true # 6. Перезагрузить (рекомендуется) sudo rebootОднострочник полного удаления (мой личный, копируй-вставляй)
sudo snap remove --purge $(snap list | awk '!/^Name|^snapd$/ {print $1}') 2>/dev/null; \ sudo apt purge -y snapd gnome-software-plugin-snap; sudo apt autoremove -y; \ sudo rm -rf /snap /var/snap /var/lib/snapd /var/cache/snapd ~/snap; \ echo "Snap полностью уничтожен. Перезагрузись!"Как проверить, что Snap действительно мёртв
which snap && echo "Ещё жив!" || echo "Snap мёртв. Празднуем!" ls /snap /var/snap 2>/dev/null && echo "Остатки есть" || echo "Чисто"Альтернативы Snap (куда люди уходят в 2025)
Что ставить вместо Snap Команда установки Flatpak sudo apt install flatpakAppImage просто скачиваем и запускаем Обычные .deb sudo apt install ...Distrobox / Toolbox для запуска приложений в контейнерах