107 lignes
3.4 KiB
Bash
107 lignes
3.4 KiB
Bash
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
# Modifica questa variabile con l'URL raw del tuo repository remoto
|
|
REPO_URL="https://code.badstorm.xyz/SRV/bdi_podman_serverconf/raw/main"
|
|
|
|
echo "Iniziando l'installazione di BDI Podman Serverconf..."
|
|
|
|
# 1. Aggiornare il sistema Ubuntu
|
|
echo "Aggiornando il sistema..."
|
|
sudo apt update && sudo apt upgrade -y
|
|
|
|
# 2. Aggiungere utente ai gruppi render e video
|
|
echo "Aggiungendo utente ai gruppi render e video..."
|
|
sudo usermod -a -G render,video $LOGNAME
|
|
|
|
# 3. Installare podman
|
|
echo "Installando podman..."
|
|
sudo apt install -y podman htop radeontop curl
|
|
|
|
# 4. Creare cartelle per systemd containers
|
|
echo "Creando cartelle per containers systemd..."
|
|
mkdir -p ~/.config/containers/systemd
|
|
|
|
# 5. Scaricare e copiare internal.network
|
|
echo "Scaricando internal.network..."
|
|
curl -fsSL $REPO_URL/internal.network -o ~/.config/containers/systemd/internal.network
|
|
|
|
# 6. Aggiungere registri a /etc/containers/registries.conf
|
|
echo "Aggiungendo registri a registries.conf..."
|
|
printf "[registries.search]\nregistries = [\"docker.io\", \"quay.io\", \"ghcr.io\"]\n" | sudo tee -a /etc/containers/registries.conf > /dev/null
|
|
|
|
# 7. Creare /srv/containers e assegnare permessi
|
|
echo "Creando /srv/containers e assegnando permessi..."
|
|
sudo mkdir -p /srv/containers
|
|
sudo chown -R $LOGNAME /srv/containers
|
|
|
|
# 8. Creare sottocartelle per aitools
|
|
echo "Creando cartelle per aitools..."
|
|
mkdir -p /srv/containers/aitools/{models,.cache}
|
|
|
|
# 9. Creare file vuoto llamacpp_config.yaml
|
|
echo "Creando llamacpp_config.yaml..."
|
|
touch /srv/containers/aitools/llamacpp_config.yaml
|
|
|
|
# 10. Aggiornare GRUB
|
|
echo "Aggiornando GRUB..."
|
|
if [ -t 0 ]; then
|
|
echo "Seleziona la quantità di RAM (16, 24, 32, 48 GB):"
|
|
read ram_gb
|
|
else
|
|
echo "Modalità non interattiva: usando default 32GB"
|
|
ram_gb=32
|
|
fi
|
|
case $ram_gb in
|
|
16)
|
|
gttsize=16384
|
|
pages_limit=18432000
|
|
;;
|
|
24)
|
|
gttsize=24576
|
|
pages_limit=27648000
|
|
;;
|
|
32)
|
|
gttsize=32768
|
|
pages_limit=36864000
|
|
;;
|
|
48)
|
|
gttsize=49152
|
|
pages_limit=55296000
|
|
;;
|
|
*)
|
|
echo "Valore non valido, usando default 32GB"
|
|
gttsize=32768
|
|
pages_limit=36864000
|
|
;;
|
|
esac
|
|
sudo sed -i "s/GRUB_CMDLINE_LINUX_DEFAULT=.*/GRUB_CMDLINE_LINUX_DEFAULT=\"amdgpu.gttsize=${gttsize} amdttm.pages_limit=${pages_limit}\"/" /etc/default/grub
|
|
sudo update-grub
|
|
|
|
# 11. Scaricare e installare banner.sh
|
|
echo "Scaricando e installando banner MOTD..."
|
|
sudo curl -fsSL $REPO_URL/BadAI/banner.sh -o /etc/update-motd.d/99-badai-banner
|
|
sudo chmod +x /etc/update-motd.d/99-badai-banner
|
|
|
|
# 12. Disabilitare altri script MOTD
|
|
echo "Disabilitando altri script MOTD..."
|
|
sudo bash -c 'for f in /etc/update-motd.d/*; do if [[ "$f" != "/etc/update-motd.d/99-badai-banner" && ! -f "${f}.disabled" ]]; then mv "$f" "${f}.disabled"; fi; done'
|
|
|
|
# 13. Sostituire /etc/issue
|
|
echo "Sostituendo /etc/issue..."
|
|
sudo curl -fsSL $REPO_URL/BadAI/issue -o /etc/issue
|
|
|
|
# 14. Scaricare e installare badai
|
|
echo "Scaricando e installando badai..."
|
|
sudo curl -fsSL $REPO_URL/BadAI/badai -o /usr/local/bin/badai
|
|
sudo chmod +x /usr/local/bin/badai
|
|
|
|
# 15. Scaricare container files
|
|
echo "Scaricando file container..."
|
|
curl -fsSL $REPO_URL/Services/llamacpp/llamacpp.container -o ~/.config/containers/systemd/llamacpp.container
|
|
curl -fsSL $REPO_URL/Services/nginx/nginx.container -o ~/.config/containers/systemd/nginx.container
|
|
|
|
# 16. Riavviare il sistema
|
|
echo "Installazione completata. Riavviando il sistema..."
|
|
sudo reboot |