Как запустить скрипт при запуске компьютера с Ubuntu?


9

Я хочу запустить /home/myuser/go.py

Как сделать так, чтобы он работал в фоновом режиме , каждый раз, когда загружается моя Linux-машина?


Общее, что происходит при запуске здесь: superuser.com/questions/151330/ubuntu-control-the-init-startup ... это может быть "достаточно близко", чтобы рассмотреть дубликат.
Квик-кихот

Ответы:


8

Простой способ

Вы можете добавить этот скрипт в /etc/rc.localфайл (перед exitстрокой), например

/home/myuser/go.py &

Где &в конце будет запускаться скрипт в фоновом режиме.

Убедитесь, что у вас есть флаги выполнения. Чтобы проверить это, просто запустите из терминала:

sh /etc/rc.local

2

Вы можете поместить скрипт в /etc/init.d/каталог (например:) /etc/init.d/go.pyдля всего, что вы хотите запустить во время загрузки.

http://www.debian-administration.org/article/Making_scripts_run_at_boot_time_with_Debian


7
Я предпочитаю, так /etc/rc.localкак вам не нужно менять ссылки на уровне выполнения.
Дирк Эддельбюттель

@DirkEddel - Я согласен с этим!
BloodPhilia

Возможно, вам следует добавить это как отдельный ответ, чтобы за него проголосовали?
Стив Гомер

2

Есть много способов сделать это (в зависимости от того, какой дистрибутив Linux вы используете, предлагаются разные инструменты).

Самый простой способ - просто добавить скрипт в /etc/init.d и затем запустить команду

chmod +x go.py
update-rc.d go.py defaults

Если вы уже настроили службу, вы также можете сделать это с помощью команды chkconfig (то есть, если команда доступна).

В этом случае эта команда должна работать:

chkconfig --level 35 go.py on

Посмотрите НА ЭТОМ ВЕБ-САЙТЕ, а именно в разделах «Использование chkconfig для запуска демонов на каждом уровне выполнения» и «Использование sysv-rc-conf для запуска демонов на каждом уровне выполнения».


0

У cron есть специальная @rebootопция, которая учитывает это. Красиво и просто.

Обычная задача cron может быть:

* * * * * /path/to/app

@rebootЗадача хрон может быть:

@reboot /path/to/app
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.