Умный подход, представленный Камилом Мациоровски в этом ответе заключается в том, чтобы связать фоновое приложение с его процессом очистки просто я делаю их последовательными командами в одном контексте оболочки. «Простым» способом сделать это будет
nohup sh -c "; " &
, в котором вы асинхронно запускаете nohup
ed-оболочку, которая запускает основной процесс, а затем безоговорочно запускает процесс отчетности/очистки ()после завершения основного процесса (по какой-либо причине ). Более надежным решением было бы написать короткий скрипт :
.
#!/bin/sh if thenelse fi
или
#!/bin/sh case "$?" in ︙ esac
, а затем запустите скрипт сnohup foo.sh &
Если вас беспокоит только то, что приложение умирает из-за какой-то внутренней ошибки, это наверное лучшее решение. Если есть риск того, что какой-то другой процесс сойдет с ума и отправит куча летальных сигналов, то есть вероятность, что снаряд (, ожидающее завершения работы приложения, )также может сдуться, и, следовательно, не может начать процесс очистки. В этом случае вы можете рассмотреть ответ G -Man , что предполагает наличие процесса мониторинга, который отправляет сигнал 0 в приложение периодически. Если он получает сообщение об ошибке, что процесс больше не существует, затем он инициирует действие очистки.
Это ключи для CentOS 8.https://www.centos.org/keys/
Вам нужен официальный ключ.
pub 4096R/8483C65D 2019 -05 -03 CentOS (Официальный ключ подписи CentOS )Отпечаток ключа = 99DB 70FA E1D7 CE22 7FB6 4882 05B5 55B3 8483 C65D
Вы можете следовать формату того, что у вас уже есть выше для CentOS 7:
GPG key URL: http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-Official
GPG key ID: 8483C65D
GPG key Fingerprint: 99DB 70FA E1D7 CE22 7FB6 4882 05B5 55B3 8483 C65D