Standard Ubuntu Crostini Container

Hier wird die Vorgehensweise beschrieben, wie man den Standard Ubuntu Crostini Container setzt. Vorab sei gesagt, dass Google im Moment selbst den Wechsel auf einen Ubuntu Container plant, da man in Zukunft Steam über diesen anbieten möchte.

Wir legen los …

Ubuntu 20.04 Container erstellen

Zuerst startet man die Chrome shell (crosh) mit folgendem Tastenkürzel CTRL+ALT+T, dort kann dann der Terminal gestartet werden:

vmc start termina

Umbennen des „penguin“ container:

lxc stop penguin --force
lxc rename penguin debian

Einen neuen Ubuntu container mit Namen penguin erstellen:

lxc launch ubuntu:20.04 penguin

In den neuen container (als root) wechseln:

lxc exec penguin -- bash

Gruppenzugehörigkeit für den Standard Benutzer

Das folgende Skript setzt die jeweilige Gruppenzugehörigkeit für den Standard Benutzer und löscht danach den Ubuntu User:

groups ubuntu >update-groups
sed -i 'y/ /,/; s/ubuntu,:,ubuntu,/sudo usermod -aG /; s/$/ \$USER/' update-groups
killall -u ubuntu
userdel -r ubuntu
sed -i '/^ubuntu/d' /etc/sudoers.d/90-cloud-init-users

Installation der Crostini Pakete

Updates und Installation der Crostini Pakete:

apt update
apt upgrade

HInzufügen der Crostini Repository. Diese beinhaltet die Integration mit Chrome OS:

echo "deb https://storage.googleapis.com/cros-packages stretch main" > /etc/apt/sources.list.d/cros.list
if [ -f /dev/.cros_milestone ]; then sudo sed -i "s?packages?packages/$(cat /dev/.cros_milestone)?" /etc/apt/sources.list.d/cros.list; fi
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1397BC53640DB551
apt update

Eine „work-around“ wird benötigt für den „cros-ui-config package installation conflict“. Dazu benötigen wir zunächst die binutils, in denen das ar command enthalten ist:

apt install binutils

Dann das „cros-ui-config work-around package“ installieren:

apt download cros-ui-config # ignore any warning messages
ar x cros-ui-config_0.12_all.deb data.tar.gz
gunzip data.tar.gz
tar f data.tar --delete ./etc/gtk-3.0/settings.ini
gzip data.tar
ar r cros-ui-config_0.12_all.deb data.tar.gz
rm -rf data.tar.gz

Jetzt können die benötigten Pakete installiert werden:

apt install cros-guest-tools ./cros-ui-config_0.12_all.deb

Danach kann das „work-around“ Paket gelöscht werden:

rm cros-ui-config_0.12_all.deb

Die letzten Schritte

Installation des adwaita-icon-theme-full Pakets. Ohne dieses sehen die Linux Applikationen teilweise sehr komisch aus. Optional können auch weitere Themes installiert werden:

apt install adwaita-icon-theme-full

Der Conatiner wird danach beendet:

shutdown -h now

Chrome OS neu starten. Nach dem Neustart sollte der Linux Terminal vorhanden sein und normal starten. Beim ersten Start, des Linux Containers, wird wird der Linux Nutzer angelegt. Diesen fügen wir den benötigten Gruppen hinzu mittels des oben angelegten Skripts:

sudo mv /root/update-groups .
bash update-groups
sudo rm update-groups

Crostini Pakete aktualisieren

Um Crostini nach einem Chrome OS Versionssprung aktuell zu halten muss die jeweilige Version in der sources.list angepasst werden. Findet also ein Update von Chrome OS 86 auf 87 statt, muss diese Versionsnummer dort hinterlegt werden. Die Datei wird mit folgendem Befehl geöffnet:

sudo nano /etc/apt/sources.list.d/cros.list 

Danach kann das Update gestartet werden:

sudo apt update
sudo apt upgrade

Das wars. Viel Spaß mit dem neuen Container.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert