Linux neu installieren

Kommt regelmäßig vor

Inhaltsverzeichnis

Hier ist die Übersetzung des Inhalts gemäß den angegebenen Richtlinien:


Man benötigt eine Standard-Post-Installations-Task-Sequenz als Referenz, daher wird diese hier aufgezeichnet.

Sehr leerer Ubuntu-Desktop

Wo

Normalerweise verwende ich Ubuntu-basierte Distributionen. Die neueste Installation ist Mint 21.3 (basierend auf Ubuntu 22.04).

Wie

Einige nützliche Tools

sudo apt-get install git git-lfs gimp mc flameshot htop nvtop chkservice

# wenn grafische Arbeit ansteht
sudo apt-get install imagemagick
git lfs install

# wenn einige PDF-Manipulation erforderlich ist
sudo apt-get install poppler-utils

JSON-Manipulation

Beispiele siehe im Bash Cheat Sheet

sudo apt-get install jq jo

Installation von NVidia-Treibern

Methode 1

Lokale NVidia-Treiber entfernen

sudo apt-get purge 'nvidia*'
sudo apt-get autoremove
sudo apt-get autoclean

PPA hinzufügen und lokale Paketreferenzen aktualisieren

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update

Überprüfen, welche Treiberversion NVidia für Ihr Gerät empfiehlt

ubuntu-drivers devices

Installieren

sudo apt-get install nvidia-driver-535
sudo reboot

Überprüfen, dass Sie Ihre GPU sehen können und welche Version installiert ist

nvidia-smi

Methode 2

Siehe hier für Ihre OS-Version: https://developer.nvidia.com/cuda-downloads

Zum Installieren der Open Kernel Module-Variante:

sudo apt-get install -y nvidia-driver-555-open
sudo apt-get install -y cuda-drivers-555

Installation von CUDA

Das gleiche offizielle NVidia: https://developer.nvidia.com/cuda-downloads

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/12.9.0/local_installers/cuda-repo-ubuntu2204-12-9-local_12.9.0-575.51.03-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2204-12-9-local_12.9.0-575.51.03-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2204-12-9-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-9

Flatpacks

vlc, obsidian, nextcloud desktop, foliate, dbeaver

ungoogled-chromium

https://github.com/ungoogled-software/ungoogled-chromium

echo 'deb http://download.opensuse.org/repositories/home:/ungoogled_chromium/Ubuntu_Jammy/ /' | sudo tee /etc/apt/sources.list.d/home:ungoogled_chromium.list
curl -fsSL https://download.opensuse.org/repositories/home:ungoogled_chromium/Ubuntu_Jammy/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home_ungoogled_chromium.gpg > /dev/null
sudo apt update
sudo apt install ungoogled-chromium

golang

Dieses installiert eine recht alte Version, derzeit 1.18

sudo apt-get install golang-go

Also, gehen Sie zu https://go.dev/dl/ und wählen Sie Ihre neueste Version aus, dann,

sudo bash

und

wget https://go.dev/dl/go1.24.3.linux-amd64.tar.gz
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.24.3.linux-amd64.tar.gz

dann zu $HOME/.profile hinzufügen

export PATH=$PATH:/usr/local/go/bin

dann

source $HOME/.profile
go version

vs code

https://code.visualstudio.com/docs/setup/linux

Installieren Sie das deb-Paket (muss zuerst heruntergeladen werden). Die Installation des .deb-Pakets installiert automatisch das apt-Repository und den Signierschlüssel, um das automatische Aktualisieren mit dem System-Paketmanager zu ermöglichen.

Oder führen Sie das gleiche manuell unten durch:

sudo apt-get install wget gpg
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -D -o root -g root -m 644 packages.microsoft.gpg /etc/apt/keyrings/packages.microsoft.gpg
sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
rm -f packages.microsoft.gpg

Dann aktualisieren Sie den Paket-Cache und installieren Sie das Paket mit:

