You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

106 KiB

🧱 Основы системы

Анкета: Структура файловой системы

🟢 Уровень 1: Основы

  • 1. Что такое корневой каталог в Linux и как он обозначается?

    • A) Домашний каталог текущего пользователя, обозначается ~
    • B) Каталог для программ администратора, обозначается /root
    • C) Главный каталог файловой системы, содержащий всё остальное, обозначается /
    • D) Каталог с загрузочными файлами ядра, обозначается /boot
  • 2. Для чего в основном используется каталог /home?

    • A) Для хранения общесистемных конфигурационных файлов.
    • B) Для хранения личных файлов и настроек пользователей.
    • C) Для временного хранения файлов удалённых пользователей.
    • D) Для хранения файлов веб-сервера.
  • 3. Каково назначение каталога /bin?

    • A) Это "корзина" для удалённых файлов.
    • B) В нём хранятся двоичные файлы драйверов устройств.
    • C) В нём хранятся все исполняемые файлы системы.
    • D) В нём хранятся основные исполняемые файлы, доступные всем пользователям.

🟡 Уровень 2: Продвинутый пользователь

  • 4. В чем ключевое различие между каталогами /bin и /sbin?

    • A) В /bin находятся исполняемые файлы, а в /sbin — их исходные коды.
    • B) /bin содержит команды для всех пользователей, а /sbin — команды, требующие прав суперпользователя (администратора).
    • C) /bin — это реальный каталог, а /sbin — символическая ссылка на него.
    • D) В /bin хранятся 32-битные программы, а в /sbin — 64-битные.
  • 5. Какую роль выполняет каталог /etc?

    • A) Хранит исполняемые файлы дополнительных (et cetera) программ.
    • B) Используется для временного хранения электронных текстовых документов.
    • C) Содержит общесистемные конфигурационные файлы.
    • D) Содержит шаблоны для создания домашних каталогов новых пользователей.
  • 6. Что такое Filesystem Hierarchy Standard (FHS)?

    • A) Утилита для проверки файловой системы на наличие ошибок.
    • B) Стандарт, описывающий структуру каталогов и расположение файлов в UNIX-подобных системах.
    • C) Модуль ядра, отвечающий за поддержку файловых систем, таких как ext4 и XFS.
    • D) Сетевой протокол для организации общего доступа к файлам.

🔴 Уровень 3: Эксперт

  • 7. Какова основная функция каталога /proc?

    • A) Хранение лог-файлов всех системных процессов.
    • B) Хранение предварительно скомпилированного программного кода для ускорения запуска.
    • C) Это защищённый каталог для хранения микрокода процессора.
    • D) Это виртуальная файловая система, предоставляющая доступ к информации о процессах и параметрах ядра.
  • 8. Что такое inode (индексный дескриптор)?

    • A) Структура данных, хранящая метаданные файла (права доступа, размер, владелец), но не его имя и содержимое.
    • B) Специальный файл, который содержит имя и полный путь к файлу.
    • C) Блок на диске, в котором хранится непосредственно содержимое (данные) файла.
    • D) Запись в системном журнале об операциях, произведенных с файлом.
  • 9. Что означает фундаментальная концепция Linux "всё есть файл"?

    • A) Все данные на диске, включая свободное пространство, организованы в виде скрытых файлов.
    • B) Все программы в Linux должны быть написаны в виде одного исполняемого файла.
    • C) Ресурсы системы, такие как устройства (диски, терминалы), представляются в файловой системе и с ними можно работать как с файлами.
    • D) Все пользовательские данные должны храниться исключительно в текстовых файлах для универсальности.

Анкета: Права доступа и владение

🟢 Уровень 1: Основы

  • 10. Что означают права доступа rwx для файла?

    • A) Read, Write, Execute (Чтение, Запись, Исполнение)
    • B) Read, Watch, Extract (Чтение, Наблюдение, Извлечение)
    • C) Run, Wait, Exit (Запуск, Ожидание, Выход)
    • D) Rewrite, Work, eXamine (Перезапись, Работа, Изучение)
  • 11. Какая команда используется для изменения прав доступа к файлу или каталогу?

    • A) chown
    • B) chgrp
    • C) chmod
    • D) access
  • 12. Для чего предназначена команда chown?

    • A) Для изменения прав доступа.
    • B) Для изменения владельца и/или группы файла.
    • C) Для создания нового владельца в системе.
    • D) Для просмотра текущего владельца файла.

🟡 Уровень 2: Продвинутый пользователь

  • 13. Какие права доступа устанавливает команда chmod 755 для файла?

    • A) rwxr-xr-x (владелец может всё, группа и остальные могут читать и исполнять)
    • B) rwxr-xr-- (владелец может всё, группа может читать и исполнять, остальные только читать)
    • C) rwx--x--x (все могут исполнять, но только владелец может читать и писать)
    • D) rwxrwxrwx (все могут делать всё)
  • 14. Что означает SUID-бит (Set User ID), установленный на исполняемый файл?

    • A) Файл может быть запущен только пользователем с указанным ID.
    • B) Файл при запуске выполняется с правами владельца файла, а не пользователя, который его запустил.
    • C) Любой пользователь может сменить владельца этого файла.
    • D) Файл будет автоматически удалён после первого успешного запуска.
  • 15. Что даёт SGID-бит (Set Group ID), установленный на каталог?

    • A) Только члены группы-владельца могут входить в этот каталог.
    • B) Все новые файлы, созданные в этом каталоге, будут наследовать группу каталога.
    • C) Запрещает создание подкаталогов внутри.
    • D) При входе в каталог первичная группа пользователя временно меняется на группу-владельца каталога.

🔴 Уровень 3: Эксперт

  • 16. Каково назначение "sticky bit" (липкого бита), установленного на каталог (например, /tmp)?

    • A) Файлы в этом каталоге нельзя изменить после создания.
    • B) Каталог нельзя удалить, пока он не пуст.
    • C) Удалить файл в этом каталоге может только владелец файла, владелец каталога или root.
    • D) Все файлы, перемещенные в этот каталог, "прилипают" к нему и не могут быть перемещены.
  • 17. Что такое umask?

    • A) Команда, которая показывает маску подсети для сетевых интерфейсов.
    • B) Маска прав доступа, которая определяет права по умолчанию для вновь создаваемых файлов и каталогов.
    • C) Утилита для скрытия (маскировки) файлов от определённых пользователей.
    • D) Системный параметр, определяющий максимальное количество файлов, которые может создать пользователь.
  • 18. В чем отличие прав доступа символической ссылки от прав её цели?

    • A) У символических ссылок всегда полные права (rwxrwxrwx).
    • B) Права символической ссылки полностью копируются с цели в момент создания.
    • C) Права на символическую ссылку не имеют значения; важны только права на файл, на который она указывает.
    • D) При изменении прав на цель, права на ссылку автоматически меняются.

Анкета: Пользователи и группы

🟢 Уровень 1: Основы

  • 19. Кто такой пользователь root в Linux?

    • A) Первый созданный в системе пользователь.
    • B) Пользователь с ограниченными правами.
    • C) Суперпользователь, имеющий полный доступ ко всем файлам и командам.
    • D) Системная учётная запись для запуска служб, не требующих прав.
  • 20. Какая команда используется для добавления нового пользователя в систему?

    • A) newuser
    • B) adduser (или useradd)
    • C) personadd
    • D) mkuser
  • 21. В каком файле в основном хранится информация об учётных записях пользователей?

    • A) /etc/users
    • B) /etc/config
    • C) /home/users.list
    • D) /etc/passwd

🟡 Уровень 2: Продвинутый пользователь

  • 22. Что такое первичная и вторичная группа пользователя?

    • A) Первичная — для входа в систему, вторичная — для доступа к сети.
    • B) Первичная — группа, с которой создаются файлы по умолчанию; вторичные — предоставляют доп. права доступа.
    • C) Первичная группа имеет ID до 1000, вторичные — после 1000.
    • D) Пользователь может менять свою вторичную группу, но не первичную.
  • 23. Для чего используется команда sudo?

    • A) Для полного переключения на другого пользователя, включая его окружение.
    • B) Для выполнения одной команды с правами другого пользователя (по умолчанию root).
    • C) Для просмотра списка всех пользователей в системе.
    • D) Для установки прав SUID на файл.
  • 24. Как изменить домашний каталог и оболочку (shell) для уже существующего пользователя?

    • A) Отредактировав файл /etc/passwd вручную.
    • B) С помощью команды usermod.
    • C) С помощью команды useredit.
    • D) Необходимо удалить пользователя и создать его заново с новыми параметрами.

