Пытаетесь запустить мой скрипт только во время загрузки, а не при перезагрузке? - PullRequest
1 голос
/ 12 января 2010

Не следует выполнять следующую команду myScript только на уровне выполнения 2. Я заметил, что она выполняется и при перезагрузке. Я хотел запустить его только и только при запуске.

update-rc.d myScript start 01 2 . stop 01 0 1 6 .

Ответы [ 3 ]

1 голос
/ 15 января 2010

Это верно. Вам нужно проверить первый аргумент (start, stop и т. Д.), Переданный в ваш скрипт, чтобы решить, что происходит. Это объясняется в Руководстве по политике Debian '9.3.2 Написание сценариев'.

Или же вы можете запустить свой скрипт, просто поместив его в файл /etc/init.d/rc.local или не включив в свой файл update-rc.d уровни остановки.

0 голосов
/ 12 января 2010

Чем отличаются запуск и перезагрузка? Если машина с двойной загрузкой, вы можете перезагрузиться из linux, но затем после этого загрузиться в Windows в течение некоторого времени, скажем, час, прежде чем снова перезагрузить и загрузить linux. Как это отличается от простого выключения машины на час? Вы не сможете обнаружить или предсказать во время выключения, что произойдет после перезагрузки.

Я думаю, что вы действительно хотите проверить, когда ваша машина запускается с загрузкой Linux, ваш скрипт должен проверить, сколько времени прошло с того момента, когда машина была выключена в последний раз. Если это происходит в течение короткого периода времени, например, 5 минут, вы считаете это перезагрузкой. В противном случае вы считаете это стартапом.

0 голосов
/ 12 января 2010

Вы должны распознавать разные уровни выполнения внутри myScript и делать что-то другое в зависимости от случая. В уровне выполнения 6 вы должны написать файл, который будет обнаружен при следующем достижении уровня запуска 2. Однако вам может потребоваться пересмотреть ваш дизайн, поскольку это очень странное требование. Чего вам нужно достичь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...