Todos os produtos
Search
Central de documentação

Elastic Compute Service:Adicionar ou reparar um repositório de software da Alibaba Cloud para uma instância Linux

Última atualização: Jul 03, 2026

Na maioria dos casos, os pacotes de software do Linux ficam armazenados em repositórios. Após adicionar um repositório, use a ferramenta de gerenciamento de pacotes do Linux para pesquisar, instalar ou atualizar o software disponível. Assim, você executa rapidamente tarefas de operação e manutenção do sistema ou atende aos requisitos de desenvolvimento de aplicações. Este tópico descreve como instalar, gerenciar e utilizar repositórios de software em diferentes distribuições Linux. Os exemplos a seguir utilizam os repositórios da Alibaba Cloud.

Informações básicas

A velocidade de acesso a um repositório de software varia conforme diversos fatores, como região e distância geográfica. O site de imagens open source da Alibaba Cloud utiliza a infraestrutura da Alibaba Cloud para oferecer serviços de imagem integrados e de alta velocidade gratuitamente aos usuários da Internet, incluindo repositórios das principais distribuições Linux, como CentOS, Debian, Ubuntu, Fedora e openSUSE. Todos os usuários podem utilizar os repositórios no site de imagens open source da Alibaba Cloud sem custo, independentemente de possuírem contas na Alibaba Cloud. Para mais informações, acesse o site de imagens open source da Alibaba Cloud.

Importante
  • As imagens públicas fornecidas pela Alibaba Cloud substituem automaticamente os endereços dos repositórios das distribuições Linux comuns pelos endereços privados dos repositórios do Elastic Compute Service (ECS) da Alibaba Cloud correspondentes. Usuários do ECS podem utilizar esses repositórios sem necessidade de configuração manual. Caso precise adicionar ou reparar o repositório de uma distribuição Linux, siga os procedimentos descritos neste tópico.

  • Nos exemplos a seguir, utiliza-se o endereço público de repositório http://mirrors.aliyun.com, adequado para servidores Linux com acesso à Internet. Se seus servidores forem instâncias do ECS da Alibaba Cloud, recomendamos o uso do endereço http://mirrors.cloud.aliyuncs.com, que corresponde ao repositório privado do ECS, para acelerar o download das imagens.

