Запустить команду при загрузке с правами root

После выполнения шагов установки для установки RabbitVCS из PPA:

$ sudo add-apt-repository ppa:rabbitvcs/ppa
$ sudo apt-get update
$ sudo apt-get install rabbitvcs-nautilus3

# Optional
$ sudo apt-get install rabbitvcs-gedit
$ sudo apt-get install rabbitvcs-cli

Мне пришлось сделать следующее, поскольку элементы меню RabbitVCS не отображались в Nautilus:

Предоставлено: http://aruizca.com/how-to-integrate-rabbitvcs-with-nautilus-file-manager-in-ubuntu-14-04-trusty-tahr/

После при выполнении указанной команды видны записи меню.

9
задан 29 February 2012 в 16:25

1 ответ

Файл, который вы хотите, - /etc/rc.local. Этот скрипт будет запущен в конце или в конце процесса загрузки. Таким образом, все должно быть к этому времени.

Однако, как отметил @ bodhi.zazen, Upstart может быть лучшим вариантом для вас. Проверьте это.

Примечание 1: в 15.04 и более поздних версиях Ubuntu использует systemd, а не Upstart. Поэтому, если вы хотите воспользоваться сервисным подходом, см. Upstart

Примечание 1 : В 16.10 по умолчанию нет /etc/rc.local, но если вы создайте его и сделайте его исполняемым (sudo chmod u+x /etc/rc.local) он будет работать, потому что есть система ddd, чтобы вытащить ее, если она существует. Не забудьте поставить строку с exit 0 в конце файла, чтобы предотвратить сбой команд, вызывающих зависание всего процесса загрузки.

9
ответ дан 25 May 2018 в 15:51
  • 1
    Итак, я просто должен здесь поставить этот код? Пока что этот файл содержит только exit 0. И если я могу спросить, при загрузке, когда rc.local выполняется, готова ли файловая система, поэтому я могу написать журнал где-нибудь для этой команды, которую я хочу запустить? – lorenzo-s 18 December 2011 в 08:27
  • 2
    Звучит так, как будто вы пытаетесь запустить сценарий загрузки (init). Ubuntu использует выскочку. rc.local будет запускать команду или ряд команд при загрузке и может быть или не быть вашим лучшим вариантом. Что вы пытаетесь сделать точно? – Panther 18 December 2011 в 10:42
  • 3
    @ lorenzo-s: Смотрите мое редактирование. – Scott Severance 18 December 2011 в 10:52
  • 4
    Вы также можете найти этот ответ полезным: askubuntu.com/a/20347/3940 – Takkat 18 December 2011 в 14:31
  • 5
    Хорошо, я решил переместить my_script с /usr/local/bin на /usr/bin. Я также могу сохранить вход в систему /var/log с помощью my_script &>> /var/log/my_script. Большое спасибо. – lorenzo-s 18 December 2011 в 18:45

Другие вопросы по тегам:

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