Поскольку выполнение самостоятельно ./ launch_ssh_daemon.sh
делает то, что вы хотите сделать ... Я предполагаю, что:
/etc/init.d/
Мои рекомендации, чтобы выяснить, что не так и сделать ваш скрипт чище:
Прежде всего, sudo
без аргументов бессмысленно в сценарии инициализации, обычно выполняемом init.d
. Вы уже root
в этой среде (удалите sudo
)
Я никогда не видел стартовых скриптов с окончанием .sh
. Я не уверен, что это может привести к проблемам (переименуйте свой скрипт)
Хотя вы выполнили update-rc.d
, убедитесь, что есть символическая ссылка на ваш скрипт в формате /etc/rc?.d/S ??
, первый ?
уровень выполнения, а второй ??
порядковый номер (01-99) в котором выполняются скрипты. Эти ссылки используются /etc/init.d/rc
после выбора уровня выполнения для выполнения всех необходимых сценариев инициализации для этого уровня выполнения. Если ваш скрипт нигде не связан, он никогда не будет выполнен при запуске.
... и неплохо было бы где-нибудь записать вывод, чтобы быть уверенным, что происходит при его выполнении.
Выяснена причина моей проблемы, как описано в следующей базе знаний.https://www.suse.com/de-de/support/kb/doc/?id=7022671
Systemd уничтожает каждый user.slice через 90 секунд. (Этот тайм-аут нельзя изменить. )Похоже, systemd просто не предназначен для автоматической остановки экземпляров SAP HANA без изменения pam.d. Описанное там решение кажется немного «хакерским», но оно работает.
cp /etc/pam.d/system-auth /etc/pam.d/custom-su-session
vim /etc/pam.d/custom-su-session
Вставьте следующую строку перед «session option pam _systemd.so»
session [success=1 new_authtok_reqd=ok default=ignore] pam_listfile.so item=user sense=allow file=/etc/custom-su-session
Эта строка пропускает создание user.slice при выполнении команды su и указании пользователя в файле /etc/custom -su -session
vim /etc/pam.d/su
Заменить session include system-auth
сsession include custom-su-session