dev-hotfix-v2.1 #5

Merged
Thiflict merged 4 commits from dev-hotfix-v2.1 into master 2026-04-20 16:22:14 +00:00
Showing only changes of commit 68d2678305 - Show all commits

View File

@@ -1,81 +0,0 @@
#!/bin/bash
# Description: Скрипт для корректной загрузки и установки программы RPIVirusScanner
# Author: Шафеев "Thiflict" Марат
# Date: 2026-04-14
# Так как скрипт не тестировался должным образом, необходимо запросить у пользователя о его намерениях продолжать выполнение скрипта.
read -p "ВНИМАНИЕ!!! Данный скрипт установки не тестировался должным образом! Это значит, что скрипт может поломать некоторые конфиги ClamAV и Samba КАК МИНИМУМ! Для продолжения введите: 'i understand all the risks and want to continue'. Это будет означать, что вы понимаете риски и хотите продолжить выполнение программы! " answer
answer=${answer,,}
if [[ "$answer" != "i understand all the risks and want to continue" ]]; then
echo "Неправильно набрана фраза для продолжения. Отменяю..."
exit 0
fi
echo "Выполняю..."
# Обновление списков пакетов и зарузка зависимостей
apt update;
apt install openjdk-21-jdk gpiod libgpiod-dev clamav clamav-daemon ntfs-3g usbmount samba -y; # Загрузка нужных пактов
# Настройка либы для взаимодействия с GPIO
echo "Подготовка библиотек взаимодействия с GPIO..."
sudo usermod -a -G gpio,spi,i2c $USER;
newgrp gpio;
# Настройка ClamAV
echo "Настройка ClamAV"
{
echo "PrivateMirror https://clamav-mirror.ru";
echo "PrivateMirror https://mirror.truenetwork.ru/clamav/";
echo "PrivateMirror http://mirror.truenetwork.ru/clamav/";
echo "ScriptedUpdates no";
} >> /etc/clamav/freshclam.conf;
rm /var/lib/clamav/freshclam.dat;
freshclam -vvv;
CONFIG_FILE="/etc/clamav/clamd.conf"; # Путь к файлу конфига
NEW_VALUE_MT="10"; # Новое значение MaxThreads
NEW_VALUE_MF="10M"; # Новое значение MaxFileSize
NEW_VALUE_MS="30M"; # Новое значение MaxScanSize
cp "$CONFIG_FILE" "$CONFIG_FILE.bak"; # Создание бекапа конфига
sed -i -E "
s/^(MaxThreads[[:space:]]+).*/\1$NEW_VALUE_MT/
s/^(MaxFileSize[[:space:]]+).*/\1$NEW_VALUE_MF/
s/^(MaxScanSize[[:space:]]+).*/\1$NEW_VALUE_MS/
" "$CONFIG_FILE"; # Изменение конфига
# Загрузка временных файлов
echo "Загрузка необходиых временных файлов..."
rm -rf /tmp/rpivs;
mkdir /tmp/rpivs;
wget https://static1.thiflict.ru/raspberrypi_virus_scanner/v2.0/smb_conf -o /tmp/rpivs/smb.conf
wget https://static1.thiflict.ru/raspberrypi_virus_scanner/v2.0/rpivirusscanner.jar -o /tmp/rpivs/rpivirusscanner.jar;
wget https://static1.thiflict.ru/raspberrypi_virus_scanner/v2.0/rpi_virus_scanner_service -o /tmp/rpivs/rpi_virus_scanner.service;
# Настройка Samba
echo "Выполняется настройка Samba"
systemctl stop smbd
systemctl disable smbd
cp /tmp/rpivs/smb.conf /etc/samba/smb.conf
testparm # Для дебага
# Установка программы
echo "Установка программы..."
rm -rf /opt/thiflict-dev/rpi-virus-scanner/
mkdir -p /opt/thiflict-dev/rpi-virus-scanner/
mv /tmp/rpivs/rpivirusscanner.jar /opt/thiflict-dev/rpi-virus-scanner/;
# Создание демона
echo "Создание демона RPIVirusScanner..."
mv /tmp/rpivs/rpi_virus_scanner.service /etc/systemd/system/;
systemctl daemon-reload;
systemctl enable rpi_virus_scanner.service;
# Авторство:
echo "RaspberryPi успешно установлен! Рекомендуется перезагрузить устройство.";
echo " ";
echo "==== Об авторе: ====";
echo "Репозиторий проекта: https://git.ds1.thiflict.ru/Shafeev-CourseWork/Practice-Part";
echo "Телеграм-канал: https://t.me/Thiflict_tg";
echo "YouTube канал: https://youtube.com/@Thiflict";