🔴 Уровень 3: Эксперт

  • 25. Каково назначение оболочки /sbin/nologin?

    • A) Это специальная оболочка для удалённого входа, которая не ведёт лог-файлы.
    • B) Это оболочка, которая немедленно завершает сессию, эффективно запрещая интерактивный вход.
    • C) Оболочка, которая используется по умолчанию, если другая не указана.
    • D) Оболочка с повышенным уровнем безопасности.
  • 26. В чём принципиальное различие между командами su и sudo?

    • A) su требует пароль целевого пользователя, а sudo — пароль текущего пользователя.
    • B) sudo позволяет выполнять только одну команду, а su открывает полноценную сессию.
    • C) su — более старая команда, sudo — более новая; функционально они идентичны.
    • D) sudo позволяет тонко настраивать, какие именно команды может выполнять пользователь.
  • 27. Что такое UID (User ID) и какое значение имеет UID 0?

    • A) Уникальный идентификатор пользователя; UID 0 зарезервирован для суперпользователя root.
    • B) Уникальный идентификатор диска; UID 0 обозначает системный раздел.
    • C) Индекс пользователя в файле /etc/passwd; UID 0 — первая запись.
    • D) Приоритет пользователя в системе; UID 0 имеет самый низкий приоритет.

Анкета: Kernel/userspace взаимодействие (/proc, /sys)

🔴 Уровень 3: Эксперт

  • 28. В чем основное различие между /proc и /sys?

    • A) /proc используется ядром, а /sys — системными службами.
    • B) /proc ориентирован на информацию о процессах, тогда как /sys представляет иерархию устройств и драйверов.
    • C) Данные в /proc можно только читать, а в /sys — читать и изменять.
    • D) /proc — это реальная файловая система на диске, а /sys — виртуальная.
  • 29. Как можно изменить параметр ядра "на лету" (без перезагрузки), используя файловую систему?

    • A) Записав новое значение в соответствующий файл в /sys/kernel/.
    • B) Записав новое значение в соответствующий файл в /proc/sys/.
    • C) Изменив конфигурационный файл в /etc/kernel/ и перезапустив службу ядра.
    • D) С помощью специальной команды kernel_update, указав параметр и значение.
  • 30. Что представляет собой kobject в контексте sysfs?

    • A) Объект ядра, который представляет собой каталог в /sys. Вся иерархия /sys построена на них.
    • B) Бинарный файл в /sys, содержащий скомпилированный код драйвера.
    • C) Скрипт конфигурации для конкретного объекта ядра.
    • D) Блокировка, которая предотвращает одновременный доступ нескольких процессов к одному файлу в /sys.

Анкета: Работа с устройствами (/dev, udev)

🟡 Уровень 2: Продвинутый пользователь

  • 31. Какова роль каталога /dev?

    • A) В нём содержатся инструменты для разработчиков (development tools).
    • B) Он содержит файлы устройств, которые представляют собой интерфейсы к оборудованию.
    • C) Это основной каталог для хранения драйверов устройств.
    • D) Временный каталог для обмена данными между устройствами.
  • 32. Какова основная задача службы udev?

    • A) Управлять обновлениями (updates) установленных драйверов.
    • B) Динамически создавать и удалять файлы устройств в /dev при подключении/отключении оборудования.
    • C) Проверять подлинность устройств, подключаемых к системе.
    • D) Предоставлять универсальный API для доступа к устройствам (Universal Device API).
  • 33. В чем разница между блочным (block) и символьным (character) устройством?

    • A) Блочные устройства передают данные большими блоками и буферизуются (диски), а символьные — посимвольно (терминал, мышь).
    • B) Блочные устройства нельзя удалить из системы, а символьные можно.
    • C) Блочные устройства находятся в /dev/block/, а символьные — в /dev/char/.
    • D) Блочные устройства — это физическое оборудование, а символьные — виртуальное.

🔴 Уровень 3: Эксперт

  • 34. Что такое правило udev и где обычно размещают пользовательские правила?

    • A) Это скрипт, выполняемый при загрузке системы; размещается в /etc/udev/init.d.
    • B) Это файл конфигурации, описывающий, что делать при появлении устройства; размещается в /etc/udev/rules.d/.
    • C) Это бинарный файл драйвера; размещается в /lib/udev/devices/.
    • D) Это настройка ядра, задающая поведение udev; размещается в /proc/sys/dev/.
  • 35. Что такое старший (major) и младший (minor) номера файла устройства?

    • A) Старший номер указывает на версию драйвера, младший — на версию прошивки устройства.
    • B) Старший номер идентифицирует драйвер устройства, а младший — конкретное устройство, управляемое этим драйвером.
    • C) Старший номер — это приоритет устройства, младший — его порт подключения.
    • D) Это серийный номер устройства, разделенный на две части.
  • 36. Каково практическое назначение устройства /dev/null?

    • A) Это "черная дыра": всё, что в него записывается, исчезает, а чтение из него сразу возвращает конец файла.
    • B) Это временное хранилище, которое очищается при перезагрузке.
    • C) Это файл, содержащий список всех неиспользуемых (NULL) устройств.
    • D) Это символическая ссылка на корневой каталог, используемая для отладки.

💻 Работа с файлами и текстом

Анкета: Работа с файлами и каталогами

🟢 Уровень 1: Основы

  • 37. Какая команда используется для вывода содержимого текущего каталога?

    • A) list
    • B) dir
    • C) ls
    • D) show
  • 38. С помощью какой команды можно создать новый каталог с именем test?

    • A) newdir test
    • B) mkdir test
    • C) crdir test
    • D) makedir test
  • 39. Какая команда используется для удаления пустого каталога mydir?

    • A) del mydir
    • B) rm mydir
    • C) rmdir mydir
    • D) erase mydir

🟡 Уровень 2: Продвинутый пользователь

  • 40. Что делает команда ln -s /path/to/file link_name?

    • A) Создаёт жёсткую ссылку на файл.
    • B) Создаёт символическую (мягкую) ссылку на файл.
    • C) Копирует файл с сохранением метаданных.
    • D) Проверяет, существует ли файл.
  • 41. Какая команда найдёт все файлы с расширением .log в текущем каталоге и всех его подкаталогах?

    • A) grep .log
    • B) search *.log
    • C) ls -R *.log
    • D) find . -name "*.log"
  • 42. В чем основное отличие жёсткой ссылки от символической?

    • A) Жёсткая ссылка не может указывать на каталог, а символическая может.
    • B) Жёсткая ссылка указывает на тот же inode, что и оригинал; символическая — это файл с путём к оригиналу.
    • C) Жёсткую ссылку нельзя удалить, пока существует оригинал.
    • D) Символическая ссылка работает быстрее, чем жёсткая.

🔴 Уровень 3: Эксперт

  • 43. Что делает команда find . -type f -exec chmod 644 {} \;?

    • A) Находит все каталоги и меняет их права на 644.
    • B) Находит все файлы и меняет их права на 644, запуская chmod для каждого файла отдельно.
    • C) Находит все файлы и передаёт их список в chmod одной командой.
    • D) Ищет файлы с правами 644.
  • 44. Для чего используется команда stat?

    • A) Для вывода статистики использования файловой системы.
    • B) Для вывода подробной информации о файле или файловой системе, включая inode, права, временные метки.
    • C) Для отображения статуса системных служб.
    • D) Для статической компиляции программ.
  • 45. Как с помощью find и xargs удалить все файлы, заканчивающиеся на .tmp?

    • A) find . -name "*.tmp" | xargs rm
    • B) find . -name "*.tmp" -exec rm
    • C) xargs rm < find . -name "*.tmp"
    • D) rm $(find . -name "*.tmp")

Анкета: Работа с текстом и потоками (grep, awk, sed, cut, sort, uniq)

🟡 Уровень 2: Продвинутый пользователь

  • 46. Какая команда выведет все строки из файла access.log, содержащие слово "ERROR"?

    • A) find "ERROR" access.log
    • B) grep "ERROR" access.log
    • C) cat access.log | search "ERROR"
    • D) text "ERROR" < access.log
  • 47. Что делает команда sort file.txt | uniq -c?

    • A) Сортирует строки в файле и удаляет дубликаты.
    • B) Сортирует строки, удаляет дубликаты и выводит кол-во вхождений для каждой строки.
    • C) Считает количество уникальных строк в отсортированном файле.
    • D) Удаляет все строки, кроме уникальных.
  • 48. Как вывести только третье поле из строк файла data.csv, где разделителем является запятая?

    • A) grep -f3 ',' data.csv
    • B) awk -f3 ',' data.csv
    • C) cut -d',' -f3 data.csv
    • D) sed 's/,/ /3' data.csv

🔴 Уровень 3: Эксперт

  • 49. Какая команда sed заменит первое вхождение "apple" на "orange" в каждой строке файла fruits.txt?

    • A) sed 's/apple/orange/g' fruits.txt
    • B) sed 's/apple/orange/' fruits.txt
    • C) sed 'r/apple/orange/' fruits.txt
    • D) sed '/apple/orange/' fruits.txt
  • 50. Какая команда awk напечатает второе поле каждой строки, если первое поле равно "user1"?

    • A) awk '$1 == "user1" {print $2}'
    • B) awk '{if $1 = "user1" print $2}'
    • C) awk 'print $2 where $1 == "user1"'
    • D) awk '/user1/ {print $2}'
  • 51. Что делает grep -E '^(root|admin)' /etc/passwd?

    • A) Ищет строки, которые содержат "root" или "admin" в любом месте.
    • B) Ищет строки, которые начинаются со слов "root" или "admin", используя расширенные регулярные выражения.
    • C) Ищет строки, которые заканчиваются на "root" или "admin".
    • D) Ищет файлы с именами root или admin в каталоге /etc/passwd.

Анкета: Перенаправления и пайпы

