Тут просто устанавливаем dotnet 7.0
Теперь будем ставить себе .NET. Чтобы мы не просто с предустановленным софтом ковырялись, но и могли что-то свое написать.
Для установки .NET идем сюда https://learn.microsoft.com/ru-ru/dotnet/core/install/linux-debian
Тут есть разные инструкции для разных версий дебиан (напоминаю что sparky – это надстройка над дебиан). Чтобы узнать свою версию вводим в терминале команду:
lsb_release -a
нас интересуют Codename: bullseye
, bullseye – это кодовое название 11 версии дебиан.
видим три команды
wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
последние две мы уже знаем,
sudo dpkg -i packages-microsoft-prod.deb
– это установка пакетаrm packages-microsoft-prod.deb
– удаление файла
осталась только одна непонятная команда
wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
wget – это еще одна утилита. Используется для скачивания файлов из интернета. В качестве параметра передается путь к файлу.
Плюс, как и у всякой утилиты, у нее есть куча параметров и флагов. Например, флаг -O
позволяет указать имя для файла. Собственно, -O packages-microsoft-prod.deb
означает назвать скачанный файл packages-microsoft-prod.deb
Ну что ж давайте, запустим команду, скачаем пакет и узнаем, что он устанавливает. У меня версия 20.04, у вас путь может немного отличаться, так что пожалуйста следите,что скачиваете правильный файл.
запускаем mc, либо распаковываем пакет с помощью dpkg -x и изучаем содержимое. У меня оно такое
если приглядеться, то увидим, что пакет то на самом деле ничего и не устанавливает. Зато он добавляем какие-то файлы. Особенно нас интересует файлы в etc/apt/sources.list.d
Помните, я говорил, что линукс хранит пути к репозиториям в файле etc/apt/sources.list
и папке etc/apt/sources.list.d
, так вот этот пакет добавляет новый файл в папку etc/apt/sources.list.d
.
Глянем содержимое файла microsoft-prod.list
, там всего одна строчка
deb [arch=amd64,arm64,armhf] https://packages.microsoft.com/debian/11/prod bullseye main
если сходить по пути, то увидим уже знакомую нам структуру организации репозитория
папка dist – в которой хранятся индексы, и папка pool c пакетами
то есть по сути вот этот пакет, который мы скачиваем, просто подключает репозиторий microsoft для работы с .net
еще тут некий /etc/apt/trusted.gpg.d/microsoft-prod.gpg
– это специальный цифровой ключ которым подписываются все пакеты из репозитория. Нужно это чтобы предотвратить подмену пакета во время скачивания. Ну если там злоумышленник какой-то сядет вам на провод и будет пытаться запихать какую-нибудь гадость в пакет.
То, что идет в /usr/share
нам не особо интересно – это всякая лицензионная информация.
Можно было бы посмотреть еще скрипты для установки, но там по сути происходит просто дополнительная валидация на предмет существования файлов, которые мы выше рассмотрели.
В общем вроде все ок, можно ставить пакет. Запускаем остальные две команды:
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
И так пакет установлен. Но это пока промежуточный пакет, который просто подключает репозиторий microsoft. Сам .net надо ставить через apt, но для этого надо чтобы apt сначала обновил индекс. Для этого выполним команду
sudo apt update
а дальше уже просто следуем инструкции с микрософта:
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-7.0
они нам кстати тут как раз команду sudo apt-get update добавляют.
Кстати если вас смутила такая форма записи, то это просто такой способ записи однострочной команды в четыре строчки.
запускаем и ждем
в конце вас даже могут любезно оповестить что будут собирать телеметрию и делится ей с сообществом. И можно теперь работать =)