sudo apt install apt-transport-https
sudo apt update
sudo apt install code # oder code-insiders

Installieren Sie VS Code-Erweiterungen:

Python, C#, Go, Hugohelper, Front Matter CMS, React*, [Flutter](https://www.glukhov.org/de/post/2022/flutter-dart-cheatsheet/ “Flutter (Dart) Cheatsheet mit Beispielen etc.

Standard-VSCode hat einige Telemetrie - teilweise in den Einstellungen entfernt: user:application:telemetry=>off … aber immer noch …

VSCodium Flatpack ist eine Version ohne Telemetrie, die nicht sehr weit zurückliegt.

Python und Anaconda

Installieren Sie pip

sudo apt install python3-pip

https://www.anaconda.com/download/success

Laden Sie die Linux-Version herunter wie

wget https://repo.anaconda.com/archive/Anaconda3-2024.06-1-Linux-x86_64.sh

und führen Sie es aus

bash Anaconda3-2024.06-1-Linux-x86_64.sh

Achten Sie am Ende darauf:

Wenn Sie nicht möchten, dass die Basisumgebung von conda beim Startup aktiviert wird,
   führen Sie den folgenden Befehl aus, wenn conda aktiviert ist:

conda config --set auto_activate_base false

Sie können dies rückgängig machen, indem Sie `conda init --reverse $SHELL`? [ja|nein] ausführen

hugo

https://gohugo.io/installation/linux/

zum Beispiel dies: https://github.com/gohugoio/hugo/releases/tag/v0.124.1

herunterladen und installieren hugo_extended_0.124.1_linux-amd64.deb

kubectl

https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#install-using-native-package-management

sudo apt-get update
# apt-transport-https kann ein Dummy-Paket sein; wenn dies der Fall ist, können Sie dieses Paket überspringen
sudo apt-get install -y apt-transport-https ca-certificates curl
# Wenn der Ordner `/etc/apt/keyrings` nicht existiert, sollte er vor dem curl-Befehl erstellt werden, lesen Sie den Hinweis unten.
# sudo mkdir -p -m 755 /etc/apt/keyrings
curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.29/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
sudo chmod 644 /etc/apt/keyrings/kubernetes-apt-keyring.gpg # ermöglicht unprivilegierten APT-Programmen das Lesen dieses Keyrings
# Dies überschreibt jede vorhandene Konfiguration in /etc/apt/sources.list.d/kubernetes.list
echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.29/deb /' | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo chmod 644 /etc/apt/sources.list.d/kubernetes.list   # hilft Tools wie command-not-found, korrekt zu funktionieren
sudo apt-get update
sudo apt-get install -y kubectl

SSH-Schlüssel

Kopieren Sie SSH-Schlüssel nach ~/.ssh

dann kopieren Sie die ID zu allen IP-Adressen in Ihrem Labor

ssh-copy-id username@ipaddr

docker

sudo docker images

Deinstallieren Sie vorhandene Versionen

for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

Installation über das apt-Repository

# Fügen Sie den offiziellen GPG-Schlüssel von Docker hinzu:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Fügen Sie das Repository zu den Apt-Quellen hinzu:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

Wenn Sie Ubuntu-Derivate verwenden, müssen Sie UBUNTU_CODENAME anstelle von VERSION_CODENAME verwenden, wie z.B.

# Fügen Sie den offiziellen GPG-Schlüssel von Docker hinzu:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Fügen Sie das Repository zu den Apt-Quellen hinzu:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$UBUNTU_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

Installieren Sie die neueste Version:

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Überprüfen

sudo docker run hello-world

Optional, fügen Sie den aktuellen Benutzer zur Docker-Gruppe hinzu

usermod -aG docker $USER

portainer

