Поделиться через


Установка среды выполнения .NET с помощью Snap

В этой статье описывается установка пакета привязки среды выполнения .NET. Пакеты оснастки среды выполнения .NET предоставляются и поддерживаются каноническим. Пакеты Snap — это отличная альтернатива диспетчеру пакетов, встроенному в дистрибутив Linux.

Привязка — это пакет приложения и его зависимости, которые работают во многих разных дистрибутивах Linux. Snap-пакеты можно найти и установить с помощью Snap Store. Дополнительные сведения о Snap см . в кратком руководстве.

Внимание

При оснастки установки .NET могут возникнуть проблемы с запуском средств .NET. Если вы хотите использовать средства .NET, рекомендуется установить .NET с помощью dotnet-install скрипта или диспетчера пакетов для конкретного дистрибутива Linux.

Необходимые компоненты

  • Дистрибутив Linux, поддерживающий привязку.
  • snapd управляющая программа оснастки.

Дистрибутив Linux может уже включать привязку. Попробуйте запустить snap из терминала, чтобы узнать, работает ли команда. Список поддерживаемых дистрибутивов Linux и инструкции по установке оснастки см. в разделе "Установка snapd".

Выпуски .NET

Корпорация Майкрософт публикует .NET в двух разных политиках поддержки, долгосрочной поддержке (LTS) и стандартной поддержке терминов (STS). Качество всех выпусков одинаково. Единственное различие заключается в продолжительности поддержки. Выпуски LTS получают бесплатную поддержку и исправления в течение трех лет. Выпуски STS получают бесплатную поддержку и исправления в течение 18 месяцев. Дополнительные сведения см. в статье о политике поддержки .NET.

В настоящее время поддерживаются версии .NET, поддерживаемые корпорацией Майкрософт:

  • 8.0 (LTS)— поддержка заканчивается 10 ноября 2026 г.
  • 6.0 (LTS)— поддержка заканчивается 12 ноября 2024 г.

Другие сущности, создающие и выпускающие .NET, могут вводить различные политики поддержки. Обязательно ознакомьтесь с ними, чтобы понять, как поддерживается .NET.

1. Установка среды выполнения

Следующие шаги по установке пакета привязки среды выполнения .NET 8:

  1. Откройте окно терминала.

  2. Используется snap install для установки пакета привязки среды выполнения .NET. Например, следующая команда устанавливает среду выполнения .NET 8.

    sudo snap install dotnet-runtime-80
    

Каждая среда выполнения .NET публикуется как отдельный пакет привязки. В следующей таблице перечислены пакеты:

Версия .NET Пакет Snap Версия .NET, поддерживаемая корпорацией Майкрософт
8 (STS) dotnet-runtime-80 Да
7 (STS) dotnet-runtime-70 No
6 (LTS) dotnet-runtime-60 Да
5 dotnet-runtime-50 No
3.1 dotnet-runtime-31 No
3.0 dotnet-runtime-30 No
2.2 dotnet-runtime-22 No
2.1 dotnet-runtime-21 No

2. Включите команду dotnet

При установке dotnet пакета оснастки среды выполнения .NET команда не настраивается автоматически. 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-пакету использует следующий формат: /snap/{package}/current. Например, если вы установили snap-пакет 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 именем пакета среды выполнения.

Не удается установить Snap в WSL2

systemd необходимо включить в экземпляре WSL2 перед установкой Оснастки.

  1. Откройте /etc/wsl.conf в текстовом редакторе выбранный вариант.

  2. Вставьте следующую конфигурацию:

    [boot]
    systemd=true
    
  3. Сохраните файл и перезапустите экземпляр WSL2 с помощью PowerShell. Используйте команду wsl.exe --shutdown.

4. Использование интерфейса командной строки .NET

Откройте терминал и тип 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.