Schmerzfreies Update?

holm

Well-Known Member
Moin,

ich bringe seit Jahrzehnten mein BSD über buildworld und das bauen von Ports auf den letzten Stand,
das dauert lange weil bei den Ports hier und da diverse Handarbeit notwendig ist, stört mich selbst aber wenig,.

Nun habe ich einen freund dem ich irgendwann mal angefangen habe Windows auszureden, den größten Teil
davon hat er aber dann selbst erledigt. Das Problem daran ist, das er nicht auf mich gehört hat und irgend ein *buntu oder Linux Mint installiert hat, sondern beim großen dicken Freund FreeBSD gesehen und mittels FreeBSD.org Doku das Ding gegen meine Empfehlung installiert hat. Er hats nicht ganz geschafft, den X-Server usw. mußte ich dann noch machen, egal.

Nun hat er eine Mini-ITX Kiste die keinen allzugroßen Kopf hat und sitzt mit dem Ding ca. 100Km entfernt von mir.
Auf seinem Rechner ist jetzt ein mehr oder weniger partiell geupdatetes FreeBSD 10.3R bei dem aber nicht mehr alle Port Libraries konsistent sind.

Wie kann der Man mit Internetanschluß möglichst schnell und schmerzfrei die Kiste z.B. auf ein 11-stable bringen (Packages bevorzugt wegen lahmem Prozessor)?

Den Schutthaufen zum Laufen bringen kann ich dann notfalls an einem Wochenende machen wenn per Telefonanweisung nichts mehr geht, der Kumpel fährt jeden Freitag hier vorbei...

Gruß,

Holm
 