🟢 Уровень 1: Основы

  • 52. Что делает оператор > в команде ls > file.txt?

    • A) Добавляет вывод ls в конец file.txt.
    • B) Считывает ввод для ls из file.txt.
    • C) Перенаправляет стандартный вывод ls, перезаписывая file.txt.
    • D) Сравнивает вывод ls с содержимым file.txt.
  • 53. Что означает символ | (пайп) в команде cat file.txt | grep "word"?

    • A) Выполняет обе команды одновременно.
    • B) Передаёт стандартный вывод cat на стандартный ввод grep.
    • C) Выполняет вторую команду только если первая завершилась успешно.
    • D) Записывает вывод cat во временный файл и передаёт его grep.
  • 54. В чем разница между > и >>?

    • A) > работает с текстовыми файлами, >>с бинарными.
    • B) > перезаписывает файл, а >> добавляет данные в конец файла.
    • C) > перенаправляет стандартный вывод, >> — стандартную ошибку.
    • D) Разницы нет, это синонимы.

🟡 Уровень 2: Продвинутый пользователь

  • 55. Что делает конструкция 2> errors.log?

    • A) Перенаправляет стандартный вывод (дескриптор 2) в файл.
    • B) Перенаправляет стандартную ошибку (дескриптор 2) в файл.
    • C) Создаёт 2 копии файла errors.log.
    • D) Добавляет вывод второй запущенной команды в errors.log.
  • 56. Каково назначение команды tee в command | tee file.log?

    • A) Выводит результат command на экран и одновременно записывает его в file.log.
    • B) Записывает результат command только в file.log, подавляя вывод на экран.
    • C) Фильтрует вывод command, оставляя только строки, содержащие file.log.
    • D) Ставит выполнение command на паузу.
  • 57. Как перенаправить и стандартный вывод, и стандартную ошибку в один файл all.log?

    • A) command > all.log < all.log
    • B) command > all.log 2> all.log
    • C) command &> all.log (или command > all.log 2>&1)
    • D) command | all.log

🔴 Уровень 3: Эксперт

  • 58. Что такое "here document" (heredoc)?

    • A) Встроенный в команду файл документации.
    • B) Способ передать многострочный текст на стандартный ввод команды, используя <<.
    • C) Специальный файл в /dev, который дублирует свой ввод на вывод.
    • D) Скрипт, который документирует сам себя.
  • 59. Что делает конструкция diff <(sort file1) <(sort file2)?

    • A) Сортирует file1 и file2 и сохраняет их во временные файлы перед сравнением.
    • B) Сравнивает результат выполнения команд sort file1 и sort file2 без создания реальных файлов на диске.
    • C) Сравнивает файлы с именами <(sort file1) и <(sort file2).
    • D) Сравнивает file1 и file2, а затем сортирует результат.
  • 60. Что означает команда exec 3> output.log?

    • A) Выполняет команду 3 и перенаправляет её вывод в output.log.
    • B) Открывает файл output.log для записи под файловым дескриптором 3.
    • C) Запускает 3 копии процесса, пишущего в output.log.
    • D) Копирует содержимое дескриптора 3 в output.log.

Анкета: Архивация и резервное копирование (tar, gzip, rsync)

🟢 Уровень 1: Основы

  • 61. Какая команда создаст архив archive.tar из каталога mydir?

    • A) tar -xvf mydir archive.tar
    • B) tar -cvf archive.tar mydir
    • C) gzip mydir > archive.tar
    • D) archive mydir archive.tar
  • 62. Как извлечь файлы из архива archive.tar?

    • A) tar -cvf archive.tar
    • B) unzip archive.tar
    • C) tar -xvf archive.tar
    • D) untar archive.tar
  • 63. Что делает команда gzip file.txt?

    • A) Создаёт архив file.txt.zip.
    • B) Сжимает file.txt и заменяет его на file.txt.gz.
    • C) Показывает содержимое file.txt в сжатом виде.
    • D) Архивирует, но не сжимает file.txt.

🟡 Уровень 2: Продвинутый пользователь

  • 64. Какая команда создаст сжатый gzip-архив files.tar.gz из каталога files?

    • A) tar -cjf files.tar.gz files
    • B) tar -xzf files.tar.gz files
    • C) tar -c files | gzip > files.tar.gz
    • D) gzip -c files > files.tar.gz
  • 65. Для чего в основном используется утилита rsync?

    • A) Для удалённого выполнения скриптов.
    • B) Для асинхронного копирования файлов.
    • C) Для эффективной синхронизации файлов и каталогов, в том числе по сети.
    • D) Для сжатия файлов в реальном времени.
  • 66. Какой ключ tar используется для сжатия с помощью bzip2?

    • A) -z
    • B) -b
    • C) -j
    • D) -Z

