Fischer Skrevet 12. februar 2008 Del Skrevet 12. februar 2008 Hei! Jeg har satt opp en maskin med Ubuntu Server 6.10. Jeg har lagt inn FTP (vsftpd) og CS-server. Men jeg vil at disse to skal starte opp i det ubuntu booter. Slik som det er nå så må jeg jo gå inn og starte både FTP-en, og CS-serveren mauelt. har to kjappe spørsmål til! første er, hva er det jeg må skrive for å få opp en liste av alle prosesser som kjører på maskinen, sånn at jeg kan kille de med pid nummeret.. og hvordan får jeg CS-serveren til å starte opp i bakgrunn, når den starter så får jeg ikke gjort noe annet på maskinen uten å måtte lukke den? Nå bruker jeg følgende kommando for å starte serveren: ./hlds_run -console -port 27015 -game cstrike +map de_dust2 +maxplayers 10 Lenke til kommentar
vi3t Skrevet 12. februar 2008 Del Skrevet 12. februar 2008 jeg er ikke helt sikker på ubuntu systemer, men legg de kommandoene inn på /etc/init.d/local .. den laster alltid mot slutten på gentoo og slack=) Lenke til kommentar
Fischer Skrevet 12. februar 2008 Forfatter Del Skrevet 12. februar 2008 (endret) Okei! da tester jeg det! edit: Jeg har ingen fil som heter "local" nærmeste er: "rc.local" er det det samme eller? Endret 12. februar 2008 av Fischer Lenke til kommentar
anders iver Skrevet 12. februar 2008 Del Skrevet 12. februar 2008 mulig du kan legge det i rc.local For å starte en prosess i bakgrunnen legger du til & etter kommandoen Lenke til kommentar
ways Skrevet 12. februar 2008 Del Skrevet 12. februar 2008 ja. rc.local. men ikke glem & bak. ellers tror jeg systemet stopper opp der. for å liste alle prosesser skriver du ps aux . for bare vise navngitte prosesser skriver du ps aux|grep firefox . for å vise hva som tar opp cpu og lign. kan du bruke top Lenke til kommentar
Fischer Skrevet 12. februar 2008 Forfatter Del Skrevet 12. februar 2008 Takk for alle svar! nå skal jeg nok få det til! Lenke til kommentar
-Logos- Skrevet 12. februar 2008 Del Skrevet 12. februar 2008 Spør litt videre på denne tråden... ved å legge til komandoen i rc.local... vil ikke dette starte prosessen som root? Hva gjør jeg for å starte prosessen som en annen bruker? Lenke til kommentar
kommers Skrevet 12. februar 2008 Del Skrevet 12. februar 2008 Hvis du er root (rc.local) kan du prøve: sudo -u svein /path/to/hlds_run -console -port 27015 -game cstrike +map de_dust2 +maxplayers 10 For mer info om sudo: man sudo osv. Lenke til kommentar
snabelkost Skrevet 15. februar 2008 Del Skrevet 15. februar 2008 (endret) I oppstarten av et system kjører Ubuntu et sett med skripts som ligger i /etc/init.d/ .. Der ligger det et "skjelett", (tror den heter skeleton), dette er et eksempel på et skript. Du kopierer den til det skriptnavnet du vil ha (eks): sudo cp -v /etc/init.d/skeleton /etc/init.d/hlds Dette vil lage en ny fil med navn "hlds" og er en kopi av "skeleton", så kan du editere denne filen til ditt formål: sudo nano -w /etc/init.d/hlds Evt. lage et skript noe alla dette: #! /bin/sh ### BEGIN INIT INFO # Provides: hlds # Description: Starts the hlds daemon ### END INIT INFO # # Author: xxx # # Version: 1 # test -s /etc/rc.status && . /etc/rc.status && rc_reset PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/us r/sbin:/usr/bin NAME=hlds_run USER=(brukernavn som skriptet skal kjøres via) DAEMON=/usr/bin/$NAME SCRIPTNAME=/etc/init.d/$NAME # Gracefully exit if the package has been removed. test -x $DAEMON || exit 0 case "$1" in start) su - $USER -c "$DAEMON -console -port 27015 -game cstrike +map de_dust2 +maxplayers 10" ;; stop) killall hlds_run ;; reload) killall hlds_run su - $USER -c "$DAEMON -d" ;; esac exit 0 Dette er bare et eksempel, men det vil kanskje hjelpe? Husk å forandre "USER" til brukernavnet du skal kjøre skriptet som (helst en annen enn root). Så må du lage filen "kjørbar" sudo chmod +x /etc/init.d/hlds da kan du kjøre kommandoene "hlds start/stop/reload" for å gjøre de forskjellige tingene. Deretter må du sette opp når dette skriptet skal starte i bootup-prosessen, denne burde starte på slutten av oppstartsprosessen. Du lager en symlink til skriptet: sudo ln -s /etc/init.d/hlds /etc/rc2.d/S99hlds sudo ln -s /etc/init.d/hlds /etc/rc0.d/K99hlds sudo ln -s /etc/init.d/hlds /etc/rc6.d/K99hlds Filene må ha spesielle navn for å starte riktig i forhold til bootup osv. Filene i rc2.d kjøres ved oppstart, rc0.d kjøres ved shutdown og rc6.d kjøres ved reboot. Håper dette fungerer, det ble litt lengre post enn jeg hadde tenkt.. EDIT: Dette tror jeg er den tryggeste måten å kjøre en prosess på i oppstarten. Endret 15. februar 2008 av snabelkost Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå