Instale o SDK do .NET ou o tempo de execução do .NET no CentOS Linux

O .NET é suportado no CentOS Linux. Este artigo descreve como instalar o .NET no CentOS Linux. Se você precisar instalar o .NET no CentOS Stream, consulte Instalar o SDK do .NET ou o .NET Runtime no RHEL e no CentOS Stream.

Instale o SDK (que inclui o tempo de execução) se quiser desenvolver aplicativos .NET. Ou, se você só precisar executar aplicativos, instale o Runtime. Se você estiver instalando o Runtime, sugerimos que instale o ASP.NET Core Runtime , pois ele inclui os tempos de execução .NET e ASP.NET Core.

Use os dotnet --list-sdks comandos e dotnet --list-runtimes para ver quais versões estão instaladas. Para obter mais informações, consulte Como verificar se o .NET já está instalado.

Importante

Usar um gerenciador de pacotes para instalar o .NET a partir do feed de pacotes da Microsoft suporta apenas a arquitetura x64. Outras arquiteturas, como Arm, não são suportadas pelo feed de pacotes da Microsoft.

Para obter mais informações sobre como instalar o .NET sem um gerenciador de pacotes, consulte um dos seguintes artigos:

Distribuições suportadas

A tabela a seguir é uma lista das versões .NET atualmente suportadas no CentOS Linux 7. Essas versões permanecem suportadas até que a versão do .NET atinja o fim do suporte ou a versão do CentOS Linux não seja mais suportada.

CentOS Linux .NET
7 7, 6

Aviso

O CentOS Linux 8 atingiu um Early End Of Life (EOL) em 31 de dezembro de 2021. Para obter mais informações, consulte a página oficial do CentOS Linux EOL. Por isso, o .NET não é suportado no CentOS Linux 8.

As seguintes versões do .NET não são ❌ mais suportadas:

  • .NET 5
  • .NET Core 3.1
  • .NET Core 3.0
  • .NET Core 2.2
  • .NET Core 2.1
  • .NET Core 2.0

Importante

Usar um gerenciador de pacotes para instalar o .NET a partir do feed de pacotes da Microsoft suporta apenas a arquitetura x64. Outras arquiteturas, como Arm, não são suportadas pelo feed de pacotes da Microsoft.

Para obter mais informações sobre como instalar o .NET sem um gerenciador de pacotes, consulte um dos seguintes artigos:

Instalar versões de pré-visualização

As versões candidatas de visualização e lançamento do .NET não estão disponíveis nos repositórios de pacotes. Você pode instalar visualizações e liberar candidatos do .NET de uma das seguintes maneiras:

Remover versões de pré-visualização

Ao usar um gerenciador de pacotes para gerenciar sua instalação do .NET, você pode entrar em conflito se tiver instalado anteriormente uma versão de visualização. O gerenciador de pacotes pode interpretar a versão de não-visualização como uma versão anterior do .NET. Para instalar a versão não prévia, primeiro desinstale as versões de visualização. Para obter mais informações sobre como desinstalar o .NET, consulte Como remover o .NET Runtime e SDK.

CentOS Linux 7

Antes de instalar o .NET, execute os seguintes comandos para adicionar a chave de assinatura do pacote Microsoft à sua lista de chaves confiáveis e adicionar o repositório de pacotes da Microsoft. Abra um terminal e execute os seguintes comandos:

sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm

Instale o SDK

O SDK do .NET permite que você desenvolva aplicativos com o .NET. Se você instalar o SDK do .NET, não precisará instalar o tempo de execução correspondente. Para instalar o SDK do .NET, execute o seguinte comando:

sudo yum install dotnet-sdk-7.0

Instalar o tempo de execução

O ASP.NET Core Runtime permite executar aplicativos que foram criados com .NET que não forneceram o tempo de execução. O comando a seguir instala o ASP.NET Core Runtime, que é o tempo de execução mais compatível para .NET. No seu terminal, execute o seguinte comando:

sudo yum install aspnetcore-runtime-7.0

Como alternativa ao ASP.NET Core Runtime, você pode instalar o .NET Runtime, que não inclui suporte ASP.NET Core: substitua aspnetcore-runtime-7.0 no comando anterior por dotnet-runtime-7.0:

sudo yum install dotnet-runtime-7.0

Como instalar outras versões

