From 72e6a8accdce520027068d8b1e5dba893cd6ab31 Mon Sep 17 00:00:00 2001 From: achi Date: Wed, 24 Jul 2024 10:30:48 +1000 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=B4=D0=B4=D0=B5=D1=80=D0=B6=D0=BA=D1=83=20astra?= =?UTF-8?q?=20linux=201.7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- linux/README.md | 19 ++++++++++++++++++ linux/install.ps1 | 50 +++++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 65 insertions(+), 4 deletions(-) diff --git a/linux/README.md b/linux/README.md index b7c7b03..b1fd08b 100644 --- a/linux/README.md +++ b/linux/README.md @@ -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 +``` + ## Запуск скрипта Для установки или переустановки ЛЭРС запустите скрипт следующим образом: diff --git a/linux/install.ps1 b/linux/install.ps1 index 7080dae..f47b708 100644 --- a/linux/install.ps1 +++ b/linux/install.ps1 @@ -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)