Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?
19.05.2019, 17:12:24

.
Einloggen mit Benutzername, Passwort und Sitzungslänge

Mitglieder
  • Mitglieder insgesamt: 22023
  • Letzte: elok
Statistiken
  • Beiträge insgesamt: 590298
  • Themen insgesamt: 47787
  • Heute online: 393
  • Am meisten online: 992
  • (17.11.2018, 20:17:55)
Benutzer Online

Autor Thema:  Release-Upgrade von LM 17.x direkt auf LM 18.3 – Serviervorschlag  (Gelesen 522 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Der offizielle Weg um von Linux mit 17.x auf 18.3 zu kommen läuft wie folgt ab.
Dabei werden bei den Aktualisierungen per Aktualisierungsverwaltung nur die Desktopumgebungen aktualisiert – die Basis bleibt erhalten.

Lang, umständlich und in meinen Augen auch überflüssig. Eigentlich kann man in einem beliebigen LM 17.x das Paket mintupgrade auch per Browser herunterladen, die Prüfsumme (dbcd87021864e13e9f50dc2ba10ea3500c3fd75e4f80fac97f4e35f2bf1b8556) vergleichen und dann per Doppelklick installieren.

Nun bräuchte man nur in fünf der frisch installierten Textdateien die Bezüge von "LM 17.3 Rosa" auf die verwendete LM 17.x-Version anpassen (soweit erforderlich) und als Ziel "LM 18 Sarah" auf "LM 18.3 Sylvia" ausweiten – Grafisch mit dem Texteditor (und erweiterten Rechten). Da dies fehleranfällig ist, folgen in Antwort #1 die Kommandos fürs Terminal, damit man sie per Kopieren und Einfügen ausführen kann.

Ist dies getan, dann kann das Release-Upgrade von einem beliebigen LM 17.x direkt auf LM 18.3 erfolgen. Zagg, feddisch!

Getestet mit zufällig gewählten Versionen:
  • LM 17 Cinnamon 64-bit
  • LM 17.1 Mate 64-bit
  • LM 17.2 Xfce 64-bit
Als Erweiterung könnte man in der Datei /usr/share/linuxmint/mintupgrade/apt_destination_sources auch schon auf den lokalen Spiegelserver umstellen.

Um es nochmal deutlich zu sagen: es ist ein Serviervorschlag und kein Versprechen auf Erfolg.
#!/bin/bash
# 1 mintupgrade installieren
cd Downloads
wget -N http://packages.linuxmint.com/pool/main/m/mintupgrade/mintupgrade_17.3.11_all.deb
if [ "$(sha256sum mintupgrade_17.3.11_all.deb)" = "dbcd87021864e13e9f50dc2ba10ea3500c3fd75e4f80fac97f4e35f2bf1b8556  mintupgrade_17.3.11_all.deb" ]; then sudo dpkg -i ./mintupgrade_17.3.11_all.deb; cd; else echo "Prüfsumme stimmt nicht überein"; cd; exit 1; fi
# 2.1 Quelle ändern
sudo sed -i "s/17.3/$(lsb_release -rs)/" /usr/bin/mintupgrade
sudo sed -i "s/rosa/$(lsb_release -cs)/" /usr/bin/mintupgrade
if [ "$(lsb_release -cs | cut -c1)" = "q" ]; then sudo sed -i "s/Rosa/Q$(lsb_release -cs | cut -c2-)/" /usr/bin/mintupgrade; fi
if [ "$(lsb_release -cs | cut -c1)" = "r" ]; then sudo sed -i "s/Rosa/R$(lsb_release -cs | cut -c2-)/" /usr/bin/mintupgrade; fi
# 2.2 Ziel ändern
sudo sed -i "s/18$/18.3/" /usr/share/linuxmint/mintupgrade/lsb-release
sudo sed -i "s/18 /18.3 /" /usr/share/linuxmint/mintupgrade/lsb-release /usr/share/linuxmint/mintupgrade/issue.net /usr/share/linuxmint/mintupgrade/issue /usr/bin/mintupgrade
sudo sed -i "s/sarah/sylvia/" /usr/bin/mintupgrade /usr/share/linuxmint/mintupgrade/lsb-release /usr/share/linuxmint/mintupgrade/apt_destination_sources
sudo sed -i "s/Sarah/Sylvia/" /usr/bin/mintupgrade /usr/share/linuxmint/mintupgrade/lsb-release /usr/share/linuxmint/mintupgrade/issue.net /usr/share/linuxmint/mintupgrade/issue
# 3 Apt-Pinning
echo -e "Package: mintupgrade\nPin: release o=linuxmint\nPin-Priority: -1" | sudo tee /etc/apt/preferences.d/mintupgrade.pref
sudo sed -i "/lsb-release/ i\        os.system('sudo rm /etc/apt/preferences.d/mintupgrade.pref')" /usr/bin/mintupgrade

PS: Ich habe die Kommandos zum Teil extra so gebaut, dass sie unschädlich sind, selbst wenn sie mehrmals durchlaufen werden. Denn ein Upgrade auf Version 18.3.3.3 würde nicht funktionieren.
« Letzte Änderung: 02.03.2019, 21:43:34 von CLImate »

Abschließend noch die Erklärung, was geändert wird:
  • /usr/bin/mintupgrade
    Dieses Python-Skript bereitet das System für das Release-Upgrade vor und führt es durch. Die Variablen ORIGIN_CODENAME und DESTINATION_CODENAME werden für die Prüfung herangezogen, die Variablen ORIGIN und DESTINATION  für die Textausgabe verwendet.
  • /usr/share/linuxmint/mintupgrade/apt_destination_sources
    Dies ist die Vorlage für die Paketquelle. Alle anderen werden Paketquellen werden deaktiviert und als Backup ins Benutzerverzeichnis verschoben. Natürlich muss in dieser Vorlage auch das Ziel richtig gesetzt werden.
  • /usr/share/linuxmint/mintupgrade/lsb-release
    /usr/share/linuxmint/mintupgrade/issue
    /usr/share/linuxmint/mintupgrade/issue.net

    Dies sind die Vorlagen für die gleichnamigen Dateien im Verzeichnis /etc, die im Paket base-files enthalten sind und im Orginal von Ubuntu kommen. Der Dienst mintsystem sorgt bei normalen Updates dafür, dass die Dateien stets den richtigen Inhalt haben (s. Forum). Beim Release-Upgrade müssen diese Vorlagen korrekt sein.
  • /etc/apt/preferences.d/mintupgrade.pref
    Das war der Stolperstein bei meinem ersten Versuch. Bei einem direkten, vollständigen Release-Upgrade auf 18.3 tritt ein kleines Problemchen auf. Das Paket mintupgrade liegt in neuerer Version vor, was dazu führt, dass die eben geänderten Dateien entfernt werden, bevor sie zum Einsatz kommen. Deshalb muss dies einerseits durch AptPinning verhindert werden (auch für den Fall, dass das Release-Upgrade im ersten Durchlauf scheitern sollte und man es später nochmal starten möchte) und andrerseits soll diese AptPinning nach Abschluss entfernt werden, damit der Weg frei ist für den Sprung zu LM 19.

Hi :)
das habe ich doch schon ewig auf meiner page...warum linkst du nicht einfach dahin?

