.NET installeren in Linux met behulp van een installatiescript of door binaire bestanden te extraheren
In dit artikel wordt gedemonstreerd hoe u de .NET SDK of .NET Runtime op Linux installeert met behulp van het installatiescript of door de binaire bestanden te extraheren. Zie .NET installeren in Linux voor een lijst met distributies die ondersteuning bieden voor het ingebouwde pakketbeheer.
Installeer de SDK (inclusief de runtime) als u .NET-apps wilt ontwikkelen. Als u alleen apps hoeft uit te voeren, installeert u runtime. Als u runtime installeert, raden we u aan de ASP.NET Core Runtime te installeren, omdat deze zowel .NET- als ASP.NET Core-runtimes bevat.
Gebruik de dotnet --list-sdks
en dotnet --list-runtimes
opdrachten om te zien welke versies zijn geïnstalleerd. Zie Controleren of .NET al is geïnstalleerd voor meer informatie.
.NET-releases
Er zijn twee soorten ondersteunde releases, LTS-releases (Long Term Support) of Standard Term Support (STS). De kwaliteit van alle releases is hetzelfde. Het enige verschil is de lengte van de ondersteuning. LTS-releases krijgen drie jaar gratis ondersteuning en patches. STS-releases krijgen gedurende 18 maanden gratis ondersteuning en patches. Zie .NET-ondersteuningsbeleid voor meer informatie.
De volgende tabel bevat de ondersteuningsstatus van elke versie van .NET (en .NET Core):
✔️ Ondersteund | ❌ Unsupported |
---|---|
9 (STS) | 7 |
8 (LTS) | 6 (LTS) |
5 | |
3.1 | |
3,0 | |
2.2 | |
2.1 | |
2.0 | |
1.1 | |
1.0 |
Afhankelijkheden
Het is mogelijk dat wanneer u .NET installeert, specifieke afhankelijkheden mogelijk niet worden geïnstalleerd, bijvoorbeeld wanneer u deze handmatig installeert. De volgende lijst bevat informatie over Linux-distributies die worden ondersteund door Microsoft en afhankelijkheden hebben die u mogelijk moet installeren. Controleer de distributiepagina voor meer informatie:
Zie Zelfstandige Linux-apps voor algemene informatie over de afhankelijkheden.
RPM-afhankelijkheden
Als uw distributie niet eerder werd vermeld en RPM is gebaseerd, hebt u mogelijk de volgende afhankelijkheden nodig:
- krb5-bibliotheken
- libicu
- openssl-bibliotheken
DEB-afhankelijkheden
Als uw distributie niet eerder werd vermeld en debian is gebaseerd, hebt u mogelijk de volgende afhankelijkheden nodig:
- libc6
- op te 10000
- meansssapi-krb5-2
- libicu70
- bibliothekensl3
- bibliothekentdc++6
- zlib1g
Algemene afhankelijkheden
Als de .NET-app gebruikmaakt van de Assembly System.Drawing.Common , moet u de installatie van de . NET-app uitvoeren. Zie System.Drawing.Common alleen ondersteund in Windows voor meer informatie.
U kunt meestal een recente versie van microsoft MicrosoftPlus installeren door de Mono-opslagplaats aan uw systeem toe te voegen.
Scriptinstallatie
De dotnet-install-scripts worden gebruikt voor automatisering en niet-beheerdersinstallatie van de SDK en Runtime. U kunt het script downloaden van https://dot.net/v1/dotnet-install.sh. Wanneer .NET op deze manier is geïnstalleerd, moet u de afhankelijkheden installeren die vereist zijn voor uw Linux-distributie. Gebruik de koppelingen in het artikel .NET installeren in Linux voor uw specifieke Linux-distributie.
Belangrijk
Bash is vereist om het script uit te voeren.
U kunt het script downloaden met wget
:
wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.sh
Voordat u dit script uitvoert, moet u ervoor zorgen dat u toestemming verleent om dit script uit te voeren als uitvoerbaar bestand:
chmod +x ./dotnet-install.sh
Het script is standaard ingesteld op het installeren van de nieuwste SDK-versie voor langetermijnondersteuning (LTS), namelijk .NET 8. Als u de nieuwste versie wilt installeren, die mogelijk geen (LTS)-versie is, gebruikt u de --version latest
parameter.
./dotnet-install.sh --version latest
Als u .NET Runtime wilt installeren in plaats van de SDK, gebruikt u de --runtime
parameter.
./dotnet-install.sh --version latest --runtime aspnetcore
U kunt een specifieke primaire versie installeren met de --channel
parameter om de specifieke versie aan te geven. Met de volgende opdracht wordt .NET 9.0 SDK geïnstalleerd.
./dotnet-install.sh --channel 9.0
Zie de naslaginformatie over dotnet-install scripts voor meer informatie.
Zie Omgevingsvariabelen voor het hele systeem instellen om .NET in te schakelen op de opdrachtregel.
Zie het overzicht van .NET CLI voor meer informatie over het gebruik van .NET CLI.
Handmatige installatie
Als alternatief voor pakketbeheerders kunt u de SDK en runtime downloaden en handmatig installeren. Handmatige installatie wordt vaak gebruikt als onderdeel van continue integratietests of op een niet-ondersteunde Linux-distributie. Voor een ontwikkelaar of gebruiker is het beter om een pakketbeheerder te gebruiken.
Download een binaire release voor de SDK of de runtime van een van de volgende sites. De .NET SDK bevat de bijbehorende runtime:
Pak het gedownloade bestand uit en gebruik de export
opdracht om in te stellen DOTNET_ROOT
op de locatie van de uitgepakte map en zorg ervoor dat .NET zich in PATH bevindt. Exporteren DOTNET_ROOT
maakt de .NET CLI-opdrachten beschikbaar in de terminal. Zie .NET SDK en CLI-omgevingsvariabelen voor meer informatie over .NET-omgevingsvariabelen.
Verschillende versies van .NET kunnen worden geëxtraheerd naar dezelfde map, die naast elkaar bestaan.
Opmerking
De volgende opdrachten gebruiken Bash om de omgevingsvariabele DOTNET_ROOT
in te stellen op de huidige werkmap, gevolgd door .dotnet
. Deze map wordt gemaakt als deze niet bestaat. De DOTNET_FILE
omgevingsvariabele is de bestandsnaam van de binaire versie van .NET die u wilt installeren. Dit bestand wordt uitgepakt naar de DOTNET_ROOT
map. Zowel de DOTNET_ROOT
map als tools
de bijbehorende submap worden toegevoegd aan de PATH
omgevingsvariabele.
Belangrijk
Als u deze opdrachten uitvoert, moet u de DOTNET_FILE
waarde wijzigen in de naam van het binaire .NET-bestand dat u hebt gedownload.
DOTNET_FILE=dotnet-sdk-9.0.100-linux-x64.tar.gz
export DOTNET_ROOT=$(pwd)/.dotnet
mkdir -p "$DOTNET_ROOT" && tar zxf "$DOTNET_FILE" -C "$DOTNET_ROOT"
export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools
U kunt meer dan één versie van .NET installeren in dezelfde map.
U kunt .NET ook installeren in de basismap die is geïdentificeerd door de variabele of ~
het HOME
pad:
export DOTNET_ROOT=$HOME/.dotnet
Zie het overzicht van .NET CLI voor meer informatie over het gebruik van .NET CLI.
Gedownloade binaire bestanden controleren
Nadat u een installatieprogramma of binaire versie hebt gedownload, controleert u of het bestand niet is gewijzigd of beschadigd. U kunt de controlesom op uw computer controleren en deze vergelijken met wat er is gerapporteerd op de downloadwebsite.
Wanneer u het bestand downloadt vanaf een officiële downloadpagina, wordt de controlesom voor het bestand weergegeven in een tekstvak. Selecteer de knop Kopiëren om de waarde van de controlesom naar het Klembord te kopiëren.
Gebruik de sha512sum
opdracht om de controlesom af te drukken van het bestand dat u hebt gedownload. Met de volgende opdracht wordt bijvoorbeeld de controlesom van het dotnet-sdk-8.0.100-linux-x64.tar.gz-bestand gerapporteerd:
$ sha512sum dotnet-sdk-8.0.100-linux-x64.tar.gz
13905ea20191e70baeba50b0e9bbe5f752a7c34587878ee104744f9fb453bfe439994d38969722bdae7f60ee047d75dda8636f3ab62659450e9cd4024f38b2a5 dotnet-sdk-8.0.100-linux-x64.tar.gz
Vergelijk de controlesom met de waarde van de downloadsite.
Belangrijk
Hoewel in deze voorbeelden een Linux-bestand wordt weergegeven, is deze informatie ook van toepassing op macOS.
Een controlesombestand gebruiken om te valideren
De .NET-releaseopmerkingen bevatten een koppeling naar een controlesombestand dat u kunt gebruiken om het gedownloade bestand te valideren. In de volgende stappen wordt beschreven hoe u het controlesombestand downloadt en een binaire .NET-installatie valideert:
De releaseopmerkingenpagina voor .NET 8 op GitHub bevat https://github.com/dotnet/core/tree/main/release-notes/8.0#releases een sectie met de naam Releases. De tabel in die sectie is gekoppeld aan de downloads en controlesombestanden voor elke .NET 8-release:
Selecteer de koppeling voor de versie van .NET die u hebt gedownload.
In de vorige sectie is .NET SDK 8.0.100 gebruikt. Deze bevindt zich in de .NET 8.0.0-release.
Op de releasepagina ziet u de .NET Runtime- en .NET SDK-versie en een koppeling naar het controlesombestand:
Klik met de rechtermuisknop op de koppeling Controlesom en kopieer de koppeling naar het klembord.
Open een terminal.
Gebruik
curl -O {link}
dit bestand om het controlesombestand te downloaden.Vervang de koppeling in de volgende opdracht door de koppeling die u hebt gekopieerd.
curl -O https://dotnetcli.blob.core.windows.net/dotnet/checksums/8.0.0-sha.txt
Wanneer zowel het checksum-bestand als het .NET-releasebestand naar dezelfde map zijn gedownload, gebruikt u de
sha512sum -c {file} --ignore-missing
opdracht om het gedownloade bestand te valideren.Wanneer de validatie is geslaagd, ziet u dat het bestand wordt afgedrukt met de status OK :
$ sha512sum -c 8.0.0-sha.txt --ignore-missing dotnet-sdk-8.0.100-linux-x64.tar.gz: OK
Als u het bestand ziet dat is gemarkeerd als MISLUKT, is het bestand dat u hebt gedownload, niet geldig en mag het niet worden gebruikt.
$ sha512sum -c 8.0.0-sha.txt --ignore-missing dotnet-sdk-8.0.100-linux-x64.tar.gz: FAILED sha512sum: WARNING: 1 computed checksum did NOT match sha512sum: 8.0.0-sha.txt: no file was verified
Omgevingsvariabelen instellen voor het hele systeem
Als u het vorige installatiescript hebt gebruikt, zijn de variabelen die zijn ingesteld alleen van toepassing op uw huidige terminalsessie. Voeg ze toe aan uw shell-profiel. Er zijn veel verschillende shells beschikbaar voor Linux en elk heeft een ander profiel. Voorbeeld:
- Bash Shell: ~/.bash_profile of ~/.bashrc
- Korn Shell: ~/.kshrc of .profile
- Z Shell: ~/.zshrc of .zprofile
Stel de volgende twee omgevingsvariabelen in uw shell-profiel in:
DOTNET_ROOT
Deze variabele is ingesteld op de map .NET is geïnstalleerd op, zoals
$HOME/.dotnet
:export DOTNET_ROOT=$HOME/.dotnet
PATH
Deze variabele moet zowel de
DOTNET_ROOT
map als deDOTNET_ROOT/tools
map bevatten:export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools