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.
Erros relacionados com a falta fxr
, libhostfxr.so
ou FrameworkList.xml
Para obter mais informações sobre como resolver esses problemas, consulte Solução de problemas fxr
, libhostfxr.so
e 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-openssl10
o .
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
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários