↑↑↓↓←→←→ⒷⒶ Войти !bnw Сегодня Клубы

Либо я тупой, либо что-то пошло не так. Делаю:

nohup myprog &
pid=$!
ps aux|fgrep myprog|fgrep $pid || exit 1

так вот, иногда этот самый exit 1 срабатывает.
как такое может быть? какие echo сделать чтобы диагностировать?

#Z3QTCI / @hirthwork / 3829 дней назад

галимый рейс, чо
#Z3QTCI/4WB / @muromec / 3829 дней назад
@muromec охуеть ты ответил на вопрос. да
#Z3QTCI/S1P / @hirthwork --> #Z3QTCI/4WB / 3829 дней назад
@muromec блядь, ты реально считаешь остальных такими же тупыми как и ты?
#Z3QTCI/KZQ / @hirthwork --> #Z3QTCI/FR0 / 3829 дней назад
Запросто: возможно, nohup делает fork, затем в новом процессе exec, а в старом exit, и у тебя гонка.
#Z3QTCI/KM2 / @l29ah / 3829 дней назад
@l29ah нохап делает форк, правда?
#Z3QTCI/CRA / @muromec --> #Z3QTCI/KM2 / 3829 дней назад
@l29ah 1. в переменную pid попадает валидный пид. 2. этот пид после срабатывания exit 1 продолжает висеть в списке процессов мой вопрос скорее о том, гарантируется ли, что ps обязан увидеть все процессы которым были назначены pidы до этого
#Z3QTCI/EL0 / @hirthwork --> #Z3QTCI/KM2 / 3829 дней назад
@muromec Не знаю.
#Z3QTCI/M57 / @l29ah --> #Z3QTCI/CRA / 3829 дней назад
@muromec нохап вешает обработчик sighup в котором делает нихуя
#Z3QTCI/Z6P / @hirthwork --> #Z3QTCI/CRA / 3829 дней назад
@hirthwork нет ты. так вообще пишут только пидарасы - у тебя всегда будет рейс. еще вставь туда sleep, чтобы в лучших традициях линукс-костылизма.
#Z3QTCI/0KD / @muromec --> #Z3QTCI/KZQ / 3829 дней назад
@l29ah если бы нохап делал форк, то откуда баш знает pid форка?
#Z3QTCI/Z31 / @muromec --> #Z3QTCI/M57 / 3829 дней назад
@muromec слушай, может ты по-хорошему съебёшь? не хочу никого на этом чудесном ресурсе банить
#Z3QTCI/GLA / @hirthwork --> #Z3QTCI/0KD / 3829 дней назад
@muromec В /0 нет такой информации.
#Z3QTCI/WA1 / @l29ah --> #Z3QTCI/Z31 / 3829 дней назад
@hirthwork кококо, скрипткиди-кокок-забаню!
#Z3QTCI/QSC / @muromec --> #Z3QTCI/GLA / 3829 дней назад
@muromec Мне тоже объясни, где тут гонка, если форка нет.
#Z3QTCI/F5P / @l29ah --> #Z3QTCI/0KD / 3829 дней назад
перепиши на systemd
#Z3QTCI/TGE / @anonymous / 3829 дней назад
@l29ah форк делает баш: 'nohup myprog &'
#Z3QTCI/XF4 / @muromec --> #Z3QTCI/F5P / 3829 дней назад
@anonymous леннарт перелогиньтесь
#Z3QTCI/2BG / @hirthwork --> #Z3QTCI/TGE / 3829 дней назад
@muromec Я говорю про форк в nohup. Где гонка-то?
#Z3QTCI/SO3 / @l29ah --> #Z3QTCI/XF4 / 3829 дней назад
@muromec и когда баш делает форк он получает пид возвращённый форком. и этот пид я кладу в переменную. какая гонка?
#Z3QTCI/33H / @hirthwork --> #Z3QTCI/XF4 / 3829 дней назад
@l29ah А, я понял, спасибо.
#Z3QTCI/NF6 / @l29ah --> #Z3QTCI/SO3 / 3829 дней назад
@hirthwork Баш не успевает экзекнуться в myprog.
#Z3QTCI/748 / @l29ah --> #Z3QTCI/33H / 3829 дней назад
@l29ah откуда он тогда pid берёт?
#Z3QTCI/ZKF / @hirthwork --> #Z3QTCI/748 / 3829 дней назад
@hirthwork От форка.
#Z3QTCI/D4P / @l29ah --> #Z3QTCI/ZKF / 3829 дней назад
@l29ah бля, а вот теперь и я понял. ок. спс
#Z3QTCI/UNS / @hirthwork --> #Z3QTCI/D4P / 3829 дней назад
пиздец, блядь. говно галимое. и как теперь жить? не хочу слипы
#Z3QTCI/5E0 / @hirthwork / 3829 дней назад
@hirthwork А нахуя тебе вообще это говно с ps?
#Z3QTCI/RL9 / @l29ah --> #Z3QTCI/5E0 / 3829 дней назад
@l29ah это init-скрипт для java-демона. мы уже годы с ним живём и я решил в кои-то веки убрать это spurious failures
#Z3QTCI/1H0 / @hirthwork --> #Z3QTCI/RL9 / 3829 дней назад
@hirthwork я тебе сразу написал - не надо писать такую хуйню. так делать нельзя, оно не работает, используй проверенные методы с супервайзерами, start-stop-daemon, пидами в /var и всем таким.
#Z3QTCI/3MZ / @muromec --> #Z3QTCI/5E0 / 3829 дней назад
@hirthwork Как это отвечает на мой вопрос?
#Z3QTCI/BZI / @l29ah --> #Z3QTCI/1H0 / 3829 дней назад
@l29ah а как ты иначе проверишь не сдохло ли джаваговно сразу после старта
#Z3QTCI/B87 / @hirthwork --> #Z3QTCI/BZI / 3829 дней назад
@muromec нет, надо чтобы на костылях, а то пацаны перестанут уважать
#Z3QTCI/8YE / @238328 --> #Z3QTCI/3MZ / 3829 дней назад
@238328 куркума, соси хуй.
#Z3QTCI/RCA / @muromec --> #Z3QTCI/8YE / 3829 дней назад
@hirthwork Проверю жив ли пид после определённого таймаута. Да, говно: если на твоей охуенной системе плодится по пятьдесят тыщ процессов в секунду, то ты соснёшь. Можно собрать прыщи с четырёхбайтовыми пидами, тогда будет чуть менее говно.
#Z3QTCI/H8P / @l29ah --> #Z3QTCI/B87 / 3829 дней назад
@hirthwork Ну и да, если ставить такую цель, то зачем &? Можно запустить в сабпроцессе с таймаутом снаружи.
#Z3QTCI/880 / @l29ah --> #Z3QTCI/B87 / 3829 дней назад
@l29ah а еще можно засунуть рейс в `while not ok`, и перед стартом килять старый процесс, да. костылей придумаем мы, чтобы не юзать ПТТРНГД
#Z3QTCI/J13 / @muromec --> #Z3QTCI/880 / 3829 дней назад
@muromec А как же работает костыльd?
#Z3QTCI/U4X / @l29ah --> #Z3QTCI/J13 / 3829 дней назад
Кстати, да, у start-stop-daemon есть опция -w.
#Z3QTCI/3VF / @l29ah / 3829 дней назад
@l29ah костыльд по-честному проверяет, забиндился ли процесс на тот адрес, который собственно должен слушать. ну еще SIGCHILD и какая-то магия с cgroups (я ее не знаю сам). собственно в общем случае все равно должен быть таймаут, потомушо у софтины есть время инициализации (прогрузки библиотек и конфигов, попытки забиндится на сокет, етц) в течении которого неизвестно, выйдет она или нет.
#Z3QTCI/BWV / @muromec --> #Z3QTCI/U4X / 3829 дней назад
@muromec Дваждую, ещё вочдогами и монитами.
#Z3QTCI/1X5 / @kb --> #Z3QTCI/3MZ / 3829 дней назад
уау, итт ленартохейтеры опять насосались хуйцов, почему я не удивлен?
#Z3QTCI/K80 / @krkm / 3828 дней назад
#Z3QTCI/FAG / @krkm --> #Z3QTCI/RCA / 3828 дней назад
@muromec джава-приложение не знает своего пида и не может записать его в /var/run
#Z3QTCI/TMM / @hirthwork --> #Z3QTCI/3MZ / 3828 дней назад
@hirthwork Путин запретил?
#Z3QTCI/NY2 / @l29ah --> #Z3QTCI/TMM / 3828 дней назад
@l29ah Гослинг
#Z3QTCI/7CX / @hirthwork --> #Z3QTCI/NY2 / 3828 дней назад
@hirthwork а, ну удобно.
#Z3QTCI/F5O / @muromec --> #Z3QTCI/TMM / 3828 дней назад
@muromec я передам это владимиру
#Z3QTCI/JRS / @238328 --> #Z3QTCI/RCA / 3828 дней назад
@238328 #АМОРАЛЬНО // лайк, если помнишь старые форсед-мемы
#Z3QTCI/WDW / @anonymous --> #Z3QTCI/JRS / 3828 дней назад
#Z3QTCI/NXH / @krkm --> #Z3QTCI/WDW / 3828 дней назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.