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

O .NET é suportado no Fedora e este artigo descreve como instalar o .NET no Fedora. Quando uma versão do Fedora deixa de ser suportada, o .NET deixa de ser suportado com essa versão.

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.

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 seguinte é uma lista das versões do .NET atualmente suportadas e das versões do Fedora em que são suportadas. Estas versões permanecem suportadas até que a versão do .NET atinja o fim do suporte ou a versão do Fedora atinja o fim da vida útil.

Fedora .NET
40 8, 6
39 8, 7, 6
38 8, 7, 6

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

Instalar o .NET 8

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 dnf install dotnet-sdk-8.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 dnf install aspnetcore-runtime-8.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-8.0 no comando anterior por dotnet-runtime-8.0:

sudo dnf install dotnet-runtime-8.0

Instalar o .NET 7

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 dnf 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 dnf 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 dnf install dotnet-runtime-7.0

Instalar o .NET 6

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 dnf install dotnet-sdk-6.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 dnf install aspnetcore-runtime-6.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-6.0 no comando anterior por dotnet-runtime-6.0:

sudo dnf install dotnet-runtime-6.0

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.

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.

Instalar em distribuições mais antigas

As versões mais antigas do Fedora não contêm o .NET Core nos repositórios de pacotes padrão. Você pode instalar o .NET com o script dotnet-install.sh ou usar o repositório da Microsoft para instalar o .NET:

  1. Primeiro, adicione a chave de assinatura da Microsoft à sua lista de chaves confiáveis.

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  2. Em seguida, adicione o repositório de pacotes da Microsoft. A fonte do repositório é baseada na sua versão do Fedora.

    Versão do Fedora Repositório de pacotes
    36 https://packages.microsoft.com/config/fedora/36/prod.repo
    35 https://packages.microsoft.com/config/fedora/35/prod.repo
    34 https://packages.microsoft.com/config/fedora/34/prod.repo
    33 https://packages.microsoft.com/config/fedora/33/prod.repo
    32 https://packages.microsoft.com/config/fedora/32/prod.repo
    31 https://packages.microsoft.com/config/fedora/31/prod.repo
    30 https://packages.microsoft.com/config/fedora/30/prod.repo
    29 https://packages.microsoft.com/config/fedora/29/prod.repo
    28 https://packages.microsoft.com/config/fedora/28/prod.repo
    27 https://packages.microsoft.com/config/fedora/27/prod.repo
    sudo wget -O /etc/yum.repos.d/microsoft-prod.repo https://packages.microsoft.com/config/fedora/31/prod.repo
    

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 dnf 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 dnf 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 dnf 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 ou o .NET Core.

Não é possível encontrar o pacote

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.

Próximos passos