Linux opnieuw installeren

Regelmatig voorkomend

Inhoud

Moet een standaard post-installatie taakvolgorde hebben voor de referentie, dus noteer het hier.

Zeer leeg ubuntu bureaublad

Waar

Ik gebruik meestal ubuntu-gebaseerde distributies. De meest recente installatie is Mint 21.3 (gebaseerd op ubuntu 22.04).

Hoe

enkele aangename tools

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

# als grafische werkzaamheden op de horizon liggen
sudo apt-get install imagemagick
git lfs install

# als er pdf manipulatie vereist is
sudo apt-get install poppler-utils

json manipulatie

Zie voor voorbeelden Bash Cheat Sheet

sudo apt-get install jq jo

Installeer NVidia drivers

Methode 1

Verwijder lokale NVidia drivers

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

Voeg PPA toe en vernieuw lokale pakketverwijzingen

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

Controleer welke driver versie NVidia aanbeveelt voor jouw apparaat

ubuntu-drivers devices

Installeer het

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

Controleer of je je GPU kunt zien en welke versie geïnstalleerd is

nvidia-smi

Methode 2

Zie hier voor jouw OS versie: https://developer.nvidia.com/cuda-downloads

Om de open kernel module versie te installeren:

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

Installeer CUDA

Dezelfde NVidia officiële: 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

Deze installeert een vrij oude versie, momenteel 1.18

sudo apt-get install golang-go

ga dan naar https://go.dev/dl/ en kies jouw nieuwste versie, dan,

sudo bash

en

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

voeg dan toe aan $HOME/.profile

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

dan

source $HOME/.profile
go version

vs code

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

Installeer deb pakket (je moet het eerst downloaden). Het installeren van het .deb pakket installeert automatisch de apt repository en het ondertekeningscertificaat om automatisch bijwerken te kunnen met de systeem pakketbeheerder.

Of doe hetzelfde handmatig hieronder:

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

Vernieuw dan de pakketcache en installeer het pakket met:

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

Installeer vs code extensies:

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

Standard vscode heeft enige telemetrie - gedeeltelijk verwijderd in instellingen:user:application:telemetry=>off … maar nog steeds …

VSCodium flatpack is een versie zonder telemetrie, niet erg ver achter.

Python en Anaconda

Installeer pip

sudo apt install python3-pip

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

download linux versie zoals

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

en voer het uit

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

let op het einde:

Als je liever dat conda's base omgeving niet geactiveerd wordt bij opstart,
   voer dan het volgende commando uit wanneer conda geactiveerd is:

conda config --set auto_activate_base false

Je kunt dit ongedaan maken door `conda init --reverse $SHELL` uit te voeren? [ja|nee]

hugo

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

bijvoorbeeld dit: https://github.com/gohugoio/hugo/releases/tag/v0.124.1

download en installeer 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 kan een dummy pakket zijn; als dat zo is, dan kun je dat pakket overslaan
sudo apt-get install -y apt-transport-https ca-certificates curl
# Als de map `/etc/apt/keyrings` niet bestaat, moet deze aangemaakt worden voor het curl commando, zie de opmerking hieronder.
# 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 # toestaan dat onbevoegde APT programma's dit sleutelring kunnen lezen
# Dit overschrijft eventuele bestaande configuratie 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   # helpt tools zoals command-not-found om correct te werken
sudo apt-get update
sudo apt-get install -y kubectl

ssh sleutels

kopieer ssh sleutels naar ~/.ssh

dan kopieer id naar alle ipaddrs in jouw lab

ssh-copy-id username@ipaddr

docker

sudo docker images

verwijder bestaande

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

Installeer met behulp van de apt repository

# Voeg Docker's officiële GPG sleutel toe:
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

# Voeg de repository toe aan Apt bronnen:
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

als je ubuntu afgeleiden gebruikt, moet je UBUNTU_CODENAME gebruiken in plaats van VERSION_CODENAME, zoals

# Voeg Docker's officiële GPG sleutel toe:
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

# Voeg de repository toe aan Apt bronnen:
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

Installeer de nieuwste versie:

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

Controleer

sudo docker run hello-world

Optioneel, voeg huidige gebruiker toe aan docker groep

usermod -aG docker $USER

portainer

Om te beginnen, heb je het volgende nodig:

  • De nieuwste versie van Docker geïnstalleerd en werkt
  • sudo toegang op de machine die het Portainer Server exemplaar zal hosten
  • Standaard zal Portainer Server de UI openen via poort 9443 en een TCP tunnelserver via poort 8000. De laatste is optioneel en is alleen vereist als je van plan bent Edge rekenfuncties te gebruiken met Edge agents.

Vereisten:

  • SELinux is uitgeschakeld op de machine waarop Docker draait. Als je SELinux nodig hebt, dan moet je de –privileged vlag doorgeven aan Docker bij het implementeren van Portainer.

Eerst, maak de volume aan die Portainer Server zal gebruiken om zijn database op te slaan:

sudo docker volume create portainer_data

Dan, download en installeer het Portainer Server container:

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

controleer

sudo docker ps

Navigeer naar: https://localhost:9443

Gebruikersnaam is admin, stel het wachtwoord in via de UI

Kubernetes portainer agent

Maak k8s omgeving, agent

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

dan kopieer en plak de externe ip adres van de portainer service in de UI, vergeet niet de poort 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

of als geen aspnet verwacht wordt

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

Afhankelijkheden

Wanneer je met een pakketbeheerder installeert, worden deze bibliotheken voor je geïnstalleerd. Maar, als je .NET handmatig installeert of je een zelfstandig app publiceert, moet je ervoor zorgen dat deze bibliotheken geïnstalleerd zijn:

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

Afhankelijkheden kunnen geïnstalleerd worden met de apt install commando. Het volgende snippet demonstreert het installeren van de zlib1g bibliotheek:

sudo apt install zlib1g

awscli

Om awscli te installeren van de ubuntu repository (in juli 2024 krijg je v1.22.34-1):

sudo apt install awscli

Om de geïnstalleerde awscli versie op je pc te controleren:

aws --version

Of om de meest recente versie te krijgen die fris gebakken is door Amazon (2.0): https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html

momenteel:

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 kan op veel manieren geïnstalleerd worden, zie hier: https://developer.hashicorp.com/terraform/install

Ik installeer vanaf hashicorp’s repo voor 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

En voor linux mint moet je oppassen, de terraform installer werkt niet correct. Controleer de uitvoer van deze commando’s

lsb_release -cs

cat /etc/upstream-release/lsb-release 

Nu ga naar Software Sources en vervang in Hashicorp ‘virginia’ met ‘Jammy’ en voer opnieuw uit

sudo apt update && sudo apt install terraform

Om te controleren dat terraform correct is geïnstalleerd, voer uit

terraform version

Systemd diensten beheer

Je kunt gebruiken

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

of gebruik chkservice

sudo apt-get install chkservice

sudo chkservice