Комментарии 16
pgrep salt-minion| xargs kill -9
А как так вышло, что pgrep, xargs и kill есть в системе, а pkill — нет? ;)
Да, действительно, pkill будет универсальнее :)
Писал новость с недосыпа по горячим следам, а в обсуждении на гитхабе все тоже юзают pgrep…
Ирония в том, что pgrep и pkill утилиты из одного набора. И если нет одной, то нет и другой.
А вся эта копипаста каргокультовая — от нежелания to know thy enemy tools.
Сюда же cat file | grep, sudo su и прочие такие вывихи результаты спецолимпиады по скоростному набору в консоли ;)
Как вы понимаете, в такое время немножко не до красоты костыльного решения :)
Да, там в тикете есть абсолютный победитель ;)
https://github.com/saltstack/salt/issues/57057#issuecomment-623047850
Ваш вариант ещё норм! ))
Варианты как избежать в дальнейшем таких проблем?
Скажем так — я задумывался о том, что негоже светить мастер голой жопой в интернет еще в том году. Но все варианты его закрыть мне кажутся костыльными. Ну, там ipsec, firewall и прочее — это получается достаточно сложный процесс ввода нового миньона в строй…
И, да, у нас таких проблем нет — закрытый контур, все дела....
Я посмотрел сразу на salt-ssh, потому что я и так предпочитаю использовать ansible через ssh, — и там все не очень понятно и запутанно
прекрасно он работает. Докеры-шмокеры кидать на удаленные хосты — загляденье. Но, конечно, это не такая прямолинейная штука как ансиболь — не выполнение тасок по списку.
Похоже, salt-ssh и salt-run были не очень приоритетной разработкой
Да, такой хитрый костыль, чтобы не выходить за пределы экосистемы salt...
cat file | grep A
быстро превращается при нужде в cat file | less
или cat file | sed | grep A
. Превращать grep A file
во что‐то из списка — это как раз будет упражнение для спецолимпиады — сделать можно, но с первым вариантов выйдет быстрее. Особенно, если вы предварительно смотрите содержимое файла, в котором будете искать, с помощью просто cat file
, а не less
. Ещё иногда есть соображения вида «я часто ищу разные вещи в одном файле, тогда лучше иметь в истории то, что позволяет легче менять поисковый запрос».
pgrep C | xargs kill
вполне себе имеет смысл, если вы сначала хотите посмотреть, не прибьёте ли вы лишние процессы (pgrep C -a
), а только потом уже прибить — замена -a
в конце предыдущей команды на | xargs kill -9
у меня займёт примерно то же время, что и удаление -a
и замена pgrep
в начале на pkill
. Правда, я лично в этом случае всё же буду менять ps -C
на killall
(а потом ругаться, если чего‐то из этого нет и менять на pgrep -e
/pkill -e
), но эта «копипаста» вполне объяснима и часто имеет отношение не к «cargo cult», а к тому, что это не первая команда, которую вы набрали в консоли.
Или к тому, что обычно вы набираете в консоли именно так по описанным причинам, поэтому такой вид просто становится привычным.
Зачем это?
— первый — переустановить полностью систему
— второй — сделать verify если используется что-то на базе rpm-ostree
— третий — (недовариант) воспользоваться проверкой файлов всех пакетов в системе
Порядок удаления следующий:
systemctl stop salt-master
pgrep salt| xargs kill -9
rm -rf /var/tmp/salt-store /var/tmp/salt-minions /tmp/salt-store /tmp/salt-minions /usr/bin/salt-store
systemctl start salt-master
Само собой, обновите salt срочно.
Критическая уязвимость в Saltstack мастере (уже под атакой)