Schlagwort-Archive: Ubuntu

Ubuntu Upgrade von Yakkety Yak zu Artful nach Zesty end of life

Zum aktuellen Zeitpunkt kommt es bim Upgrade von Ubuntu 16.10 Yakkety Yak zu Problemen, da die nächste Version 17.05 Zesty bereits nicht mehr unterstützt wird. Ein kleines Bisschen Nachhilfe verhilft den Installationsscripten zur Fähigkeit, trotzdem upzudaten.

Ursprünglich habe ich das als Frage bei Askubuntu gestellt. Wurde aber als angebliches duplicate geschlossen. Naja, als ob mich wirklich interessieren würde, wie und wann ein Release auf den Servern verschoben wird… :O Auf jeden Fall habe ich das hier mal aufgeschrieben.

Vorbemerkungen

Die Installationsdateien für unterstützte Versionen von Ubuntu liegen auf http://archive.ubuntu.com/ubuntu, sobald die Versionen nicht mehr unterstützt werden, sind sie unter http://old-releases.ubuntu.com/ubuntu zu finden.

Um den Ubuntus Updatemanager zum Aktualisieren zu bewegen, müssen die Pfade „nur“ manuell abgeglichen werden.

Download der Installationsskripte

Erster Schritt der Installation ist der Download des Updaters für das nächste Release. Das Skript unter /usr/lib/python3/dist-packages/DistUpgrade/DistUpgradeFetcherCore.py lädt (versucht es zumindest) eine gepackte Datei mit der Software für das Upgrade für die entsprechende Version und die Zugehörige Signatur herunter. Sobald das erfolgt ist, wird die Korrektheit überprüft, die Datei entpackt und das Setup-Programm gestartet.

Man kann einerseits den DEFAULT_MIRROR auf http://old-releases.ubuntu.com/ubuntu ändern und das Skript findet nun die neue Datei, verifiziert sie und entpackt in ein temporäres Verzeichnis. Falls man manuell verifizieren mag oder auf die Verifikation verzichtet, kann man die Datei auch direkt hier herunter laden:

http://old-releases.ubuntu.com/ubuntu/dists/zesty/main/dist-upgrader-all/current/zesty.tar.gz

Ausführen des Updates

Ob man nun das Setup vom Startskript mit angepassten Pfaden starten lässt, oder manuell herunterlädt und startet, die Pfade zu den Zesty-Paketquellen sind falsch. Das Setup modifiziert die Quellpfade in /etc/apt/sources.lst so dass sie auf die nächste Version zeigen, das heißt in unserem Fall von yakkety zu zesty. Da Zesty nun jedoch schon end of life ist, müssen die Paketquellen über den angepassten Releasenamen hinaus auch noch auf die alten Pfade zeigen.

Die Aktualisierung der Quellen wird in DistUpdateController.py durchgeführt. Die Methode rewriteSourcesList (beginnend etwa in Zeile 520) ändert diese Pfade anhand einer langen Fallunterscheidung. Die Standardpaketquellen werden in der Bedingung validMirror or thirdPartyMirror (etwa in zeile 690) überprüft und angepasst. Ein Eintrag aus der Datei sources.lst ist in der Variable entry gespeichert, im Feld entry.uri wird der Pfad zu den Paketquellen angegeben und in entry.dist die Aktuelle Ubuntu Releaseversion.

Um die Aktualisierung durchführen zu können, müssen die Pfade auf old-releases gesetzt werden. Dabei muss sowohl der normale Archivpfad, aber auch der Pfad zu Security-Paketen angepasst werden. Um sicher zu gehen habe ich auch den DE mirror angepasst:

                if entry.uri == "http://archive.ubuntu.com/ubuntu" and entry.dist.startswith("yakkety"):
                    entry.uri = "http://old-releases.ubuntu.com/ubuntu"
                if entry.uri == "http://de.archive.ubuntu.com/ubuntu/" and entry.dist.startswith("yakkety"):
                    entry.uri = "http://old-releases.ubuntu.com/ubuntu/"
                if entry.uri == "http://security.ubuntu.com/ubuntu" and entry.dist.startswith("yakkety"):
                    entry.uri = "http://old-releases.ubuntu.com/ubuntu"

