Мне нужно запустить скрипт bash при загрузке, который открывает пару терминалов и запускает какую-то команду в каждом терминале.
test.sh (мой файл bash)
#!/bin/bash
sleep 10
gnome-terminal --tab-with-profile="Default" -e 'bash -c '\''export TAB=1; mkdir /home/naman/Desktop/test_folder'\'
- Я создал
testjob.conf
внутри/etc/init/
:
testjob.conf (файл конфигурации Upstart)
description "A test job file for experimenting with Upstart"
author "Naman Kumar"
start on runlevel [2345]
exec echo Test Job ran at `date` >> /var/log/testjob.log
exec bash /home/naman/Desktop/test.sh
Теперь проблема в том, что testjob.conf
не может запустить файл test.sh
при загрузке (или запускает его, но не создает папку test_folder
). Если я удалю последнюю строку из testjob.conf : exec bash /home/naman/Desktop/test.sh
, все будет работать, и когда я сделаю cat /var/log/testjob.log
, я получу правильный вывод, но если последняя строка есть, cat /var/log/testjob.log
не даст последний результат.
- Я также пытался обновить
/etc/rc.local
с помощью:bash /home/naman/Desktop/test.sh
, но это также не запускает сценарийtest.sh
при загрузке.
Я не уверен, запускают ли они сценарии, но не могут создать папку или даже не могут запустить сценарий при загрузке.
Примечание. Я не могу использовать System -> Preferences -> Startup Applications
, потому что у меня нет монитора, поэтому настольное приложение не запускается. (Я запускаю его на одноплатном компьютере без монитора).
Кто-нибудь знает, в чем здесь проблема и почему скрипт test.sh не работает должным образом при загрузке?
Заранее спасибо.
Наман
gnome-terminal
, десктопное приложение, не говоря уже во время sysvinit??? - person Cong Ma   schedule 16.09.2015