Instale o SDK do .NET ou o Tempo de Execução do .NET no Debian
Este artigo descreve como instalar o .NET no Debian. Quando uma versão Debian deixa de ser suportada, o .NET deixa de ser suportado com essa versão. No entanto, estas instruções podem ajudá-lo a executar o .NET nessas versões, mesmo que não seja suportado.
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 e as versões do Debian nas quais elas 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 Debian atinja o fim da vida.
Debian | .NET |
---|---|
12 | 8, 6 |
11 | 8, 6 |
10 | 6 |
As seguintes versões do .NET não são ❌ mais suportadas:
- .NET 7
- .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 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.
Debian 12
A instalação com APT pode ser feita com alguns comandos. 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.
Abra um terminal e execute os seguintes comandos:
wget https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
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 os seguintes comandos:
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-8.0
Para saber como usar a CLI do .NET, consulte Visão geral da CLI do .NET.
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. Os comandos a seguir instalam o ASP.NET Core Runtime, que é o tempo de execução mais compatível para o .NET. No seu terminal, execute os seguintes comandos:
sudo apt-get update && \
sudo apt-get install -y 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 apt-get install -y dotnet-runtime-8.0
Para saber como usar a CLI do .NET, consulte Visão geral da CLI do .NET.
Debian 11
A instalação com APT pode ser feita com alguns comandos. 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.
Abra um terminal e execute os seguintes comandos:
wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
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 os seguintes comandos:
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-8.0
Para saber como usar a CLI do .NET, consulte Visão geral da CLI do .NET.
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. Os comandos a seguir instalam o ASP.NET Core Runtime, que é o tempo de execução mais compatível para o .NET. No seu terminal, execute os seguintes comandos:
sudo apt-get update && \
sudo apt-get install -y 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 apt-get install -y dotnet-runtime-8.0
Para saber como usar a CLI do .NET, consulte Visão geral da CLI do .NET.
Debian 10
A instalação com APT pode ser feita com alguns comandos. 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.
Abra um terminal e execute os seguintes comandos:
wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
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 os seguintes comandos:
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-7.0
Para saber como usar a CLI do .NET, consulte Visão geral da CLI do .NET.
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. Os comandos a seguir instalam o ASP.NET Core Runtime, que é o tempo de execução mais compatível para o .NET. No seu terminal, execute os seguintes comandos:
sudo apt-get update && \
sudo apt-get install -y 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 apt-get install -y dotnet-runtime-7.0
Para saber como usar a CLI do .NET, consulte Visão geral da CLI do .NET.
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.
Use o APT para atualizar o .NET
Quando uma nova versão de patch está disponível para .NET, você pode simplesmente atualizá-lo através do APT com os seguintes comandos:
sudo apt-get update
sudo apt-get upgrade
Se você atualizou sua distribuição Linux desde a instalação do .NET, talvez seja necessário reconfigurar o repositório de pacotes da Microsoft. Execute as instruções de instalação para sua versão de distribuição atual para atualizar para o repositório de pacotes apropriado para atualizações do .NET.
Resolução de Problemas
Esta seção fornece informações sobre erros comuns que você pode obter ao usar o APT 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:
Não foi possível localizar \ Alguns pacotes não puderam ser instalados
Se você receber uma mensagem de erro semelhante a Não é possível localizar o pacote {dotnet-package} ou Alguns pacotes não puderam ser instalados, execute os seguintes comandos.
Há dois espaços reservados no seguinte conjunto de comandos.
{dotnet-package}
Isso representa o pacote .NET que você está instalando, comoaspnetcore-runtime-8.0
. Isso é usado no comando a seguirsudo apt-get install
.
Primeiro, tente limpar a lista de pacotes:
sudo dpkg --purge packages-microsoft-prod && sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
Em seguida, tente instalar o .NET novamente. Se isso não funcionar, você pode executar uma instalação manual com os seguintes comandos:
Se você estiver usando o Debian 12 ou posterior, tente os seguintes comandos:
# Get OS version info which adds the $ID and $VERSION_ID variables
source /etc/os-release
# Download the Microsoft keys
sudo apt-get install -y gpg wget
wget https://packages.microsoft.com/keys/microsoft.asc
cat microsoft.asc | gpg --dearmor -o microsoft.asc.gpg
# Add the Microsoft repository to the system's sources list
wget https://packages.microsoft.com/config/$ID/$VERSION_ID/prod.list
sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
# Move the key to the appropriate place
sudo mv microsoft.asc.gpg $(cat /etc/apt/sources.list.d/microsoft-prod.list | grep -oP "(?<=signed-by=).*(?=\])")
# Update packages and install .NET
sudo apt-get update && \
sudo apt-get install -y {dotnet-package}
Se você estiver usando uma versão Debian anterior à 12, tente os seguintes comandos:
# Define the OS version, name, and codename
source /etc/os-release
# Download the Microsoft keys
sudo apt-get install -y gpg wget
wget https://packages.microsoft.com/keys/microsoft.asc
cat microsoft.asc | gpg --dearmor -o microsoft.asc.gpg
sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
# Add the Microsoft repository to the system's sources list
wget https://packages.microsoft.com/config/$ID/$VERSION_ID/prod.list
sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
# Set ownership
sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list
# Update packages and install .NET
sudo apt-get update && \
sudo apt-get install -y {dotnet-package}
Falha ao buscar
Ao instalar o pacote .NET, você pode ver um erro semelhante ao Failed to fetch ... File has unexpected size ... Mirror sync in progress?
. Esse erro pode significar 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, o feed do pacote não deve ficar indisponível por mais de 30 minutos. Se você receber esse erro continuamente por mais de 30 minutos, registre um problema em https://github.com/dotnet/core/issues.
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:
10,x
- libc6
- libgcc1
- libgssapi-krb5-2
- Libicu63
- libssl1,1
- libstdc++6
- Zlib1g
11,x
- libc6
- libgcc-s1
- libgssapi-krb5-2
- Libicu67
- libssl1,1
- libstdc++6
- Zlib1g
12,x
- libc6
- libgcc-s1
- libgssapi-krb5-2
- Libicu72
- libssl3
- libstdc++6
- Zlib1g
As dependências podem ser instaladas com o apt install
comando. O trecho a seguir demonstra a instalação da libc6
biblioteca:
sudo apt install libc6
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 libgdiplus adicionando o repositório Mono ao seu sistema.