Adicionar um repositório de software da Alibaba Cloud a uma instância Linux

  1. Conecte-se a uma instância Linux.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench. No exemplo a seguir, utiliza-se a conta ecs-user para conectar-se a uma instância Linux. Você também pode empregar outro método de conexão.

  2. Adicione um repositório de software da Alibaba Cloud.

    Nota

    A seção a seguir descreve como adicionar repositórios da Alibaba Cloud às distribuições Linux mais comuns. Execute as operações conforme a distribuição Linux utilizada. Para adicionar repositórios a outras distribuições Linux, acesse o site de imagens open source da Alibaba Cloud e clique em na distribuição do sistema operacional desejada para visualizar o procedimento.

    Alibaba Cloud Linux 2 e 3

    1. Faça backup do repositório original.

      sudo mv /etc/yum.repos.d/AliYun.repo /etc/yum.repos.d/AliYun.repo.backup
    2. Execute um dos comandos abaixo para adicionar o repositório da Alibaba Cloud conforme o sistema operacional.

      Alibaba Cloud Linux 3

      sudo rpm -Uvh --reinstall https://mirrors.aliyun.com/alinux/3/updates/x86_64/Packages/alinux-repos-3.2104.10-2.al8.x86_64.rpm

      Alibaba Cloud Linux 2

      sudo rpm -Uvh --reinstall https://mirrors.aliyun.com/alinux/2/updates/x86_64/Packages/alinux-release-2.1903-11.al7.x86_64.rpm
    3. Gere um cache local para acelerar a pesquisa e a instalação de software.

      sudo yum clean all && sudo yum makecache

    CentOS 6, 7 e 8

    1. Faça backup do repositório original.

      sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
    2. Execute um dos comandos abaixo para adicionar o repositório da Alibaba Cloud conforme o sistema operacional.

      CentOS 8

      url=https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo;if [ -f /usr/bin/curl ];then sudo curl -sSO $url;else sudo wget -O /etc/yum.repos.d/Centos-vault-8.5.2111.repo $url; fi

      CentOS 7

      url=https://mirrors.aliyun.com/repo/Centos-7.repo;if [ -f /usr/bin/curl ];then sudo curl -sSO $url;else sudo wget -O /etc/yum.repos.d/Centos-7.repo $url; fi

      CentOS 6

      url=https://mirrors.aliyun.com/repo/Centos-vault-6.10.repo;if [ -f /usr/bin/curl ];then sudo curl -sSO $url;else sudo wget -O /etc/yum.repos.d/Centos-vault-6.10.repo $url; fi
    3. Gere um cache local para acelerar a pesquisa e a instalação de software.

      sudo yum clean all && sudo yum makecache

    Ubuntu

    1. Faça backup do repositório original.

      sudo mv /etc/apt/sources.list /etc/apt/sources.list.backup
    2. Crie e abra um arquivo de configuração.

      sudo vim /etc/apt/sources.list
    3. Pressione a tecla I para entrar no modo de inserção e adicione as informações abaixo ao arquivo de configuração.

      Ubuntu 24.04

      deb https://mirrors.aliyun.com/ubuntu/ noble main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ noble main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ noble-security main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ noble-security main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ noble-updates main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ noble-updates main restricted universe multiverse
      
      # deb https://mirrors.aliyun.com/ubuntu/ noble-proposed main restricted universe multiverse
      # deb-src https://mirrors.aliyun.com/ubuntu/ noble-proposed main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ noble-backports main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ noble-backports main restricted universe multiverse

      Ubuntu 23.04

      deb https://mirrors.aliyun.com/ubuntu/ lunar main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ lunar main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ lunar-security main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ lunar-security main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ lunar-updates main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ lunar-updates main restricted universe multiverse
      
      # deb https://mirrors.aliyun.com/ubuntu/ lunar-proposed main restricted universe multiverse
      # deb-src https://mirrors.aliyun.com/ubuntu/ lunar-proposed main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ lunar-backports main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ lunar-backports main restricted universe multiverse

      Ubuntu 22.04

      deb https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
      
      # deb https://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
      # deb-src https://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
      

      Ubuntu 20.04

      deb https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
      
      # deb https://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
      # deb-src https://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

      Ubuntu 18.04

      deb https://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
      
      # deb https://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
      # deb-src https://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
      
      deb https://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
      deb-src https://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
    4. Pressione a tecla Esc, insira :wq e pressione a tecla Enter para salvar e fechar o arquivo de configuração.

    5. Atualize os pacotes no repositório.

      sudo apt update

    Debian

    1. Faça backup do repositório original.

      sudo mv /etc/apt/sources.list /etc/apt/sources.list.backup
    2. Crie e abra um arquivo de configuração.

      sudo vim /etc/apt/sources.list
    3. Pressione a tecla I para entrar no modo de inserção e adicione as informações abaixo ao arquivo de configuração.

      Debian 11.x

      deb http://mirrors.cloud.aliyuncs.com/debian/ bullseye main non-free contrib
      deb-src http://mirrors.cloud.aliyuncs.com/debian/ bullseye main non-free contrib
      deb http://mirrors.cloud.aliyuncs.com/debian-security/ bullseye-security main
      deb-src http://mirrors.cloud.aliyuncs.com/debian-security/ bullseye-security main
      deb http://mirrors.cloud.aliyuncs.com/debian/ bullseye-updates main non-free contrib
      deb-src http://mirrors.cloud.aliyuncs.com/debian/ bullseye-updates main non-free contrib

      Debian 10.x

      deb http://mirrors.cloud.aliyuncs.com/debian-archive/debian/ buster main non-free contrib
      deb http://mirrors.cloud.aliyuncs.com/debian-archive/debian-security buster/updates main
      deb http://mirrors.cloud.aliyuncs.com/debian-archive/debian/ buster-updates main non-free contrib
      deb-src http://mirrors.cloud.aliyuncs.com/debian-archive/debian/ buster main non-free contrib
      deb-src http://mirrors.cloud.aliyuncs.com/debian-archive/debian-security buster/updates main
      deb-src http://mirrors.cloud.aliyuncs.com/debian-archive/debian/ buster-updates main non-free contrib

      Debian 9.x

      deb http://mirrors.cloud.aliyuncs.com/debian-archive/debian stretch main contrib non-free
      #deb http://mirrors.cloud.aliyuncs.com/debian-archive/debian stretch-proposed-updates main non-free contrib
      #deb http://mirrors.cloud.aliyuncs.com/debian-archive/debian stretch-backports main non-free contrib
      deb http://mirrors.cloud.aliyuncs.com/debian-archive/debian-security stretch/updates main contrib non-free
      deb-src http://mirrors.cloud.aliyuncs.com/debian-archive/debian stretch main contrib non-free
      #deb-src http://mirrors.cloud.aliyuncs.com/debian-archive/debian stretch-proposed-updates main contrib non-free
      #deb-src http://mirrors.cloud.aliyuncs.com/debian-archive/debian stretch-backports main contrib non-free
      deb-src http://mirrors.cloud.aliyuncs.com/debian-archive/debian-security stretch/updates main contrib non-free

      Debian 8.x

      deb http://mirrors.cloud.aliyuncs.com/debian-archive/debian/ jessie main non-free contrib
      deb-src http://mirrors.cloud.aliyuncs.com/debian-archive/debian/ jessie main non-free contrib
    4. Pressione a tecla Esc, insira :wq e pressione a tecla Enter para salvar e fechar o arquivo de configuração.

    5. Atualize os pacotes no repositório.

      sudo apt update

    Fedora

    1. Faça backup dos repositórios originais.

      sudo mv /etc/yum.repos.d/fedora.repo /etc/yum.repos.d/fedora.repo.backup
      sudo mv /etc/yum.repos.d/fedora-updates.repo /etc/yum.repos.d/fedora-updates.repo.backup
    2. Adicione o repositório Fedora da Alibaba Cloud.

      url=http://mirrors.aliyun.com/repo/fedora.repo;if [ -f /usr/bin/curl ];then sudo curl -sSO $url;else sudo wget -O /etc/yum.repos.d/fedora.repo $url; fi
    3. Adicione o repositório Fedora-updates da Alibaba Cloud.

      url=http://mirrors.aliyun.com/repo/fedora-updates.repo;if [ -f /usr/bin/curl ];then sudo curl -sSO $url;else sudo wget -O /etc/yum.repos.d/fedora-updates.repo $url; fi
    4. Gere um cache local.

      sudo yum clean all && sudo yum makecache

    openSUSE 15.6

    1. Faça backup do repositório original.

      sudo rename '.repo' '.repo.backup' /etc/zypp/repos.d/openSUSE*.repo
    2. Adicione os repositórios da Alibaba Cloud.

      sudo zypper addrepo -f http://mirrors.aliyun.com/opensuse/distribution/leap/15.6/repo/oss/ openSUSE-15.6-Oss
      sudo zypper addrepo -f http://mirrors.aliyun.com/opensuse/distribution/leap/15.6/repo/non-oss/ openSUSE-15.6-Non-Oss
      sudo zypper addrepo -f http://mirrors.aliyun.com/opensuse/update/leap/15.6/oss/ openSUSE-15.6-Update-Oss
      sudo zypper addrepo -f http://mirrors.aliyun.com/opensuse/update/leap/15.6/non-oss/ openSUSE-15.6-Update-Non-Oss
    3. Gere um cache local.

      sudo zypper ref

