Автозапуск сервера через crontab -e

Mr.Black

Участник
Сообщения
145
Реакции
61
Доброго времени суток.
Хочу сделать автозапуск сервера CS GO после рестарта vds. В файле start.sh написал скрипт запуска через screen. Сам скрипт если запускать его через sh ./start.sh - работает.
Адрес где лежит start.sh /home/admin/steamcmd/csgoserver/
Пробовал следующие способы:
1) Писал в консоль crontab -e
далее вводил
@reboot sh /home/admin/steamcmd/csgoserver/ ./start.sh
или
@reboot sh /home/admin/steamcmd/csgoserver/start.sh
или
@reboot cd /home/admin/steamcmd/csgoserver/ && ./start.sh
или
@reboot cd /steamcmd/csgoserver/ && ./start.sh
или
@reboot cd /home/admin/steamcmd/csgoserver/start.sh
или
@reboot cd /steamcmd/csgoserver/start.sh

2) Добавлял те же строки в /etc/crontab

Безрезультатно.
Где я делают ошибку?
Содержимое start.sh
Оффтоп
P.S. Хочется реализовать запуск сервера кс го после включения сервера без панелей и лаунчеров.
 

Mr.Black

Участник
Сообщения
145
Реакции
61

September

Участник
Сообщения
5,238
Реакции
2,742
  • Команда форума
  • #4
P.S. Хочется реализовать запуск сервера кс го после включения сервера без панелей и лаунчеров.
Или оттуда можно дёрнуть start stop restart файлики и посмотреть как в них запуск реализован?

Сам себе проблемы создаешь. Я тоже не хочу панели, и юзаю лаунчер. Чем он тебя не устраивает?
 

amdin55

Участник
Сообщения
121
Реакции
79
@Dmitriy, вот так должно быть:

@reboot cd /steamcmd/csgoserver/ sh ./start.sh
 

Lima

Участник
Сообщения
159
Реакции
57
@Dmitriy,
PHP:
@reboot /home/admin/steamcmd/csgoserver/start.sh
А так ищи проблему тут /var/log/syslog
 

zloy911

zloygames.com
Сообщения
370
Реакции
50
Только я бы юзера указал, чтобы не от рута стартовали сервера.
У меня допустим так:

в crontab

C-подобный:
@reboot        user  /home/user/servers/start/all_start.sh

а в all_start.sh

C-подобный:
/home/user/servers/start/server_1.sh
/home/user/servers/start/server_2.sh
/home/user/servers/start/server_3.sh
в server_1.sh

C-подобный:
#!/bin/sh
echo "Starting CS:Source server 1"
sleep 1
screen -A -m -d -S server1 /home/user/servers/server1/css/server1.sh

и уже в самом server1.sh

C-подобный:
#!/bin/sh
while true ; do
/home/user/servers/server1/css/srcds_run -game cstrike -console +ip 0.0.0.0 -tickrate 66 +maxplayers 64 -port 27015 -nohltv +map de_dust2 +sv_lan 0 -nowatchdog
done
 

Mr.Black

Участник
Сообщения
145
Реакции
61
Ой, ашибачка там) Вот так должно быть: @reboot cd /steamcmd/csgoserver/; sh ./start.sh

Не хватало ;
Сработало) спасибо
--- Добавлено позже ---
Только я бы юзера указал, чтобы не от рута стартовали сервера.
У меня допустим так:

в crontab

C-подобный:
@reboot        user  /home/user/servers/start/all_start.sh

а в all_start.sh

C-подобный:
/home/user/servers/start/server_1.sh
/home/user/servers/start/server_2.sh
/home/user/servers/start/server_3.sh
в server_1.sh

C-подобный:
#!/bin/sh
echo "Starting CS:Source server 1"
sleep 1
screen -A -m -d -S server1 /home/user/servers/server1/css/server1.sh

и уже в самом server1.sh

C-подобный:
#!/bin/sh
while true ; do
/home/user/servers/server1/css/srcds_run -game cstrike -console +ip 0.0.0.0 -tickrate 66 +maxplayers 64 -port 27015 -nohltv +map de_dust2 +sv_lan 0 -nowatchdog
done
У меня примерно также реализовано, но у меня пока только один сервер) Спасибо!
 
Сверху Снизу