Введение в BaseLinux
BaseLinux — это современная операционная система нового поколения, разработанная для серверов, рабочих станций и встраиваемых систем. Она сочетает в себе стабильность классических Unix-систем с инновационными подходами к управлению пакетами и безопасности.
Ключевые особенности
- Атомарные обновления — система обновляется целиком, что гарантирует целостность и возможность отката
- Изолированные контейнеры — каждое приложение работает в изолированном окружении с минимальными привилегиями
- Декларативная конфигурация — состояние системы описывается в одном конфигурационном файле
- Встроенная безопасность — SELinux, AppArmor и мандатный контроль доступа из коробки
Системные требования
| Компонент | Минимум | Рекомендуется |
|---|---|---|
| Процессор | x86_64, 2 ядра | x86_64, 4+ ядра |
| Оперативная память | 2 ГБ | 8 ГБ |
| Дисковое пространство | 20 ГБ | 50 ГБ SSD |
| Сеть | 100 Мбит/с | 1 Гбит/с |
Установка
BaseLinux можно установить несколькими способами. Выберите наиболее подходящий для вашей среды.
Способ 1: Загрузка с ISO-образа
- Скачайте последнюю версию ISO-образа с официального сайта
- Запишите образ на USB-накопитель или DVD
- Загрузитесь с носителя и следуйте инструкциям установщика
- После установки перезагрузите систему
Способ 2: Установка через базовую систему
Если у вас уже установлена совместимая Linux-система, вы можете установить BaseLinux поверх неё:
# Обновите систему
sudo apt update && sudo apt upgrade
# Установите установщик BaseLinux
sudo apt install baselinux-installer
# Запустите установку
sudo baselinux-install --interactive
Способ 3: Развёртывание в облаке
BaseLinux доступен в виде готовых образов для популярных облачных провайдеров:
# AWS
aws ec2 run-instances \
--image-id ami-0123456789abcdef0 \
--instance-type t3.medium \
--key-name my-key-pair
# Google Cloud
gcloud compute instances create baselinux-instance \
--image-family baselinux-4 \
--image-project baselinux-cloud \
--machine-type e2-medium
Быстрый старт
После установки системы выполните следующие шаги для начала работы:
Первый вход в систему
# Войдите в систему
login: admin
Password: ********
# Проверьте версию системы
baselinux --version
# BaseLinux 4.2.1 (build 20240115)
Обновление системы
# Обновите репозитории
sudo bl update
# Установите доступные обновления
sudo bl upgrade
# Перезагрузите систему при необходимости
sudo bl reboot
Установка пакетов
BaseLinux использует собственный пакетный менеджер bl:
# Поиск пакета
bl search nginx
# Установка пакета
sudo bl install nginx
# Удаление пакета
sudo bl remove nginx
# Список установленных пакетов
bl list --installed
Конфигурация
BaseLinux использует декларативный подход к конфигурации. Все настройки
системы хранятся в едином файле /etc/baselinux/system.bl.
Структура конфигурационного файла
# /etc/baselinux/system.bl
system:
hostname: myserver
timezone: Europe/Moscow
locale: ru_RU.UTF-8
network:
interfaces:
eth0:
dhcp: true
eth1:
ip: 192.168.1.100
netmask: 255.255.255.0
gateway: 192.168.1.1
security:
firewall: enabled
selinux: enforcing
ssh:
permit_root_login: false
password_authentication: false
packages:
- nginx
- postgresql
- redis
Применение конфигурации
После изменения конфигурационного файла примените изменения:
# Проверьте синтаксис конфигурации
sudo bl config validate
# Примените изменения
sudo bl config apply
# Откатите изменения при ошибке
sudo bl config rollback
Основные команды
BaseLinux предоставляет расширенный набор команд для управления системой:
| Команда | Описание | Пример |
|---|---|---|
bl status |
Показать статус системы | bl status --detailed |
bl services |
Управление службами | bl services start nginx |
bl logs |
Просмотр системных логов | bl logs --follow --service nginx |
bl backup |
Создание резервной копии | bl backup create --full |
bl restore |
Восстановление из копии | bl restore /backup/2024-01-15.bl |
API Reference
BaseLinux предоставляет REST API для программного управления системой:
Аутентификация
# Получение токена доступа
curl -X POST https://localhost:8443/api/v1/auth/token \
-H "Content-Type: application/json" \
-d '{
"username": "admin",
"password": "your_password"
}'
# Ответ
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"expires_in": 3600
}
Получение статуса системы
curl -X GET https://localhost:8443/api/v1/system/status \
-H "Authorization: Bearer YOUR_TOKEN"
# Ответ
{
"hostname": "myserver",
"version": "4.2.1",
"uptime": 86400,
"cpu_usage": 23.5,
"memory_usage": 45.2,
"disk_usage": 67.8
}
Управление пакетами
# Установка пакета
curl -X POST https://localhost:8443/api/v1/packages/install \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"package": "nginx",
"version": "latest"
}'
# Удаление пакета
curl -X DELETE https://localhost:8443/api/v1/packages/nginx \
-H "Authorization: Bearer YOUR_TOKEN"
Часто задаваемые вопросы
Как обновить BaseLinux до новой версии?
Используйте команду sudo bl upgrade. Система автоматически загрузит и установит все доступные обновления. Для мажорных обновлений может потребоваться перезагрузка.
Можно ли откатить обновление?
Да, BaseLinux поддерживает атомарные откаты. Используйте команду sudo bl rollback для возврата к предыдущей версии системы.
Как настроить автоматические обновления?
Добавьте в конфигурационный файл:
updates:
auto: true
schedule: "0 3 * * *" # Каждый день в 3:00
reboot_if_needed: true
Совместим ли BaseLinux с Docker?
Да, BaseLinux полностью совместим с Docker и Podman. Установите их стандартным способом через bl install docker.