Ysa-k07-ru
Глава 7: Менеджер пакетов apt
Цели главы
После изучения этой главы ученик:
- Понимает, что такое пакеты и менеджер пакетов в Linux
- Знает, как работает apt в Debian/Ubuntu
- Умеет устанавливать, удалять и обновлять пакеты
- Может безопасно обновлять операционную систему и прикладное ПО
- Приобретает практические навыки системного администратора
1. Что такое пакеты в Linux
В Linux программное обеспечение распространяется в виде пакетов.
Пакет — это архив, который содержит:
- исполняемые файлы программы
- библиотеки
- конфигурационные файлы
- документацию
- информацию о зависимостях (dependencies)
Пример:
- пакет nginx содержит веб-сервер
- пакет nano — текстовый редактор
- пакет openssh-server — SSH-сервер
В Debian/Ubuntu используются пакеты формата .deb.
2. Менеджер пакетов
Менеджер пакетов — это инструмент, который:
- загружает пакеты из репозиториев
- устанавливает и удаляет программы
- автоматически устанавливает зависимости
- обновляет систему
В Debian/Ubuntu основной менеджер пакетов — apt.
3. Репозитории
Репозиторий — это сервер с пакетами.
Информация о репозиториях хранится в:
- /etc/apt/sources.list
- /etc/apt/sources.list.d/
Обычно начинающему администратору не нужно редактировать их вручную.
4. Основные команды apt
Все команды apt требуют права администратора → используется sudo.
4.1 Обновление списка пакетов
Перед установкой или обновлением ПО нужно обновить список доступных пакетов:
sudo apt update
Что делает команда:
- загружает актуальный список пакетов из репозиториев
- НЕ устанавливает обновления
4.2 Установка пакетов
Пример: установка текстового редактора nano
sudo apt install nano
Установка нескольких пакетов:
sudo apt install curl wget git
4.3 Удаление пакетов
Удаление программы (конфигурация сохраняется):
sudo apt remove nano
Полное удаление вместе с конфигурацией:
sudo apt purge nano
4.4 Поиск пакетов
Поиск по названию или описанию:
apt search nginx
4.5 Информация о пакете
Подробная информация:
apt show nginx
5. Обновление системы
5.1 Обновление установленных пакетов
После обновления списка пакетов:
sudo apt upgrade
Что происходит:
- обновляются установленные программы
- новые пакеты не устанавливаются
- старые не удаляются
5.2 Полное обновление системы
sudo apt full-upgrade
Используется, когда:
- нужно обновить ядро
- могут быть добавлены или удалены пакеты
⚠ Использовать осторожно на серверах!
6. Практика: установка программ
Пример 1: Установка htop
sudo apt update sudo apt install htop
Проверка:
htop
Выход: F10
Пример 2: Установка веб-сервера nginx
sudo apt install nginx
Проверка статуса сервиса (подробно в главе 14):
systemctl status nginx
7. Практика: обновление прикладного ПО
1. Обновить список пакетов
sudo apt update
2. Обновить установленные программы
sudo apt upgrade
3. Проверить, какие пакеты были обновлены
8. Практика: очистка системы
Удаление ненужных зависимостей:
sudo apt autoremove
Очистка кэша пакетов:
sudo apt clean
Зачем это нужно:
- освобождение дискового пространства
- поддержание чистоты системы
9. Типичные ошибки и их решение
Ошибка: "Could not get lock /var/lib/dpkg/lock"
Причина:
- другой процесс apt уже работает
Решение:
- подождать
- проверить процессы:
ps aux | grep apt
10. Практические задания
Задание 1
- Обновить список пакетов
- Найти пакет mc
- Установить его
- Запустить mc
Задание 2
- Установить пакет tree
- С помощью tree показать структуру каталога /etc
- Удалить пакет tree
Задание 3
- Обновить все пакеты системы
- Очистить систему от ненужных пакетов
Задание 4 (администраторское мышление)
- Установить apache2
- Проверить, что пакет установлен
- Удалить apache2 полностью (с конфигурацией)
11. Дополнительные материалы для самостоятельного изучения
- man apt
- man apt-get
- Официальная документация Ubuntu: Package Management
- Debian Administrator Handbook (глава APT)
- Практика на виртуальной машине (обязательно!)
12. Результат главы
После этой главы ученик:
- Умеет управлять программным обеспечением в Linux
- Понимает разницу между update / upgrade
- Готов обслуживать систему на базовом уровне
- Сделал важный шаг к роли Unix System Administrator