Usar ferramentas de gerenciamento de pacotes para gerenciar software

Em sistemas operacionais Linux, use ferramentas de gerenciamento de pacotes para administrar o software disponível nos repositórios. As ferramentas mais comuns incluem Yellowdog Updater Modified (YUM), Dandified YUM (DNF), Advanced Packaging Tool (APT) e Zypper. Esta seção explica como pesquisar, instalar, atualizar e remover software usando essas ferramentas em diferentes distribuições. Substitua os nomes dos pacotes nos exemplos a seguir pelos nomes reais conforme suas necessidades.

Nota

Os pacotes nas distribuições Linux recebem atualizações contínuas para adicionar novos recursos, corrigir bugs e fornecer atualizações de segurança. Atualize os pacotes para as versões mais recentes conforme a necessidade do seu ambiente.

Alibaba Cloud Linux, CentOS e Fedora

  • Pesquisar um pacote

    Use a ferramenta YUM para pesquisar um pacote.

    sudo yum search <Search keyword>

    Por exemplo, execute o comando abaixo para pesquisar pacotes cujos nomes contenham a palavra-chave nginx:

    sudo yum search nginx
  • Instalar um pacote

    Use a ferramenta YUM para instalar um pacote.

    sudo yum install <Software package name>

    Por exemplo, execute o comando abaixo para instalar o pacote nginx:

    sudo yum install nginx
  • Reinstalar um pacote

    Use a ferramenta YUM para reinstalar um pacote.

    sudo yum reinstall <Software package name>

    Por exemplo, execute o comando abaixo para reinstalar o pacote nginx:

    sudo yum reinstall nginx
  • Atualizar um pacote

    Use a ferramenta YUM para atualizar um pacote.

    sudo yum update <Software package name>

    Por exemplo, execute o comando abaixo para atualizar o pacote nginx:

    sudo yum update nginx
  • Remover um pacote

    Use a ferramenta YUM para remover um pacote.

    sudo yum remove <Software package name>

    Por exemplo, execute o comando abaixo para remover o pacote nginx:

    sudo yum remove nginx

Ubuntu e Debian

  • Pesquisar um pacote

    Use a ferramenta APT para pesquisar um pacote.

    sudo apt search <Search keyword>

    Por exemplo, execute o comando abaixo para pesquisar pacotes cujos nomes contenham a palavra-chave nginx:

    sudo apt search nginx
  • Instalar um pacote

    Use a ferramenta APT para instalar um pacote.

    sudo apt install <Software package name>

    Por exemplo, execute o comando abaixo para instalar o pacote nginx:

    sudo apt install nginx
  • Reinstalar um pacote

    Use a ferramenta APT para reinstalar um pacote.

    sudo apt install --reinstall <Software package name>

    Por exemplo, execute o comando abaixo para reinstalar o pacote nginx:

    sudo apt install --reinstall nginx
  • Atualizar um pacote

    Use a ferramenta APT para atualizar um pacote.

    sudo apt upgrade <Software package name>

    Por exemplo, execute o comando abaixo para atualizar o pacote nginx:

    sudo apt upgrade nginx
  • Remover um pacote

    Use a ferramenta APT para remover um pacote.

    sudo apt remove <Software package name>

    Por exemplo, execute o comando abaixo para remover o pacote nginx:

    sudo apt remove nginx

openSUSE

  • Pesquisar um pacote

    Use a ferramenta Zypper para pesquisar um pacote.

    sudo zypper search <Search keyword>

    Por exemplo, execute o comando abaixo para pesquisar pacotes cujos nomes contenham a palavra-chave nginx:

    sudo zypper search nginx
  • Instalar um pacote

    Use a ferramenta Zypper para instalar um pacote.

    sudo zypper install <Software package name>

    Por exemplo, execute o comando abaixo para instalar o pacote nginx:

    sudo zypper install nginx
  • Reinstalar um pacote

    Use a ferramenta Zypper para reinstalar um pacote.

    sudo zypper install --force <Software package name>

    Por exemplo, execute o comando abaixo para reinstalar o pacote nginx:

    sudo zypper install --force nginx
  • Atualizar um pacote

    Use a ferramenta Zypper para atualizar um pacote:

    sudo zypper update <Software package name>

    Por exemplo, execute o comando abaixo para atualizar o pacote nginx:

    sudo zypper update nginx
  • Remover um pacote

    Use a ferramenta Zypper para remover um pacote.

    sudo zypper remove <Software package name>

    Por exemplo, execute o comando abaixo para remover o pacote nginx:

    sudo zypper remove nginx

Perguntas frequentes

O que fazer se o erro "Failed to fetch" ocorrer ao instalar o OpenJDK em uma instância ECS com Ubuntu 14.04?

