Soluções de Erros Comuns no Linux

Configuração do Repositório EPEL no CentOS 8

Encontramos dificuldade ao baixar o pacote bridge-utils, que não foi encontrado. A configuração do repositório EPEL da Aliyun Cloud pode ser utilizada sem modificações:

# Primeiro, instale o epel-release
yum -y install epel-release

sed -i 's|^#baseurl=https://download.example/pub|baseurl=https://mirrors.aliyun.com|' /etc/yum.repos.d/epel*

sed -i 's|^metalink|#metalink|' /etc/yum.repos.d/epel*

# Em seguida, gere o cache e remova fontes inutilizáveis
rm -rf epel-next.repo

# Agora o pacote pode ser baixado com sucesso

# Procedimentos similares para outras versões

Configuração de Sincronização de Espelho UCloud

Quando não é possível fazer pull diretamente do Docker Hub, é necessário configurar a sincronização do espelho. Após o login no repositório UCloud (usando e-mail como nome de usuário e senha indepednente do repositório), os imagens podem ser baixadas normalmente.

Configuração de Rede com Três Máquinas

Configuração com duas máquinas em modo host-only e uma em modo NAT para permitir que as máquinas em modo host-only acessem a internet:

Primeiro, ative o encaminhamento de roteamento na máquina modo NAT

Ative a conversão de endereços NAT

Quando o tráfego das máquinas B e C chega à máquina A, como são endereços de rede privada, eles precisam ser convertidos para o endereço público da A para permitir o acesso

Na resposta, o endereço público precisa ser convertido de volta para os endereços privados de B e C

Alteração de Idioma do CentOS de Chinês para Inglês

# Verifique se o idioma inglês está instalado
[root@docker ~]# locale -a | grep -i en_US
# Se não aparecer, será necessário instalar


# A instalação do pacote inglês falha, exigindo o downgrade de um pacote
[root@docker yum.repos.d]# yum  install glibc-langpack-en
Última verificação de metadados expirados: 0:01:11 atrás, executado em 2025年07月18日 星期五 15时17分48秒.
Erro:
 Problema: não é possível instalar ambos glibc-common-2.28-164.el8.x86_64 do base e glibc-common-2.28-251.el8.2.x86_64 do @System
  - o pacote glibc-langpack-en-2.28-164.el8.x86_64 do base requer glibc-common = 2.28-164.el8, mas nenhum provedor pode ser instalado
  - o pacote glibc-gconv-extra-2.28-251.el8.2.x86_64 do @System requer glibc-common = 2.28-251.el8.2, mas nenhum provedor pode ser instalado
  - solicitações conflitantes
  - problemas com o pacote instalado glibc-gconv-extra-2.28-251.el8.2.x86_64
(tente adicionar '--allowerasing' para substituir pacotes conflitantes ou '--skip-broken' para pular pacotes que não podem ser instalados ou '--nobest' para não usar apenas o melhor candidato do pacote)

# A opção --allowerasing resolve o problema
[root@docker yum.repos.d]# yum  install glibc-langpack-en --allowerasing


# Altere para o seguinte
[root@docker ~]# cat /etc/locale.conf 
LANG="en_US.UTF-8"

# Execute o comando source para aplicar as alterações

Erro no Comando yum makecache

O erro principal é causado por data desatualizada, onde o sistema está tentando acessar um certificado que ainda não é válido. A solução é atualizar a hora do sistema:

[root@master yum.repos.d]# yum makecache
Atualizando repositórios de gerenciamento de assinatura.
Não foi possível ler a identidade do consumidor

Este sistema não está registrado em um servidor de direitos. Você pode usar subscription-manager para registrar.

appstream                                                              0.0  B/s |   0  B     00:00    
Erros durante o download de metadados para o repositório 'AppStream':
  - Erro Curl (60): certificado de par SSL ou chave remota SSH inválida para https://mirrors.aliyun.com/centos-stream/9-stream/AppStream/x86_64/os/repodata/repomd.xml [SSL certificate problem: certificate is not yet valid]
Erro: Falha ao baixar metadados para o repo 'AppStream': Não é possível baixar repomd.xml: Não é possível baixar repodata/repomd.xml: Todos os espelhos foram tentados

Problema de Mapeamento de Volume em Container Docker

O probelma é causado pelo SELinux. Arquivos criados nos diretórios /root e /mnt foram mapeados para o diretório raiz do container nginx, mas sem permissão apesar das permissões 777 definidas. A solução é desativar o SELinux:

root@ce856c33db0b:/usr/share/nginx# cd html/
root@ce856c33db0b:/usr/share/nginx/html# ls
ls: não é possível abrir o diretório '.': Permissão negada


# Verifique o status do SELinux
getenforce

# Desative temporariamente o SELinux
setenforce 0

Tags: CentOS Docker SELinux yum EPEL

Publicado em 6-26 18:40