Compartilhar via


Instale o .NET SDK ou .NET Runtime no Ubuntu

Esse artigo discute como instalar o .NET no Ubuntu.

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.

Importante

O uso de um gerenciador de pacotes para instalar o .NET por meio do feed de pacote da Microsoft só dá suporte à arquitetura x64. Outras arquiteturas, como o Arm, não são compatíveis com o feed do pacote da Microsoft. Use os feeds do Ubuntu ou instale manualmente o .NET. Tenha cuidado com problemas de confusão de pacotes ao usar vários feeds. Para obter mais informações, confira Combinações de pacotes do .NET no Linux.

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

Ubuntu 24.10

O .NET está disponível nos feeds do gerenciador de pacotes do Ubuntu. O repositório de pacotes da Microsoft não contém mais pacotes .NET para o Ubuntu.

As seguintes versões do .NET têm suporte ou estão disponíveis para o Ubuntu 24.10:

  • 9.0
  • 8.0

Importante

O .NET 9 está atualmente em versão prévia.

Quando uma versão do Ubuntu ficar sem suporte, não haverá mais suporte dessa versão no .NET.

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 seguintes comandos:

sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-9.0

Para saber como usar a CLI do .NET, confira Visão geral da CLI do .NET.

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. Em seu terminal, execute os seguintes comandos:

sudo apt-get update && \
  sudo apt-get install -y aspnetcore-runtime-9.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-9.0 no comando anterior por dotnet-runtime-9.0:

sudo apt-get install -y dotnet-runtime-9.0

Para saber como usar a CLI do .NET, confira Visão geral da CLI do .NET.

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:

  • ca-certificates
  • libc6
  • libgcc-s1
  • libicu74
  • liblttng-ust1
  • libssl3
  • libstdc++6
  • libunwind8
  • zlib1g

As dependências podem ser instaladas por meio do comando apt install. O snippet a seguir demonstra a instalação da biblioteca zlib1g:

sudo apt install zlib1g

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.

Ubuntu 24.04

O .NET está disponível nos feeds do gerenciador de pacotes do Ubuntu, bem como no repositório de pacotes da Microsoft. No entanto, você deve usar apenas um ou outro para instalar o .NET. A Microsoft recomenda que você use os feeds do gerenciador de pacotes do Ubuntu. Para usar o repositório de pacotes da Microsoft, confira Como registrar o repositório de pacotes da Microsoft.

As seguintes versões do .NET são suportadas ou estão disponíveis para Ubuntu 24.04:

Versões do .NET com suporte Disponível em
feed interno do Ubuntu
Disponível em
backports
Feed do Ubuntu
Disponível em
Feed da Microsoft
8.0, 6.0 8.0 7.0, 6.0 Nenhum

Quando uma versão do Ubuntu ficar sem suporte, não haverá mais suporte dessa versão no .NET.

Não disponível.

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:

  • ca-certificates
  • libc6
  • libgcc-s1
  • libicu74
  • liblttng-ust1
  • libssl3
  • libstdc++6
  • libunwind8
  • zlib1g

As dependências podem ser instaladas por meio do comando apt install. O snippet a seguir demonstra a instalação da biblioteca zlib1g:

sudo apt install zlib1g

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.

Ubuntu 22.04

O .NET está disponível nos feeds do gerenciador de pacotes do Ubuntu, bem como no repositório de pacotes da Microsoft. No entanto, você deve usar apenas um ou outro para instalar o .NET. A Microsoft recomenda que você use os feeds do gerenciador de pacotes do Ubuntu. Para usar o repositório de pacotes da Microsoft, confira Como registrar o repositório de pacotes da Microsoft.

As seguintes versões do .NET são compatíveis ou estão disponíveis para o Ubuntu 22.04:

Versões do .NET com suporte Disponível em
feed interno do Ubuntu
Disponível em
Backports do .NET
Feed do Ubuntu
Disponível em
Feed da Microsoft
8.0, 6.0 8.0, 7.0, 6.0 Nenhum 8.0, 7.0, 6.0, 3.1

Importante

Se você estiver usando o SDK do .NET 8 e o Ubuntu 22.04, entenda que as versões do SDK oferecidas pela Canonical estão sempre na banda de recursos .1xx. Se você quiser usar uma versão mais recente da banda de versão, use o feed da Microsoft para instalar o SDK. Verifique se você examinou as informações no artigo mix ups de pacote do .NET no Linux para entender as implicações da comutação entre feeds de repositório.

Quando uma versão do Ubuntu ficar sem suporte, não haverá mais suporte dessa versão no .NET.

