Ubuntu live patches
Canonical Livepatch Service 🇩🇪 oder kurz "Livepatch" ist ein Service von Canonical, der es ermöglicht, Patches für den aktuell laufenden Linux-Kernel "live" einzuspielen, d.h. der Patch wird direkt aktiviert, ohne dass das System neu gestartet werden muss. Dies ist besonders nützlich für Server oder Systeme, die unterbrechungsfrei laufen sollen. Livepatch funktioniert auch auf regulären Desktop-Computern.
Allerdings werden über Livepatch nur kritische Sicherheitspatches für die aktuell verwendete Kernelversion eingespielt. Die Installation einer anderen Kernelversion erfordert weiterhin einen Neustart des Systems.
Um Livepatch nutzen zu können, wird ein Konto bei Ubuntu One benötigt. Pro Konto ist die Anzahl der Maschinen, auf denen Livepatch verwendet werden kann, auf drei begrenzt. Dabei spielt es keine Rolle, ob es sich um einen Desktop-Computer, einen Server oder eine virtuelle Installation von Ubuntu handelt. Für zusätzliche Maschinen ist eine kostenpflichtige Lizenz von Canonical erforderlich.
Installation
Hinweis:
Livepatch ist nur für die amd64-Architektur verfügbar. Es kann nicht auf 32-Bit-Systemen verwendet werden.
Livepatch ist als Snap-Paket verfügbar. Bei der Neuinstallation von Ubuntu 18.04 wird man beim ersten Systemstart in der Regel während der Begrüßungstour gefragt, ob man Livepatch nutzen möchte. Ansonsten kann man Livepatch nachträglich durch die Installation des Snaps `canonical-livepatch` hinzufügen[1][2]:
<copy>
sudo snap install canonical-livepatch
</copy>
Einrichtung
Nach der Installation des Snaps muss man sich bei Livepatch via Ubuntu One auf die Seite https://auth.livepatch.canonical.com/ anmelden. Hier wählt man - sofern man nicht Kunde bei Canonical ist - den Punkt "Ubuntu User" und klickt dann auf die Schaltfläche "Get your Livepatch Token". Nach Eingabe der Logindaten für Ubuntu One gelangt man automatisch auf die Webseite, wo der benötigte Token angezeigt wird, der zur Aktivierung von Livepatch benötigt wird.
Dann führt man den Befehl[1][2]
<copy>
sudo canonical-livepatch enable TOKEN
</copy>
aus, wobei `TOKEN` durch den erhaltenen Token zu ersetzen ist. Man erhält jetzt eine Meldung wie
<copy>
Successfully enabled device. Using machine-token: 1234567890abcdef1234567890abcdef
</copy>
womit bestätigt wird, dass Livepatch auf dem System aktiviert ist.
Wenn Livepatch auf der Maschine deaktiviert wurde, kann es mit demselben Token, welches man bei Ubuntu One erhalten hat, wieder aktiviert werden. Allerdings kann man seine Token nach der Registrierung nicht mehr einsehen und muss diese also zur wiederholten Anwendung lokal speichern.
Konfiguration
Über den Befehl
<copy>
canonical-livepatch config
</copy>
wird die aktuelle Konfiguration angezeigt. Diese kann z. B. so aussehen:
<copy>
http-proxy: ""
https-proxy: ""
no-proxy: ""
remote-server: https://livepatch.canonical.com
ca-certs: ""
check-interval: 60 # minutes
</copy>
Möchte man einen Wert ändern, dann übergibt man dem Befehl zusätzliche Parameter. Zum Beispiel wenn man das `check-interval` auf 180 Minuten ändern möchte:
<copy>
sudo canonical-livepatch config check-interval="180"
</copy>
Nutzung
Nach der Installation arbeitet Livepatch automatisch im Hintergrund. Neben dem oben bereits beschriebenen Kommando `config` kennt `canonical-livepatch` noch folgende weitere Kommandos:
Kommandos von Livepatch
Kommando
Erklärung
status
Gibt den aktuellen Status von Livepatch aus. Mit `status --verbose` erhält man eine ausführlichere Ausgabe.
refresh
Prüft sofort auf neue Kernelpatches und spielt diese ein.
disable
Deaktiviert Livepatch für diese Maschine.
config
Zeigt die aktuelle Konfiguration von Livepatch an.
help
Zeigt eine ausführlichere Hilfeseite an, welche unter anderem auch Beispiele für die Konfiguration enthält.
Die Befehle `canonical-livepatch refresh` und `canonical-livepatch disable` müssen mit Root-Rechten ausgeführt werden[2].