Skip to content
VDS · Betriebssysteme

AlmaLinux und CentOS Stream: dnf statt apt

Wie Sie Debian-Anleitungen für die RHEL-Familie anpassen: Befehls- und Paketäquivalente, firewalld statt ufw, SELinux und das EPEL-Repository.

Aktualisiert am 23. August 2026

AlmaLinux 9 und 10 sowie CentOS Stream 9 funktionieren anders als Debian und Ubuntu. Gehen wir die Punkte durch, über die am häufigsten gestolpert wird.

Befehlsäquivalente

Debian / UbuntuAlmaLinux / CentOS Stream
apt update && apt upgradednf upgrade
apt install packagednf install package
apt remove packagednf remove package
apt search stringdnf search string
apt list --installeddnf list installed
ufwfirewall-cmd
Gruppe sudoGruppe wheel
/etc/apt/sources.list/etc/yum.repos.d/

Auch die Paketnamen unterscheiden sich: apache2 heißt hier httpd, nginx bleibt gleich, mysql-server ist mariadb-server, python3-pip ist python3-pip, aber dnsutils heißt bind-utils.

Erste Schritte

dnf upgrade -y
dnf install -y curl nano git htop tar policycoreutils-python-utils
timedatectl set-timezone Europe/Moscow
hostnamectl set-hostname my-vds

Ein Benutzer mit Administratorrechten:

adduser artem
passwd artem
usermod -aG wheel artem

Das EPEL-Repository

Viele vertraute Pakete sind nicht in den Basis-Repositories enthalten – sie liegen in EPEL:

dnf install -y epel-release
dnf upgrade -y
dnf install -y btop fail2ban

Firewall

Statt ufw kommt hier firewalld zum Einsatz:

systemctl enable --now firewalld
firewall-cmd --permanent --add-service=ssh
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --reload
firewall-cmd --list-all

Ohne --permanent verschwindet die Regel nach einem Neustart, und ohne --reload wird sie nicht sofort angewendet. Sie benötigen beide Teile.

SELinux

Die Hauptursache für mysteriöse Fehler: Die Dateiberechtigungen stimmen, der Dienst läuft, aber es gibt keinen Zugriff. So prüfen Sie den Modus:

getenforce

Häufige Fälle und Lösungen:

setsebool -P httpd_can_network_connect 1
semanage port -a -t http_port_t -p tcp 8080
restorecon -Rv /var/www

Der erste erlaubt dem Webserver ausgehende Verbindungen (nötig beim Proxying zu einer Anwendung), der zweite erlaubt das Lauschen auf einem nicht standardmäßigen Port, und der dritte korrigiert die Dateilabels nach dem Kopieren aus einem fremden Verzeichnis.

Was tatsächlich passiert, sehen Sie hier:

ausearch -m avc -ts recent

Sie müssen SELinux nicht vollständig deaktivieren: Fast immer reicht eine der drei oben genannten Techniken aus.

Was sonst noch anders ist

  • Der Apache-Webserver heißt httpd, und seine Konfigurationen liegen in /etc/httpd/, nicht in /etc/apache2/.
  • nginx hat keine Verzeichnisse sites-available und sites-enabled – Konfigurationen gehören nach /etc/nginx/conf.d/*.conf.
  • Der Webserver-Benutzer ist nginx oder apache, nicht www-data. Das ist bei chown wichtig.

Guest Agent

dnf install -y qemu-guest-agent
systemctl enable --now qemu-guest-agent

Wenn Sie sich nicht sicher sind, ob diese Familie überhaupt die richtige für Sie ist, lesen Sie welches OS wählen. Sie können das OS mit einer Neuinstallation wechseln, allerdings mit vollständigem Datenverlust.