Instalar o SDK do .NET ou o Runtime do .NET no RHEL e no CentOS Stream

Importante

O .NET 8 foi lançado em 14 de novembro de 2023. Os pacotes podem levar algum tempo para serem exibidos nos feeds do gerenciador de pacotes.

O .NET tem suporte no RHEL (Red Hat Enterprise Linux). Este artigo descreve como instalar o .NET no RHEL e no CentOS Stream.

Instale o SDK (que inclui o runtime) se quiser desenvolver aplicativos .NET. Ou, se você precisar apenas executar aplicativos, instale o runtime. Se você estiver instalando o runtime, sugerimos que você instale o Runtime do ASP.NET Core, pois ele inclui runtimes do .NET e do ASP.NET Core.

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

Registrar a sua assinatura do Red Hat

Para instalar o .NET do Red Hat no RHEL, é necessário se registrar usando o Gerenciador de Assinaturas do Red Hat. Se isso não tiver sido feito em seu sistema ou se você não tiver certeza, consulte a Documentação do produto Red Hat para .NET.

Importante

Isso não se aplica ao CentOS Stream.

Distribuições com suporte

A tabela a seguir é uma lista de versões do .NET com suporte no RHEL e no CentOS Stream. Essas versões permanecem com suporte até que o suporte à versão do .NET expire ou a distribuição do Linux não seja mais compatível.

Distribuição .NET
RHEL 9 (9.1) 8, 7, 6
RHEL 8 (8.7) 8, 7, 6
RHEL 7 6
CentOS Stream 9 8, 7, 6
CentOS Stream 8 8, 7, 6

Não ❌ há mais suporte para as seguintes versões do .NET:

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

Instalar versões prévias

As versões prévias e Release Candidate do .NET não estão disponíveis em repositórios de pacotes. É possível instalar versões prévias e Release Candidate do .NET das seguintes maneiras:

Remover versões prévias

Ao usar um gerenciador de pacotes para gerenciar a instalação do .NET, pode ocorrer um conflito quando já existe uma versão prévia instalada. O gerenciador de pacotes pode interpretar a versão que não é prévia como uma versão anterior do .NET. Para instalar a versão que não é prévia, desinstale as versões prévias. Para obter mais informações de como desinstalar o .NET, confira Como remover o SDK e o runtime do .NET.

RHEL 9

O .NET está incluído nos repositórios do AppStream para o RHEL 9.

Importante

O .NET 8 foi lançado em 14 de novembro de 2023. Os pacotes podem levar algum tempo para serem exibidos nos feeds do gerenciador de pacotes.

Instalar o SDK

O SDK do .NET permite que você desenvolva aplicativos com o .NET. Se você instalar o SDK do .NET, não será necessário instalar o runtime correspondente. Para instalar o SDK do .NET, execute o seguinte comando:

sudo dnf install dotnet-sdk-8.0

Instalar o runtime

O Runtime do ASP.NET Core permite executar aplicativos feitos com o .NET que não forneceram o runtime. O comando a seguir instala o runtime do ASP.NET Core, que é o runtime mais compatível com o .NET. No terminal, execute o seguinte comando:

sudo dnf install aspnetcore-runtime-8.0

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

sudo dnf install dotnet-runtime-8.0

RHEL 8

O .NET está incluído nos repositórios do AppStream para RHEL 8.

Importante

O .NET 8 foi lançado em 14 de novembro de 2023. Os pacotes podem levar algum tempo para serem exibidos nos feeds do gerenciador de pacotes.

Instalar o SDK

O SDK do .NET permite que você desenvolva aplicativos com o .NET. Se você instalar o SDK do .NET, não será necessário instalar o runtime correspondente. Para instalar o SDK do .NET, execute o seguinte comando:

sudo dnf install dotnet-sdk-8.0

Instalar o runtime

O Runtime do ASP.NET Core permite executar aplicativos feitos com o .NET que não forneceram o runtime. O comando a seguir instala o runtime do ASP.NET Core, que é o runtime mais compatível com o .NET. No terminal, execute o seguinte comando:

sudo dnf install aspnetcore-runtime-8.0

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

sudo dnf install dotnet-runtime-8.0

RHEL 7 ❌ .NET 8

