Toon posts:

Hoe automatisch programma's en services opstarten op Linux?

Pagina: 1
Acties:

Verwijderd

Topicstarter
De volgende mogelijkheid gebruikte ik altijd:
in SSH terminal typen: # setup

Vervolgens kom je in een grafische menu waar je instellingen kunt aanpassen, door de betreffende service aan te vinken boot deze automatisch met Linux. Helaas komt het vaker voor dat de service niet in de lijst staat van setup. Het OS dat ik gebruik is CentOS, dus het is goed mogelijk dat deze gebruikersinterface niet op andere distro's staat.

Ik weet dat er andere opties zijn om een service/programma automatisch op te laten starten:
  • Service opstarten is mogelijk via chkconfig. Echter zie ik op elk Google-resultaat dat er andere parameters worden meegegeven. Wat zijn de correcte?
  • Het plaatsen van een symlink naar het programma, de service, in /etc/init.d/ of /etc/rc.d/rc3.d/.
Ben nu wel benieuwd wat het verschil tussen chkconfig en plaatsen van een symlink in rc3.d is. Ook ben ik benieuwd wat setup precies doet.

Bij een reboot heb ik graag de service 'nrpe' automatisch gestart, omdat dit de remote client is van Nagios.

  • odysseus
  • Registratie: Augustus 2000
  • Laatst online: 10:36

odysseus

Debian GNU/Linux Sid

Ik neem aan dat je met 'chkconfig --help' of 'man chkconfig' wel uitleg krijgt over de juiste parameters en met wat geluk ook een paar voorbeelden. Zelf werk ik met Debian, waar je met 'update-rc.d' dit soort dingen kunt doen. In de basis doet dat gewoon wat je met de hand ook kunt doen: links maken in de verschillende runleveldirectories naar de juiste scripts in /etc/init.d/ :).

Leven is het meervoud van lef | In order to make an apple pie from scratch, you must first create the universe.


  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 27-01 20:59

Hero of Time

Moderator LNX

There is only one Legend

Let wel, als je dus die rcx.d neemt, waar x 2,3,4 of 5 is (deze worden iig bij Debian based distro's gebruikt tijdens boot), de juiste naam geeft aan de symlink. Gewoon symlinken van /etc/init.d/nrpe naar /etc/rc3.d/nrpe zal niet werken. Je zal moeten kijken wat de andere namen zijn in de rcx.d mappen en daar je bestand op aan passen. Bijvoorbeeld S99nrpe zal wel werken. Vergeet ook niet om de afsluitscript te maken, K01nrpe. S staat voor Startup, K voor kill. Alles met een K krijgt het stop parameter tijdens afsluiten, S dus start tijdens boot. Het getal na de S of K bepaald wanneer het script wordt gestart/gestopt in de hele sequence. Je moet dus niet nagios gaan starten voordat je netwerk up is, en stoppen nadat het down is gebracht.

Commandline FTW | Tweakt met mate


  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 13:00

CAPSLOCK2000

zie teletekst pagina 888

chkconfig doet niks anders dan symlinks aanmaken of verwijderen in /etc/rc*.d

This post is warranted for the full amount you paid me for it.


  • silentsnake
  • Registratie: September 2003
  • Laatst online: 15-01 11:20
Het is heel simpel hoor:

chkconfig <init script naam> on
chkconfig <init script naam> off

Dus dan wordt het: chkconfig nrpe (of nagios-nrpe, afhankelijk van hoe het init script heet) on

En zoals gezegd, hij maakt gewoon symlinks aan in /etc/rc*.d. Niets wat niet in de man page te vinden valt.

Verwijderd

Topicstarter
CAPSLOCK2000: kort, maar erg duidelijk. :)

Zal eerlijk zeggen dat ik weinig van runlevels weet. Ik gebruik standaard altijd runlevel 3. Welk verschil heeft een chkconfig nrpe on en chkconfig --level 345 nrpe on?

Bij de 1e mist dus level 1 en 2, maar het OS boot volgens mij standaard runlevel 3, dus of het uitmaakt?

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 13:00

CAPSLOCK2000

zie teletekst pagina 888

Een Linux systeem boot op de volgende manier:

Je begint in runlevel "S" (voor Start), daarin worden de meest essentieele dingen gestart. Het zijn meer de voorbereidingen voor de "echte" start.

Dan ga je naar runlevel "1", ook wel bekend als single user. Hierin wordt alle overgebleven systeemsoftware gestart. Grofweg gaat het dan om software die niet bedoeld is om rechtstreeks te gebruiken. Op moderne systemen is runlevel 1 bijna helemaal verdwenen. Kenmerkend er aan is dat gebruikers nog niet kunnen inloggen of op een andere manier gebruik maken van het systeem, maar dat root wel al kan inloggen.

runlevel 6 is rebooten
runlevel 0 is power off

runlevel 2-5 (en 7-9) hebben geen vaste betekenis, en kan iedere beheerder in principe zelf instellen. Deze runelevels worden wel eens mult-user genoemd. Hierin wordt alle andere software gestart die automatisch moet starten.

Onder Debian wordt hier standaard runlevel 2 voor gebruikt.
Je komt nog wel eens systemen bezig met een ingewikkeldere verdeling, bv:

2: geen network
3: wel netwerk + ssh
4: zie 3 + database + backup
5: zie 4 + webserver

of

2: netwerk
3: services
4: X
5: login

This post is warranted for the full amount you paid me for it.


  • Rainmaker
  • Registratie: Augustus 2000
  • Laatst online: 14-07-2024

Rainmaker

RHCDS

De S is volgens mij van Sysinit en runlevel 4 is niet gedefineerd.

*edit: Wikipedia: Runlevel

[ Voor 38% gewijzigd door Rainmaker op 29-06-2009 22:58 ]

We are pentium of borg. Division is futile. You will be approximated.

Pagina: 1