Descrição do problema

Ao executar o comando abaixo para instalar o pacote openjdk-7-jre-headless em uma instância ECS com Ubuntu 14.04, ocorre o erro Failed to fetch.

apt-get install openjdk-7-jre-headless

A figura a seguir mostra um exemplo de saída do comando.

Causa

A instância ECS com Ubuntu 14.04 está conectada a um repositório externo. Como resultado, não é possível instalar o Open Java Development Kit (OpenJDK) na instância.

Solução

  1. Conecte-se à instância ECS Linux.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench.

  2. Execute o comando abaixo para reinstalar o OpenJDK:

    apt-get install openjdk-7-jre-headless  --fix-missing

O que fazer se não for possível usar a ferramenta YUM para instalar o MySQL em uma instância ECS com CentOS 7.0 e a mensagem de erro "File contains no section headers." for exibida?

Descrição do problema

Ao executar um comando yum para instalar o MySQL em uma instância ECS com CentOS 7.0, a seguinte mensagem de erro é exibida:

File contains no section headers.

Causa

O repositório não fornece o pacote relevante.

Solução

Para alternar para o repositório oficial do CentOS, siga estas etapas:

  1. Conecte-se à instância ECS Linux.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench.

  2. Modifique o arquivo de configuração /etc/yum.repos.d/epel.repo.

    1. Abra o arquivo de configuração /etc/yum.repos.d/epel.repo.

      vim /etc/yum.repos.d/epel.repo
    2. Pressione a tecla I para entrar no modo de inserção e substitua o conteúdo do arquivo pelo conteúdo abaixo:

      [epel-source]
      name=Extra Packages for Enterprise Linux 7 - $basearch - Source
      #baseurl=http://download.fedoraproject.org/pub/epel/7/SRPMS
      mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch
      failovermethod=priority
      enabled=0
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
      gpgcheck=1
      
      [epel] 
      name=Extra Packages for Enterprise Linux 7 - $basearch #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch 
      failovermethod=priority 
      enabled=1 
      gpgcheck=0 
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 
      
      [epel-debuginfo]
      name=Extra Packages for Enterprise Linux 7 - $basearch - Debug #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch/debug mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch failovermethod=priority 
      enabled=0 
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 
      gpgcheck=1
    3. Pressione a tecla Esc para sair do modo de inserção. Em seguida, insira :wq e pressione a tecla Enter para salvar e fechar o arquivo.

  3. Execute os comandos abaixo em sequência para aplicar o novo repositório:

    yum makecache
    yum repolist
  4. Reinstale o MySQL. Se o problema for resolvido, a mensagem de erro anterior deixará de aparecer.

Como configurar o repositório RPMForge em uma instância ECS com CentOS 6?

Procedimento

O RPMForge é um repositório de terceiros recomendado pela comunidade oficial do CentOS. Para configurar o repositório RPMForge em uma instância ECS com CentOS 6, siga estas etapas:

  1. Conecte-se à instância ECS Linux.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench.

  2. Verifique a arquitetura do sistema.

    uname -i

    A saída do comando abaixo indica que a arquitetura x86_64 está em uso.

    x86_64
  3. Execute um comando, como wget, para baixar o pacote RPM necessário conforme a arquitetura real do sistema.

    http://repository.it4i.cz/mirrors/repoforge/redhat/el6/en/i386/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.i686.rpm
    
    http://repository.it4i.cz/mirrors/repoforge/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
  4. Importe a chave GNU Privacy Guard (GPG) do repositório Dag.

    rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
  5. Instale o pacote RPM baixado.

    rpm -i rpmforge-release-0.5.3-1.el6.rf.*.rpm
  6. Acesse o diretório abaixo e verifique se existem arquivos de configuração de repositório cujos nomes contenham a palavra-chave rpmforge:

    /etc/yum.repos.d/

    A saída do comando abaixo indica que o repositório RPMForge foi instalado.

O que fazer se a mensagem de erro "error processing package install-info (--configure)" aparecer ao executar o comando apt-get para instalar software?

Descrição do problema

Ao executar o comando apt-get para instalar software em uma instância ECS com Ubuntu, a mensagem de erro error processing package install-info (--configure) é exibida.

Causa

Esse problema pode ocorrer quando o pacote do Ubuntu está corrompido, resultando em falha na instalação.

Solução

Para atualizar e sincronizar o repositório APT e reinstalar o software, siga estas etapas:

  1. Conecte-se à instância Ubuntu.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench.

  2. Renomeie a pasta info.

    mv /var/lib/dpkg/info/ /var/lib/dpkg/info.bak.old/
  3. Crie uma nova pasta info.

    mkdir /var/lib/dpkg/info/
  4. Atualize e sincronize o repositório APT.

    apt-get update
  5. Reinstale o software. Substitua <xxxxx> pelo nome do pacote que deseja reinstalar. Se o problema for resolvido, a mensagem de erro anterior deixará de aparecer.

    apt-get install <xxxxx>

O que fazer se o erro "Segmentation faultsts" ocorrer ao executar o comando apt-get para instalar ou atualizar software?

Descrição do problema

Ao executar o comando apt-get para instalar ou atualizar software em uma instância ECS com Ubuntu, ocorre o erro Segmentation faultsts.

Causa

Esse problema pode ocorrer devido a um conflito no cache do APT, resultando em falha na instalação ou atualização.

Solução