O .NET 8 não é compatível com o RHEL 7 e não funciona.

RHEL 7 ❌ .NET 7

O .NET 7 não tem suporte oficial do RHEL 7. Para instalar o .NET 7, confira Instalar o .NET no Linux usando um script de instalação ou extraindo binários.

RHEL 7 ✔️ .NET 6

O comando a seguir instala o pacote scl-utils:

sudo yum install scl-utils

Instalar o SDK

O SDK do .NET permite que você desenvolva aplicativos com o .NET. Se você instalar o SDK do .NET, não será necessário instalar o runtime correspondente. Para instalar o SDK do .NET, execute os comandos a seguir:

subscription-manager repos --enable=rhel-7-server-dotnet-rpms
yum install rh-dotnet60 -y
scl enable rh-dotnet60 bash

O Red Hat não recomenda a habilitação permanente de rh-dotnet60 porque pode afetar outros programas. Para habilitar rh-dotnet permanentemente, adicione a linha a seguir ao arquivo ~/.bashrc.

source scl_source enable rh-dotnet60

Instalar o runtime

O Runtime do .NET permite executar aplicativos feitos com o .NET que não incluíram o runtime. Os comandos abaixo instalam o Runtime do ASP.NET Core, que é o runtime mais compatível para .NET Core. Em seu terminal, execute os seguintes comandos.

subscription-manager repos --enable=rhel-7-server-dotnet-rpms
yum install rh-dotnet60-aspnetcore-runtime-6.0 -y
scl enable rh-dotnet60 bash

O Red Hat não recomenda a habilitação permanente de rh-dotnet60 porque pode afetar outros programas. Para habilitar rh-dotnet60 permanentemente, adicione a linha a seguir ao arquivo ~/.bashrc.

source scl_source enable rh-dotnet60

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

CentOS Stream 9 ✔️

O .NET está incluído nos repositórios do AppStream para o CentOS Stream 9.

Instalar o SDK

O SDK do .NET permite que você desenvolva aplicativos com o .NET. Se você instalar o SDK do .NET, não será necessário instalar o runtime correspondente. Para instalar o SDK do .NET, execute o seguinte comando:

sudo dnf install dotnet-sdk-8.0

Instalar o runtime

O Runtime do ASP.NET Core permite executar aplicativos feitos com o .NET que não forneceram o runtime. O comando a seguir instala o runtime do ASP.NET Core, que é o runtime mais compatível com o .NET. No terminal, execute o seguinte comando:

sudo dnf install aspnetcore-runtime-8.0

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

sudo dnf install dotnet-runtime-8.0

CentOS Stream 8 ✔️

Use o repositório da Microsoft para instalar o .NET:

sudo rpm -Uvh https://packages.microsoft.com/config/centos/8/packages-microsoft-prod.rpm
sudo yum install dotnet-sdk-8.0

Dependências

Quando você faz a instalação com um gerenciador de pacotes, essas bibliotecas são instaladas automaticamente. Porém, se você instalar o .NET manualmente ou publicar um aplicativo autossuficiente, será necessário verificar se estas bibliotecas estão instaladas:

  • krb5-libs
  • libicu
  • openssl-libs
  • zlib

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

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

sudo yum install libicu

Para obter mais informações sobre as dependências, confira Aplicativos autossuficientes do Linux.

Se o aplicativo .NET usar o assembly System.Drawing.Common, o libgdiplus também precisará ser instalado. Como System.Drawing.Common não tem mais suporte no Linux, isso só funciona no .NET 6 e requer a definição da alternância de configuração de runtime System.Drawing.EnableUnixSupport.

Você pode instalar uma versão recente de libgdiplus ao adicionar o repositório do Mono ao sistema.

Como instalar outras versões

Consulte a documentação do Red Hat para .NET sobre as etapas necessárias para instalar outras versões do .NET.

Solucionar problemas do gerenciador de pacotes

Esta seção fornece informações sobre erros comuns que podem ocorrer ao usar o gerenciador de pacotes para instalar o .NET ou o .NET Core.

Para obter mais informações sobre como resolver esses problemas, consulte Solucionar problemas fxr, libhostfxr.so e erros FrameworkList.xml.

Próximas etapas