[Eisfair] rc.local exit 0 (was: Frage Netzwerkkonfiguration mit DHCP POINTOPOINT bei eisfair auf rootserver)

Olaf Jaehrling eisfair at ojaehrling.de
Mo Jan 6 21:54:09 CET 2020


Hallo allerseits,


Marcus Röckrath schrieb am 06.01.20 um 13:40:

> 
> Ich bin, auch nach einigen Internet-Recherchen, nicht der Meinung, dass exit
> 0 zwingend ist.

Jein .. siehe unten.

> 
> Ich fand, dass es guter Usus sei, mit exit 0 oder einem anderen Wert zu
> signalisieren, ob das Skript erfolgreich war oder nicht. Es gäbe
> Init-Realisierungen, die selbsttätig anhand des Rückgabewertes ein FAIl
> oder OK ausgeben. IMHO bei eisfair nicht und wenn man so was möchte, werden
> die gesourcten functions dafür verwendet.
> 
> Ein immer vorhandenes "exit 0" würde somit dem Initsystem, falls es das
> auswertet, immer ein OK vorgaukeln, unabhängig von dem, was wirklich los
> war.
> 
> Eine Zeitverzögerung aufgrund fehlendem "exit 0" würde ich eher
> ausschliessen.

Die Zeitverzögerung hat damit nichts zu tun. Das "exit 0" ganz am Ende
wird eigentlich nur deshalb angewendet um zu verhindern dass jemand, z.B
durch ein Sicherheitsloch o.ä, am Ender der Datei mitteles echo
ausführbaren code einschleußen kann der dann beim Systemstart immer
mitgestartet wird. Es gab mal ein PHP-Sicherheitsloch mit dem man u.a
echobefehle mit rootrechten ausführen konnte. Damals wurden Binary
nachgeladen und ausgeführt. Deshalb wird immer empfohlen bei der
/etc/rc.d/rc.local bzw. deren äquivalente ganz zum Schluss exit 0
einzugeben. Sollte also jemand was hinten einfügen wird das nicht mehr
ausgeführt weil nach dem exit 0.
Selbst bei Systemen mit systemd wird immer noch die rc.local
ausgewertet, deshalb gilt die Empfehlung weiterhin.

Gru

Olaf

> 


Mehr Informationen über die Mailingliste Eisfair