Das Update starten

Endlich kann nun das Update mit

sudo ./zesty --mode=server --frontend=DistUpgradeViewText

gestartet werden.

Geschrieben von Kap. Zuletzt geändert am 30. Januar 2018.

MySports in Linux

Leider gibt es erstmal keinen Port von MySports auf Linux. Es gibt zwar einen Open-Source-Tool zum Auslesen der Daten, aber zur Benutzung der offiziellen Software bleibt man auf eine Lösung mit VirtualBox (die vermutlich einzige brauchbare Software von Oracle) und Windows angewiesen. Die folgenden Schritte beziehen sich alle auf Ubuntu, sollten jedoch ähnlich auf allen gängigen Distributionen funktionieren.

Um die Uhr über USB anzuschließen und in VirtualBox verfügbar zu machen sind einige Schritte notwendig. Automatisch tut sich da nichts, von wegen universelles Plug & Play und so ;-) Zunächst mal zeigt KDE kein angeschlossenes Gerät beim einstecken an. Es lässt sich aber leicht überprüfen, ob ein gerät eingesteckt ist:

$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub
Bus 001 Device 003: ID 1390:7474 TOMTOM B.V. GPS Sport Watch [Runner, Multi-Sport]

Es sieht also schonmal so aus, dass die Uhr vorhanden ist. In VirtualBox kann man in den Eigenschaften einer virtuellen Maschine festlegen, welche der im Host-System vorhandenen Geräte im Gastsystem verfügbar sein sollen. Das Symbol mit dem USB-Stecker und dem grünen + zeigt (eigentlich) die vorhandenen Geräte an. Zunächstmal ist die Liste jedoch leer. Über die Kommandozeile kann man das natürlich auch machen:

$ VBoxManage list usbhost
Host USB Devices:
 
  <no devices>

Diesen Konflikt zwischen den beiden Ausgaben gibt es, weil USB standardmäßig nicht unterstützt wird. Zunächst mal muss das Oracle VM Extension Pack installiert sein, und zwar in der gleichen Version wie VirtualBox. Dies kann man so überprüfen:

$ VBoxManage --version
5.1.2r108956
 
$ VBoxManage list extpacks
Extension Packs: 1
Pack no. 0:   Oracle VM VirtualBox Extension Pack
Version:      5.1.2
Revision:     108956
Edition:      
Description:  USB 2.0 and USB 3.0 Host Controller, Host Webcam, VirtualBox RDP, PXE ROM, Disk Encryption.
VRDE Module:  VBoxVRDP
Usable:       true 
Why unusable:

Die Version (5.1.2) stimmt schonmal überein und USB ist generell verfügbar. Damit die Geräte von VirtualBox erkannt sein, muss der Benutzer jedoch auch Mitglied der Gruppe vboxusers sein:

sudo usermod -a -G vboxusers <useruame>

Damit die Änderungen übernommen werden, muss man sich einmal aus- und wieder einloggen. Nun sind auch die USB-Geräte verfügbar:

$ VBoxManage list usbhost
Host USB Devices:
 
UUID:               05f7f0e1-8d84-4cf7-bd2c-7f11753a02a8
VendorId:           0x1390 (1390)
ProductId:          0x7474 (7474)
Revision:           2.0 (0200)
Port:               1
USB version/speed:  2/Full
Manufacturer:       TomTom
Product:            TomTom GPS Watch
SerialNumber:       HE4045G02754
Address:            sysfs:/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.2//device:/dev/vboxusb/001/004
Current State:      Busy

Bei einem Update der distribution, zum Beispiel von Wily Werewolf auf Xenial Xerus, kann es passieren dass man das Ganze nochmal machen muss oO

Geschrieben von Kap. Zuletzt geändert am 2. August 2016.