Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Feljegyzés
A telepítési szkript viselkedése megváltozott. Letölti a .NET-et az új hálózati helyekről. További információ: Kritikus: A .NET telepítési hivatkozásai módosulnak.
Név
dotnet-install.ps1
|
dotnet-install.sh - A .NET SDK és a megosztott futtatókörnyezet telepítéséhez használt szkript.
Szinopszis
Windows:
dotnet-install.ps1 [-Architecture <ARCHITECTURE>] [-AzureFeed]
[-Channel <CHANNEL>] [-DryRun] [-FeedCredential]
[-InstallDir <DIRECTORY>] [-JSonFile <JSONFILE>]
[-NoPath] [-ProxyAddress] [-ProxyBypassList <LIST_OF_URLS>]
[-ProxyUseDefaultCredentials] [-Quality <QUALITY>] [-Runtime <RUNTIME>]
[-SkipNonVersionedFiles] [-UncachedFeed] [-KeepZip] [-ZipPath <PATH>] [-Verbose]
[-Version <VERSION>]
Get-Help ./dotnet-install.ps1
Linux/macOS:
dotnet-install.sh [--architecture <ARCHITECTURE>] [--azure-feed]
[--channel <CHANNEL>] [--dry-run] [--feed-credential]
[--install-dir <DIRECTORY>] [--jsonfile <JSONFILE>]
[--no-path] [--quality <QUALITY>]
[--runtime <RUNTIME>] [--runtime-id <RID>]
[--skip-non-versioned-files] [--uncached-feed] [--keep-zip] [--zip-path <PATH>] [--verbose]
[--version <VERSION>]
dotnet-install.sh --help
A bash-szkript a PowerShell-kapcsolókat is olvassa, így a PowerShell-kapcsolókat Linux/macOS rendszereken is használhatja a szkripttel.
Leírás
A dotnet-install szkriptek a .NET SDK nem rendszergazdai telepítését hajtják végre, amely tartalmazza a .NET CLI-t és a megosztott futtatókörnyezetet. Két szkript létezik:
- Windowson működő PowerShell-szkript. A telepítési utasításokért tekintse meg a Telepítés Windows rendszeren című témakört.
- Linux/macOS rendszeren működő bash-szkript. A telepítési utasításokért lásd : Telepítés Linux rendszeren és telepítés macOS rendszeren.
Feljegyzés
A .NET telemetriai adatokat gyűjt. További információkért és a letiltás módjáról a .NET SDK telemetriai adatairól olvashat.
Cél
A szkriptek célja a folyamatos integrációs (CI) forgatókönyvek használata, ahol:
Az SDK-t felhasználói beavatkozás és rendszergazdai jogosultságok nélkül kell telepíteni.
Az SDK telepítésének nem kell több CI-futtatáson keresztül megmaradnia.
Az események tipikus sorozata:
- A CI aktiválódik.
- A CI ezen szkriptek egyikével telepíti az SDK-t.
- A CI befejezi a munkát, és törli az ideiglenes adatokat, beleértve az SDK telepítését is.
Fejlesztési környezet beállításához vagy alkalmazások futtatásához használja a telepítőket a szkriptek helyett.
Ajánlott verzió
Javasoljuk, hogy a szkriptek stabil verzióját használja:
- Bash (Linux/macOS): https://dot.net/v1/dotnet-install.sh
- PowerShell (Windows): https://dot.net/v1/dotnet-install.ps1
A szkriptek forrása a dotnet/install-scripts GitHub-adattárban található.
Szkript viselkedése
Mindkét szkriptnek ugyanaz a viselkedése. Letöltik a ZIP/tarball fájlt a CLI buildcseppekből, és az alapértelmezett helyen vagy a megadott -InstallDir|--install-dirhelyen telepítik.
A telepítési szkriptek alapértelmezés szerint letöltik és telepítik az SDK-t. Ha csak a megosztott futtatókörnyezetet szeretné beszerezni, adja meg az -Runtime|--runtime argumentumot.
Alapértelmezés szerint a szkript hozzáadja a telepítési helyet az aktuális munkamenet $PATH. Az argumentum megadásával felülbírálhatja ezt az alapértelmezett viselkedést -NoPath|--no-path . A szkript nem állítja be a környezeti változót DOTNET_ROOT .
Fontos
A szkript nem adja hozzá a telepítési helyet a felhasználó környezeti változóhoz PATH , manuálisan kell hozzáadnia.
A szkript futtatása előtt győződjön meg arról, hogy az operációs rendszer támogatott. További információ: .NET telepítése Windows, Linux és macOS rendszeren.
Az argumentum használatával telepíthet egy adott verziót -Version|--version . A verziót háromrészes verziószámként kell megadni, például 2.1.0. Ha a verzió nincs megadva, a szkript telepíti a verziót latest .
A telepítési szkriptek nem frissítik a beállításjegyzéket Windows rendszeren. Csak letöltik a tömörített bináris fájlokat, és átmásolják őket egy mappába. Ha frissíteni szeretné a beállításkulcs értékeit, használja a .NET-telepítőket.
Beállítások
-Architecture|--architecture <ARCHITECTURE>A telepíteni kívánt .NET bináris fájlok architektúrája. A lehetséges értékek a következők
<auto>: ,amd64x64,x86,arm64,arm,s390x,ppc64leésriscv64. Az alapértelmezett érték a<auto>jelenleg futó operációsrendszer-architektúra.-AzureFeed|--azure-feedCsak belső használatra. Lehetővé teszi egy másik tároló használatát az SDK-archívumok letöltéséhez. Az alapértelmezett érték
https://builds.dotnet.microsoft.com/dotnet.-Channel|--channel <CHANNEL>Megadja a telepítés forráscsatornáját. A lehetséges értékek a következők:
-
STS: A legújabb standard kifejezéstámogatási kiadás. -
LTS: A legutóbbi hosszú távú támogatási kiadás. - Kétrészes verzió A.B formátumban, amely egy adott kiadást jelöl (például
3.18.0). - Háromrészes verzió A.B.Cxx formátumban, amely egy adott SDK-kiadást jelöl (például 8.0.1xx vagy 8.0.2xx). Az 5.0-s kiadás óta érhető el.
A
versionparaméter felülbírálja a paramétertchannel, ha a nem használt verziótlatesthasználja.Az alapértelmezett érték
LTS. A .NET támogatási csatornáiról további információt a .NET támogatási szabályzat oldalán talál.-
-DryRun|--dry-runHa be van állítva, a szkript nem fogja végrehajtani a telepítést. Ehelyett megjeleníti a .NET CLI jelenleg kért verziójának konzisztens telepítéséhez használandó parancssort. Ha például megadja a verziót
latest, megjelenik egy hivatkozás az adott verzióval, hogy ez a parancs determinisztikusan használható legyen egy buildszkriptben. A bináris hely is megjelenik, ha inkább saját maga szeretné telepíteni vagy letölteni.-FeedCredential|--feed-credentialLekérdezési sztringként használható az Azure-hírcsatornához való hozzáfűzéshez. Lehetővé teszi az URL-cím módosítását nem nyilvános Blob Storage-fiókok használatára.
--helpKiírja a szkript súgóját. Csak bash-szkriptre vonatkozik. A PowerShellhez használja a következőt
Get-Help ./dotnet-install.ps1: .-InstallDir|--install-dir <DIRECTORY>Megadja a telepítési útvonalat. A címtár akkor jön létre, ha nem létezik. Az alapértelmezett érték a %LocalAppData%\Microsoft\dotnet windowsos és $HOME/.dotnet Linux/macOS rendszeren. A bináris fájlok közvetlenül ebbe a könyvtárba kerülnek.
-JSonFile|--jsonfile <JSONFILE>Megadja az SDK-verzió meghatározásához használt global.json fájl elérési útját. A global.json fájlnak a következő értékével kell rendelkeznie
sdk:version: .-NoPath|--no-pathHa be van állítva, a telepítési mappa nem lesz exportálva az aktuális munkamenet elérési útjára. Alapértelmezés szerint a szkript módosítja a PATH-ot, ami a telepítés után azonnal elérhetővé teszi a .NET CLI-t.
-ProxyAddressHa be van állítva, a telepítő a proxyt használja a webes kérések során. (Csak Windows esetén érvényes.)
-ProxyBypassList <LIST_OF_URLS>Ha be van állítva, azoknak a vesszővel
ProxyAddresstagolt URL-címeknek a listáját adja meg, amelyek megkerülik a proxyt. (Csak Windows esetén érvényes.)-ProxyUseDefaultCredentialsHa be van állítva, a telepítő az aktuális felhasználó hitelesítő adatait használja proxycím használatakor. (Csak Windows esetén érvényes.)
-Quality|--quality <QUALITY>Letölti a megadott minőség legújabb buildét a csatornán. A lehetséges értékek a következők:
daily,previewésGA.A különböző minőségi értékek a telepített SDK vagy futtatókörnyezet kiadási folyamatának különböző szakaszait jelzik.
-
daily: Az SDK vagy a Runtime legújabb buildjei. Minden nap épülnek, és nem tesztelik őket. Éles használatra nem ajánlottak, de gyakran használhatók bizonyos funkciók vagy javítások tesztelésére közvetlenül a termékbe való egyesítése után. Ezek a buildek azdotnet/installeradattárból származnak, ezért ha javításokat keres,dotnet/sdkvárnia kell a kód áramlására, és egyesítenie kell őket az SDK-ból a Telepítőbe, mielőtt egy napi buildben megjelennek. -
preview: A .NET következő, nyilvános használatra szánt verziójának havi nyilvános kiadásai. Éles használathoz nem ajánlott. Célja, hogy a felhasználók kísérletezhessenek és teszteljék az új főverziót a kiadás előtt. -
GA: A .NET SDK és a Runtime végleges stabil kiadásai. Nyilvános használatra, valamint az éles környezet támogatására szolgál.
A
--qualitybeállítás csak a következővel--channelkombinálva működik, de nem alkalmazható a csatornákra ésSTSaLTScsatornákra, és figyelmen kívül lesz hagyva, ha az egyik ilyen csatornát használja.SDK-telepítéshez használjon
channelolyan értéket, amely formátumaA.BvagyA.B.Cxxformátuma. Futásidejű telepítéshez használjachannela formátumotA.B.Ne használjon mindkettőt
versionésqualityparamétert. Haqualitymeg van adva, a szkript önállóan határozza meg a megfelelő verziót.Az 5.0-s kiadás óta érhető el.
-
-Runtime|--runtime <RUNTIME>Csak a megosztott futtatókörnyezetet telepíti, nem a teljes SDK-t. A lehetséges értékek a következők:
-
dotnet: AMicrosoft.NETCore.Appmegosztott futtatókörnyezet. -
aspnetcore: AMicrosoft.AspNetCore.Appmegosztott futtatókörnyezet. -
windowsdesktopAMicrosoft.WindowsDesktop.Appmegosztott futtatókörnyezet.
-
--os <OPERATING_SYSTEM>Azt az operációs rendszert adja meg, amelyre az eszközök telepítve vannak. A lehetséges értékek a következők:
osx,macos,linux,linux-musl.freebsdA paraméter nem kötelező, és csak akkor használható, ha felül kell bírálnia a szkript által észlelt operációs rendszert.
-SharedRuntime|--shared-runtimeFeljegyzés
Ez a paraméter elavult, és a szkript egy későbbi verziójában eltávolítható. A javasolt alternatíva a
-Runtime|--runtimelehetőség.Csak a megosztott futtatókörnyezeti biteket telepíti, nem a teljes SDK-t. Ez a beállítás egyenértékű a beállítással
-Runtime|--runtime dotnet.-SkipNonVersionedFiles|--skip-non-versioned-filesKihagyja a nem verziószámozott fájlok( például dotnet.exe) telepítését, ha már léteznek.
-UncachedFeed|--uncached-feedCsak belső használatra. Lehetővé teszi egy másik tároló használatát az SDK-archívumok letöltéséhez. Ez a paraméter felülírja
-AzureFeed|--azure-feed.-KeepZip|--keep-zipHa be van állítva, a letöltött SDK-archívum a telepítés után megmarad.
-ZipPath|--zip-path <PATH>Ha be van állítva, a letöltött SDK-archívum a megadott elérési úton lesz tárolva.
-Verbose|--verboseDiagnosztikai információkat jelenít meg.
-Version|--version <VERSION>Egy adott buildverziót jelöl. A lehetséges értékek a következők:
-
latest: Legújabb buildelés a csatornán (a-Channelbeállítással együtt használva). - Háromrészes verzió X.Y.Z formátumban, amely egy adott buildverziót jelöl; felülírja a
-Channelbeállítást. Például:2.0.0-preview2-006120
Ha nincs megadva,
-Versionaz alapértelmezett érték a .latest-
Példák
Telepítse a legújabb, hosszú távú támogatott (LTS) verziót az alapértelmezett helyre:
Windows:
./dotnet-install.ps1 -Channel LTSmacOS/Linux:
./dotnet-install.sh --channel LTSTelepítse a 6.0.1xx SDK legújabb előzetes verzióját a megadott helyre:
Windows:
./dotnet-install.ps1 -Channel 6.0.1xx -Quality preview -InstallDir C:\climacOS/Linux:
./dotnet-install.sh --channel 6.0.1xx --quality preview --install-dir ~/cliTelepítse a megosztott futtatókörnyezet 6.0.0-s verzióját:
Windows:
./dotnet-install.ps1 -Runtime dotnet -Version 6.0.0macOS/Linux:
./dotnet-install.sh --runtime dotnet --version 6.0.0Szerezze be a szkriptet, és telepítse a 6.0.2-es verziót egy vállalati proxy mögé (csak Windows esetén):
Invoke-WebRequest 'https://dot.net/v1/dotnet-install.ps1' -Proxy $env:HTTP_PROXY -ProxyUseDefaultCredentials -OutFile 'dotnet-install.ps1'; ./dotnet-install.ps1 -InstallDir '~/.dotnet' -Version '6.0.2' -Runtime 'dotnet' -ProxyAddress $env:HTTP_PROXY -ProxyUseDefaultCredentials;Szerezze be a szkriptet, és telepítse a .NET CLI egysoros példáit:
Windows:
# Run a separate PowerShell process because the script calls exit, so it will end the current PowerShell session. &powershell -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -UseBasicParsing 'https://dot.net/v1/dotnet-install.ps1'))) <additional install-script args>"macOS/Linux:
curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin <additional install-script args>Telepítsen több verziót, de ne írja
dotnetfelül a bináris fájlokat a korábbi telepítésekből.Ha a .NET SDK-t vagy a .NET-futtatókörnyezetet egy korábbi verzióról telepíti egy újabb verzióra, akkor azt kell használnia
--skip-non-versioned-files, hogy a korábbi verzióból származó "eltérítetlen"dotnetfájlok ne felülírják ugyanazokat a fájlokat az újabb verzióból.:~ $ ./dotnet-install.sh --channel 9.0 --install-dir local-dotnet # installs the latest 9 SDK to the specified directory dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Sdk/9.0.303/dotnet-sdk-9.0.303-linux-x64.tar.gz dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Sdk/9.0.303/dotnet-sdk-9.0.303-linux-x64.tar.gz size is 218004272 bytes. dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Sdk/9.0.303/dotnet-sdk-9.0.303-linux-x64.tar.gz dotnet-install: Downloaded file size is 218004272 bytes. dotnet-install: The remote and local file sizes are equal. dotnet-install: Installed version is 9.0.303 dotnet-install: Adding to current process PATH: `$HOME/local-dotnet`. Note: This change will be visible only when sourcing script. dotnet-install: Note that the script does not resolve dependencies during installation. dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section. dotnet-install: Installation finished successfully. :~ $ ./local-dotnet/dotnet --list-runtimes # see what runtimes we have available Microsoft.AspNetCore.App 9.0.7 [$HOME/local-dotnet/shared/Microsoft.AspNetCore.App] Microsoft.NETCore.App 9.0.7 [$HOME/local-dotnet/shared/Microsoft.NETCore.App] :~ $ ./local-dotnet/dotnet --list-sdks # see what SDKs we have available 9.0.303 [$HOME/local-dotnet/sdk] :~ $ ./dotnet-install.sh --channel 8.0 --install-dir local-dotnet --skip-non-versioned-files # install the 8 SDK to the same place, but keep the 9 dotnet binaries dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.412/dotnet-sdk-8.0.412-linux-x64.tar.gz dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.412/dotnet-sdk-8.0.412-linux-x64.tar.gz size is 216096947 bytes. dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Sdk/8.0.412/dotnet-sdk-8.0.412-linux-x64.tar.gz dotnet-install: Downloaded file size is 216096947 bytes. dotnet-install: The remote and local file sizes are equal. dotnet-install: Installed version is 8.0.412 dotnet-install: Adding to current process PATH: `$HOME/local-dotnet`. Note: This change will be visible only when sourcing script. dotnet-install: Note that the script does not resolve dependencies during installation. dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section. dotnet-install: Installation finished successfully. :~ $ ./local-dotnet/dotnet --list-runtimes # we should have 8 and 9 Runtimes now Microsoft.AspNetCore.App 8.0.18 [$HOME/local-dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 9.0.7 [$HOME/local-dotnet/shared/Microsoft.AspNetCore.App] Microsoft.NETCore.App 8.0.18 [$HOME/local-dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 9.0.7 [$HOME/local-dotnet/shared/Microsoft.NETCore.App] :~ $ ./local-dotnet/dotnet --list-sdks # we should have 2 SDKs now 8.0.412 [$HOME/local-dotnet/sdk] 9.0.303 [$HOME/local-dotnet/sdk]
Környezeti változók beállítása
A .NET manuális telepítése nem adja hozzá a környezeti változókat a rendszer egészében, és általában csak arra a munkamenetre működik, amelyben a .NET telepítve volt. Két környezeti változót kell beállítania az operációs rendszerhez:
DOTNET_ROOTEz a változó arra a mappára van állítva, amelybe a .NET telepítve volt, például
$HOME/.dotnetLinux és macOS esetén, valamint$HOME\.dotneta Windows PowerShellben.PATHEnnek a változónak tartalmaznia kell a
DOTNET_ROOTmappát és a felhasználó .dotnet/tools mappáját is.$HOME/.dotnet/toolsEz általában Linuxon és macOS-en, valamint$HOME\.dotnet\toolsa Windows PowerShellben történik.
Tipp.
Linux és macOS esetén a echo parancs használatával állítsa be a rendszerhéjprofil változóit, például .bashrc:
echo 'export DOTNET_ROOT=$HOME/.dotnet' >> ~/.bashrc
echo 'export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools' >> ~/.bashrc
Eltávolítás
Nincs eltávolítási szkript. A .NET manuális eltávolításáról további információt a .NET-futtatókörnyezet és az SDK eltávolítása című témakörben talál.
A dotnet-install.sh aláírás-ellenőrzése
Az aláírás-ellenőrzés fontos biztonsági intézkedés, amely segít biztosítani a szkriptek hitelességét és integritását. A szkript aláírásának ellenőrzésével meggyőződhet arról, hogy nem módosították, és megbízható forrásból származik.
Az alábbiakban részletes útmutatót talál a szkript gpg használatával történő hitelességének dotnet-install.sh ellenőrzéséhez:
- Telepítse a GPG-t: A GPG (GNU Privacy Guard) egy ingyenes és nyílt forráskódú eszköz az adatok titkosításához és aláírásához. A telepítéshez kövesse a GPG webhelyén található utasításokat.
-
Importálja a nyilvános kulcsot: Töltse le a telepítési szkriptek nyilvános kulcsfájlját , majd importálja a GPG-kulcstartóba a parancs futtatásával
gpg --import dotnet-install.asc. -
Töltse le az aláírási fájlt: A bash-szkript aláírási fájlja a következő címen
https://dot.net/v1/dotnet-install.sigérhető el: . Letöltheti egy olyan eszközzel, mintwgetvagycurl. -
Ellenőrizze az aláírást: A bash-szkript aláírásának ellenőrzéséhez futtassa a parancsot
gpg --verify dotnet-install.sig dotnet-install.sh. Ezzel ellenőrzi a fájl aláírásátdotnet-install.sha fájlban lévő aláírásondotnet-install.sig. -
Ellenőrizze az eredményt: Ha az aláírás érvényes, megjelenik egy üzenetet tartalmazó
Good signature from "Microsoft DevUXTeamPrague <devuxteamprague@microsoft.com>"üzenet. Ez azt jelenti, hogy a szkriptet nem módosították, és megbízhatónak tekinthetők.
Környezet előkészítése
A GPG telepítése és a nyilvános kulcs importálása egyszeri művelet.
sudo apt install gpg
wget https://dot.net/v1/dotnet-install.asc
gpg --import dotnet-install.asc
Ha sikeres, a kimenetnek az alábbihoz hasonlóan kell megjelennie:
gpg: directory '/home/<user>/.gnupg' created
gpg: keybox '/home/<user>/.gnupg/pubring.kbx' created
gpg: /home/<user>/.gnupg/trustdb.gpg: trustdb created
gpg: key B9CF1A51FC7D3ACF: public key "Microsoft DevUXTeamPrague <devuxteamprague@microsoft.com>" imported
gpg: Total number processed: 1
gpg: imported: 1
Letöltés és ellenőrzés
Az importált kulccsal letöltheti a szkriptet és az aláírást, majd ellenőrizheti, hogy a szkript megfelel-e az aláírásnak:
wget https://dot.net/v1/dotnet-install.sh
wget https://dot.net/v1/dotnet-install.sig
gpg --verify dotnet-install.sig dotnet-install.sh
Ha sikeres, a kimenetnek az alábbihoz hasonlóan kell megjelennie:
gpg: Signature made <datetime>
gpg: using RSA key B9CF1A51FC7D3ACF
gpg: Good signature from "Microsoft DevUXTeamPrague <devuxteamprague@microsoft.com>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 2B93 0AB1 228D 11D5 D7F6 B6AC B9CF 1A51 FC7D 3ACF
A figyelmeztetés azt jelenti, hogy nem bízik a kulcsírásban a nyilvános kulcsban, de a szkript továbbra is ellenőrzött. Az ellenőrző parancs által visszaadott kilépési kódnak sikeresnek kell lennie 0.