warum linkst du nicht einfach dahin?
Ist das eine ernst gemeinte Frage?

das habe ich doch schon ewig auf meiner page...warum linkst du nicht einfach dahin?
Schick mir mal den Link per PM. Habe dort nur https://www.ehlertronic.de/linux/tipps-tricks/versions-upgrade.html gefunden, aber das ist ja nicht das, was ich meine. Mein Ziel ist vermutlich nicht klar rüber gekommen. Nach den beschriebenen Anpassungen wird mittels
mintupgrade upgradevon einem beliebigen LM 17.x in einem einzigen Arbeitsschritt auf LM 18.3 geupgradet (oder upgegradet?).

Hi :)
für update von 17.x auf 18 braucht man nur die quellen ändern, wie beschrieben

mintupgrade gibt es für 17.x gar nicht... hast du mal geschaut was mintupgrade unter 18. alles anpasst, bez. dazu installiert oder entfernt?

Zitat
mintupgrade gibt es für 17.x gar nicht. …
Bitte lies dir doch erst mal durch, was ich geschrieben habe. :-* Ist das wirklich so missverständlich?
Zitat
Eigentlich kann man in einem beliebigen LM 17.x das Paket mintupgrade auch per Browser herunterladen, die Prüfsumme (…) vergleichen und dann per Doppelklick installieren.

Zitat
… hast du mal geschaut was mintupgrade unter 18. alles anpasst, bez. dazu installiert oder entfernt?
Klar, deshalb mache ich den Aufwand ja mintupgrade so anzupassen, dass auch Qiana, Rebecca und Rafaela aktualisiert werden können – nicht nur rosa. Den Zwischenschritt zu Sarah kann man sich auch sparen und direkt Sylvia installieren.

Wie gesagt Serviervorschlag: Muss man nicht machen! Und ich werde dieses Tutorial auch nirgends bewerben.

Hi :)
nein, alles gut.. auf die idee mit dem umweg über mintupdate bei 17 bin ich bisher nicht gekommen :)

Off-Topic:
nein, alles gut.. auf die idee mit dem umweg über mintupdate bei 17 bin ich bisher nicht gekommen
Was ist jetzt daran gut?
« Letzte Änderung: 03.03.2019, 16:09:44 von aexe »