Um loszulegen, benötigen Sie:

  • Die neueste Version von Docker, installiert und funktionierend
  • sudo-Zugriff auf die Maschine, die Ihre Portainer-Server-Instanz hostet
  • Standardmäßig stellt Portainer Server die UI über Port 9443 bereit und stellt einen TCP-Tunnelserver über Port 8000 bereit. Letzteres ist optional und nur erforderlich, wenn Sie die Edge-Compute-Funktionen mit Edge-Agents verwenden möchten.

Anforderungen:

  • SELinux ist auf der Maschine, die Docker ausführt, deaktiviert. Wenn Sie SELinux benötigen, müssen Sie die –privileged-Flag an Docker übergeben, wenn Sie Portainer bereitstellen.

Erstellen Sie zuerst das Volume, das Portainer Server zur Speicherung seiner Datenbank verwenden wird:

sudo docker volume create portainer_data

Dann laden Sie den Portainer Server-Container herunter und installieren Sie ihn:

sudo docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

überprüfen

sudo docker ps

Navigieren Sie zu: https://localhost:9443

Der Benutzername ist admin, setzen Sie das Passwort in der UI

Kubernetes Portainer Agent

Erstellen Sie eine K8s-Umgebung, Agent

kubectl apply -f https://downloads.portainer.io/ce2-19/portainer-agent-k8s-lb.yaml
kubectl get services --all-namespaces

dann kopieren Sie die externe IP-Adresse des Portainer-Dienstes in die UI, vergessen Sie nicht den Port 9001

.netcore sdk

https://learn.microsoft.com/en-gb/dotnet/core/install/linux-ubuntu-install?tabs=dotnet8&pivots=os-linux-ubuntu-2204

sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-8.0 aspnetcore-runtime-8.0

oder wenn kein aspnet erwartet wird

sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-8.0 dotnet-runtime-8.0

Abhängigkeiten

Wenn Sie mit einem Paketmanager installieren, werden diese Bibliotheken für Sie installiert. Wenn Sie jedoch .NET manuell installieren oder eine selbstständige App veröffentlichen, müssen Sie sicherstellen, dass diese Bibliotheken installiert sind:

  • libc6
  • libgcc-s1
  • libgssapi-krb5-2
  • libicu70
  • liblttng-ust1
  • libssl3
  • libstdc++6
  • libunwind8
  • zlib1g

Abhängigkeiten können mit dem apt install-Befehl installiert werden. Das folgende Snippet demonstriert die Installation der zlib1g-Bibliothek:

sudo apt install zlib1g

awscli

Um awscli aus dem Ubuntu-Repository zu installieren (im Juli 2024 erhalten Sie damit v1.22.34-1):

sudo apt install awscli

Um die installierte awscli-Version auf Ihrem PC zu überprüfen:

aws --version

Oder um die aktuellste Version direkt von Amazon (2.0) zu erhalten: https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html

Aktuell:

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install --bin-dir /usr/local/bin --install-dir /usr/local/aws-cli --update

Terraform

Terraform kann auf verschiedene Weisen installiert werden, siehe hier: https://developer.hashicorp.com/terraform/install

Ich installiere es aus dem Hashicorp-Repository für Ubuntu:

wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install terraform

Und für Linux Mint: Seien Sie vorsichtig, der Terraform-Installer funktioniert nicht korrekt. Überprüfen Sie die Ausgaben dieser beiden Befehle:

lsb_release -cs

cat /etc/upstream-release/lsb-release

Gehen Sie nun zu Software-Quellen und ersetzen Sie in Hashicorp ‘virginia’ durch ‘Jammy’ und führen Sie erneut aus:

sudo apt update && sudo apt install terraform

Um zu überprüfen, dass Terraform korrekt installiert wurde, führen Sie aus:

terraform version

Systemd-Dienststeuerung

Man kann verwenden

systemctl status
systemctl stop some-service
systemctl disable some-service

oder man kann chkservice verwenden

sudo apt-get install chkservice

sudo chkservice