Não disponível.

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:

  • ca-certificates
  • libc6
  • libgcc-s1
  • libgssapi-krb5-2
  • libicu70
  • liblttng-ust1
  • libssl3
  • libstdc++6
  • libunwind8
  • zlib1g

As dependências podem ser instaladas por meio do comando apt install. O snippet a seguir demonstra a instalação da biblioteca zlib1g:

sudo apt install zlib1g

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.

Ubuntu 20.04

O repositório de pacotes padrão do Ubuntu não contém essa versão do .NET. Use o repositório de pacotes da Microsoft.

As seguintes versões do .NET são compatíveis ou estão disponíveis para o Ubuntu 20.04:

Versões do .NET com suporte Disponível em
feed interno do Ubuntu
Disponível em
Backports do .NET
Feed do Ubuntu
Disponível em
Feed da Microsoft
8.0, 6.0 Nenhum Nenhum 8.0, 7.0. 6.0, 5.0, 3.1, 2.1

Quando uma versão do Ubuntu ficar sem suporte, não haverá mais suporte dessa versão no .NET.

Adicionar o repositório de pacotes da Microsoft

A instalação com a APT pode ser feita com alguns comandos. Antes de instalar o .NET, execute os comandos a seguir para adicionar a chave de assinatura de pacote da Microsoft à lista de chaves confiáveis e adicionar o repositório de pacotes.

Abra um terminal e execute os seguintes comandos:

wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb

Não disponível.

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:

  • ca-certificates
  • libc6
  • libgcc-s1
  • libgssapi-krb5-2
  • libicu66
  • libssl1.1
  • libstdc++6
  • zlib1g

As dependências podem ser instaladas por meio do comando apt install. O snippet a seguir demonstra a instalação da biblioteca zlib1g:

sudo apt install zlib1g

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.

Versões sem suporte

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

  • .NET 7
  • .NET 6 (a partir de 12 de novembro de 2024)
  • .NET 5
  • .NET Core 3.1
  • .NET Core 3.0
  • .NET Core 2.2
  • .NET Core 2.1
  • .NET Core 2.0

Como instalar outras versões

Os nomes de pacotes do .NET são padronizados em todas as distribuições do Linux. A seguinte tabela lista os pacotes:

Todas as versões do .NET estão disponíveis para download, https://dotnet.microsoft.com/download/dotnetmas exigem a 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}.

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

    • dotnet
    • aspnetcore
  • tipo
    Escolhe o SDK ou o runtime. As opções válidas são:

    • sdk(disponível apenas para o produto dotnet)
    • runtime
  • version
    A versão do SDK ou do runtime a ser instalada. 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 com suporte, confira Instalar o .NET no Linux.

Exemplos

  • Instale o runtime do ASP.NET Core 8.0: aspnetcore-runtime-8.0
  • Instalar o runtime do .NET Core 2.1: dotnet-runtime-2.1
  • Instalar o SDK do .NET 5: dotnet-sdk-5.0
  • Instalar o SDK do .NET Core 3.1: dotnet-sdk-3.1

Observação

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

Ausência de pacote

Se a combinação pacote-versão não funcionar, ela não estará disponível. Por exemplo, não existe um SDK do 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 do Linux com suporte no .NET, confira Dependências e requisitos do .NET.

Instalação manual

Se a sua versão do Ubuntu não for compatível, você provavelmente precisará instalar o .NET extraindo manualmente os binários, usando o script de instalação. Para obter mais informações, veja Instalar o .NET no Linux sem usar um gerenciador de pacotes.

Ubuntu 23.10

Aviso

Essa versão do Ubuntu não é mais suportada.

A execução do .NET nessa versão do Ubuntu não é mais suportada.

O .NET está disponível nos feeds do gerenciador de pacotes do Ubuntu, bem como no repositório de pacotes da Microsoft. No entanto, você deve usar apenas um ou outro para instalar o .NET. A Microsoft recomenda que você use os feeds do gerenciador de pacotes do Ubuntu. Para usar o repositório de pacotes da Microsoft, confira Como registrar o repositório de pacotes da Microsoft.

As seguintes versões do .NET tinham suporte ou estavam disponíveis para o Ubuntu 23.10:

Versões do .NET com suporte Disponível em
feed interno do Ubuntu
Disponível em
Backports do .NET
Feed do Ubuntu
Disponível em
Feed da Microsoft
8.0, 6.0 8.0, 7.0, 6.0 Nenhum 8.0, 7.0, 6.0

