Обновить

Несколько "каверзных", вопросов для собеседования по Linuх, "подсказанных" практикой

Всем привет!

Наверное, мало кто любит проходить, или проводить собеседования, особенно второе, но, если приходится это делать, хочется что бы вопросы на нем были более “жизненными”, нежели “назовите все ключи команды ls” (сам использую 2-3, “в стрессе” вспомню еще 5-7) и, менее теоретическими, нежели “какими ключом шифруем а каким подписываем сообщение” (обычно эти операции скрыты за интерфейсом и сделать ошибку трудно)

Потому, хочу поделиться подходящими задачками, из своей практики:

Вопрос 1. Объясните вывод на экране, что будет, если повторить команду в третий раз, как избежать такого поведения?

# cp -r /etc /etc_copy
# du -hs /etc_copy
5.0M    /etc_copy

# cp -r /etc /etc_copy
# du -hs /etc_copy
10M     /etc_copy

Осознал этот забавный факт при очередной итерации развертывая kubernetes через kubespray 

Вопрос 2. Команде ping необходимы права для открытия raw socket , почему это не мешает ее использовать “обычным” пользователям?

С времен FreeBSD был уверен, что для этого используется setuid бит, но, оказалось, что в Linux не так:

student@debian:~$ ls -l $(which ping)
-rwxr-xr-x 1 root root 90568 Nov 27  2022 /usr/bin/ping

Обнаружил это, разбираясь, почему не работает модуль icmp в prometheus/blackbox_exporter , с тех пор стараюсь не забывать про POSIX capabilities  и cap_net_raw, в частности

Вопрос 3. Объясните, почему повторный запуск команды приводит к сообщению Permission denied?

debian# tcpdump -niany -w file.dmp not port 22
...
4 packets received by filter
0 packets dropped by kernel

debian# tcpdump -niany -w file.dmp not port 22
...
tcpdump: file.dmp: Permission denied

Расследование приведет к знакомству с AppArmor  - реализацией Linux Security Modules 

Вопрос 4. Объясните вывод на экране:

student@server:~$ su
Password:

server:/home/student# shutdown
bash: shutdown: command not found

Несколько раз встречал такую ошибку на занятиях , что позволяло еще раз рассказать про переменные окружения, команду “su -” и, что лучше вместо нее использовать sudo

Наверное, достаточно задачек из моего субъективного опыта, буду рад, интересным примерам из Вашего, в комментариях, Спасибо!

Теги:
Всего голосов 7: ↑6 и ↓1+5
Комментарии1

Путь к ИИ‑сингулярности

У нас было два репозитория неоттестированного вайб‑кода, семьдесят пять тяжеловесных SDD‑спецификаций, пять обмазанных смазкой харнессов, солонка, наполовину полная кастомных скиллов и забитых капслоком правил, с десяток дырявых MCP‑серверов, RAG‑база со свежевекторизованным Confluence, самодельная дощечка имаго‑кодинга и целая россыпь автономных агентов всех мастей, от безобидных автодополнялок до галлюцинирующих субагентов, ставящих пакеты со slopsquatting и втихаря сносящих боевые базы.

Не то чтобы все это было действительно нужно для поездки к ИИ‑сингулярности, но если уж начали участвовать в спуске с горы на велосипеде без седла, остановиться уже невозможно.

Единственное, что вызывало у меня настоящий животный страх, это передача ответственности за ревью самой модели. Тот самый момент, когда седьмой агент подтверждает галлюцинации шестого, потому что все тесты зеленые, и я знал, что рано или поздно мы перейдем на эту дрянь.

Нет ничего более беспомощного, безответственного и испорченного, чем IT‑команда, запустившая мультиагентный оркестр в режиме allow all.

Это критический (и слегка ехидный) обзор того, что произошло с разработкой последние пару лет.

Путь к ИИ‑сингулярности

Публикации