Todas as versões do .NET estão disponíveis para download em https://dotnet.microsoft.com/download/dotnet, mas requerem instalação manual. Você pode tentar usar o gerenciador de pacotes para instalar uma versão diferente do .NET. No entanto, a versão solicitada pode não estar disponível.

Os pacotes adicionados aos feeds do gerenciador de pacotes são nomeados em um formato hackeável, por exemplo: {product}-{type}-{version}.

  • produto
    O tipo de produto .NET a ser instalado. As opções válidas são:

    • dotnet
    • aspnetcore
  • type
    Escolhe o SDK ou o tempo de execução. As opções válidas são:

    • sdk (disponível apenas para o produto dotnet )
    • runtime
  • Versão
    A versão do SDK ou tempo de execução a ser instalado. As opções válidas são qualquer versão lançada, como:

    • 8.0
    • 6.0
    • 3.1
    • 2.1

    É possível que o SDK/runtime que você está tentando baixar não esteja disponível para sua distribuição Linux. Para obter uma lista de distribuições suportadas, consulte Instalar o .NET no Linux.

Exemplos

  • Instale o tempo de execução do ASP.NET Core 8.0: aspnetcore-runtime-8.0
  • Instale o tempo de execução do .NET Core 2.1: dotnet-runtime-2.1
  • Instale o SDK do .NET 5: dotnet-sdk-5.0
  • Instale o SDK do .NET Core 3.1: dotnet-sdk-3.1

Nota

Alguns pacotes podem não estar disponíveis na sua distribuição Linux.

Pacote em falta

Se a combinação pacote-versão não funcionar, ela não estará disponível. Por exemplo, não há um SDK ASP.NET Core. Os componentes do SDK para ASP.NET Core estão incluídos no SDK do .NET. O valor aspnetcore-sdk-8.0 está incorreto e deve ser dotnet-sdk-8.0. Para obter uma lista de distribuições Linux suportadas pelo .NET, consulte Dependências e requisitos do .NET.

Solucionar problemas do gerenciador de pacotes

Esta seção fornece informações sobre erros comuns que você pode obter ao usar o gerenciador de pacotes para instalar o .NET.

Não é possível encontrar o pacote

Importante

Usar um gerenciador de pacotes para instalar o .NET a partir do feed de pacotes da Microsoft suporta apenas a arquitetura x64. Outras arquiteturas, como Arm, não são suportadas pelo feed de pacotes da Microsoft.

Para obter mais informações sobre como instalar o .NET sem um gerenciador de pacotes, consulte um dos seguintes artigos:

Falha ao buscar

Ao instalar o pacote .NET, você pode ver um erro semelhante ao signature verification failed for file 'repomd.xml' from repository 'packages-microsoft-com-prod'. De um modo geral, esse erro significa que o feed de pacotes para .NET está sendo atualizado com versões de pacote mais recentes e que você deve tentar novamente mais tarde. Durante uma atualização, a alimentação do pacote não deve ficar indisponível por mais de 2 horas. Se você receber esse erro continuamente por mais de 2 horas, registre um problema em https://github.com/dotnet/core/issues.

Para obter mais informações sobre como resolver esses problemas, consulte Solução de problemas fxr, libhostfxr.soe FrameworkList.xml erros.

Dependências

Quando você instala com um gerenciador de pacotes, essas bibliotecas são instaladas para você. Mas, se você instalar manualmente o .NET ou publicar um aplicativo independente, precisará garantir que essas bibliotecas estejam instaladas:

  • KRB5-LIBS
  • Libicu
  • openssl-libs
  • Zlib

Se a versão OpenSSL do ambiente de tempo de execução de destino for 1.1 ou mais recente, você precisará instalar compat-openssl10o .

As dependências podem ser instaladas com o yum install comando. O trecho a seguir demonstra a instalação da libicu biblioteca:

sudo yum install libicu

Para obter mais informações sobre as dependências, consulte Aplicativos Linux autônomos.

Se o aplicativo .NET usa o assembly System.Drawing.Common , o libgdiplus também precisará ser instalado. Como System.Drawing.Common não é mais suportado no Linux, isso só funciona no .NET 6 e requer a configuração da opção de configuração de System.Drawing.EnableUnixSupport tempo de execução.

Você pode instalar uma versão recente do libgdiplusadicionando o repositório Mono ao seu sistema.

Próximos passos