Missa inte! Fyndchans i Månadens Drop
Permalänk
Medlem

Linux Startscript

Skulle vilja ha hjälp med 2 starscript.

den ena ska starta igång min cs server när dator går igång.

servern ligger i /home/sparco/srcds/
och jag startar server med startkommandot

./srcds_run -console -game cstrike +map de_dust2 -maxplayers 11 -autoupdate -tickrate 100 +ip 192.168.1.243 +port 27015 -debug

sen vill jag ha ett script som startar en vent server som ligger i /home/sparco/vent/glow
startkommandot för venten är
./ventrilo_srv

Visa signatur

https://hackernet.se - Wiki med inriktning open source och nätverk.

Permalänk
Medlem

Vilken distro kör du? Det är rätt beroende på det då distros har olika startscripts, till exempel BSD-init, upstart med flera. Säg vilken distro så är det lättare

Visa signatur

"I thought I was someone else, Someone good."
μ, en åsikt i tiden

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Hedis
Vilken distro kör du? Det är rätt beroende på det då distros har olika startscripts, till exempel BSD-init, upstart med flera. Säg vilken distro så är det lättare

Vågar chansa på att det är hans andra dator i sin sign. Alltså en Kubuntu-installation.

Visa signatur

WS: Asus P8Z77-I Deluxe mITX | Intel 3770K@4.6 | NH-U12P | Asus 780 GTX | Corsair 2x8GB 1600Mhz CL9 | Samsung 840 512GB | Ubuntu 16.04.3 x86_64 | Corsair AX750 | 2x Dell U2412M | Puppe.se | NAS: i7 860, 16GB DDR3, GA-P55M-UD4, FD Define R3, 8x2TB Samsung F4EG, Serveraid M1015, EVGA 750W G2 PSU, FreeBSD x64

Permalänk
Medlem

Lägg in dessa två script i /etc/init.d

Starta cs-server

#! /bin/sh # /etc/init.d/srcds_run # # Carry out specific functions when asked to by the system case "$1" in start) echo "Starting srcds_run.." /home/sparco/srcds/srcds_run -console -game cstrike +map de_dust2 -maxplayers 11 -autoupdate -tickrate 100 +ip 192.168.1.243 +port 27015 -debug ;; stop) echo "Stopping srcds_run.." killall srcds_run ;; restart) echo "Restarting srcds_run.." killall srcds_run /home/sparco/srcds/srcds_run -console -game cstrike +map de_dust2 -maxplayers 11 -autoupdate -tickrate 100 +ip 192.168.1.243 +port 27015 -debug ;; *) echo "Usage: /etc/init.d/srcds_run {start|stop|restart}" exit 1 ;; esac exit 0

ventrilo

#! /bin/sh # /etc/init.d/ventrilo # # Carry out specific functions when asked to by the system case "$1" in start) echo "Starting ventrilo.." /home/sparco/vent/glow/ventrilo_srv ;; stop) echo "Stopping ventrilo.." killall ventrilo_srv ;; restart) echo "Restarting ventrilo.." killall ventrilo_srv /home/sparco/vent/glow/ventrilo_srv ;; *) echo "Usage: /etc/init.d/ventrilo {start|stop|restart}" exit 1 ;; esac exit 0

använd update-rc.d för att fixa detta via boot.

sudo update-rc.d srcds_run defaults sudo update-rc.d ventrilo defaults

Du får testa själv så att scripten funkar, men det borde dom göra.

Visa signatur

Cisco - Linux - VMWare
-- Citera mig om ni vill få återkoppling --

Permalänk
Medlem

Detta gör dock att båda servrarna kommer att köras som root, något som inte är alltför klokt. Detta går att lösa genom att modifiera scripten så att du startar respektive program med "su -c <cmdline> <user>" eller genom att istället använda en crontab(1) för användaren i fråga och använda @reboot som tidsspecifikation.

Permalänk
Medlem

Använd start-stop-daemon om det är något debian-derivat. Där kan man speca vilken användare det ska köras som, och även få processer som normalt ligger i förgrunden detachade, etc.

Misstänker att optionen -debug till srcds_run gör just att det ligger i förgrunden, och det är ju dumt om man vill ha det som en daemon-process.

Permalänk
Medlem

nillon -debug skapar ett txt dokument, och där står det om servern skulle krasha eller nåt är fel med den så står det vad som är fel.

sen thx för koden deegan:)

Visa signatur

https://hackernet.se - Wiki med inriktning open source och nätverk.