On Tue, Aug 02, 2022 at 11:22:31PM +0200, Uwe Kleine-König wrote:
Hallo Arno,
On 8/1/22 17:17, Arno wrote:
Beim booten läuft bei mir ein script. Gestartet
aus einem rc5.d/Sxx.
Da wird z.B. eine Textdatei aus dem System geparst und daraufhin
bestimmte Variablen und auch Pfade gesetzt.
Diese werden dann im weitere Verlauf genutzt und zu verschiedenen
Aktivitäten führen. Soweit so normal.
..ooOO(Hmm, anno 2022 sind sh-Skripte in rc5.d/Sxx nicht mehr sooo normal,
oder? :-)
Also bei mir... sind 34 Stück davon. Debian Bullseye. Was auch immer
"normal" ist ;-)
(Jaja, ich geb' ja zu, dass ich den Installer ein wenig gut zureden
musste, aber nichts richtig schwieriges).
Hierzu wurde ja schon einiges beigetragen. Mein Reflex
wäre ein Skript, das
die beschriebene Komplexität erreicht hat, in was anderem als plain Shell zu
schreiben. Ich würde vermutlich Python bevorzugen, aber je nach Gusto gibt
es ja viele weitere Möglichkeiten (Perl, Bash, Node, rust, C, ...).
Ich habe dazu eine Schwelle, die bei ungefähr (sehr ungefähr) 200 Zeilen
liegt. Wobei ich erst versuche, das Skript kleiner zu machen :)
Erschwerend
kommt hinzu, dass das ganze während des Bootens passiert,
also nicht aus einer klassischen shell heraus.
Was ist der relevante Unterschied
zwischen einem Skript, das von init
aufgerufen wird und einer "klassischen Shell"?
Da hatten wir zwei Kandidaten: was anderes als die gewohnte Bash (mensch
muss dann nach "bashisms" suchen) und eine andere Umgebung (environment
variables). Zweiteres ist ganz lustig: debian-user sieht mindestens
jeden Monat "warum funktioniert mein Cron-Job nicht?" einmal :)
lg
--
t