Добавил поддержку astra linux 1.7

This commit is contained in:
Антон Чичков 2024-07-24 10:30:48 +10:00
parent 02b88a03dc
commit 72e6a8accd
2 changed files with 65 additions and 4 deletions

View File

@ -33,6 +33,25 @@ sudo dnf install https://github.com/PowerShell/PowerShell/releases/download/v7.4
sudo snap install powershell --classic
```
### Astra Linux
Рекомендуется использовать [прямую установку для debian](https://learn.microsoft.com/ru-ru/powershell/scripting/install/install-debian#installation-via-direct-download)
```sh
# Download the PowerShell package file
wget https://github.com/PowerShell/PowerShell/releases/download/v7.4.3/powershell_7.4.3-1.deb_amd64.deb
###################################
# Install the PowerShell package
sudo dpkg -i powershell_7.4.3-1.deb_amd64.deb
# Resolve missing dependencies and finish the install (if necessary)
sudo apt-get install -f
# Delete the downloaded package file
rm powershell_7.4.3-1.deb_amd64.deb
```
## Запуск скрипта
Для установки или переустановки ЛЭРС запустите скрипт следующим образом:

View File

@ -47,6 +47,7 @@ function Get-OsRelease {
return Get-Content /etc/os-release | ConvertFrom-StringData
}
# Регистрирует репозитории
# Устанавливает рантайм aspnet
function Install-DotnetRuntime
{
@ -61,10 +62,24 @@ function Install-DotnetRuntime
apt-get update
apt install aspnetcore-runtime-$dotnetRuntimeVersion -y
}
elseif (($os.ID -eq "astra") -and ($os.VERSION_ID.StartsWith("1.7")))
{
# Перед установкой регистрируем репозиторий microsoft.
wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
dpkg -i packages-microsoft-prod.deb
# Устанавливаем рантайм
apt-get update
apt install aspnetcore-runtime-$dotnetRuntimeVersion -y
# Удаляем скачанный пакет
apt remove packages-microsoft-prod -y
Remove-Item -Path packages-microsoft-prod.deb -Force
}
else
{
$os | Format-Table
Write-Error "Неподдерживаемая операционная система"
Write-Error "Неподдерживаемая операционная система $($os.ID)"
exit 2;
}
@ -89,8 +104,19 @@ function Install-ServerDependencies
elseif ($os.ID -eq "ubuntu")
{
apt-get update
apt-get install -y libc6 libgdiplus libicu-dev libharfbuzz0b libfontconfig1 libfreetype6
apt-get install -y libpango-1.0-0 libpangocairo-1.0
apt-get install -y libc6 libgdiplus libicu-dev libharfbuzz0b libfontconfig1 libfreetype6 libpango-1.0-0 libpangocairo-1.0
}
elseif (($os.ID -eq "astra") -and ($os.VERSION_ID.StartsWith("1.7")))
{
# Регистрируем расширенный репозиторий astra
$astraLinux_1_7_ExtendedRepos | Set-Content -Path "/etc/apt/sources.list.d/astra-ext.list"
# Ставим зависимости
apt-get update
apt-get install -y libc6 libgdiplus libicu-dev libharfbuzz0b libfontconfig1 libfreetype6 libpango-1.0-0 libpangocairo-1.0
# Удаляем расширенный репозиторий
Remove-Item -Path "/etc/apt/sources.list.d/astra-ext.list" -Force
}
else
{
@ -164,6 +190,23 @@ ExecStart=/usr/bin/dotnet $pollServiceExecutable
WantedBy=multi-user.target
"@
$astraLinux_1_7_ExtendedRepos = @"
# Основной репозиторий
deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-main/ 1.7_x86-64 main contrib non-free
# Оперативные обновления основного репозитория
deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-update/ 1.7_x86-64 main contrib non-free
# Базовый репозиторий
deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-base/ 1.7_x86-64 main contrib non-free
# Расширенный репозиторий
deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-extended/ 1.7_x86-64 main contrib non-free
# Расширенный репозиторий (компонент astra-ce)
deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-extended/ 1.7_x86-64 astra-ce
"@
###################################
# Установочный скрипт
###################################
@ -287,7 +330,6 @@ else
useradd $lersUser
}
# Создаём папки для настроек и данных
if ($force -and -not $update)