Иногда нужно чтобы при загрузке Ubuntu выполнила какие-либо действия (к примеру, запустила какую-нибудь программу). Как же это сделать?
Всё просто как 3 копейки!
1. Нужно создать файл с командами, которые нужно выполнить при старте системы:
sudo nano /etc/init.d/autostart.script
Как понятно, autostart.script это название файла в котором будут записаны команды и оно может быть любым, но не должно совпадать с именами уже существующих файлов в папке /etc/init.d/.
В первой строке файла должно быть указано какая оболочка или интерпретатор будет выполнять команды в файле. Если вы хотите использовать те же команды, что и в терминале, то файл должен начинаться со строки:
#!/bin/bash
2. Нужно разрешить файлу выполняться:
sudo chmod +x /etc/init.d/autostart.script
3. Рассказываем системе что этот файл нужно исполнять при старте системы:
sudo update-rc.d autostart.script defaults 95
Где 95 это порядок в очереди исполнения. Подробнее можно узнать из
man update-rc.d
Перезапускаем систему и радуемся результату 🙂
P.S.
Для удаления из автостарта нужно выполнить:
sudo update-rc.d autostart.script remove
Для OpenSUSE 10:
su
nano /etc/init.d/autostart.script
….
chmod +x /etc/init.d/autostart.script
ln -s /etc/init.d/autostart.script /etc/init.d/rc5.d/S95autostart.script
Подскажите делаю Скрипт автостарта в ubuntu
все нормально все запускается
Затем делаю еще 1 скрипт только уже
sudo update-rc.d auto.script defaults 94
И получается что у меня скрипт под номером 94 запускается а 95 уже нет
Как мне это исправить ?
Мне надо запустить 2 игровых сервера вот пример
autostart.script:
#!/bin/bash
cd /home/administrator/CSS/
./srcds_run -game cstrike +port 27015 +map de_dust2 -maxplayers 10
auto.script:
#!/bin/bash
cd /home/administrator/L4D2/left4dead2/
./srcds_run -game left4dead2 +port 27016 +exec server.cfg +map c1m1_hotel coop
там где удалить — впиши ключ -f
А мне надо скрипт от рута запускать, прокатит sudo ?
manus, sudo запускает всё от пользователя root. Попробуйте выполнить:
sudo mkdir ~/sudo_test
cd !$
sudo touch file_under_sudo
ls -l
И посмотреть в выводе кто владелец файла. Для удаления примера выполните:
cd ~
sudo rm -r ~/sudo_test
Или я вопрос не правильно понял?
А как сделать ввод пароля перед запуском сервера?
IMHO, никак. Но я бы на вашем месте поискал бы что-то типа «пароль grub».