как установить dotnet на linux
Snap-пакет — это пакет приложения и его зависимостей, которые работают без изменений во многих разных дистрибутивах Linux. Snap-пакеты можно найти и установить с помощью Snap Store. Дополнительные сведения о Snap см. в этой статье.
Пакеты Snap не поддерживаются в WSL2 в Windows 10. В качестве альтернативы можно использовать скрипт dotnet-install или диспетчер пакетов для соответствующего дистрибутива WSL2. Такой способ не рекомендуется, но вы можете попытаться включить пакет Snap с помощью неподдерживаемого возможного решения, описываемого на форумах snapcraft.
✔️ Поддерживается | ❌ Не поддерживается |
---|---|
5,0 | 3.0 |
3.1 (LTS) | 2.2 |
2.1 | |
2,0 | |
1,1 | |
1.0 |
Пакет SDK или среда выполнения
Установка пакета SDK
Затем зарегистрируйте команду dotnet для системы, выполнив команду snap alias :
Установка среды выполнения
Затем зарегистрируйте команду dotnet для системы, выполнив команду snap alias :
Экспорт расположения установки
Предыдущая команда export задает переменную среды только для сеанса терминала, в котором она была запущена.
Вы можете изменить профиль оболочки, чтобы добавить команды окончательно. Существует несколько различных оболочек, доступных для Linux, и каждая из них имеет свой профиль. Пример:
Ошибки сертификатов TLS/SSL
Чтобы устранить эту проблему, задайте несколько переменных среды:
Расположение сертификата зависит от дистрибутива. Ниже приведены расположения для дистрибутивов, в которых возникла проблема.
Distribution | Расположение |
---|---|
Fedora | /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem |
OpenSUSE | /etc/ssl/ca-bundle.pem |
Solus | /etc/ssl/certs/ca-certificates.crt |
Решение проблем с dotnet
Также можно просмотреть эти проблемы GitHub для получения сведений об этих трудностях:
Псевдоним dotnet
✔️ Поддерживается | ❌ Не поддерживается |
---|---|
5,0 | 3.0 |
3.1 (LTS) | 2.2 |
2.1 | |
2,0 | |
1,1 | |
1.0 |
Зависимости
Общие сведения о зависимостях см. в статье об автономных приложениях Linux.
Зависимости RPM
Если ваш дистрибутив не указан в приведенном выше списке и построен на основе RPM, могут потребоваться следующие зависимости:
Если в целевой среде выполнения установлена версия OpenSSL 1.1 или более поздняя, необходимо установить compat-openssl10.
Зависимости DEB
Если ваш дистрибутив не указан в приведенном выше списке и построен на основе Debian, могут потребоваться следующие зависимости:
Общие зависимости
Вы можете установить последнюю версию libgdiplus, добавив в систему репозиторий Mono. Для получения дополнительной информации см. https://www.mono-project.com/download/stable/.
Установка с помощью скрипта
Сценарии dotnet-install используются для автоматизации установок пакета SDK и среды выполнения и осуществления таких установок без прав администратора. Скрипт можно скачать на странице https://dot.net/v1/dotnet-install.sh.
![ВАЖНО] Для выполнения скрипта требуется Bash.
Установка вручную
В качестве альтернативы диспетчерам пакетов можно скачать и вручную установить пакет SDK и среду выполнения. Установка вручную как правило выполняется в рамках тестирования непрерывной интеграции или в неподдерживаемом дистрибутиве Linux. В большинстве случаев разработчикам и пользователям рекомендуется использовать диспетчер пакетов.
Вы можете изменить профиль оболочки, чтобы добавить команды окончательно. Существует несколько различных оболочек, доступных для Linux, и каждая из них имеет свой профиль. Пример:
Кроме того, добавьте export DOTNET_ROOT=$HOME/dotnet в конец файла.
Такой подход позволяет устанавливать разные версии в отдельные расположения и выбирать, какие из них следует использовать для каждого приложения.
Цель этой части
В этом разделе предполагается, что вы используете Ubuntu и используете средство командной строки APT для установки приложений.
Предварительные требования
В этой части предполагается, что вы знаете следующие процессы:
Если вы, по крайней мере, не знакомы с этими процессами, обратитесь к предыдущим частям перед продолжением.
Начните с запуска следующих команд:
Первая команда — wget это команда. В соответствии со своей страницей справки, wget это не интерактивный сетевой загрузщик. Он загружает файлы с http-серверов в каталоге. Он может работать в фоновом режиме, даже если пользователь не вошел в систему. Эта команда загружает файл wget Packages-microsoft-prod.deb с packages.microsoft.com серверов текущего каталога.
Если мы запускаем команду после запуска, мы должны увидеть, что пакет ls wget загружается в текущем каталоге.
Во второй команде dpkg — диспетчер пакетов для Debian и Ubuntu. Эта команда добавляет ключ подписи пакета Майкрософт в список доверенных ключей, а затем добавляет репозиторий пакета.
Так как мы скачали и добавили новый репозиторий пакетов, диспетчеру пакетов необходимо знать об этом. Поэтому мы должны обновить диспетчер пакетов с помощью sudo apt update команды.
Теперь диспетчер пакетов знает репозиторий Microsoft, и мы можем продолжить установку.
Различные версии этих приложений могут успешно работать бок о бок на одном компьютере.
Определение правильного имени пакета
Например, если вы хотите установить версию 5.0 ASP.NET Core, то продукт будет aspnetcore-runtime-5.0.
Заявление об отказе от ответственности за сведения о продуктах сторонних производителей
В этой статье упомянуты программные продукты независимых производителей. Корпорация Майкрософт не дает никаких гарантий, подразумеваемых и прочих, относительно производительности и надежности этих продуктов.
Для максимальной совместимости выберите версию LTS.
Неподдерживаемые выпуски
Такие неподдерживаемые версии не описаны в приведенных ниже разделах. Поэтому, если вы попытаетесь установить их, полученные вами результаты могут отличаться от указанных.
Установка вручную
На странице, посвященной дистрибутиву, обязательно просмотрите дополнительные сведения о необходимых зависимостях, которые могут отсутствовать при установке вручную.
Установка предварительных версий
Alpine
CentOS
CentOS 7 использует Yum в качестве диспетчера пакетов, а CentOS 8 использует DNF.
CentOS | .NET Core 2.1 | .NET Core 3.1 | .NET 5 |
---|---|---|---|
✔️ 8 | ❌ 2.1 | ✔️ 3.1 | ✔️ 5.0 |
✔️ 7 | ❌ 2.1 | ✔️ 3.1 | ✔️ 5.0 |
Debian
Debian использует APT (Advanced Package Tool) в качестве диспетчера пакетов.
Fedora
Fedora использует DNF в качестве диспетчера пакетов.
openSUSE
openSUSE использует zypper в качестве диспетчера пакетов.
openSUSE | .NET Core 2.1 | .NET Core 3.1 | .NET 5 |
---|---|---|---|
✔️ 15 | ❌ 2.1 | ✔️ 3.1 | ✔️ 5.0 |
Red Hat
Red Hat Enterprise Linux (RHEL) использует yum (RHEL 7) и DNF (RHEL 8) в качестве диспетчера пакетов.
SLES использует zypper в качестве диспетчера пакетов.
Ubuntu
Ubuntu использует APT (Advanced Package Tool) в качестве диспетчера пакетов.
Поддерживаемые дистрибутивы
Установка предварительных версий
Удалите предварительные версии
21.04 ✔️
Откройте терминал и выполните следующие команды:
Установка пакета SDK
Если появляется сообщение об ошибке, похожее на Unable to locate package dotnet-sdk-5.0 (Не удалось найти пакет dotnet-sdk-5.0), см. раздел Устранение неполадок с APT.
Установка среды выполнения
Если появляется сообщение об ошибке, похожее на Unable to locate package aspnetcore-runtime-5.0 (Не удалось найти пакет aspnetcore-runtime-5.0), см. раздел Устранение неполадок с APT.
❌ Обратите внимание, что эта версия Ubuntu больше не поддерживается.
Откройте терминал и выполните следующие команды:
Установка пакета SDK
Если появляется сообщение об ошибке, похожее на Unable to locate package dotnet-sdk-5.0 (Не удалось найти пакет dotnet-sdk-5.0), см. раздел Устранение неполадок с APT.
Установка среды выполнения
Если появляется сообщение об ошибке, похожее на Unable to locate package aspnetcore-runtime-5.0 (Не удалось найти пакет aspnetcore-runtime-5.0), см. раздел Устранение неполадок с APT.
20.04 ✔️
Откройте терминал и выполните следующие команды:
Установка пакета SDK
Если появляется сообщение об ошибке, похожее на Unable to locate package dotnet-sdk-5.0 (Не удалось найти пакет dotnet-sdk-5.0), см. раздел Устранение неполадок с APT.
Установка среды выполнения
Если появляется сообщение об ошибке, похожее на Unable to locate package aspnetcore-runtime-5.0 (Не удалось найти пакет aspnetcore-runtime-5.0), см. раздел Устранение неполадок с APT.
❌ Обратите внимание, что эта версия Ubuntu больше не поддерживается.
Откройте терминал и выполните следующие команды:
Установка пакета SDK
Если появляется сообщение об ошибке, похожее на Unable to locate package dotnet-sdk-3.1 (Не удалось найти пакет dotnet-sdk-3.1), см. раздел Устранение неполадок с APT.
Установка среды выполнения
Если появляется сообщение об ошибке, похожее на Unable to locate package aspnetcore-runtime-3.1 (Не удалось найти пакет aspnetcore-runtime-3.1), см. раздел Устранение неполадок с APT.
❌ Обратите внимание, что эта версия Ubuntu больше не поддерживается.
Откройте терминал и выполните следующие команды:
Установка пакета SDK
Если появляется сообщение об ошибке, похожее на Unable to locate package dotnet-sdk-3.1 (Не удалось найти пакет dotnet-sdk-3.1), см. раздел Устранение неполадок с APT.
Установка среды выполнения
Если появляется сообщение об ошибке, похожее на Unable to locate package aspnetcore-runtime-3.1 (Не удалось найти пакет aspnetcore-runtime-3.1), см. раздел Устранение неполадок с APT.
❌ Обратите внимание, что эта версия Ubuntu больше не поддерживается.
Откройте терминал и выполните следующие команды:
Установка пакета SDK
Если появляется сообщение об ошибке, похожее на Unable to locate package dotnet-sdk-2.1 (Не удалось найти пакет dotnet-sdk-2.1), см. раздел Устранение неполадок с APT.
Установка среды выполнения
Если появляется сообщение об ошибке, похожее на Unable to locate package aspnetcore-runtime-2.1 (Не удалось найти пакет aspnetcore-runtime-2.1), см. раздел Устранение неполадок с APT.
18.04 ✔️
Откройте терминал и выполните следующие команды:
Установка пакета SDK
Если появляется сообщение об ошибке, похожее на Unable to locate package dotnet-sdk-5.0 (Не удалось найти пакет dotnet-sdk-5.0), см. раздел Устранение неполадок с APT.
Установка среды выполнения
Если появляется сообщение об ошибке, похожее на Unable to locate package aspnetcore-runtime-5.0 (Не удалось найти пакет aspnetcore-runtime-5.0), см. раздел Устранение неполадок с APT.
❌ Обратите внимание, что эта версия Ubuntu больше не поддерживается.
Откройте терминал и выполните следующие команды:
Установка пакета SDK
Если появляется сообщение об ошибке, похожее на Unable to locate package dotnet-sdk-2.1 (Не удалось найти пакет dotnet-sdk-2.1), см. раздел Устранение неполадок с APT.
Установка среды выполнения
Если появляется сообщение об ошибке, похожее на Unable to locate package aspnetcore-runtime-2.1 (Не удалось найти пакет aspnetcore-runtime-2.1), см. раздел Устранение неполадок с APT.
❌ Обратите внимание, что эта версия Ubuntu больше не поддерживается.
Откройте терминал и выполните следующие команды:
Установка пакета SDK
Если появляется сообщение об ошибке, похожее на Unable to locate package dotnet-sdk-2.1 (Не удалось найти пакет dotnet-sdk-2.1), см. раздел Устранение неполадок с APT.
Установка среды выполнения
Если появляется сообщение об ошибке, похожее на Unable to locate package aspnetcore-runtime-2.1 (Не удалось найти пакет aspnetcore-runtime-2.1), см. раздел Устранение неполадок с APT.
❌ Обратите внимание, что эта версия Ubuntu больше не поддерживается.
Откройте терминал и выполните следующие команды:
Установка пакета SDK
Если появляется сообщение об ошибке, похожее на Unable to locate package dotnet-sdk-2.1 (Не удалось найти пакет dotnet-sdk-2.1), см. раздел Устранение неполадок с APT.
Установка среды выполнения
Если появляется сообщение об ошибке, похожее на Unable to locate package aspnetcore-runtime-2.1 (Не удалось найти пакет aspnetcore-runtime-2.1), см. раздел Устранение неполадок с APT.
16.04 ✔️
Откройте терминал и выполните следующие команды:
Установка пакета SDK
Если появляется сообщение об ошибке, похожее на Unable to locate package dotnet-sdk-5.0 (Не удалось найти пакет dotnet-sdk-5.0), см. раздел Устранение неполадок с APT.
Установка среды выполнения
Если появляется сообщение об ошибке, похожее на Unable to locate package aspnetcore-runtime-5.0 (Не удалось найти пакет aspnetcore-runtime-5.0), см. раздел Устранение неполадок с APT.
Установка других версий
Пакеты, добавляемые в веб-каналы диспетчера пакетов, именуются в формате, уязвимом для хакерских атак, например:
type
Позволяет выбрать пакет SDK или среду выполнения. Допустимые параметры:
version
Версия пакета SDK или среды выполнения для установки. Эта статья всегда будет содержать инструкции для последней поддерживаемой версии. Допустимые параметры — любая выпущенная версия, например:
Примеры
Пакет отсутствует
Устранение неполадок с APT
Не удалось найти пакет
Ошибка обнаружения \. Не удалось установить некоторые пакеты
Если появляется сообщение об ошибке, похожее на Не удалось найти пакет или Не удалось установить некоторые пакеты, выполните проведенные ниже команды.
В следующем наборе команд есть два заполнителя.
Сначала попробуйте очистить список пакетов.