Ищу способ запретить запуск/остановку сценария bash без использования systemctl

Чтобы установить libncurses5-dev, у вас должна быть следующая строка в вашемsources.list(из комментария):

deb http://deb.debian.org/debian/ stretch main

Выполнить:

# echo deb http://deb.debian.org/debian/ stretch main >> /etc/apt/sources.list
# apt update
# apt install libncurses5-dev 

0
22.04.2020, 20:11
1 ответ

В скрипте можно проверить, был ли он вызван SystemD и, например,. прервать с сообщением об ошибке, если нет, или вызвать systemctl.

Существует несколько способов определения родителя, например.:

  1. Очень просто, но не на 100 % :Проверить, равен ли PPID 1:

    grep -q '^PPid: *1$' /proc/$$/status
    
  2. systemctl status $$ >/dev/null 2>&1(код выхода равен 0 для процессов SystemD)
  3. Установите уникальную переменную среды в файле модуля SystemD и проверьте ее

    if [ 'yes' != "$STARTED_BY_SYSTEMD" ]; then...
    
0
19.03.2021, 02:26

Теги

Похожие вопросы