NetBSD: Fragen zu upgrade und Prozessstart

23/03/2009 - 09:58 von Martin Klaiber | Report spam
Auf einem meiner Rechner làuft ein NetBSD 3.1.1, das ich endlich mal
aktualisieren möchte. Doch mir ist noch nicht ganz klar, wie ich das
machen muss. Ich habe Binàrpakete installiert.

Im web fand ich mehrere (widersprüchliche?) Hinweise, wie man so ein
upgrade macht.

Hier steht, man solle die Pakete einfach herunterladen und manuell
entpacken (mit tar). Ist evtl. veraltet:

<http://wiki.unixboard.de/index.php/...update>

Hier heißt es, man solle pkg_add -uu verwenden:

<http://wiki.netbsd.se/How_to_upgrade_packages>

Und hier steht, man solle über den Installer gehen:

<http://www.netbsd.org/docs/guide/en...g.html>

Was ist denn nun der richtige Weg?

Unabhàngig davon habe ich den Eindruck gewonnen, dass man die
installierten Pakete manuell angeben oder auswàhlen muss. Ist das
richtig? Das System müsste doch eigentlich selbst wissen, welche
Pakete installiert sind und somit aktualisiert werden müssen.

Und meine zweite Frage: besagter Rechner dient u.a. als lokaler
Newsserver (leafnode). fetchnews wird per cron gestartet, ich möchte
aber, dass gleich nach dem booten auch ein fetchnews-Lauf gestartet
wird. Wo trage ich das am Besten ein? Aktuell steht der Aufruf in
/etc/rc.local, das hat aber den Nachteil, dass der Bootprozess hàngt,
solange fetchnews làuft. Mindestens cron und der ntpd werden erst
gestartet, nachdem fetchnews fertig ist.

Gibt es eine Datei, die erst abgearbeitet wird, wenn der Bootprozess
beendet ist? /etc/profile geht nicht, da ich mich auf dem Rechner in
der Regel nicht einlogge. Oder soll ich den Aufruf in /etc/rc.local
stehen lassen und einfach in den Hintergrund schieben?

TIA, Martin
 

Lesen sie die antworten

#1 mlelstv
23/03/2009 - 10:50 | Warnen spam
Martin Klaiber writes:

Auf einem meiner Rechner làuft ein NetBSD 3.1.1, das ich endlich mal
aktualisieren möchte. Doch mir ist noch nicht ganz klar, wie ich das
machen muss. Ich habe Binàrpakete installiert.



Die BSD-Systeme unterscheiden zwischen dem eigentlichen
Betriebssystem und zusàtzlich installierten Software-Paketen.

Das betrifft das Betriebssystem:

Und hier steht, man solle über den Installer gehen:
<http://www.netbsd.org/docs/guide/en...g.html>



Und das betrifft die Software-Pakete:

<http://wiki.netbsd.se/How_to_upgrade_packages>

Unabhàngig davon habe ich den Eindruck gewonnen, dass man die
installierten Pakete manuell angeben oder auswàhlen muss. Ist das
richtig? Das System müsste doch eigentlich selbst wissen, welche
Pakete installiert sind und somit aktualisiert werden müssen.



Dafuer gibt es das Paket pkgtools/pkg_chk.

Man sollte dann aber wissen, welche Pakete man installiert haben
will. Sollte es beim automatischen Update Fehler geben (z.B. weil
ein Paket inzwischen umbenannt wurde), dann ist typischerweise
ein Teil der installierten Versionen schon geloescht, aber
es sind noch keine neuen Pakete installiert.


Und meine zweite Frage: besagter Rechner dient u.a. als lokaler
Newsserver (leafnode). fetchnews wird per cron gestartet, ich möchte
aber, dass gleich nach dem booten auch ein fetchnews-Lauf gestartet
wird. Wo trage ich das am Besten ein? Aktuell steht der Aufruf in
/etc/rc.local, das hat aber den Nachteil, dass der Bootprozess hàngt,
solange fetchnews làuft. Mindestens cron und der ntpd werden erst
gestartet, nachdem fetchnews fertig ist.

Gibt es eine Datei, die erst abgearbeitet wird, wenn der Bootprozess
beendet ist?



Es gibt keine explizite Datei, die zum Schluss aufgerufen wird.

Die Bootreihenfolge ergibt sich aus den Angaben in den Bootscripten.
Mit 'cd /etc/rc.d && rcorder *' siehst du, dass 'local' irgendwo in
der Mitte aufgerufen wird, da als einzige Bedingung ein 'BEFORE: LOGIN'
verwendet wird. 'local' ist das Bootscript, das /etc/rc.local
ausfuehrt.

Wenn dir das reicht, dann starte fetchnews einfach im Hintergrund.
Ansonsten kannst du auch ein eigens Bootscript anlegen und
entsprechende Bedingungen einbauen.

Michael van Elst
Internet:
"A potential Snark may lurk in every tree."

Ähnliche fragen