penguins-eggs
Version:
A remaster system tool, compatible with Arch, Debian, Devuan, Ubuntu and others
56 lines (39 loc) • 2.3 kB
Markdown
# AlpineLinux
Sto cercando una soluzione per montare il mio `filesystem.squasfs` attraverso un apposito `initramfs-lts` custom che viene inserito nella ISO.
Dato che dobbiamo avere a disposizione squashfs ed overlay per montare il `filesystem.squash`, li ho aggiunti alle features del file utilizzato per la configurazione: `live.conf`
```
# live conf
features="ata base ide scsi usb cdrom virtio blkid squashfs overlay ext4"
```
La creazione di `initramfs-lts` avviene all'interno di `ovary.ts` chiamando il metodo `initrdAlpine()`:
```
/**
* initrdAlpine()
*/
async initrdAlpine() {
Utils.warning(`creating ${path.basename(this.settings.initrdImg)} Alpine on ISO/live`)
let initrdImg='initramfs-lts'
const pathConf = path.resolve(__dirname, `../../mkinitfs/live.conf`)
const sidecar = path.resolve(__dirname, `../../mkinitfs/sidecar.sh`)
await exec(`mkinitfs -c ${pathConf} -o ${this.settings.iso_work}live/${initrdImg}`, Utils.setEcho(true))
await exec(`cp ${sidecar} ${this.settings.iso_work}live/`)
}
```
Nella stessa funzione, lo script `sidecar.sh` viene creato e viene inserito all'interno della carlella `live` della ISO.
L'avvio del live è possibile solo da sistemi BIOS, il sistema viene avviato ma `initramfs-lts` va in emergency mode, non è previsto il mount con overlayfs.
A questo punto, basta montare la ISO, digitare exit per trovarisi in emergency shell e lanciare sidecar.sh:
```
mkdir /mnt/
mount /dev/sr0 /mnt
exit
/mnt/live/sidecar.sh
```
Le istruzioni di `sidecar.sh` utilizzano `/sysroot` come mountpoint per il mount RW del filesystem live e, digitanto ancora `exit` per tornare all'init, verrà correttamente eseguito lo `switch_root` ed il sistema verrà avviato.
Resta da vedere se è possibile includere questo in un vero init.
# overlaytmpfs=yes
When booting from a read-only filesystem, you can specify this flag to have
your changes written to an in-memory temporary overlayfs. The underlying
filesystem will always be mounted read-only, the overlay always writable.
# overlaytmpfsflags=lowerdir=/media/root-ro,upperdir=/media/root-rw/root,workdir=/media/root-rw/work
Optional comma-separated list of tmpfs(5) mount options when Boverlaytmpfs
is used. The default is mode=0755,rw, you cannot override.