Эта статья — часть серии Linux administration, посвящённой самостоятельному администрированию Linux, Self-Hosting и DevOps. Здесь мы разбираем основы, чтобы вы могли уверенно управлять своей инфраструктурой.
📌 О чём эта статья?
Если вы только начинаете путь в мир Linux, DevOps или хотите развернуть собственные сервисы (например, Nextcloud, Home Assistant, Vaultwarden), вам нужно понимать, как устроен Linux и как им управлять. Эта статья — ваш первый шаг в мир системного администрирования на базе Linux.
Мы поговорим о:
Что такое Linux и почему он важен для Self-Hosting и DevOps
Основных компонентах Linux-системы
Работе с терминалом и командной строкой
Управлении пользователями, правами и процессами
Практических советах по началу работы
🐧 Что такое Linux?
Linux — это свободная операционная система, основанная на ядре Linux (Linux kernel), разработанном Линусом Торвальдсом в 1991 году. В отличие от Windows или macOS, Linux — это не одна система, а семейство дистрибутивов, построенных вокруг одного ядра.
NOTE
Ядро (kernel) — это “сердце” операционной системы. Оно управляет ресурсами: CPU, памятью, устройствами, сетью.
Источник: The Linux Kernel Archives
🔧 Почему Linux?
Открытый исходный код — вы можете изучать, модифицировать и распространять код.
Стабильность и надёжность — серверы на Linux работают месяцами без перезагрузки.
Гибкость — можно настроить под любые задачи: от микрокомпьютера Raspberry Pi до суперкомпьютера.
Безопасность — детальная настройка прав доступа, прозрачность, активное сообщество.
Поддержка DevOps и автоматизации — большинство инструментов CI/CD, контейнеризации (Docker, Kubernetes) изначально созданы под Linux.
Управляет взаимодействием между программами и “железом”. Отвечает за:
Управление процессами
Файловые системы
Сеть
Драйверы устройств
2. Системные библиотеки
Например, glibc — предоставляют стандартные функции (открытие файлов, сетевые вызовы), которые используют программы.
3. Оболочка (Shell)
Интерфейс между пользователем и ядром. Самые популярные:
bash — по умолчанию в большинстве дистрибутивов
zsh — с поддержкой автодополнения, тем и плагинов (например, Oh My Zsh)
fish — дружелюбная для новичков
4. Пользовательские приложения
От текстовых редакторов до веб-серверов и контейнеров.
🖥️ Работа с терминалом: основы
Терминал — ваш главный инструмент. Начнём с базовых команд.
🔹 Навигация по файловой системе
pwd # Показать текущий путьls # Список файловls -la # Подробный список (включая скрытые)cd /path/to/dir # Перейти в директориюcd .. # Вверх на уровеньcd ~ # В домашнюю директорию
cat file.txt # Вывести весь файлless file.txt # Просмотр с прокруткой (q — выход)head file.txt # Первые 10 строкtail file.txt # Последние 10 строкtail -f logfile.log # Следить за логом в реальном времени
Linux — многопользовательская система. Каждый пользователь имеет:
UID (User ID)
Домашнюю директорию (/home/username)
Оболочку по умолчанию
Основные команды:
whoami # Кто я?id # Показать UID, GID, группыusers # Кто сейчас в системеsudo useradd newuser # Создать пользователяsudo passwd newuser # Установить парольsudo usermod -aG docker newuser # Добавить в группу