Вопросы по Linux
Права, процессы, пайпы, grep/sed/awk, bash-скрипты, systemd, сеть, диски и разбор «почему тормозит сервер». Закрывает Linux-секцию собеса бэкендера и DevOps: и вопросы, и задачи в терминале.
Проверьте себя: тест по Linux
20 вопросов, 10 минут, уровень junior, middle или senior
Файловая система и права
Дерево каталогов, inode, жёсткие и символьные ссылки, chmod, chown, umask, SUID и sticky bit.
Урок: Файловая система и права за 7 минут 7 мин- Найти битые символьные ссылки
- Топ самых больших файлов
- Права из ls -l в цифры
- Сколько места у каждого владельца
- Найти файлы, доступные всем на запись
- Главные каталоги Linux
- Что такое inode
- SUID, SGID, sticky bit
Ещё 13 вопросов и задач
- Права 750 в буквах
- Кто может удалить файл
- Место есть, а файл не создаётся
- Что даёт право x на каталог
- chmod: символьная и числовая форма
- find: поиск SUID-файлов
- Жёсткая ссылка после удаления оригинала
- Права цифрами и буквами
- Почему mv большого файла мгновенный
- Жёсткие и символьные ссылки
- Модель прав в Linux
- Зачем SUID у passwd
- umask 027: права нового файла
Процессы и сигналы
fork и exec, PID и PPID, состояния процесса, зомби, сигналы, kill, nohup и job control.
Урок: Процессы и сигналы за 7 минут 7 мин- Процессы в непрерываемом сне
- Разбор /proc/PID/status
- Все потомки процесса
- Память по пользователям
- Найти родителей зомби
- Коды возврата shell
- Что есть в /proc/PID
- Главные сигналы
Ещё 13 вопросов и задач
- Copy-on-write после fork
- Код выхода 137
- kill и pkill
- ps: нужные колонки
- Почему cd встроен в shell
- Какой сигнал шлёт kill по умолчанию
- Почему фоновая задача умерла после выхода из SSH
- Порядок остановки сервиса
- Какой сигнал нельзя перехватить
- Корректная остановка сервиса
- Зомби и сироты
- Процесс в состоянии D
- Как избавиться от зомби
Потоки и пайпы
stdin, stdout, stderr, перенаправления, пайпы, tee, here-doc и коды возврата в конвейере.
Урок: Потоки ввода-вывода и пайпы за 6 минут 6 мин- Пользователи, которые есть только в одном списке
- Счётчик в цикле без потери переменной
- Какая часть конвейера упала
- Разделить вывод и ошибки
- tee: сохранить и посчитать
- Стандартные дескрипторы
- pipefail и PIPESTATUS
- Подстановка процессов
Ещё 13 вопросов и задач
- Перенаправления: заполни пропуски
- tee и pipefail
- Here-doc с кавычками
- Что делает перенаправление
- Код возврата конвейера
- Порядок перенаправлений 2>&1
- Почему yes | head -1 завершается
- sort f > f
- Как устроен пайп
- Перенаправления в shell
- stderr и пайп
- Почему sudo echo > файл не работает
- Переменная после while read в пайпе
grep, sed, awk, find, xargs
Поиск и обработка текста и файлов: регулярки, замены, подсчёты по колонкам, безопасный xargs.
Урок: grep, sed, awk, find, xargs за 8 минут 8 минBash-скрипты
Переменные и кавычки, условия, циклы, функции, set -euo pipefail, trap и частые ловушки.
Урок: Bash-скрипты без ловушек за 8 минут 8 минsystemd и журналы
Юниты и их типы, systemctl, рестарт сервисов, таймеры вместо cron, journalctl и ротация логов.
Урок: systemd и журналы за 7 минут 7 мин- Ошибки по источникам
- Почему падал сервис
- Сколько раз перезапускался сервис
- Таймеры: что запустится следующим
- Разбор файла юнита
- Главные флаги journalctl
- Type= в сервисе
- Типы юнитов systemd
Ещё 13 вопросов и задач
- Правка юнита не применилась
- enable против start
- systemctl: включить и запустить
- Юнит сервиса: ключевые директивы
- Логи пропадают после перезагрузки
- Логи сервиса за час
- Директивы юнита
- Как поменять параметр пакетного юнита
- Requires без After
- Сервис не стартует
- Юнит для своего приложения
- Сервис перестал перезапускаться
- Демон под Type=simple
Сеть в Linux
ip, ss, dig, curl, порты и сокеты, DNS-резолвинг, iptables и nftables, разбор «сервис недоступен».
Урок: Сеть в Linux за 8 минут 8 мин- Разбор ответа dig
- Резолвинг через /etc/hosts
- Какие порты реально открыты фаерволом
- Какие порты открыты наружу
- Сводка по состояниям TCP
- Где тратится время запроса
- ss: главные флаги
- TIME_WAIT и CLOSE_WAIT
Ещё 13 вопросов и задач
Диски, ФС и LVM
df и du, inode, монтирование и fstab, удалённый, но открытый файл, LVM и расширение раздела.
Урок: Диски, файловые системы и LVM за 7 минут 7 минПроизводительность
load average, top, vmstat, iostat, strace, lsof и методика поиска узкого места.
Урок: Производительность Linux за 8 минут 8 мин- Кто близок к лимиту дескрипторов
- Медленные диски по iostat
- Разбор strace -c
- Топ процессов из top -b
- Диагноз по vmstat
- Load average
- Первые 60 секунд на тормозящем сервере
- Строка %Cpu в top
Ещё 13 вопросов и задач
- Сервис медленный, CPU 12%
- Приоритеты процессов
- Инструменты: заполни команды
- %util 100% у NVMe
- Высокий load при свободном CPU
- Как читать три числа load average
- Метрика и что она показывает
- Подозрение на диск
- Сервер тормозит: методика
- Высокий steal в облаке
- Когда помогает strace
- Too many open files
- Колонка r в vmstat
Память и OOM
free и available, page cache, swap, виртуальная и резидентная память, OOM killer и cgroups.
Урок: Память и OOM killer за 7 минут 7 мин- Близость к лимиту cgroup
- Сводка из /proc/meminfo
- Сколько памяти занимали убитые
- Жертвы OOM killer
- PSS против RSS
- Ключевые поля /proc/meminfo
- OOM killer
- RSS, PSS, USS
Ещё 13 вопросов и задач
SSH и безопасность
Ключи, ssh-agent, конфиг, туннели, sudo, харднинг сервера, fail2ban и аудит доступа.
Урок: SSH и безопасность сервера за 7 минут 7 мин- Чем опасен ssh -A
- Разбор authorized_keys
- IP с неудачными попытками входа
- Аудит sshd_config
- Успешный вход после подбора
- Кто что делал через sudo
- Права для SSH-ключей
- Туннели SSH
Ещё 13 вопросов и задач
- Минимальный харднинг sshd
- Какой тип ключа создавать
- SSH: ключи и копирование
- sshd_config: запрет паролей
- Что передаётся при входе по ключу
- Безопасный переход на вход по ключам
- Ключ скопирован, а просит пароль
- Нестандартный порт SSH
- Не работает вход по ключу
- Новый сервер: первые шаги
- Безопасная правка sshd_config
- sudo на одну команду
- Локальный туннель к базе
Пакеты и загрузка
apt и dnf, репозитории и зависимости, порядок загрузки от firmware до systemd, ядро и модули.
Урок: Пакеты и загрузка системы за 7 минут 7 мин- Почему apt-key устарел
- apt update против apt upgrade
- Медленные юниты из systemd-analyze blame
- Состояния пакетов из dpkg -l
- Версии из dpkg -l
- Аудит источников apt
- Сравнение версий
- Порядок загрузки
Ещё 13 вопросов и задач
- Загрузка Linux по шагам
- dpkg и rpm: справочник
- sysctl и модули ядра
- Какому пакету принадлежит файл
- Сервер ушёл в emergency mode
- apt и dpkg: заполни команды
- Анализ загрузки
- Зачем нужен initramfs
- Этапы загрузки Linux
- remove против purge
- Обновили OpenSSL, а уязвимость осталась
- От кнопки питания до логина
- Обновления на проде