다음을 통해 공유


스냅을 사용하여 .NET 런타임 설치

이 문서에서는 .NET 런타임 스냅 패키지를 설치하는 방법을 설명합니다. .NET 런타임 스냅 패키지는 Canonical에서 제공하고 유지 관리합니다. Snap은 Linux 배포에 기본 제공되는 패키지 관리자의 좋은 대안입니다.

스냅은 다양한 Linux 배포판에서 작동하는 앱과 해당 종속성의 번들입니다. Snap은 Snap 스토어에서 검색해서 설치할 수 있습니다. Snap에 대한 자세한 내용은 Snap 시작하기를 참조하세요.

주의

.NET의 끌기 설치는 .NET 도구를 실행하는 데 문제가 있을 수 있습니다. .NET 도구를 사용하려는 경우 dotnet-install 스크립트 또는 특정 Linux 배포에 대한 패키지 관리자를 사용하여 .NET을 설치하는 것이 좋습니다.

필수 조건

  • 스냅을 지원하는 Linux 배포판.
  • snapd 스냅 디먼.

Linux 배포판에 스냅이 이미 포함되어 있을 수 있습니다. 터미널에서 snap을 실행하여 명령이 작동하는지 확인하세요. 지원되는 Linux 배포판 목록 및 스냅을 설치하는 방법에 대한 지침은 snapd 설치를 참조하세요.

.NET 릴리스

Microsoft는 LTS(장기 지원) 및 STS(표준 기간 지원)라는 두 가지 지원 정책에 따라 .NET을 게시합니다. 모든 릴리스의 품질은 동일합니다. 유일한 차이점은 지원 기간입니다. LTS 릴리스는 3년 동안 무료 지원과 패치를 가져옵니다. STS 릴리스는 18개월 동안 무료 지원 및 패치를 받습니다. 자세한 내용은 .NET 지원 정책을 참조하세요.

현재 Microsoft에서 지원하는 .NET 버전은 다음과 같습니다.

  • 8.0(LTS) - 2026년 11월 10일에 지원이 종료됩니다.
  • 6.0(LTS) - 2024년 11월 12일에 지원이 종료됩니다.

.NET을 빌드하고 릴리스하는 다른 엔터티는 다른 지원 정책을 도입할 수 있습니다. .NET이 지원되는 방식을 이해하려면 이러한 정책을 함께 확인해야 합니다.

1. 런타임 설치

다음 단계를 따라 .NET 8 런타임 스냅 패키지를 설치합니다.

  1. 터미널을 엽니다.

  2. snap install을 사용하여 .NET SDK 런타임 패키지를 설치합니다. 예를 들어 다음 명령은 .NET 8 런타임을 설치합니다.

    sudo snap install dotnet-runtime-80
    

각 .NET 런타임은 개별 스냅 패키지로 게시됩니다. 다음 표에는 패키지가 나열되어 있습니다.

.NET 버전 Snap 패키지 Microsoft에서 지원하는 .NET 버전
8(STS) dotnet-runtime-80
7(STS) dotnet-runtime-70 아니요
6(LTS) dotnet-runtime-60
5 dotnet-runtime-50 아니요
3.1 dotnet-runtime-31 아니요
3.0 dotnet-runtime-30 아니요
2.2 dotnet-runtime-22 아니요
2.1 dotnet-runtime-21 아니요

2. dotnet 명령 사용

.NET 런타임 스냅 패키지가 설치되면 dotnet 명령이 자동으로 구성되지 않습니다. snap alias 명령을 사용하여 터미널에서 dotnet 명령을 사용합니다. 이 명령의 형식은 sudo snap alias {package}.{command} {alias}로 지정됩니다. 다음 예는 dotnet 명령을 매핑합니다.

sudo snap alias dotnet-runtime-80.dotnet dotnet

3. 설치 위치 내보내기

DOTNET_ROOT 환경 변수는 도구에서 .NET이 설치된 위치를 확인하는 데 자주 사용됩니다. .NET이 Snap을 통해 설치되면 이 환경 변수는 구성되지 않습니다. 프로필에서 DOTNET_ROOT 환경 변수를 구성해야 합니다. 스냅 경로는 /snap/{package}/current 형식을 사용합니다. 예를 들어 dotnet-runtime-80 스냅을 설치한 경우 다음 명령을 사용하여 환경 변수를 .NET이 있는 위치로 설정합니다.

export DOTNET_ROOT=/snap/dotnet-runtime-80/current

환경 변수를 영구적으로 내보내기

앞의 export 명령은 실행된 터미널 세션에 대한 환경 변수만 설정합니다.

셸 프로필을 편집하여 명령을 영구적으로 추가할 수 있습니다. 몇 가지 Linux용 셸이 있으며, 각각 다른 프로필을 갖습니다. 예를 들어:

  • Bash 셸: ~/.bash_profile, ~/.bashrc
  • Korn 셸: ~/.kshrc 또는 .profile
  • Z 셸: ~/.zshrc 또는 .zprofile

셸에 적절한 원본 파일을 편집하고 export DOTNET_ROOT=/snap/dotnet-runtime-80/current를 추가합니다.

문제 해결

dotnet 터미널 명령이 작동하지 않음

스냅 패키지는 패키지에서 제공하는 명령에 별칭을 매핑할 수 있습니다. .NET 런타임 스냅 패키지는 dotnet 명령에 자동으로 별칭을 지정하지 않습니다. dotnet 명령의 별칭을 스냅 패키지에 지정하려면 다음 명령을 사용합니다.

sudo snap alias dotnet-runtime-80.dotnet dotnet

dotnet-runtime-80을 런타임 패키지의 이름으로 대체합니다.

WSL2에서 스냅을 설치할 수 없음

스냅을 설치하려면 먼저 WSL2 인스턴스에서 systemd를 활성화해야 합니다.

  1. 선택한 텍스트 편집기에서 /etc/wsl.conf를 엽니다.

  2. 다음 구성에 붙여넣습니다.

    [boot]
    systemd=true
    
  3. 파일을 저장하고 PowerShell을 통해 WSL2 인스턴스를 다시 시작합니다. wsl.exe --shutdown 명령 사용

4. .NET CLI 사용

터미널을 열고 dotnet을 입력합니다.

dotnet

다음과 유사한 출력이 표시됩니다.

Usage: dotnet [options]
Usage: dotnet [path-to-application]

Options:
  -h|--help         Display help.
  --info            Display .NET information.
  --list-sdks       Display the installed SDKs.
  --list-runtimes   Display the installed runtimes.

path-to-application:
  The path to an application .dll file to execute.

.NET CLI 사용 방법을 알아보려면 .NET CLI 개요를 참조하세요.