Alpine Linux in RAM - Parte 2
Stavolta con la /home persistente
Seguono le indicazioni per aggiungere directory persistenti alla configurazione diskless (in RAM) di Alpine Linux. Directory come la HOME, alcune cartelle in VAR, o la SWAP. La procedura ufficiale di Alpine Linux la chiama “Data Mode” ma include cose (tutta la VAR e tutti i log, ad esempio) che interessano più una messa a punto per server che una per laptop o desktop. Il tutto è molto sperimentale e non affatto infallibile; è stato provato con successo su un paio di macchine, soprattutto sul ThinkPad X230 della foto a seguire.
Copia del sistema
La prima parte della procedura è identica a quella per l’installazione diskless vista giorni fa. Quindi:
- Boot da Live USB (nota: Standard; altrimenti Extended )
- setup-alpine con dati approssimativi e none alle domande finali su disk, config e cache
- apk add cfdisk e2fsprogs lsblk
- lsblk per vedere il nome del disco che vogliamo usare per l’installazione
- cfdisk /dev/disco-target
- Creare partizione di tipo EFI
- modprobe vfat
- mkfs.vfat /dev/disco-target-partizione (nota: Installare su altri fs è complesso )
- setup-bootable -v /media/sda/ /dev/disco-target-partizione (nota: /media/sda o chi per lei )
- Togliere la Live USB e riavviare
Partizioni ed fstab
Col sistema che già gira in RAM, si creano le partizioni necessarie e si popola il file fstab con le giuste direttive.
- setup-alpine con dati approssimativi e none alle domande finali su disk, config e cache
- apk add cfdisk e2fsprogs lsblk
- cfdisk /dev/nome-disco-locale (nota: Esempio: /dev/sda )
- Creare partizione di tipo EXT4 per “config” (10GB avanzano)
- mkfs.ext4 -O ^has_journal /dev/nome-partizione-appena-creata (variante: mkfs.ext4 -E lazy_itable_init=0,lazy_journal_init=0 /dev/nome-partizione-appena-creata) (nota: Entrambe disabilitano il journaling per minimizzare l'impatto sul disco )
- mkdir /media/nome-partizione-appena-creata
- nano /etc/fstab e aggiungerla con “noatime,rw,0 0”
- mount -a e poi controllare con mount se è stata montata bene
- mkdir -p /media/nome-partizione-creata/data/home
- nano /etc/fstab e aggiungerla con “/media/nome-partizione-creata/data/home /home none bind,rw 0 0”
Finalizzare e salvare
Per ultimo, ora che è tutto pronto, si sfrutta lo script setup-alpine per configurare il sistema e si salva tutto con lbu commit.
- setup-alpine (stavolta con dati corretti)
- Dopo server SSH rispondere “no” al boot partition; i campi successivi dovrebbero essere già compilati correttamente (con nome-partizione-creata)
- Se si è aggiunto un utente tramite setup-alpine, rimuovere la sua “home” da lbu nel file /etc/apk/protected-path
- lbu commit (se ok, siamo a posto)
- reboot
Da qui si aggiorna il sistema, si aggiungono i pacchetti, si configurano i dotfiles, e si gestiscono servizi e permessi dell’utente a seconda della macchina e delle intenzioni. In altre parole, ci si diverte con Linux.