Mikhail
спасибо
Anonymous
Юрий
создаешь шаблон сервиса /etc/systemd/system/prog_cli@.service
Юрий
в нём следишь за процессом [Service] Type=forking Restart=always RestartSec=20 TimeoutSec=20
Юрий
в случае падения система все сама опредилит и поднимет, с заданными тайм аутами
Юрий
ну тут есть хитрость
Юрий
tmux и нет проблем :)
Mikalai
tmux и нет проблем :)
а tmux сам тоже поднимет ? 😁
Юрий
конечно, командная строка что-то типа ExecStart=/usr/bin/tmux new -ds cli "exec ./prog_cli >outpu.txt"
Юрий
чтобы вывод не потерять
Mikalai
так он и не теряется
Mikalai
он летит в journalctl
Mikalai
а там его можно удобно фильтровать
Mikalai
лепота
Юрий
тоже вариант :) но у меня был случай, что мне нужен был ввод в большей степени чем вывод
Юрий
создал шаблон, сделал [Service] Type=forking Restart=always RestartSec=20 TimeoutSec=20 User=%i WorkingDirectory=/home/%i Environment=LD_LIBRARY_PATH=/home/%i ExecStart=/home/cs.run.sh ExecStop=/home/cs.quit.sh
Mikalai
ну если вам нужен ввод в демоне, то это мазохизм еще покруче..
Юрий
а потом насоздавал сервисов вида cs@serv1.service cs@serv2.service cs@serv3.service
Mikalai
к слову, если нужен ввод, то systemd позволяет его сделать например через fifo
Quet
он летит в journalctl
плюс всегда можно сделать StandardOutput в сислог который уже запишет в файл (если журнал самого systemd не подходит)
Юрий
пример ? в 2 часа ночи я не в состоянии спорить %)
Mikalai
пример ? в 2 часа ночи я не в состоянии спорить %)
https://www.freedesktop.org/software/systemd/man/systemd.exec.html#StandardInput=
Юрий
хм. в свое время я это как-то упустил из виду
Юрий
прикольно че
Юрий
ну я так понял все согласны, что такую задачку лучше решать через systemd ? :)
Mikalai
часов через 9-10 проснутся хейтеры systemd )
Kirill
которые на каникулах, да?)
Заур
Кто-нибудь знает какие-нибудь группы мобильных разработчиков ?
Заур
В телеграме
Mikhail
часов через 9-10 проснутся хейтеры systemd )
Тоже не понимаю злости к Лёне. Написать сервис быстрее, чем тупить в портянку баш кода
Anonymous
Тоже не понимаю злости к Лёне. Написать сервис быстрее, чем тупить в портянку баш кода
А ты представь, что после того, как ты мучительно писал портянку на баше из тысячи строк кода, появляется лёня со systemd и предлагает решение из пяти строк. Боль и разочарование за потраченное время превращяется в ненависть к systemd.
Anonymous
Думаю да, такие хейтеры были во все времена существования человечества.
praut
и только сейчас наконец можно нанять киллера для лёни за битки
Mikhail
и только сейчас наконец можно нанять киллера для лёни за битки
это все равно не отменит того факта, что systemd неизбежно продолжит развиваться
Vladimir
это все равно не отменит того факта, что systemd неизбежно продолжит развиваться
Системд станет лучше когда Поттеринг прекратит ею заниматься
Vladimir
например какие вещи?
Пре рестарт чек
Vladimir
Нельзя отменить стоп
Mikhail
и повернуть время назад
Mikhail
не совсем понятно зачем такое может понадобиться
Vladimir
Режет логи из стаута по 2кб
Vladimir
не совсем понятно зачем такое может понадобиться
Обновил демон, но не хочешь чтоб он остановился если конфиг не совместим
Mikhail
Обновил демон, но не хочешь чтоб он остановился если конфиг не совместим
думаю забота о совместимости конфига на демоне должна быть?
Vladimir
Невозможно сделать upgrade и reload одновременно
Vladimir
У системд только execreload
Vladimir
Поэтому в каком нибудь nginx ты либо получаешь graceful upgrade всегда с затормаживанием соединений, либо релоад, но без возможности апгрейда демона
Vladimir
думаю забота о совместимости конфига на демоне должна быть?
Ещё задачка - сделай беспроблемное поднятие чего нибудь типа iscsi на базе системд.
Vladimir
Когда у тебя сложная зависимость типа модуль, демон, софт и только потом монтировать что то там
Vladimir
я не devops 😊
Так вопрос в сути
Vladimir
У системд довольно плохо с разрешением зависимостей
Vladimir
Ей от сложных кейсов бошку сносит и у тебя например перестает система выключаться так как в дедлок входит
Vladimir
Решается через задницу такое, через такую задницу что 1000 строк на баше вспомнить начинаешь с улыбкой.
Mikhail
Кто нибудь может поделиться книгой по Go Самерфильда?
🏳️ Phil
Посмотреть в медиа групаы?
Mikhail
В сети есть, но она какая то не очень качеством
Mikhail
Посмотреть в медиа групаы?
Уже посмотреть. Такая же ,как и в инете
Vladimir
Vladimir
Нормальный
Vladimir
Стартует да, ок
Serhii
В общем спрошу здесь, есть типы uint8 uint64 и пр. Как мне калькулятором посчитать какое максимальное число мы там можем хранить? Хочу раз и навсегда разобраться с этими байтами битами ) имееется ввиду, может есть какой нибудь хороший мануал на эту тему , потому что я ничего не смог найти на эту тему
Serhii
Буду очень признателен
Dmitrii
(2^x)-1
Mikalai
но если не unsigned, то x - 1
Serhii
Получается 2^8 = 255
Dmitrii
да
Serhii
По такому же принципу если в бд поле int8 оно тоже сможет хранить 255 ? Или там другое? К примеру на постгрес, там есть smallint 2 байта и оно может принимать максимальное 32767 Чет не вьеду никак