Installscript

Installscript script di installazione btrfs diviso in due parti. - GitHub


image

La prima parte (1-parte.sh) e' composta dalla preparazione del disco e delle partizioni. Prima di usare questo script diviso in due che si trova in ~/Installscript su architalia-live ISO, e' necessario preparare il disco con ad esempio cfdisk seguendo le istruzioni sulla guida al paragrafo UEFI btrfs, oppure semplicemente gparted integrato nella live, le partizioni necessarie per esempio sono:


image


# 512MiB Type EFI System
# 20GiB  Type Linux Filesystem
# 30GiB  Type Linux Filesystem

Nota

La partizione di swap viene sostituita con l'installazione di ZRAM, che lo script 2-parte.sh configurera per noi, sara' sufficente indicare la misura della swap in GiB


A questo punto sara' lo script a prendere in mano la formattazione, la creazione dei sottovolumi e il montaggio. Prima pero' vediamo come cambiare il valore delle variabili a seconda delle proprie impostazioni in entrambi le parti 1 e 2:


# settings script 1

country="us" # Seleziona il paese piu vicino per configurare il mirrorlist
age="6" # Specifica il numero massimo di mirror da includere nella lista dei mirror sincronizzati.
editor="vim" # Installa vim come editor
kernel="linux" # Scegli il kernel da installare 
FM="linux-firmware" # Installa i firmware
tools="intel-ucode btrfs-progs" # Installa utility per il filesystem BTRFS e altri
base="base base-devel" # gruppi di pacchetti fondamentali per Arch Linux

# --- scegli la nomemclatura, decommenta le tre partizioni necessarie. 

#nvme - M2
#p1="/dev/nvme0n1p1"
#p2="/dev/nvme0n1p2"
#p3="/dev/nvme0n1p3"

#vda - Virtual Machine
#p1="/dev/vda1"
#p2="/dev/vda2"
#p3="/dev/vda3"

#sda - SSD
#p1="/dev/sda1"
#p2="/dev/sda2"
#p3="/dev/sda3" 


# settings script 2

localhost="localhost" # nome machina - hostname
user="username"    # nome utente [solo minuscolo] -- username [only lowercase]
realname="realname" # nome reale [minuscolo/maiuscolo] - real name [uppercase/lowercase]
rootpw="password" # password per root -- root password
userpw="password" # password per utente -- user password
localegen="en_US.UTF-8 UTF-8" # locale encoding
localeconf="LANG=en_US.UTF-8"  # lingua locale -- local language
km="us" # lingua della tastiera -- keyboard layout
localtime="Europe/Italy" # localtime
ZS="16G" # dimensione swap zram - size swap zram
groups="wheel" # aggiungi gruppi all'utente - add groups for user
Ntools="wpa_supplicant wireless_tools netctl net-tools iw networkmanager" # set network tools
Audio="alsa-utils pipewire-pulse" # Audio packages
Utils="mtools dosfstools exfatprogs fuse" # tools 
PKGS="firewalld acpi cronie git reflector bluez bluez-utils" #general packages
DE="xorg gnome-shell nautilus gnome-console gvfs gnome-control-center xdg-user-dirs-gtk  gnome-text-editor gnome-keyring gnome-system-monitor" #GNOME [Minimal installation]
DM="gdm" # Display Manager
Service="gdm NetworkManager firewalld bluetooth cronie reflector" # Service

# [root=/dev/XXX] decommenta la nomenclatura in uso per systemd-boot IMPORTANTE! -- uncomment the nomenclature in use for systemd-boot IMPORTANT!

#p="sda2" 
#p="vda2"
#p="nvme0n1p2"

# end setting ----------------------------------------------


Ecco la parte che si occupera di eseguire la prima parte dell'installazione:

#Formattazione delle partizioni - EFI, ROOT, HOME
mkfs.fat -F32 $p1
mkfs.btrfs -f $p2 
mkfs.btrfs -f $p3

#Montaggio e sottovolumi - partizione /home separata
mount $p2 /mnt           
btrfs su cr /mnt/@  
umount /mnt 
mount $p3 /mnt
btrfs su cr /mnt/@home      
umount /mnt                             
mount -o noatime,ssd,space_cache=v2,compress=zstd,discard=async,subvol=@ $p2 /mnt 
mkdir -p /mnt/{boot,home}
mount $p1 /mnt/boot 
mount -o noatime,ssd,space_cache=v2,compress=zstd,discard=async,subvol=@home $p3 /mnt/home 

# reflector
reflector --verbose -c $country -a $age --sort rate --save /etc/pacman.d/mirrorlist

#pacstrap
pacstrap -K /mnt $base $FM $kernel $tools $editor

#fstab
genfstab -Up /mnt > /mnt/etc/fstab


cp 2-parte.sh /mnt/home/
arch-chroot /mnt 


Alla fine del primo script ci ritroveremo direttamente in chroot, a questo punto dobbiamo spostarci e avviare il secondo script:

  • # cd /home
  • # ./2-parte.sh

Ultimo aggiornamento: August 16, 2023
Creata: August 16, 2023