🔴 Уровень 3: Эксперт

  • 67. Что означает флаг --delete в rsync?

    • A) Удалять исходные файлы после успешного копирования.
    • B) Удалять файлы в месте назначения, которых нет в источнике.
    • C) Спрашивать подтверждение перед удалением каждого файла.
    • D) Не копировать файлы, помеченные для удаления.
  • 68. Какой командой НЕ получится создать полную копию содержимого диска /dev/sda в файл image.img?

    • A) rsync /dev/sda image.img
    • B) cp /dev/sda image.img
    • C) dd if=/dev/sda of=image.img
    • D) cat /dev/sda > image.img
  • 69. Какая команда позволит заархивировать удалённый каталог /var/log с хоста server1 в локальный файл logs.tar?

    • A) tar -cvf logs.tar server1:/var/log
    • B) rsync -avz server1:/var/log logs.tar
    • C) ssh server1 "tar -c /var/log" > logs.tar
    • D) scp server1:/var/log/*.log logs.tar

Анкета: Компиляция и сборка программ из исходников

🟡 Уровень 2: Продвинутый пользователь

  • 70. Каков типичный порядок команд для сборки программы из исходного кода?

    • A) make -> make install -> ./configure
    • B) make install -> ./configure -> make
    • C) ./configure -> make -> make install
    • D) compile -> build -> install
  • 71. Каково назначение скрипта configure?

    • A) Он компилирует исходный код.
    • B) Он устанавливает скомпилированную программу в систему.
    • C) Он проверяет наличие необходимых библиотек и создаёт Makefile.
    • D) Он скачивает исходный код программы.
  • 72. Что делает команда make install?

    • A) Скачивает и устанавливает все зависимости.
    • B) Компилирует программу.
    • C) Копирует скомпилированные файлы в системные каталоги (например, /usr/local/bin).
    • D) Удаляет временные файлы, созданные во время компиляции.

🔴 Уровень 3: Эксперт

  • 73. Для чего используется команда ldd?

    • A) Для загрузки драйверов устройств.
    • B) Для отображения списка динамических библиотек, от которых зависит исполняемый файл.
    • C) Для линковки объектных файлов в исполняемый файл.
    • D) Для вывода логов системного загрузчика.
  • 74. В чем разница между статической и динамической линковкой?

    • A) Статическая линковка происходит при загрузке системы, динамическая — во время работы программы.
    • B) При статической линковке код библиотек включается в исполняемый файл; при динамической — загружается во время выполнения.
    • C) Статическая линковка используется для скриптов, динамическая — для бинарных файлов.
    • D) Статическая линковка быстрее, но создаёт большие файлы; динамическая — медленнее, но файлы меньше.
  • 75. Какова роль pkg-config в процессе сборки?

    • A) Управляет пакетами программ в системе, аналог apt или yum.
    • B) Предоставляет компилятору пути к заголовочным файлам и библиотекам установленных пакетов.
    • C) Настраивает конфигурацию ядра для сборки модулей.
    • D) Проверяет целостность скачанных пакетов с исходным кодом.

⚙️ Процессы и выполнение

Анкета: Работа с процессами

🟢 Уровень 1: Основы

  • 76. Какая команда выводит список запущенных в данный момент процессов?

    • A) list proc
    • B) ps
    • C) proc
    • D) top
  • 77. Что такое PID?

    • A) Process Priority (Приоритет процесса).
    • B) Parent ID (ID родительского процесса).
    • C) Process ID (Уникальный идентификатор процесса).
    • D) Program ID (Идентификатор программы).
  • 78. Какая команда используется для завершения процесса с известным PID?

    • A) stop
    • B) exit
    • C) end
    • D) kill

🟡 Уровень 2: Продвинутый пользователь

  • 79. Что делает команда kill -9 1234?

    • A) Вежливо просит процесс с PID 1234 завершиться.
    • B) Принудительно и немедленно завершает процесс с PID 1234 (сигнал SIGKILL).
    • C) Приостанавливает процесс с PID 1234.
    • D) Отправляет процессу с PID 1234 девятое по счёту уведомление.
  • 80. Какая команда покажет дерево процессов (родительские и дочерние)?

    • A) ps -tree
    • B) pstree (или ps axjf)
    • C) ls -proc
    • D) top -tree
  • 81. Что означает "зомби-процесс" (zombie process)?

    • A) Процесс, который потребляет 100% CPU.
    • B) Процесс, который завершился, но его запись в таблице процессов всё ещё существует, так как родительский процесс не считал его код завершения.
    • C) Процесс, который невозможно завершить командой kill.
    • D) Скрытый процесс, работающий в фоновом режиме.

🔴 Уровень 3: Эксперт

  • 82. Чем отличается "демон" (daemon) от обычного процесса?

    • A) Демон всегда запускается от имени root.
    • B) Демон — это процесс, работающий в фоновом режиме без привязки к терминалу, обычно для выполнения служебных задач.
    • C) Демон нельзя завершить командой kill.
    • D) Демон не имеет PID.
  • 83. Для чего используется команда pgrep?

    • A) Для поиска PID процесса по его имени или другим атрибутам.
    • B) Для приостановки всех процессов, принадлежащих группе.
    • C) Для графического отображения дерева процессов.
    • D) Для изменения приоритета процесса.
  • 84. Что такое PPID?

    • A) Primary Process ID (PID основного процесса).
    • B) Process Priority ID (ID приоритета процесса).
    • C) Parent Process ID (PID родительского процесса).
    • D) Process Path ID (ID пути к исполняемому файлу процесса).

Анкета: Сигналы и взаимодействие процессов

🟡 Уровень 2: Продвинутый пользователь

  • 85. Какой сигнал обычно отправляется процессу при нажатии Ctrl+C в терминале?

    • A) SIGKILL
    • B) SIGTERM
    • C) SIGHUP
    • D) SIGINT
  • 86. В чем разница между сигналами SIGTERM и SIGKILL?

    • A) SIGTERM — это запрос на завершение, который процесс может проигнорировать; SIGKILL — принудительное завершение, которое нельзя перехватить.
    • B) SIGKILL завершает процесс, а SIGTERM — только приостанавливает.
    • C) SIGTERM используется для системных служб, а SIGKILL — для пользовательских приложений.
    • D) Разницы нет, это синонимы.
  • 87. Какой сигнал традиционно используется для того, чтобы демон перечитал свой конфигурационный файл?

    • A) SIGSTOP
    • B) SIGCONT
    • C) SIGHUP
    • D) SIGUSR1

🔴 Уровень 3: Эксперт

  • 88. Для чего предназначена команда killall?

    • A) Для завершения всех процессов в системе.
    • B) Для отправки сигнала всем процессам с указанным именем.
    • C) Для отправки сигнала всем дочерним процессам текущей оболочки.
    • D) Для завершения всех процессов, запущенных текущим пользователем.
  • 89. Что произойдёт с дочерними процессами, если их родительский процесс завершается?

    • A) Они немедленно завершаются вместе с родителем.
    • B) Они становятся "осиротевшими" и "усыновляются" процессом init (PID 1) или его аналогом.
    • C) Они становятся зомби-процессами.
    • D) Они продолжают работать, но больше не могут создавать свои дочерние процессы.
  • 90. Можно ли перехватить или проигнорировать сигнал SIGKILL?

    • A) Да, с помощью системного вызова signal().
    • B) Да, если процесс имеет права root.
    • C) Нет, этот сигнал обрабатывается непосредственно ядром и не может быть перехвачен процессом.
    • D) Да, но только если процесс запущен с опцией --ignore-kill.

Анкета: Сессии, терминалы, pty

🟡 Уровень 2: Продвинутый пользователь

  • 91. Для чего используется команда nohup?

    • A) Для запуска команды с повышенным приоритетом.
    • B) Для запуска команды, которая продолжит выполняться даже после закрытия терминала.
    • C) Для запуска команды без вывода в консоль.
    • D) Для запрета команде использовать сеть.
  • 92. Что такое screen или tmux?

    • A) Утилиты для записи видео с экрана.
    • B) Утилиты для удалённого управления рабочим столом.
    • C) Терминальные мультиплексоры, позволяющие управлять несколькими сессиями терминала в одном окне.
    • D) Драйверы для виртуальных дисплеев.
  • 93. Что представляет собой файл в /dev/pts/ (например, /dev/pts/0)?

    • A) Файл, представляющий псевдотерминал, связанный с сессией SSH или эмулятором терминала.
    • B) Файл конфигурации для последовательного порта (COM-порта).
    • C) Физический порт на материнской плате.
    • D) Драйвер для сенсорного экрана.

🔴 Уровень 3: Эксперт

  • 94. В чём разница между сессией (session) и группой процессов (process group)?

    • A) Сессия — это набор групп процессов, обычно связанных с одним терминалом.
    • B) Сессия — это синоним группы процессов.
    • C) Сессия относится к пользователю, а группа процессов — к программам.
    • D) В сессии может быть только один процесс, в группе — много.
  • 95. Что такое управляющий терминал (controlling terminal) процесса?

    • A) Терминал, на котором отображается вывод процесса.
    • B) Терминал, с которого процесс был запущен и который может отправлять ему сигналы (например, Ctrl+C).
    • C) Терминал, который имеет права на управление этим процессом.
    • D) Главный терминал системы (/dev/tty1).
  • 96. Для чего нужен disown в bash?

    • A) Чтобы передать владение процессом другому пользователю.
    • B) Чтобы отвязать запущенный в фоне процесс от текущей сессии shell, предотвращая его завершение при выходе.
    • C) Чтобы запретить процессу доступ к файловой системе.
    • D) Чтобы удалить процесс из списка jobs.

Анкета: Переменные окружения и shell

🟢 Уровень 1: Основы

  • 97. Какая команда выводит значение переменной окружения HOME?

    • A) print $HOME
    • B) var HOME
    • C) show $HOME
    • D) echo $HOME
  • 98. Каково назначение переменной PATH?

    • A) Она указывает путь к домашнему каталогу пользователя.
    • B) Она содержит список каталогов, в которых оболочка ищет исполняемые файлы.
    • C) Она хранит путь к текущему рабочему каталогу.
    • D) Она определяет путь для сохранения временных файлов.
  • 99. Как установить переменную окружения MYVAR со значением hello для текущей сессии и дочерних процессов?

    • A) set MYVAR=hello
    • B) let MYVAR="hello"
    • C) export MYVAR="hello"
    • D) env MYVAR="hello"

🟡 Уровень 2: Продвинутый пользователь

  • 100. В чем разница между VAR=value и export VAR=value в bash?

    • A) export делает переменную доступной только для чтения.
    • B) VAR=value создаёт локальную переменную оболочки; export делает её переменной окружения, видимой в дочерних процессах.
    • C) export работает только для системных переменных.
    • D) Разницы нет, export — это устаревший синтаксис.
  • 101. Какой файл обычно используется для установки переменных окружения для всех пользователей при входе в систему?

    • A) ~/.bashrc
    • B) /etc/profile
    • C) ~/.profile
    • D) /etc/environment
  • 102. Что такое PS1?

    • A) Переменная, определяющая основной системный прокси.
    • B) Переменная, управляющая внешним видом приглашения командной строки.
    • C) Переменная, указывающая на первый скрипт, запускаемый при старте сессии.
    • D) Переменная, хранящая PID текущего процесса оболочки.

🔴 Уровень 3: Эксперт

  • 103. Какая команда выполнит my_command, временно установив для неё переменную DEBUG в true?

    • A) export DEBUG=true && my_command
    • B) DEBUG=true my_command
    • C) my_command --env DEBUG=true
    • D) setenv DEBUG=true; my_command
  • 104. Для чего используется команда env?

    • A) Для редактирования переменных окружения.
    • B) Для вывода списка текущих переменных окружения или запуска команды в изменённом окружении.
    • C) Для загрузки переменных окружения из файла.
    • D) Для шифрования переменных окружения.
  • 105. Что произойдет, если выполнить (cd /tmp && ls)?

    • A) Текущий каталог навсегда изменится на /tmp.
    • B) Команды будут выполнены в подоболочке (subshell), поэтому текущий каталог родительской оболочки не изменится.
    • C) Команда ls будет выполнена в /tmp, но сначала будет запрошено подтверждение.
    • D) Произойдет ошибка синтаксиса.

Анкета: Bash-скрипты

🟡 Уровень 2: Продвинутый пользователь

  • 106. Что такое "shebang" (шибанг) в скрипте?

    • A) Комментарий с именем автора скрипта.
    • B) Последняя строка скрипта, возвращающая код завершения.
    • C) Первая строка вида #!/bin/bash, указывающая интерпретатор для выполнения скрипта.
    • D) Специальная переменная для хранения аргументов командной строки.
  • 107. Как в bash-скрипте получить первый аргумент, переданный ему при запуске?

    • A) $ARG1
    • B) $1
    • C) %1
    • D) $$1
  • 108. Что проверяет условная конструкция if [ -f "file.txt" ]?

    • A) Что file.txt существует и является каталогом.
    • B) Что file.txt существует и является обычным файлом.
    • C) Что file.txt имеет права на исполнение.
    • D) Что file.txt не пустой.

🔴 Уровень 3: Эксперт

  • 109. Каково назначение set -e в начале bash-скрипта?

    • A) Включить режим отладки, печатая каждую команду перед выполнением.
    • B) Немедленно завершить выполнение скрипта, если какая-либо команда завершится с ненулевым кодом выхода.
    • C) Запретить использование незаданных переменных.
    • D) Включить расширенный синтаксис (extended mode).
  • 110. Что хранится в переменной $??

    • A) PID текущего скрипта.
    • B) Количество аргументов, переданных скрипту.
    • C) Код возврата (exit code) последней выполненной команды.
    • D) Имя самого скрипта.
  • 111. В чём разница между одинарными (') и двойными (") кавычками в bash?

    • A) Одинарные кавычки используются для строк, двойные — для чисел.
    • B) В двойных кавычках происходит подстановка переменных и команд, а в одинарных — нет, текст воспринимается буквально.
    • C) Двойные кавычки быстрее обрабатываются.
    • D) Разницы нет, они взаимозаменяемы.

🧠 Управление системой

Анкета: Управление службами и демонами

🟢 Уровень 1: Основы

  • 112. Вы изменили unit-файл службы nginx, добавив ограничение по памяти. Какая последовательность команд корректно применит это изменение?

    • A) systemctl restart nginx
    • B) systemctl daemon-reload, а затем systemctl restart nginx
    • C) systemctl reload nginx
    • D) systemctl daemon-reload
  • 113. Вы хотите, чтобы служба bluetooth больше не запускалась автоматически при загрузке системы. Какая команда это сделает, не останавливая службу прямо сейчас?

    • A) systemctl stop bluetooth
    • B) systemctl mask bluetooth
    • C) systemctl disable bluetooth
    • D) systemctl remove bluetooth
  • 114. Как сделать так, чтобы служба apache2 автоматически запускалась при загрузке системы?

    • A) systemctl boot apache2
    • B) systemctl enable apache2
    • C) systemctl startup apache2
    • D) systemctl on apache2

🟡 Уровень 2: Продвинутый пользователь

  • 115. Что такое "юнит" (unit) в systemd?

    • A) Это любой ресурс, которым управляет systemd (служба, точка монтирования, устройство и т.д.), описанный в конфигурационном файле.
    • B) Это исполняемый файл службы.
    • C) Это скрипт инициализации в стиле SysVinit.
    • D) Это модуль ядра, необходимый для работы systemd.
  • 116. Где обычно располагаются пользовательские unit-файлы systemd?

    • A) /lib/systemd/system/
    • B) /usr/share/systemd/
    • C) /etc/systemd/system/
    • D) /var/run/systemd/
  • 117. Какая команда перезагрузит конфигурацию службы, не перезапуская её полностью (если служба это поддерживает)?

    • A) systemctl restart
    • B) systemctl reload
    • C) systemctl update
    • D) systemctl refresh

🔴 Уровень 3: Эксперт

  • 118. Для чего нужен systemd-analyze?

    • A) Для анализа логов, собранных systemd.
    • B) Для анализа производительности и времени загрузки системы и отдельных служб.
    • C) Для проверки синтаксиса unit-файлов.
    • D) Для анализа зависимостей между юнитами.
  • 119. Что такое "сокет-активация" (socket activation) в systemd?

    • A) Способ активировать сетевой интерфейс при запуске службы.
    • B) systemd слушает сетевой сокет от имени службы и запускает её только при поступлении первого соединения.
    • C) Процесс привязки службы к конкретному IP-адресу и порту.
    • D) Механизм защиты сокетов с помощью файрвола.
  • 120. Как посмотреть все зависимости для юнита multi-user.target?

    • A) systemctl show-deps multi-user.target
    • B) systemctl depends multi-user.target
    • C) systemctl list-dependencies multi-user.target
    • D) systemctl graph multi-user.target

Анкета: Запуск и завершение системы (systemd, targets, runlevels)

🟡 Уровень 2: Продвинутый пользователь

  • 121. Что пришло на смену "уровням запуска" (runlevels) из SysVinit в systemd?

    • A) Цели (targets)
    • B) Службы (services)
    • C) Режимы (modes)
    • D) Состояния (states)
  • 122. Какая цель (target) в systemd соответствует многопользовательскому режиму с поддержкой сети, но без графического интерфейса?

    • A) graphical.target
    • B) network.target
    • C) multi-user.target
    • D) rescue.target
  • 123. Как переключиться в режим восстановления (rescue mode) в работающей системе?

    • A) systemctl rescue
    • B) systemctl isolate emergency.target
    • C) reboot --rescue
    • D) telinit 9

🔴 Уровень 3: Эксперт

  • 124. Каков первый процесс, который ядро запускает в пользовательском пространстве в большинстве современных дистрибутивов Linux?

    • A) /sbin/init
    • B) /bin/bash
    • C) /etc/rc.local
    • D) /usr/bin/kdm
  • 125. В чем основная идея параллельного запуска служб в systemd в отличие от последовательного в SysVinit?

    • A) systemd запускает службы на разных ядрах процессора.
    • B) systemd анализирует зависимости и запускает службы, не зависящие друг от друга, одновременно, ускоряя загрузку.
    • C) systemd создаёт копии служб и запускает их параллельно.
    • D) systemd использует предзагрузку служб в память.
  • 126. Как изменить цель по умолчанию, в которую загружается система?

    • A) Отредактировать файл /etc/inittab.
    • B) Использовать команду systemctl set-default graphical.target.
    • C) Использовать команду telinit 5.
    • D) Создать файл /etc/systemd/default.target.

Анкета: Планировщики задач (cron, at, systemd timers)

🟢 Уровень 1: Основы

  • 127. Какая команда используется для редактирования crontab текущего пользователя?

    • A) cron -e
    • B) crontab -edit
    • C) crontab -e
    • D) edit cron
  • 128. Что означает запись * * * * * command в crontab?

    • A) Выполнять command один раз в час.
    • B) Выполнять command каждую минуту.
    • C) Выполнять command один раз в день.
    • D) Выполнять command при каждой загрузке.
  • 129. Для чего предназначена команда at?

    • A) Для выполнения команды в определённое время в будущем, но только один раз.
    • B) Для измерения времени выполнения другой команды.
    • C) Для повторения команды через заданные интервалы.
    • D) Для просмотра запланированных задач.

🟡 Уровень 2: Продвинутый пользователь

  • 130. Как будет интерпретироваться запись 0 3 * * 1 /scripts/backup.sh?

    • A) Каждый понедельник в 3:00 ночи.
    • B) Первого числа каждого месяца в 3:00 ночи.
    • C) Каждый день в 1:03 ночи.
    • D) Каждый понедельник в полночь и в 3:00.
  • 131. В чем преимущество использования systemd timers по сравнению с cron?

    • A) Они имеют более простой синтаксис.
    • B) Они интегрированы с systemd, что даёт лучшее логирование и управление зависимостями.
    • C) Они могут запускать задачи чаще, чем раз в минуту.
    • D) Они не требуют прав root.
  • 132. Где находится системный crontab и файлы для cron.d?

    • A) /var/cron
    • B) /etc/crontab и /etc/cron.d/
    • C) /usr/lib/cron/
    • D) ~/.crontab

🔴 Уровень 3: Эксперт

  • 133. Что такое anacron?

    • A) Альтернативный, более современный планировщик, заменяющий cron.
    • B) Планировщик для запуска задач с заданным интервалом.
    • C) Утилита для анализа и отладки crontab.
    • D) Сетевая версия cron.
  • 134. Какая команда НЕ запустит скрипт /opt/cleanup.sh сегодня в 17:00?

    • A) at 17:00 < /opt/cleanup.sh
    • B) echo "/opt/cleanup.sh" | at 17:00
    • C) at 17:00 /opt/cleanup.sh
    • D) at 17:00 -f /opt/cleanup.sh
  • 135. Что определяет опция OnCalendar= в unit-файле systemd.timer?

    • A) Календарь, который нужно использовать для определения даты.
    • B) Время и дату для запуска задачи, аналогично синтаксису crontab.
    • C) Дату, когда таймер должен быть автоматически удалён.
    • D) Путь к файлу календаря с событиями.

Анкета: Системные журналы и логи

🟡 Уровень 2: Продвинутый пользователь

  • 136. Какая команда используется для просмотра логов, собранных systemd-journald?

    • A) cat /var/log/syslog
    • B) logread
    • C) journalctl
    • D) dmesg
  • 137. Как с помощью journalctl посмотреть логи только от службы sshd?

    • A) journalctl | grep sshd
    • B) journalctl -u sshd
    • C) journalctl --service=sshd
    • D) journalctl /units/sshd
  • 138. Для чего используется logrotate?

    • A) Для просмотра логов в реальном времени.
    • B) Для автоматического управления файлами логов: их ротации, сжатия и удаления.
    • C) Для отправки логов на удалённый сервер.
    • D) Для шифрования лог-файлов.

🔴 Уровень 3: Эксперт

  • 139. Что делает команда journalctl -f?

    • A) Форматирует вывод лога в удобном виде.
    • B) Показывает только фатальные (fatal) ошибки.
    • C) Показывает последние записи в журнале и продолжает выводить новые по мере их поступления (аналог tail -f).
    • D) Ищет (find) записи по шаблону.
  • 140. В чем ключевое отличие journald от традиционного syslog?

    • A) journald хранит логи в структурированном бинарном формате, а не в простом тексте.
    • B) journald не может отправлять логи по сети.
    • C) journald хранит логи только в оперативной памяти.
    • D) syslog может собирать логи только от ядра.
  • 141. Какая команда выведет сообщения ядра, записанные с момента последней загрузки?

    • A) dmesg
    • B) journalctl --system
    • C) journalctl -p err
    • D) cat /var/log/kernel.log

Анкета: Безопасность и аудит

🟡 Уровень 2: Продвинутый пользователь

  • 142. Какой файл содержит информацию о том, кто, когда и откуда входил в систему?

    • A) /var/log/auth.log (или /var/log/secure)
    • B) /etc/passwd
    • C) ~/.bash_history
    • D) /var/log/messages
  • 143. Для чего используется команда last?

    • A) Для просмотра последнего запущенного процесса.
    • B) Для отображения истории последних входов пользователей в систему.
    • C) Для просмотра последней строки в лог-файле.
    • D) Для поиска последнего измененного файла.
  • 144. Где по умолчанию логируются попытки использования sudo?

    • A) В ~/.sudo_history.
    • B) В /var/log/sudo.log.
    • C) В системном журнале, обычно в /var/log/auth.log или в журнале systemd.
    • D) Логи sudo не ведутся по умолчанию.

🔴 Уровень 3: Эксперт

  • 145. Что такое fail2ban?

    • A) Утилита для поиска вирусов.
    • B) Файрвол, блокирующий все входящие соединения.
    • C) Служба, которая анализирует логи и блокирует IP-адреса, с которых производятся подозрительные действия (например, подбор пароля).
    • D) Система двухфакторной аутентификации.
  • 146. Для чего предназначена подсистема auditd?

    • A) Для аудита производительности системы.
    • B) Для записи подробной информации о событиях, связанных с безопасностью, на уровне системных вызовов.
    • C) Для проверки целостности системных файлов.
    • D) Для управления пользователями и группами.
  • 147. Что делает команда ausearch -k mykey?

    • A) Ищет в системе ключ шифрования с именем mykey.
    • B) Ищет в логах аудита события, помеченные ключом mykey в правилах auditd.
    • C) Ищет SSH-ключ mykey.
    • D) Ищет в логах все события, связанные с нажатием клавиш.

Анкета: Управление доступом (sudo, su, capabilities)

🟡 Уровень 2: Продвинутый пользователь

  • 148. Какая команда позволяет выполнить apt update от имени root, не вводя пароль суперпользователя?

    • A) su -c "apt update"
    • B) root apt update
    • C) sudo apt update
    • D) runas root apt update
  • 149. В чем разница между su и su -?

    • A) su - требует пароль, а su нет.
    • B) su просто меняет пользователя, а su - запускает полноценную сессию входа (login shell) с окружением целевого пользователя.
    • C) su переключает на root, а su - — на любого другого пользователя.
    • D) su - — это устаревшая форма команды su.
  • 150. Какой файл используется для настройки прав sudo?

    • A) /etc/sudo.conf
    • B) /etc/sudoers
    • C) /etc/passwd
    • D) ~/.sudoers

🔴 Уровень 3: Эксперт

  • 151. Что такое "Linux capabilities"?

    • A) Список возможностей, которые поддерживает текущая версия ядра.
    • B) Механизм, который делит всемогущество root на отдельные привилегии, которые можно назначать процессам.
    • C) Утилита для измерения производительности системы.
    • D) Набор плагинов для расширения функциональности sudo.
  • 152. Как разрешить пользователю user1 выполнять команду /sbin/reboot без пароля через sudo?

    • A) Добавить в /etc/sudoers строку: user1 ALL=(ALL) /sbin/reboot
    • B) Добавить в /etc/sudoers строку: user1 ALL=(ALL) NOPASSWD: /sbin/reboot
    • C) Добавить user1 в группу reboot.
    • D) Установить SUID-бит на /sbin/reboot и сделать user1 его владельцем.
  • 153. Зачем использовать visudo для редактирования /etc/sudoers?

    • A) visudo предоставляет графический интерфейс.
    • B) visudo автоматически делает резервные копии.
    • C) visudo проверяет синтаксис файла перед сохранением, чтобы не заблокировать систему.
    • D) visudo позволяет редактировать файл без прав root.

🌐 Сеть и взаимодействие

Анкета: Настройка физических интерфейсов

🟡 Уровень 2: Продвинутый пользователь

  • 154. Какая команда используется для просмотра всех IP-адресов на всех интерфейсах?

    • A) ifconfig
    • B) netstat -i
    • C) ip addr show
    • D) ipconfig
  • 155. Как временно добавить IP-адрес 192.168.1.100/24 на интерфейс eth0?

    • A) ifconfig eth0 add 192.168.1.100/24
    • B) ip addr add 192.168.1.100/24 dev eth0
    • C) net link add 192.168.1.100/24 dev eth0
    • D) echo "192.168.1.100/24" > /sys/class/net/eth0/address
  • 156. Какая команда покажет текущую таблицу маршрутизации?

    • A) ip route
    • B) ip forward list
    • C) netstat -i
    • D) ip gateway list

🔴 Уровень 3: Эксперт

  • 157. Как изменить MTU (Maximum Transmission Unit) для интерфейса eth1 на 1492?

    • A) ip link set mtu 1492 dev eth1
    • B) ip addr change mtu 1492 dev eth1
    • C) ipconfig eth1 mtu 1492
    • D) ethtool -S eth1 mtu 1492
  • 158. Что такое default route (маршрут по умолчанию)?

    • A) Маршрут к локальной сети.
    • B) Маршрут, который используется для пакетов, если для их адреса назначения нет более конкретного маршрута в таблице.
    • C) Маршрут к DNS-серверу.
    • D) Первый маршрут, добавляемый в таблицу при загрузке.
  • 159. Какая команда удалит маршрут по умолчанию через шлюз 192.168.1.1?

    • A) ip route flush 192.168.1.1
    • B) ip route del default
    • C) ip route del 0/0 via 192.168.1.1
    • D) networkctl remove-gateway 192.168.1.1

Анкета: Настройка виртуальных интерфейсов

🔴 Уровень 3: Эксперт

  • 160. Что такое bridge (сетевой мост) в Linux?

    • A) Виртуальный сетевой интерфейс для соединения двух хостов.
    • B) Виртуальный коммутатор (switch), который объединяет несколько сетевых интерфейсов в один сегмент L2.
    • C) Устройство для преобразования IP-адресов (NAT).
    • D) Тип VPN-туннеля.
  • 161. Для чего используется bonding (агрегация каналов)?

    • A) Для объединения нескольких физических интерфейсов в один логический для повышения отказоустойчивости или пропускной способности.
    • B) Для привязки IP-адреса к MAC-адресу.
    • C) Для создания виртуальных копий одного физического интерфейса.
    • D) Для разделения одного физического интерфейса на несколько виртуальных (VLAN).
  • 162. Что такое пара интерфейсов veth (Virtual Ethernet)?

    • A) Два виртуальных интерфейса, подключенных друг к другу как патч-корд, используемые для соединения сетевых пространств имён (network namespaces).
    • B) Интерфейс для связи виртуальной машины с хостом.
    • C) Виртуальный интерфейс, который отбрасывает весь трафик.
    • D) Интерфейс для создания VLAN.

Анкета: Управление маршрутизацией

🔴 Уровень 3: Эксперт

  • 163. Что такое policy-based routing?

    • A) Маршрутизация на основе политик безопасности файрвола.
    • B) Маршрутизация пакетов на основе правил, которые могут учитывать не только адрес назначения, но и адрес источника, порт и т.д.
    • C) Динамическая маршрутизация с использованием протоколов OSPF или BGP.
    • D) Маршрутизация, которая меняется в зависимости от времени суток.
  • 164. Какая команда используется для управления правилами в policy-based routing?

    • A) ip route
    • B) ip rule
    • C) ip policy
    • D) iptables -t route
  • 165. Что делает команда ip route add 10.0.0.0/8 via 192.168.0.1?

    • A) Добавляет маршрут по умолчанию.
    • B) Добавляет маршрут для сети 10.0.0.0/8 через шлюз 192.168.0.1.
    • C) Добавляет IP-адрес 10.0.0.1 на интерфейс со шлюзом 192.168.0.1.
    • D) Запрещает весь трафик в сеть 10.0.0.0/8.

Анкета: Firewall и фильтрация трафика

🟡 Уровень 2: Продвинутый пользователь

  • 166. Каковы три основные предопределенные цепочки в таблице filter iptables?

    • A) ACCEPT, DROP, REJECT
    • B) RAW, MANGLE, NAT
    • C) INPUT, OUTPUT, FORWARD
    • D) PRE_ROUTING, POST_ROUTING, ROUTING
  • 167. В чем разница между DROP и REJECT в iptables?

    • A) DROP тихо отбрасывает пакет, REJECT отбрасывает и отправляет в ответ сообщение об ошибке (например, port unreachable).
    • B) DROP блокирует, а REJECT перенаправляет трафик.
    • C) DROP используется для TCP, REJECT — для UDP.
    • D) Разницы нет, это синонимы.
  • 168. В какой таблице iptables фрагментированные пакеты обрабатываются отдельными фрагментами?

    • A) mangle.
    • B) raw.
    • C) nat.
    • D) fragment.

🔴 Уровень 3: Эксперт

  • 169. Что такое nftables?

    • A) Новая система фильтрации пакетов, пришедшая на смену iptables.
    • B) Таблица в iptables для NAT.
    • C) Утилита для создания сетевых туннелей.
    • D) База данных для хранения правил файрвола.
  • 170. Какая цепочка iptables обрабатывает пакеты, которые предназначены для самого хоста?

    • A) PREROUTING
    • B) TARGET
    • C) INCOMING
    • D) INPUT
  • 171. Для чего используется conntrack?

    • A) Для отслеживания маршрутов к другим хостам.
    • B) Для отслеживания состояния сетевых соединений.
    • C) Для подсчета количества пакетов, проходящих через интерфейс.
    • D) Для отслеживания физических подключений к коммутатору.

Анкета: Диагностика сети

🟡 Уровень 2: Продвинутый пользователь

  • 172. Какая команда используется для проверки доступности хоста по IP-адресу или имени, отправляя ICMP-запросы?

    • A) netstat
    • B) iperf
    • C) ping
    • D) ss
  • 173. Для чего нужна утилита traceroute?

    • A) Для отслеживания маршрута, который проходят пакеты до указанного хоста.
    • B) Для отслеживания решений таблицы маршрутизации на локальном хосте.
    • C) Для сканирования открытых портов на хосте.
    • D) Для просмотра таблицы маршрутизации.
  • 174. Какая утилита представляет альтернативу netstat для просмотра сетевых сокетов?

    • A) socket
    • B) ip socket
    • C) nstat
    • D) ss

🔴 Уровень 3: Эксперт

  • 175. Каково назначение tcpdump?

    • A) Для сброса (dump) TCP-соединений.
    • B) Для анализа сетевого трафика.
    • C) Для создания TCP-туннелей.
    • D) Для вывода статистики по TCP-протоколу.
  • 176. Что показывает команда ss -ltn?

    • A) Список всех счётчиков переданных байтов в виде дерева, прошедших через netfilter.
    • B) Все TCP-сокеты в состоянии LISTEN, с отображением числовых портов и без разрешения имён.
    • C) Все UDP-сокеты.
    • D) Все сетевые lightweight-туннели, созданные с момента запуска команды.
  • 177. Как с помощью nmap проверить, открыт ли TCP-порт 80 на хосте example.com?

    • A) nmap -p 80 example.com
    • B) nmap example.com:80
    • C) ss example.com | grep 80
    • D) netstat --port 80 --host example.com

💾 Хранилище и файловые системы

Анкета: Работа с файловыми системами

🟡 Уровень 2: Продвинутый пользователь

  • 178. Какая команда используется для монтирования файловой системы?

    • A) attach
    • B) connect
    • C) mount
    • D) fsck
  • 179. Каково назначение файла /etc/fstab?

    • A) Он содержит таблицу статических маршрутов, которые применяются автоматически при загрузке.
    • B) Он содержит информацию о точках монтирования, которые монтируются автоматически при загрузке.
    • C) Это скрипт для проверки файловых систем, который запускается автоматически при загрузке.
    • D) Он содержит список всех файловых систем в системе, примонтированных в текущий момент.
  • 180. Что делает команда umount /mnt/data?

    • A) Форматирует устройство, смонтированное в /mnt/data.
    • B) Отмонтирует файловую систему от каталога /mnt/data.
    • C) Монтирует файловую систему в каталог /mnt/data.
    • D) Проверяет файловую систему на ошибки.

🔴 Уровень 3: Эксперт

  • 181. Что такое "ленивое" отмонтирование (umount -l)?

    • A) Отмонтирование происходит с задержкой в несколько секунд.
    • B) Файловая система немедленно отсоединяется от иерархии, но остаётся занятой, пока все процессы, использующие её, не завершатся.
    • C) Отмонтируется только часть файловой системы.
    • D) Команда возвращает управление сразу, а отмонтирование происходит в фоновом режиме.
  • 182. Как перемонтировать файловую систему в режим "только для чтения" (read-only)?

    • A) mount -o remount,ro /path
    • B) remount ro /path
    • C) mount --change --readonly /path
    • D) fsck -r /path
  • 183. Что такое bind mount?

    • A) Монтирование файловой системы, защищенной паролем.
    • B) Монтирование одного каталога в другой каталог.
    • C) Монтирование файловой системы DNS.
    • D) Монтирование зашифрованного раздела.

Анкета: Работа с памятью и свопом

🟡 Уровень 2: Продвинутый пользователь

  • 184. Какая команда показывает информацию об использовании оперативной памяти и swap-раздела?

    • A) mem
    • B) top
    • C) free
    • D) vmstat
  • 185. Что такое swap (своп) в Linux?

    • A) Область на диске, используемая как виртуальное расширение RAM.
    • B) Быстрый кэш для часто используемых файлов.
    • C) Временный раздел для хранения загрузочных файлов.
    • D) Процесс обмена данными между ядром и пользовательским пространством.
  • 186. Как включить swap-файл /swapfile?

    • A) swapon /swapfile
    • B) mount /swapfile
    • C) swap enable /swapfile
    • D) mkswap /swapfile && activate

🔴 Уровень 3: Эксперт

  • 187. Что показывает столбец buff/cache в выводе команды free?

    • A) Память, используемую ядром для собственных нужд.
    • B) Память, которая может быть освобождена при необходимости.
    • C) Память, которая зарезервирована, но еще не используется.
    • D) Память, выделенную под swap.
  • 188. Для чего используется параметр ядра swappiness?

    • A) Он определяет, насколько "охотно" ядро будет сбрасывать данные из оперативной памяти в swap.
    • B) Он задает максимальный размер swap-раздела.
    • C) Он включает или выключает использование swap.
    • D) Он задает приоритет использования разных swap-разделов.
  • 189. Что такое OOM Killer?

    • A) Утилита для очистки оперативной памяти.
    • B) Механизм ядра, который при нехватке памяти принудительно завершает процессы.
    • C) Вирус, который потребляет всю доступную память.
    • D) Утилита, которая позволяет отправлять сигналы всем процессам с заданным потреблением RAM.

📈 Наблюдение и оптимизация

Анкета: Мониторинг ресурсов

🟢 Уровень 1: Основы

  • 190. Какая интерактивная утилита в реальном времени показывает список процессов, отсортированных по использованию CPU?

    • A) ps
    • B) free
    • C) top
    • D) df
  • 191. Какая команда показывает использование дискового пространства файловыми системами?

    • A) du
    • B) df
    • C) ls -l
    • D) free
  • 192. Для чего нужна команда du -sh /path/to/dir?

    • A) Чтобы показать количество файлов в каталоге.
    • B) Чтобы показать права доступа к каталогу.
    • C) Чтобы показать суммарный размер каталога /path/to/dir.
    • D) Чтобы показать свободное место в разделе, где находится каталог.

🟡 Уровень 2: Продвинутый пользователь

  • 193. Что такое iostat?

    • A) Утилита для мониторинга статистики ввода-вывода для дисковых устройств.
    • B) Утилита для мониторинга состояния сетевых интерфейсов.
    • C) Утилита для чтения статистики из inode файловой системы.
    • D) Утилита для измерения производительности CPU.
  • 194. Какая утилита предоставляет подробную информацию о статистике виртуальной памяти, процессов, прерываний, дискового ввода-вывода и CPU?

    • A) free
    • B) vmstat
    • C) meminfo
    • D) cpustat
  • 195. Как в Linux в реальном времени отследить процессы, которые используют больше всего CPU и при этом активно пишут на диск?

    • A) top -o %CPU | grep -i disk
    • B) iotop -o
    • C) vmstat -c
    • D) ps aux --sort=-%mem -i 1

🔴 Уровень 3: Эксперт

  • 196. Что означает wa в выводе top или vmstat?

    • A) Процент времени, в течение которого CPU простаивал, ожидая завершения операций ввода-вывода.
    • B) Процент времени, потраченный на ожидание ответа от сети.
    • C) Количество процессов, ожидающих своей очереди на выполнение.
    • D) Процент времени, потраченный на исполнение workaround для этого CPU.
  • 197. Для чего используется sar?

    • A) Для сбора, отчета и сохранения информации о системной активности (CPU, память, I/O) за длительный период.
    • B) Для отправки отчетов о сбоях системы разработчикам.
    • C) Для архивации системных логов.
    • D) Для поиска файлов в системе по их активности.
  • 198. Что делает команда watch df -h?

    • A) Делает снимок вывода df -h и сохраняет его в файл.
    • B) Запускает df -h каждые 2 секунды и выводит результат на экран.
    • C) Отслеживает изменения в файловой системе и запускает df -h при каждом изменении.
    • D) Запускает df -h в фоновом режиме.

Анкета: Производительность

🟡 Уровень 2: Продвинутый пользователь

  • 199. Что такое Load Average?

    • A) Средняя загрузка процессора в процентах за последние 1, 5 и 15 минут.
    • B) Среднее количество процессов в очереди на выполнение (или ожидающих I/O) за 1, 5 и 15 минут.
    • C) Средняя температура процессора.
    • D) Среднее использование оперативной памяти.
  • 200. Для чего используются команды nice и renice?

    • A) Для установки "хорошего" имени для процесса.
    • B) Для изменения приоритета планировщика для новых или уже запущенных процессов.
    • C) Для проверки состояния процесса.
    • D) Для ограничения ресурсов, которые может использовать процесс.
  • 201. Что означает, если Load Average на 4-ядерном процессоре равен 4.0?

    • A) Система перегружена, не хватает ресурсов.
    • B) Система простаивает.
    • C) Все ядра процессора полностью утилизированы, но очереди на выполнение нет.
    • D) Два из четырех ядер полностью загружены.

🔴 Уровень 3: Эксперт

  • 202. Какой инструмент позволяет трассировать системные вызовы и сигналы, получаемые процессом?

    • A) gdb
    • B) ltrace
    • C) strace
    • D) perf
  • 203. Для чего используется команда lsof?

    • A) Для вывода списка открытых файлов, включая сетевые сокеты, каналы и т.д.
    • B) Для поиска файлов по их содержимому.
    • C) Для блокировки файла от изменений.
    • D) Для вывода списка "мягких" (символических) ссылок.
  • 204. Что делает команда dmesg?

    • A) Выводит сообщения из буфера сообщений ядра.
    • B) Показывает сообщения, отправленные другим пользователям.
    • C) Выводит отладочную информацию из запущенных приложений.
    • D) Форматирует и выводит системный журнал.

🧩 Изоляция и управление ресурсами

Анкета: Namespaces и cgroups

🔴 Уровень 3: Эксперт

  • 205. Что такое namespaces (пространства имён) в ядре Linux?

    • A) Механизм для организации файлов в каталоги.
    • B) Механизм изоляции системных ресурсов.
    • C) Система именования переменных в ядре.
    • D) Способ управления доступом пользователей к файлам.
  • 206. Какой механизм ядра Linux используется для ограничения потребления CPU, памяти и I/O группой процессов?

    • A) namespaces
    • B) cgroups
    • C) seccomp
    • D) ulimit
  • 207. Какие два механизма ядра лежат в основе большинства современных систем контейнеризации, таких как Docker?

    • A) iptables и SELinux
    • B) namespaces и cgroups
    • C) KVM и QEMU
    • D) systemd и udev

Анкета: Контейнеризация

🟡 Уровень 2: Продвинутый пользователь

  • 208. Что такое Docker?

    • A) Система виртуализации, эмулирующая аппаратное обеспечение.
    • B) Платформа для разработки, доставки и запуска приложений в контейнерах.
    • C) Система управления конфигурациями, аналог Ansible.
    • D) Менеджер пакетов для Linux.
  • 209. Какой компонент системы является общим для всех контейнеров, запущенных на одном хосте, но уникальным для каждой виртуальной машины?

    • A) Файловая система корневого раздела.
    • B) Пространство имён процессов.
    • C) Ядро операционной системы.
    • D) Набор системных библиотек.
  • 210. Что такое "образ" (image) в Docker?

    • A) Запущенный экземпляр контейнера.
    • B) Снимок состояния дистрибутива базовой операционной системы сразу после установки.
    • C) Шаблон только для чтения с инструкциями для создания контейнера.
    • D) Файл резервной копии контейнера.

🔴 Уровень 3: Эксперт

  • 211. Что такое Podman и чем он отличается от Docker?

    • A) Podman — это графический интерфейс для Docker.
    • B) Podman — это инструмент для управления контейнерами и не требует прав root.
    • C) Podman — это форк Docker, разработанный Microsoft.
    • D) Podman используется для оркестрации контейнеров, а Docker — для их создания.
  • 212. Что такое Dockerfile?

    • A) Внутренний файл журнала работающего контейнера Docker.
    • B) Текстовый файл с инструкциями для сборки образа Docker.
    • C) Конфигурационный файл для демона Docker.
    • D) Скрипт для запуска контейнера.
  • 213. Какая команда покажет список всех запущенных контейнеров Docker?

    • A) docker list
    • B) docker ps
    • C) docker images
    • D) docker containers

Анкета: Виртуализация

🔴 Уровень 3: Эксперт

  • 214. Что такое KVM (Kernel-based Virtual Machine)?

    • A) Полноценный гипервизор, работающий как отдельная ОС.
    • B) Механизм в ядре Linux, который превращает его в гипервизор 1-го типа, используя аппаратную виртуализацию.
    • C) Эмулятор аппаратного обеспечения, работающий в пользовательском пространстве.
    • D) Технология контейнеризации.
  • 215. Какую роль выполняет QEMU в связке с KVM?

    • A) QEMU управляет сетевыми подключениями для KVM.
    • B) QEMU эмулирует аппаратное обеспечение.
    • C) QEMU — это графический интерфейс для KVM.
    • D) QEMU не используется вместе с KVM.
  • 216. Каково основное назначение libvirt в экосистеме Linux?

    • A) Это набор специализированных драйверов ядра (virtio-net, virtio-scsi), обеспечивающих высокопроизводительное взаимодействие между гостевой ОС и гипервизором.
    • B) Это унифицированный API и набор утилит (virsh, virt-manager), предоставляющий стабильный интерфейс для управления различными гипервизорами, такими как KVM, Xen и LXC.
    • C) Это сетевой протокол и демон (libvirtd), предназначенный для безопасной "живой" миграции виртуальных машин между физическими хостами без прерывания работы.
    • D) Это распределённая файловая система (virtfs), которая позволяет прозрачно монтировать каталоги хоста внутрь гостевой ОС для общего доступа к файлам.

Анкета: Ограничение и распределение ресурсов

🔴 Уровень 3: Эксперт

  • 217. Как с помощью systemd ограничить использование памяти для службы myservice.service до 500 МБ?

    • A) Добавить в unit-файл опцию MemoryLimit=500M.
    • B) Добавить в unit-файл опцию MemoryMax=500M.
    • C) Добавить в unit-файл опцию MemoryAccounting=true и MemoryHigh=500M.
    • D) Добавить в unit-файл опцию LimitMEM=500M.
  • 218. Что делает команда ulimit -n 1024?

    • A) Максимальный размер создаваемых файлов устанавливается в 1024 блока по 512 байт.
    • B) Максимальное количество процессов, которое может создать пользователь, ограничивается 1024.
    • C) Максимальное количество открытых файловых дескрипторов ограничивается 1024.
    • D) Максимальный размер резидентной памяти, которую может занять процесс, устанавливается в 1024 килобайт.
  • 219. Какой механизм используется для управления ресурсами, выделенными для службы systemd или контейнера docker?

    • A) nice
    • B) ulimit
    • C) cgroups
    • D) namespaces

🔐 Ответы

  1. C
  2. B
  3. D
  4. B
  5. C
  6. B
  7. D
  8. A
  9. C
  10. A
  11. C
  12. B
  13. A
  14. B
  15. B
  16. C
  17. B
  18. C
  19. C
  20. B
  21. D
  22. B
  23. B
  24. B
  25. B
  26. D
  27. A
  28. B
  29. B
  30. A
  31. B
  32. B
  33. A
  34. B
  35. B
  36. A
  37. C
  38. B
  39. C
  40. B
  41. D
  42. B
  43. B
  44. B
  45. A
  46. B
  47. B
  48. C
  49. B
  50. A
  51. B
  52. C
  53. B
  54. B
  55. B
  56. A
  57. C
  58. B
  59. B
  60. B
  61. B
  62. C
  63. B
  64. B
  65. C
  66. C
  67. B
  68. A
  69. C
  70. C
  71. C
  72. C
  73. B
  74. B
  75. B
  76. B
  77. C
  78. D
  79. B
  80. B
  81. B
  82. B
  83. A
  84. C
  85. D
  86. A
  87. C
  88. B
  89. B
  90. C
  91. B
  92. C
  93. A
  94. A
  95. B
  96. B
  97. D
  98. B
  99. C
  100. B
  101. B
  102. B
  103. B
  104. B
  105. B
  106. C
  107. B
  108. B
  109. B
  110. C
  111. B
  112. B
  113. C
  114. B
  115. A
  116. C
  117. B
  118. B
  119. B
  120. C
  121. A
  122. C
  123. A
  124. A
  125. B
  126. B
  127. C
  128. B
  129. A
  130. A
  131. B
  132. B
  133. B
  134. B
  135. B
  136. C
  137. B
  138. B
  139. C
  140. A
  141. A
  142. A
  143. B
  144. C
  145. C
  146. B
  147. B
  148. C
  149. B
  150. B
  151. B
  152. B
  153. C
  154. C
  155. B
  156. A
  157. A
  158. B
  159. B
  160. B
  161. A
  162. A
  163. B
  164. B
  165. B
  166. C
  167. A
  168. B
  169. A
  170. D
  171. B
  172. C
  173. A
  174. D
  175. B
  176. B
  177. A
  178. C
  179. B
  180. B
  181. B
  182. A
  183. B
  184. C
  185. A
  186. A
  187. B
  188. A
  189. B
  190. C
  191. B
  192. C
  193. A
  194. B
  195. B
  196. A
  197. A
  198. B
  199. B
  200. B
  201. C
  202. C
  203. A
  204. A
  205. B
  206. B
  207. B
  208. B
  209. B
  210. C
  211. B
  212. B
  213. B
  214. B
  215. B
  216. B
  217. A
  218. C
  219. C