Die Ports sollten über ssh kein Problem. Ich würde da ganz einfach den großen Hammer schwingen und von vorne beginnen:
  1. Zuerst einmal eine Liste aller installierten Ports / Pakete sichern:
    Code:
    pkg query "%o" > paketliste.txt
    Das gibt stumpf alles raus, egal ob automatisch oder manuell installiert, denn das wird wahrscheinlich sowieso chaotisch sein. Dann weiß man später, wenn etwas fehlt, was installiert war.
  2. Dann radikal alles löschen:
    Code:
    pkg remove -af
    Und anschließend noch mal mit dem Besen durch:
    Code:
    rm -Rf /usr/local /usr/ports/ /var/db/ports/* /var/db/portsnap/* /var/db/pkg/*
  3. Nun ist das System in jungfräulichem Zustand und er kann mit
    Code:
    pkg install $paket1 $paket2
    die Anwendungen installieren, die er haben möchte. Und wirklich nur die Anwendungen selbst, um die Abhängigkeiten kümmert pkg sich. Das sollte schneller sein als zu versuchen da noch wieder was hinzufrickeln.
Das Basissystem ist deutlich komplizierter. Wenn du sicher bist, dass das 10.3-RELEASE in einem konsistenten Zustand ist, könntest er es mit freebsd-update auf 11.1-RC2 probieren. Wenn nicht, wirst er um ein buildworld nicht herumkommen, idealerweise auch gleich auf 11.2-RC2. Denn von dort könnte er mit freebsd-update weiterarbeiten. Allerdings macht es ab 11.0 aufgrund des extrem fetten Clang keinen Spaß mehr die Welt auf kleinen CPUs zu bauen. Das dauert ewig ins Quadrat. Grundsätzlich sind Basissystemupdates ohne Remote-Konsole aber immer Spiel mit dem Feuer...

Vielleicht könntest du mal die Ausgabe eines 'zfs list' besorgen. Vielleicht haben wir Glück und das System ist auf Boot Environments aufgesetzt.
 
Hmm..habe ich mir schon so ähnlich gedacht.:(

Als Erstes habe ich meinem Kumpel mal den Link hierher gemailt mit der Auflage sich anzumelden.

Das Basissystem müßte IMHO noch reines 10.3-Release sein, den Kern habe zwar ich mal gebaut aber
da eigentlich nur ungenutzen Kram raus gehauen, in so fern sollte ein freebsd-update vielleicht funktionieren.
Das mit dem zfs-list wird $Kumpel lesen..
Naja binja gespannt was dabei rauskommt.

Gruß,

Holm
 
Ahh, ok. Ich werde das checken lassen.

BTW Yamagi: Sollte llvm nicht mal aus dem Build des Basesystems wieder rausfliegen?
Das Ding versaut einem wirklich den Tag, selbst auf schnelleren Maschinen.

Gruß,

Holm
 
In 12-CURRENT ist die Baut-Logik von der LLVM deutlich intelligenter. Er baut LLVM und Anhang maximal 2x statt derzeit 3x, wenn der Host-Compiler gleich dem neuen Compiler ist, sogar nur 1x. Das bringt schon einiges. Aber hilft hier natürlich nicht.
 
ich bringe seit Jahrzehnten mein BSD über buildworld und das bauen von Ports auf den letzten Stand,
ich mache das seit einiger Zeit nicht mehr und bin damit auch sehr glücklich und froh. Je nach Ansprüchen. Für einen Endanwender wie mich ist das eine Überlegung jedenfalls Wert: nimm alles binär, lass die Finger weg und werde glücklich.
Ich habe wohl nur zwei oder drei Ports noch selbst gebaut. Alles geht mit Paketen und freebsd-update und GENERIC. Alles einfach und gut.
 
Hallo, ich bin der, den Holm meinte...

Vielleicht könntest du mal die Ausgabe eines 'zfs list' besorgen.
$ zfs list
NAME USED AVAIL REFER MOUNTPOINT
zroot 377G 1,33T 140K /zroot
zroot/ROOT 8,75G 1,33T 140K none
zroot/ROOT/default 8,75G 1,33T 8,75G /
zroot/tmp 209K 1,33T 209K /tmp
zroot/usr 368G 1,33T 140K /usr
zroot/usr/home 363G 1,33T 363G /usr/home
zroot/usr/ports 4,23G 1,33T 4,23G /usr/ports
zroot/usr/src 705M 1,33T 705M /usr/src
zroot/var 1,65M 1,33T 140K /var
zroot/var/audit 140K 1,33T 140K /var/audit
zroot/var/crash 140K 1,33T 140K /var/crash
zroot/var/log 668K 1,33T 668K /var/log
zroot/var/mail 308K 1,33T 308K /var/mail
zroot/var/tmp 291K 1,33T 291K /var/tmp
$
Hoffentlich hab ich das richtig gemacht
Und schon mal vielen Dank für die Hilfe.

Grüße Gert

Edit: Das Board ist ein Jetway INF81-t56N dual Core 1,6Ghz AMD, 8G RAM
 
@pit: geht für mich nicht. Ich ärgere mich mit zu vielem Kram herum den ich selber konfigurieren muß und habe einige -devel Versionen auf dem Rechner (z.B. KiCad) die wiederum von den standardmäßigen Programmsystemen abweichende Bibliotheken erfordern (z.B. Gnome(2) Zeuchs usw.).
Das macht nicht unbedingt Spaß, ist aber notwendig.

Gruß,

Holm
 
@pit: geht für mich nicht. Ich ärgere mich mit zu vielem Kram herum den ich selber konfigurieren muß und habe einige -devel Versionen auf dem Rechner (z.B. KiCad) die wiederum von den standardmäßigen Programmsystemen abweichende Bibliotheken erfordern (z.B. Gnome(2) Zeuchs usw.).
Das macht nicht unbedingt Spaß, ist aber notwendig.

Gruß,

Holm
verstehe.
Aber vielleicht ist das nicht so bei gert und dann ist das doch mal einen Gedanken Wert.
 
Hoffentlich hab ich das richtig gemacht
Und schon mal vielen Dank für die Hilfe.
Das ist sehr gut. Damit sind Boot Environments möglich. Mit Boot Environments kannst du verschiedene FreeBSD-Versionen parallel installiert haben, bzw. das System auf dem aktuellen Zustand einfrieren und später durch einen einfachen Reboot auf ihn zurückkehren. Das gibt dir einen doppelten Boden, falls etwas schied geht. Dafür installiert du den Port sysutils/beadm oder das Paket beadm. Anschließend kannst du mit
Code:
beadm list
alle vorhandenen Boot Environments anzeigen lassen. Das wird zu Beginn ein einziges sein, es heißt "default". Du kannst den Ist-Zustand mit
Code:
beadm create -e default $neues_bootenv
in ein neues Boot Environment sichern. Später kannst du es mit
Code:
beadm activate $neues_bootenv
aktivieren, nach einen Reboot landest du dann in dem jeweiligen Zustand. Du kannst auch im Boot Loader ein Boot Environment für den einen Systemstart auswählen.

Ich würde im ersten Schritt ein Boot Environment des Ist-Zustandes erstellen, dann kannst du später zurück. Anschließend wie oben beschrieben erstmal die Ports und Pakete in Ordnung bringen. Wenn das funktioniert, kann man mit dem großen Projekt "Systemupgrade" weiter machen.
 
Ich habe mit Gert gesprochen und wir sind überein gekommen das wir das Update noch etwas hinausschieben bis zum Erscheinen von 11.1-R diesen Monat.
Dann haben wir wenigstens wieder einen nachvollziehbaren Stand.

Wir melden uns sicher wieder :-)

Gruß,

Holm
 
Hallo allerseits,
mit der Bitte um Entschuldigung, dass ich nicht antwortete. Hoffentlich redet nochmal einer mit mir. Zumindest hat Holm was gesagt. Eigentlich hatte ich erwartet, dass das Forum mich benachrichtig.Toller Einstand von mir :-(
@Yamagi, das werde ich ausprobieren, melde mich dazu.
Jetzt kontrolliere ich die Foreneinstellungen.

Grüße Gert
 
Zurück
Oben