Importante

Se você estiver usando o SDK do .NET 8 e o Ubuntu 22.04, entenda que as versões do SDK oferecidas pela Canonical estão sempre na banda de recursos .1xx. Se você quiser usar uma versão mais recente da banda de versão, use o feed da Microsoft para instalar o SDK. Verifique se você examinou as informações no artigo mix ups de pacote do .NET no Linux para entender as implicações da comutação entre feeds de repositório.

Quando uma versão do Ubuntu ficar sem suporte, não haverá mais suporte dessa versão no .NET.

Não disponível.

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:

  • ca-certificates
  • libc6
  • libgcc-s1
  • libgssapi-krb5-2
  • libicu72
  • liblttng-ust1
  • libssl3
  • libstdc++6
  • libunwind8
  • zlib1g

As dependências podem ser instaladas por meio do comando apt install. O snippet a seguir demonstra a instalação da biblioteca zlib1g:

sudo apt install zlib1g

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.

Ubuntu 23.04

Aviso

Essa versão do Ubuntu não é mais suportada.

A execução do .NET nessa versão do Ubuntu não é mais suportada.

O .NET está disponível nos feeds do gerenciador de pacotes do Ubuntu, bem como no repositório de pacotes da Microsoft. No entanto, você deve usar apenas um ou outro para instalar o .NET. A Microsoft recomenda que você use os feeds do gerenciador de pacotes do Ubuntu. Para usar o repositório de pacotes da Microsoft, confira Como registrar o repositório de pacotes da Microsoft.

As seguintes versões do .NET eram suportadas ou estavam disponíveis para o Ubuntu 23.04:

Versões do .NET com suporte Disponível em
feed interno do Ubuntu
Disponível em
Backports do .NET
Feed do Ubuntu
Disponível em
Feed da Microsoft
8.0, 6.0 7.0, 6.0 Nenhum 8.0, 7.0, 6.0

Importante

Se você estiver usando o SDK do .NET 8 e o Ubuntu 22.04, entenda que as versões do SDK oferecidas pela Canonical estão sempre na banda de recursos .1xx. Se você quiser usar uma versão mais recente da banda de versão, use o feed da Microsoft para instalar o SDK. Verifique se você examinou as informações no artigo mix ups de pacote do .NET no Linux para entender as implicações da comutação entre feeds de repositório.

Não disponível.

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:

  • ca-certificates
  • libc6
  • libgcc-s1
  • libgssapi-krb5-2
  • libicu72
  • liblttng-ust1
  • libssl3
  • libstdc++6
  • libunwind8
  • zlib1g

As dependências podem ser instaladas por meio do comando apt install. O snippet a seguir demonstra a instalação da biblioteca zlib1g:

sudo apt install zlib1g

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.

Ubuntu 22.10

Aviso

Essa versão do Ubuntu não é mais suportada.

A execução do .NET nessa versão do Ubuntu não é mais suportada.

O .NET está disponível nos feeds do gerenciador de pacotes do Ubuntu, bem como no repositório de pacotes da Microsoft. No entanto, você deve usar apenas um ou outro para instalar o .NET. A Microsoft recomenda que você use os feeds do gerenciador de pacotes do Ubuntu. Para usar o repositório de pacotes da Microsoft, confira Como registrar o repositório de pacotes da Microsoft.

As seguintes versões do .NET são compatíveis ou estão disponíveis para o Ubuntu 22.10:

Versões do .NET com suporte Disponível em
feed interno do Ubuntu
Disponível em
Backports do .NET
Feed do Ubuntu
Disponível em
Feed da Microsoft
6,0 7.0, 6.0 Nenhum 7.0, 6.0, 3.1

Importante

Se você estiver usando o SDK do .NET 8 e o Ubuntu 22.04, entenda que as versões do SDK oferecidas pela Canonical estão sempre na banda de recursos .1xx. Se você quiser usar uma versão mais recente da banda de versão, use o feed da Microsoft para instalar o SDK. Verifique se você examinou as informações no artigo mix ups de pacote do .NET no Linux para entender as implicações da comutação entre feeds de repositório.

Não disponível.

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:

  • ca-certificates
  • libc6
  • libgcc-s1
  • libgssapi-krb5-2
  • libicu71
  • liblttng-ust1
  • libssl3
  • libstdc++6
  • libunwind8
  • zlib1g

As dependências podem ser instaladas por meio do comando apt install. O snippet a seguir demonstra a instalação da biblioteca zlib1g:

sudo apt install zlib1g

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.

Próximas etapas