Как установить dotnet SDK на Ubuntu 16.04 LTS
Я выполнял приведенные здесь инструкции: https://docs.microsoft.com/en-us/dotnet/core/linux-prerequisites?tabs=netcore2x
Тем не менее, я продолжаю получать ошибку, когда пытаюсь запустить "
sudo apt-get install dotnet-sdk-2.1.4
В частности, это говорит:
E: Не удалось найти пакет dotnet-sdk-2.1.4
E: Не удалось найти пакет glob 'dotnet-sdk-2.1.4'
E: Не удалось найти пакет с помощью regex 'dotnet-sdk-2.1.4'
Тем не менее, выполнение sudo apt search dotnet
приводит к появлению пакета.
Я делаю что-то неправильно?
Ответы
Ответ 1
Попробуйте запустить эту команду на своем терминале:
wget -q packages-microsoft-prod.deb https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
Затем обновите свою систему:
sudo apt-get update
Наконец, запустите команду для установки.NET
sudo apt-get install dotnet-sdk-2.1.4
Надеюсь, это поможет!
Ответ 2
Убедитесь, что вы также выполняете необходимые команды:
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-xenial-prod xenial main" > /etc/apt/sources.list.d/dotnetdev.list'
И наконец:
sudo apt-get update
sudo apt-get install dotnet-sdk-2.1.4
Ответ 3
Похоже, что пакет deb для настройки apt repo имеет некоторые проблемы. Как быстро исправить это после установки установочного пакета repo ms:
sudo cp \
/etc/apt/sources.list.d/microsoft-prod.list.save \
/etc/apt/sources.list.d/microsoft-prod.list
sudo apt-get update
sudo apt-get install dotnet-sdk-2.1
Fix работал над ubuntu 18.04, но, похоже, здесь проблема.
Ответ 4
Обновление отсутствует:
sudo apt-get update
sudo apt-get install dotnet-sdk-2.1.4
Ответ 5
При выполнении sudo apt-get update
вы можете получить эту ошибку:
W: GPG error: https://packages.microsoft.com/repos/microsoft-ubuntu-bionic-prod bionic InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY EB3E94ADBE1229CF
E: The repository 'https://packages.microsoft.com/repos/microsoft-ubuntu-bionic-prod bionic InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
Обратите внимание, что это не так очевидно (это все тот же цвет шрифта, и его легко можно пропустить, если вы не читаете все, что выводится на консольный вывод).
Это можно исправить с помощью этой команды:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 6494C6D6997C215E
Я не совсем уверен, что он на самом деле делает, похоже на добавление стороннего центра сертификации или что-то в этом роде. В любом случае, после повторного выполнения sudo apt-get update
и sudo apt-get install dotnet-sdk-2.1.4
пакет может быть наконец установлен без ошибок "не найден".
Ответ 6
Одна из причин, по которой apt не может найти пакеты, заключается в том, что они недоступны для вашей архитектуры процессора. Библиотеки Linux ядра dotnet не поддерживают 32-битный ПК (i386, i686), поддерживаются только 64-битные ПК (amd64). Если у вас установлена Ubuntu с другой архитектурой, apt-get сообщит о вышеупомянутой ошибке:
Unable to locate package dotnet-sdk-2.2
E: Couldn't find any package by glob 'dotnet-sdk-2.2'
E: Couldn't find any package by regex 'dotnet-sdk-2.2'
Проверьте текущую архитектуру с помощью команды:
arch
Если это возвращает что-то еще, кроме amd64, возможно, вам не повезло. Если только вы не установили 32-битный образ Ubuntu для ПК на 64-битный ПК. В таком случае переустановите Ubuntu, используя установочный образ 64-битного ПК (AMD64).