Gå til innhold

Bruk av crontab


Anbefalte innlegg

Hei!

 

Jeg har en server som kjører noen prosesser, men jeg ønsker at prosessen jeg kjører skal restartes hver dag kl. 9.00.

 

 

screen -A -m -d -S hlds1 ./hlds_run -game cstrike +map de_dust2 +maxplayers 13 +ip 0.0.0.0 +exec server.cfg -autoupdate

 

I dag benytter jeg denne kommandoen for å starte prosessen, men hvordan vil den se ut med crontab?

 

Det er viktig at den beholder screene.

 

 

Takker for svar! :)

Lenke til kommentar
Videoannonse
Annonse

Får denne meldingen.

 

-bash: 0: command not found

 

Virker som den ikke skjønner helt hva den skal. Er det ingen kommando som henviser til at nå skal crontab tas i bruk? :hmm:

 

Er nokså ny på Linux så jeg kan ikke all verden, det er godt mulig at jeg er helt på jorde.

Endret av Fenalår
Lenke til kommentar

Jeg vil foreslå å lage et lite wrapperscript du kjører fra cron, cron er ikke alltid glad i lange kommandolinjer med mange parametre... Men du kan jo se om det går først om du vil.

 

Uansett, det der holder vel muligens ikke... Den gamle prosessen drepes/restartes jo ikke, du bare spawner en ny...

Lenke til kommentar

Som Comicz skriver, det er lurt å lage et script. I tilleg til det han nevner blir jo også crontab-fila litt ryddigere og mer oversiktlig. Eksempel på script for deg.

 

Lag script-fila med f. eks. gedit:

gedit /root/mittscript

 

Legg inn kommando i script-fila:

#! /bin/sh
screen -A -m -d -S hlds1 ./hlds_run -game cstrike +map de_dust2 +maxplayers 13 +ip 0.0.0.0 +exec server.cfg -autoupdate

 

Lagre og lukke, deretter i konsollet for å gjøre den kjørbar:

chmod +x /root/mittscript

 

crontab-filen din blir da:

0 9 * * * /root/mittscript

Lenke til kommentar
Det må jeg nok?? Hjelper å si hvordan kanskje? :S

 

0 9 * * * /root/hlds/hlds screen -A -m -d -S hlds1 ./hlds_run -game cstrike +map de_dust2 +maxplayers 13 +ip 0.0.0.0 +exec server.cfg -autoupdate

 

Sånn?

7267813[/snapback]

For å svare på dette. Har du navigert deg til mappa kjører du, som det virker som du har skjønt, med kommandoen ./filsomskalkjøres. Dersom du ikke er i den mappa fila er i, bruker du hele filbanen med mapper og filer, f. eks: /opt/filsomskalkjøres. Siste måten å gjøre det på, kan brukes uansett hvor du er i filhierarkiet.

Endret av RattleBattle
Lenke til kommentar

Hvis du mener filnavn, så kan script-fila hete hva du vil. Innholdet skal formateres som "vanlig" tekst.

 

Den første linja i script-eksempelet til RattleBattle kalles for Shebang, og forteller hvilket program som skal brukes for å kjøre scriptet. Siden dette scriptet er et shell-script (shebangen sier at det skal kjøres av /bin/sh , #! /bin/sh ), er det noen som liker å gi scriptfila navnendelsen .sh, f.eks. mittscript.sh.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...