AlmaLinux e CentOS Stream: dnf em vez de apt
Como adaptar as instruções de Debian para a família RHEL: equivalentes de comandos e pacotes, firewalld em vez de ufw, SELinux e o repositório EPEL.
Atualizado em 23 de agosto de 2026
AlmaLinux 9 e 10 e CentOS Stream 9 funcionam de forma diferente do Debian e do Ubuntu. Vamos ver os pontos em que as pessoas tropeçam com mais frequência.
Equivalentes de comandos
| Debian / Ubuntu | AlmaLinux / CentOS Stream |
|---|---|
apt update && apt upgrade | dnf upgrade |
apt install package | dnf install package |
apt remove package | dnf remove package |
apt search string | dnf search string |
apt list --installed | dnf list installed |
ufw | firewall-cmd |
grupo sudo | grupo wheel |
/etc/apt/sources.list | /etc/yum.repos.d/ |
Os nomes dos pacotes também mudam: apache2 aqui é httpd, nginx continua igual, mysql-server é mariadb-server, python3-pip é python3-pip, mas dnsutils se chama bind-utils.
Primeiros passos
dnf upgrade -y
dnf install -y curl nano git htop tar policycoreutils-python-utils
timedatectl set-timezone Europe/Moscow
hostnamectl set-hostname my-vds
Um usuário com direitos de administrador:
adduser artem
passwd artem
usermod -aG wheel artem
O repositório EPEL
Muitos pacotes conhecidos não estão nos repositórios base — eles ficam no EPEL:
dnf install -y epel-release
dnf upgrade -y
dnf install -y btop fail2ban
Firewall
Em vez do ufw, aqui se usa o firewalld:
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
Sem
--permanent, a regra desaparece depois de reiniciar, e sem--reload, ela não é aplicada agora. Você precisa das duas partes.
SELinux
A principal fonte de falhas misteriosas: as permissões de arquivo estão corretas, o serviço está rodando, mas não há acesso. Para verificar o modo:
getenforce
Casos comuns e soluções:
setsebool -P httpd_can_network_connect 1
semanage port -a -t http_port_t -p tcp 8080
restorecon -Rv /var/www
O primeiro permite que o servidor web faça conexões de saída (necessário ao fazer proxy para uma aplicação), o segundo permite escutar em uma porta não padrão, e o terceiro corrige os rótulos de arquivo depois de copiar do diretório de outra pessoa.
Você pode ver o que está acontecendo de fato aqui:
ausearch -m avc -ts recent
Você não precisa desativar o SELinux por completo: quase sempre, uma das três técnicas acima é suficiente.
O que mais é diferente
- O servidor web Apache se chama
httpd, e suas configurações ficam em/etc/httpd/, não em/etc/apache2/. - O nginx não tem os diretórios
sites-availableesites-enabled— as configurações vão em/etc/nginx/conf.d/*.conf. - O usuário do servidor web é
nginxouapache, nãowww-data. Isso importa com ochown.
Guest agent
dnf install -y qemu-guest-agent
systemctl enable --now qemu-guest-agent
Se você não tem certeza se deve escolher essa família, veja qual sistema operacional escolher. Você pode trocar o sistema operacional com uma reinstalação, mas com perda total dos dados.