У меня есть файл .sh
в моем каталоге Downloads
. Я хочу запустить его с помощью сеанса tmux
, когда компьютер включен или после перезагрузки компьютера.
Я использую Ubuntu 12.04.4
, и когда компьютер включен, пользователь не входит в систему автоматически - требуется пароль. Также гостевая учетная запись отключена.
В мой файл /home/user/.bashrc
я добавил следующие строки:
/etc/init.d/ssh start
/etc/init.d/networking start
, чтобы при перезагрузке ПК можно было создать экземпляр сеанса SSH
, если пользователь не вошел в систему.
Мне нужно найти способ запустить файл .sh
, но с использованием сеанса tmux
.
Может ли кто-нибудь указать мне шаги, чтобы сделать такую вещь?
Создайте файл в/etc/init/myappname.conf с:
author "YourName"
description "Start myappname at boot time"
start on (local-filesystems and net-device-up IFACE!=lo)
script
su myusername -c "tmux new-session -d 'myAppExecutablePath'"
end script
Непосредственно скопированный от эта ссылка , но сделать ответ завершенным. Дополнительные сведения об опциях остановки запуска см. в этой ссылке .
Вы могли бы быть в состоянии использовать крон для этого. Посмотрите под специальными символами для @reboot
ключевое слово.
Выполнение Ваша команда в новой tmux сессии (помещает это в крон):
/usr/bin/tmux new-session "/bin/bash /path/to/script"
@reboot /bin/sleep 300 && /usr/bin/tmux new-session -s miner '/bin/sh /home/gotqn/Downloads/folder1/runnow.sh'
– jmort253
13.05.2020, 04:43
cron
и устанавливаю задание, но оно не выполняется после перезапуска. Если я выполняю строку в консоли, это работает, но не выполняется автоматически на перезапуске. Могли Вы совет? Это - строка: @reboot sleep 300 && cd "/home/gotqn/Downloads/folder1" && /usr/bin/tmux new-session -s miner 'sh ./runnow.sh'
– peresisUser
13.05.2020, 04:43
sudo initctl start myjob
, и я получаю следующее сообщениеmyjob start/running, process 3100
, но мой сценарий не выполняется. Снова, если я выполнил сценарий вручную в консоли, это работает. – infinito84 13.05.2020, 04:42