Siga estas etapas para atualizar e sincronizar o repositório APT:

  1. Conecte-se à instância Ubuntu.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench.

  2. Faça backup dos arquivos no diretório /var/cache/apt/.

  3. Exclua todos os arquivos .bin do diretório /var/cache/apt/.

    rm /var/cache/apt/*.bin
  4. Atualize e sincronize o repositório APT.

    apt-get update
  5. Verifique se é possível executar o comando apt-get para instalar ou atualizar software conforme esperado.

    Nota

    Se o erro Segmentation faults ocorrer em uma instância ECS com pouca memória, por exemplo, apenas 512 MB, execute também o comando top para verificar o uso de memória, interrompa temporariamente processos não essenciais e tente executar novamente o comando apt-get.

O que fazer se a mensagem de erro "Reading package lists... Error!" aparecer ao executar o comando apt-get para instalar software?

Descrição do problema

Ao executar o comando apt-get para instalar software em uma instância ECS com Ubuntu, a seguinte mensagem de erro é exibida:

Reading package lists... Error!  E: Encountered a section with no Package: header E: Problem with MergeList /var/lib/apt/lists/AZ.archive.ubuntu.com_ubuntu_dists_natty_main_i18n _Translation-en E: The package lists or status file could not be parsed or opened.

Causa

A lista de pacotes está corrompida, causando erro na instalação.

Solução

Para limpar a lista de pacotes corrompida e regenerar a lista mais recente, siga estas etapas:

  1. Limpe a lista de pacotes corrompida no diretório de listas de pacotes.

    rm -rf /var/lib/apt/lists/*
  2. Regenere a lista de pacotes mais recente.

    apt-get update

    image

  3. Reinstale o software. Se o problema for resolvido, a mensagem de erro anterior deixará de aparecer.

O que fazer se a mensagem de erro "Error http://mirrors.aliyun.com/ubuntu/ trusty-updates/main unzip amd64 6.0-9ubuntu1.1 404 Not Found [IP: 112.124.XXX.XXX 80]" aparecer ao executar o comando apt-get install unzip ou aptitude install unzip?

Descrição do problema

Ao executar o comando apt-get install unzip ou aptitude install unzip em uma instância ECS com Ubuntu, a seguinte mensagem de erro é exibida:

Error http://mirrors.aliyun.com/ubuntu/ trusty-updates/main unzip amd64 6.0-9ubuntu1.1 404 Not Found [IP: 112.124.XXX.XXX 80]
Error http://mirrors.aliyun.com/ubuntu/ trusty-updates/main unzip amd64 6.0-9ubuntu1.1 404 Not Found [IP: 112.124.XXX.XXX 80]
Error http://mirrors.aliyun.com/ubuntu/ trusty-updates/main unzip amd64 6.0-9ubuntu1.1 404 Not Found [IP: 112.124.XXX.XXX 80]

Causa

Na maioria dos casos, esse problema ocorre porque a versão do software solicitada pelo comando não existe no repositório APT.

Solução

Para atualizar e sincronizar o repositório APT, siga estas etapas:

  1. Conecte-se à instância Ubuntu.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench.

  2. Atualize e sincronize o repositório APT.

    apt-get update
  3. Após atualizar e sincronizar o repositório APT, execute o comando apt-get install para instalar o software desejado.

O que fazer se a mensagem de erro "The following signatures were invalid: KEYEXPIRED 1544811256" aparecer ao executar o comando apt-get update?

Descrição do problema

Ao executar o comando apt-get update em uma instância Ubuntu, a seguinte mensagem de erro é exibida:

The following signatures were invalid: KEYEXPIRED 1544811256

Causa

Ocorreu um erro de atualização porque as assinaturas do repositório utilizado expiraram.

Solução

Siga estas etapas para atualizar a chave expirada:

  1. Conecte-se à instância Ubuntu.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench.

  2. Obtenha a chave expirada.

    sudo apt-key list | grep -A 1 expired

  3. Atualize a chave expirada.

    apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys [$Key]
    Nota

    Substitua [$Key] pela chave expirada obtida na etapa anterior.

  4. Atualize e sincronize o repositório APT.

    apt-get update

O que fazer se não for possível instalar o Docker usando repositórios YUM de terceiros em uma instância Alibaba Cloud Linux 2?

Descrição do problema

Ao utilizar repositórios YUM de terceiros compatíveis com o CentOS 7, como os repositórios Docker Community Edition (Docker-CE) e Extra Packages for Enterprise Linux (EPEL), e executar o comando yum install docker-ce para instalar o Docker em uma instância Alibaba Cloud Linux 2 que atenda às condições abaixo, a instalação do Docker falha e a seguinte mensagem de erro é retornada.

  • A instância utiliza a imagem Alibaba Cloud Linux 2.1903 LTS 64 bits.

  • A imagem utilizada pela instância é aliyun_2_1903_x64_20G_alibase_20210325.vhd ou anterior.

Loaded plugins: fastestmirror, langpacks, update-motd
Loading mirror speeds from cached hostfile
  * epel: mirror.sjtu.edu.cn 
https://mirrors.aliyun.com/docker-ce/linux/centos/2.1903/x86_64/stable/repodata/repomd.xml: [Errno 14] HTTPS Error 404 - Not Found 
Trying other mirror.
Downloading packages:
docker-ce-20.10.6-3.el7.x86_64 FAILED
https://mirrors.aliyun.com/docker-ce/linux/centos/2.1903/x86_64/stable/Packages/docker-ce-20.10.6-3.el7.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found 
Trying other mirror.
docker-ce-rootless-extras-20.1 FAILED
https://mirrors.aliyun.com/docker-ce/linux/centos/2.1903/x86_64/stable/Packages/docker-ce-rootless-extras-20.10.6-3.el7.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found
 Trying other mirror. 

Error downloading packages:
  3:docker-ce-20.10.6-3.el7.x86_64: [Errno 256] No more mirrors to try.
  docker-ce-rootless-extras-20.10.6-3.el7.x86_64: [Errno 256] No more mirrors to try.

Causa

Os repositórios YUM de terceiros são compatíveis apenas com o CentOS 7. O valor $releasever do Alibaba Cloud Linux 2 difere do CentOS 7. Consequentemente, o pacote do Docker não pode ser baixado porque os endereços resolvidos do repositório YUM são inválidos.

Nota

Quando o YUM instala o Docker-CE, ele obtém o número da versão (valor $releasever) do sistema e substitui o valor $releasever no baseurl do repositório YUM correspondente pelo número de versão obtido para buscar os dados necessários. O valor $releasever do CentOS 7 é 7, enquanto o valor $releasever do Alibaba Cloud Linux 2 é 2.1903. Como resultado, o baseurl é resolvido para um endereço inesperado no Alibaba Cloud Linux 2, impedindo que o YUM obtenha os dados necessários desse endereço.

Soluções

Utilize um dos métodos abaixo para resolver o problema:

  • Altere o valor de $releasever.

  • Instale o plug-in yum-plugin-releasever-adapter e utilize-o para alterar o valor de $releasever.

Nota

Nos exemplos, utiliza-se o repositório Docker-CE. É possível realizar as mesmas operações para outros repositórios YUM.

Solução 1: Alterar o valor de $releasever

  1. Conecte-se à instância Linux.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench.

  2. Modifique o arquivo de configuração /etc/yum.repos.d/docker-ce.repo.

    vim /etc/yum.repos.d/docker-ce.repo
    1. Pressione a tecla I para entrar no modo de inserção. No arquivo docker-ce.repo, localize todos os repositórios onde enabled=1 esteja exibido e altere o valor $releasever nos baseurls desses repositórios para 7, conforme mostrado na figura a seguir. Dingtalk_20210610100121.jpg

    2. Pressione a tecla Esc, insira :wq e pressione a tecla Enter para salvar e fechar o arquivo de configuração. Em seguida, reinstale o Docker.

Solução 2: Usar um plug-in para alterar o valor de $releasever

Instale o plug-in yum-plugin-releasever-adapter para alterar automaticamente o valor $releasever de 2.1903 para 7.

  1. Verifique se a instância suporta o plug-in yum-plugin-releasever-adapter.

    A tabela a seguir descreve as versões atuais do plug-in yum-plugin-releasever-adapter e os repositórios de terceiros suportados por padrão.

    Versão do plug-in

    Repositório de terceiros suportado por padrão

    Limitações do plug-in

    1.0-1.3

    Docker-CE e EPEL

    Para usar o plug-in, certifique-se de que os seguintes requisitos sejam atendidos:

    • O sistema operacional é Alibaba Cloud Linux 2.

    • Execute o comando abaixo para verificar se o repositório plus existe:

      cat /etc/yum.repos.d/AliYun.repo |grep -A3 plus

      A saída do comando abaixo indica que o repositório plus existe. Dingtalk_20210622170320.jpg

  2. Conecte-se à instância Linux.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench.

  3. Instale o plug-in yum-plugin-releasever-adapter. O plug-in altera os valores $releasever dos repositórios Docker-CE e EPEL.

    yum install yum-plugin-releasever-adapter --disablerepo=* --enablerepo=plus
  4. Se não for necessário alterar o valor de $releasever para outros repositórios YUM, instale o Docker após a instalação do plug-in. Caso precise alterar o valor de $releasever para outros repositórios YUM, realize as operações abaixo:

    1. Acesse o diretório especificado.

      cd /etc/yum/pluginconf.d/
    2. Modifique o arquivo de configuração releasever-adapter.conf. Para adicionar outros repositórios YUM, anexe os nomes dos arquivos .repo desses repositórios ao campo includes. Separe os nomes dos arquivos com vírgulas (,).

      vim releasever-adapter.conf

      A seguinte saída de comando de exemplo é exibida:

      [main]
      
      enabled=1
      
      hostfilepath=timedhosts.txt
      
      [releasevermapping]
      
      release_dict={'2.1903':'7', '3':'8'}
      
      [reposlist]
      
      includes=docker-ce.repo, epel.repo
      Nota
      • Os parâmetros abaixo são utilizados no arquivo de configuração:

        • [main]: parte principal de controle do plug-in, usada para ativar ou desativar o plug-in. Se enabled estiver definido como 1, o plug-in estará ativado. Se enabled estiver definido como 0, o plug-in estará desativado.

        • [releasevermapping]: mapeamentos entre os valores $releasever que você deseja alterar. 2.1903 é mapeado para 7 e 3 é mapeado para 8.

        • [repolist]: lista de repositórios que você deseja modificar. Para adicionar outros repositórios YUM, anexe os nomes dos arquivos .repo dos repositórios ao campo includes. Separe os nomes dos arquivos com vírgulas (,).

      • Um arquivo .repo contém vários repositórios, e cada nome de repositório é único no sistema. Por exemplo, os repositórios docker-ce-stable e docker-ce-stable-debuginfo coexistem no arquivo docker-ce.repo.

      • Certifique-se de que cada nome de arquivo .repo adicionado ao arquivo de configuração releasever-adapter.conf seja o prefixo dos nomes dos repositórios contidos nesse arquivo .repo. Por exemplo, o arquivo docker-ce.repo contém os repositórios docker-ce-stable-debuginfo e docker-ce-stable, que compartilham o prefixo docker-ce.

    3. Salve o arquivo de configuração e execute o comando abaixo para instalar o Docker utilizando os repositórios Docker-CE e EPEL.

      yum install docker-ce

O que fazer se não for possível instalar o Docker usando repositórios DNF de terceiros em uma instância Alibaba Cloud Linux 3?

Descrição do problema

Não é possível instalar o Docker executando o comando dnf install docker-ce em uma instância Alibaba Cloud Linux 3 que atenda às condições abaixo, e uma mensagem de erro é retornada.

  • A instância utiliza repositórios DNF de terceiros compatíveis com o CentOS 8.

  • A instância utiliza uma imagem da versão aliyun_3_x64_20G_alibase_20210425.vhd ou anterior.

Exemplo de mensagem de erro:

Docker CE Stable - x86_64
Failed to download metadata for repo 'docker-ce-stable'
Error: Failed to download metadata for repo 'docker-ce-stable'

Causa

Os repositórios DNF de terceiros são compatíveis apenas com o CentOS 8. O valor $releasever do Alibaba Cloud Linux 3 difere do CentOS 8. Consequentemente, o pacote do Docker não pode ser baixado porque os endereços resolvidos do repositório DNF são inválidos.

Nota

Quando o DNF instala o Docker-CE, ele obtém o número da versão (valor $releasever) do sistema e substitui o valor $releasever no baseurl do repositório DNF correspondente pelo número de versão obtido para buscar os dados necessários. O valor $releasever do CentOS 8 é 8, enquanto o valor $releasever do Alibaba Cloud Linux 3 é 3. Como resultado, o baseurl é resolvido para um endereço inesperado no Alibaba Cloud Linux 3, impedindo que o DNF obtenha os dados necessários desse endereço.

Soluções

Utilize um dos métodos abaixo para resolver o problema:

  • Altere o valor de $releasever.

  • Instale o plug-in dnf-plugin-releasever-adapter e utilize-o para alterar o valor de $releasever.

Nota

Nos exemplos, utiliza-se o repositório Docker-CE. É possível realizar as mesmas operações para outros repositórios DNF.

Solução 1: Alterar o valor de $releasever

  1. Conecte-se à instância Linux.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench.

  2. Abra o arquivo de configuração /etc/yum.repos.d/docker-ce.repo.

    vim /etc/yum.repos.d/docker-ce.repo
  3. Pressione a tecla I para entrar no modo de inserção. No arquivo docker-ce.repo, localize todos os repositórios onde enabled=1 esteja exibido e altere o valor $releasever nos baseurls desses repositórios para 8, conforme mostrado na figura a seguir.

  4. Pressione a tecla Esc, insira :wq e pressione a tecla Enter para salvar e fechar o arquivo de configuração. Em seguida, reinstale o Docker.

Solução 2: Usar um plug-in para alterar o valor de $releasever

Instale o plug-in dnf-plugin-releasever-adapter para alterar automaticamente o valor $releasever de 3 para 8.

  1. Verifique se a instância suporta o plug-in dnf-plugin-releasever-adapter.

    A tabela a seguir descreve as versões atuais do plug-in dnf-plugin-releasever-adapter e os repositórios de terceiros suportados por padrão.

    Versão do plug-in

    Repositório de terceiros suportado por padrão

    Limitações do plug-in

    • Nova versão: 1.0-2

    • Versão antiga: 1.0-1.3

    Nota

    As versões nova e antiga do plug-in não são compatíveis entre si. O arquivo de configuração da nova versão chama-se releasever_adapter.conf, e o arquivo de configuração da versão antiga chama-se releasever-adapter.conf. Quando o plug-in é atualizado para a nova versão, o arquivo de configuração da versão antiga é excluído. Após a atualização do plug-in, caso deseje que ele suporte repositórios de terceiros além do Docker-CE e EPEL, modifique o campo include do arquivo de configuração e mantenha as demais configurações inalteradas.

    Docker-CE e EPEL

    Para usar o plug-in, certifique-se de que os seguintes requisitos sejam atendidos:

    • O sistema operacional é Alibaba Cloud Linux 3.

    • Execute o comando abaixo para verificar se o repositório alinux3-plus existe:

      cat /etc/yum.repos.d/AliYun.repo |grep -A3 alinux3-plus

      A saída do comando mostrada na figura a seguir indica que o repositório alinux3-plus existe.

  2. Conecte-se à instância Linux.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench.

  3. Instale o plug-in dnf-plugin-releasever-adapter.

    Nota

    O plug-in altera os valores $releasever dos repositórios Docker-CE e EPEL.

    dnf install dnf-plugin-releasever-adapter --repo alinux3-plus
  4. Se não for necessário alterar o valor de $releasever para outros repositórios DNF, instale o Docker após a instalação do plug-in. Caso precise alterar o valor de $releasever para outros repositórios DNF, realize as operações abaixo:

    1. Acesse o diretório /etc/yum/pluginconf.d/.

      cd /etc/yum/pluginconf.d/
    2. Modifique o arquivo de configuração releasever_adapter.conf.

      vim releasever_adapter.conf
      1. Pressione a tecla I para entrar no modo de inserção. Para adicionar outros repositórios DNF, anexe os nomes dos arquivos .repo desses repositórios ao campo include. Separe os nomes dos arquivos com vírgulas (,).

        Nota

        Na maioria dos casos, os arquivos .repo dos repositórios DNF residem no diretório /etc/yum.repos.d/.

        Saída de comando de exemplo:

        [main]
        enabled=1
        
        [releasevermapping]
        2.1903 = 7
        3      = 8
        
        [reposlist]
        include=docker-ce.repo, epel.repo
        Nota
        • Os parâmetros abaixo são utilizados no arquivo de configuração:

          • [main]: parte principal de controle do plug-in, usada para ativar ou desativar o plug-in. Se enabled estiver definido como 1, o plug-in estará ativado. Se enabled estiver definido como 0, o plug-in estará desativado.

          • [releasevermapping]: mapeamentos entre os valores $releasever que você deseja alterar. 2.1903 é mapeado para 7 e 3 é mapeado para 8.

          • [repolist]: lista de repositórios que você deseja modificar. Para adicionar outros repositórios DNF, anexe os nomes dos arquivos .repo dos repositórios ao campo include. Separe os nomes dos arquivos com vírgulas (,).

        • Na maioria dos casos, um arquivo .repo contém vários repositórios, e cada nome de repositório é único no sistema. Por exemplo, os repositórios docker-ce-stable e docker-ce-stable-debuginfo coexistem no arquivo docker-ce.repo.

    3. Pressione a tecla Esc, insira :wq e pressione a tecla Enter para salvar e fechar o arquivo de configuração.

    4. Execute o comando abaixo para instalar o Docker-CE utilizando os repositórios Docker-CE e EPEL, além dos outros repositórios que você adicionou:

      dnf install docker-ce

O que fazer se a mensagem de erro "-bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory" aparecer ao executar um comando yum em uma instância ECS com CentOS 7?

Descrição do problema

Ao executar um comando yum em uma instância ECS com CentOS 7, a seguinte mensagem de erro é exibida:

-bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory

Causa

O problema acima pode ser causado por uma exceção no Python, como quando o Python é desinstalado, um arquivo é renomeado ou um caminho de arquivo é movido.

Nota

O YUM é um gerenciador de pacotes frontend shell para Fedora, Red Hat e SUSE.

Solução

Para verificar se ocorreu uma exceção no Python e corrigi-la, siga estas etapas:

  1. Conecte-se à instância ECS Linux.

    Para mais informações, consulte Fazer login em uma instância Linux usando o Workbench.

  2. Consulte o caminho do arquivo YUM.

    which yum

    A saída do comando abaixo indica que o caminho do arquivo YUM é /usr/bin/yum.

    /usr/bin/yum
  3. Visualize o conteúdo do YUM.

    cat /usr/bin/yum

    A saída do comando abaixo indica que o caminho da versão do Python está em uso.

    #!/usr/bin/python
    Nota

    No exemplo a seguir, utiliza-se o caminho /usr/bin/python. Substitua o caminho pelo caminho real.

  4. Verifique o caminho acima.

    ls -al /usr/bin/python

    Se a saída do comando abaixo for exibida, o Python pode ter sido desinstalado, os nomes dos arquivos relacionados ao Python podem ter sido alterados ou os caminhos desses arquivos podem ter sido movidos.

    ls: cannot access /usr/bin/python: No such file or directory
  5. Verifique se existem arquivos relacionados ao Python.

    rpm -qa | grep python

    Se existirem arquivos relacionados ao Python, a seguinte saída de comando será exibida:

    python-decorator-3.4.0-3.el7.noarch
    libselinux-python-2.5-14.1.el7.x86_64
    python-backports-1.0-8.el7.x86_64
    python-pyudev-0.15-9.el7.noarch
    rpm-python-4.11.3-35.el7.x86_64
    python-2.7.5-76.el7.x86_64
    .....
    • Se existirem arquivos relacionados ao Python, isso indica que os nomes dos arquivos foram alterados ou os caminhos dos arquivos foram movidos.

      1. Visualize os arquivos relacionados ao Python.

        ls -al /usr/bin/python*

        A seguinte saída de comando é exibida, onde /usr/bin/python.bak -> python2 indica que o nome do Python foi alterado.

        lrwxrwxrwx  1 root root   14 Feb 15  2019 /usr/bin/python-config -> python2-config
        lrwxrwxrwx. 1 root root    7 Feb 15  2019 /usr/bin/python.bak -> python2
        lrwxrwxrwx. 1 root root    9 Feb 15  2019 /usr/bin/python2 -> python2.7
        lrwxrwxrwx  1 root root   16 Feb 15  2019 /usr/bin/python2-config -> python2.7-config
        -rwxr-xr-x. 1 root root 7216 Oct 31  2018 /usr/bin/python2.7
        -rwxr-xr-x  1 root root 1835 Oct 31  2018 /usr/bin/python2.7-config
      2. Altere /usr/bin/python.bak para /usr/bin/python.

        mv python.bak python
      3. Execute novamente o comando yum. Se o problema for resolvido, a mensagem de erro anterior deixará de aparecer.

    • Se não existirem arquivos relacionados ao Python, isso indica que o Python foi desinstalado.

      1. Execute os comandos abaixo em sequência para instalar o Python:

        mkdir /python/
          
        yum install python --downloadonly --downloaddir=/python/
      2. Execute novamente o comando yum. Se o problema for resolvido, a mensagem de erro anterior deixará de aparecer.