Скрип запускается при автозагрузке, но не работает // Wtf?
Есть у меня два скрипта . WebServices.sh(поднимает apache и mysql) и mount.sh(прикручивает папки виртуальной машины) , лежат они в /etc/init.d и я их вроде бы добавил в автозагрузку через update-rc.d , но вот они почему-то не работают при запуске .. проверяю командой service WebServices.sh status пишет вот это "Active: inactive (dead)" но "Loaded: loaded (/etc/init.d/WebSevices.sh)" . вообщем как это исправить ???? мне нужно чтобы два скрипта стартовали при запуске системы
NoName_0: вы какой-то ерундой страдаете. И apache2 и mysql имеют в своих пакетах скрипты как для запуска из /etc/init.d, так и через systemd.
А с "Active: inactive (dead)" я тоже столкнулся. Сделал вывод, что если сервис запущен не через systemd, то "status" будет inactive, даже если сервис запущен и работает.
Какие еще у вас скрипты? Если нужно просто что-то выполнить при загрузке, используете /etc/rc.local
Ульрих: rc.local очень давно не рекомендуемый к использованию колхоз. Если есть надобность в чем-то своем, то проще написать init-скрипт/systemd-юнит, благо скелы для них есть. Запустив что-то из rc.local вы его потом убивать будете киллом, ловить по всему коридору и все такое, а тут получите возможность штатно убить или перезапустить. Я потому и уточнил что еще нужно человеку запускать, с вероятностью 99.9% все уже придумано до него и надо просто посоветовать человеку что делать.
Lindon_cano: Ваш скрипт не соответствует стандарту systemd, статус не может быть отслежен. Скрипт выполнил свою работу и завершился, поэтому в service WebServices.sh status вам и говорится, что скрипт в данный момент уже не активен.
Lindon_cano: Юрий Чудновский: да куда мне бежать -то ?_)) проблему ведь нужно решать , а не избегать ... в общем .. все еще без особых продвижений .... Добавил я через systemctl мои скрипты в автозагрузку , и вот один скрипт стартует , а вот второй нет... первый просто запускает apache и mysql , он таки прекрасно пашет .. а вот другой скрипт маунтит расшареные папки vbox тут то как раз и вся загвостка , когда его запускаю ручками все норм , а вот запустится сам он не может .. видимо он слишком рано стартует , как сделать чтобы он запускался позже всех ?
NoName_0: очевидно, нужно указать триггер After и, пожалуй, BindsTo с нужными значениями, чтобы система ждала запуска указанного сервиса перед тем как стартовать ваш скрипт, и вызывала обработку остановки при остановке этого сервиса.
Lindon_cano: нет , мне нужно именно через скрип .. который каждый раз маунтит все что я подброшу в shared folders в vbox ... так -то он работает , а вот при старте системы сам запускаться не может , вернее он запускатеся , но видимо слишком рано и vbox не успевает... вот короче статься на хабре , по которой все делалось собственно https://habrahabr.ru/post/236573/ ... у автора , как я понял centos , у меня же debian 8
Юрий Чудновский: Lindon_cano: Дьявол , все Required-Start и Required-Stop у меня пустые , видимо , когда я переделывал скрипт под debian , удалил это ... вернул обратно туда " vboxadd-service vboxadd " и все заработало
Юрий Чудновский: чтение манов в свободное время не добавляет знаний, коллега, маны нужно читать только по мере необходимости. А вот Немет можно читать просто так, вместо художки.
Lindon_cano: Юрий Чудновский: А как узнать , что авторизация произведена? мне просто нужно запустить приложение сразу же после авторизации ... то бишь , какой процесс или сервис за это отвечает?
NoName_0: авторизация кого и где? Если нужно сразу после логина(по ssh или локально), то можно просто в ~/.bashrc прописать действие, например.
А, вообще, manpages.ubuntu.com/manpages/wily/man7/pam-script....
pam-script allows you to execute scripts during authorization
NoName_0: да еще раз «не за что» )) Заводить персональных учеников я зарекся 8 лет назад, когда очередной ученик выучился и упорхнул в неизвестные дали даже не сказав «спасибо» на прощание, а привычка помогать новичкам советами осталась, вот и отвечаю тут по мелочи на вопросы.