Gli User Block Devices di UML

Condividi:

Gli user block device di User Mode Linux rappresentano i dispositivi a blocchi collegati alla macchina virtuale, vengono montati tramite i parametri della stringa di avvio oppure essere montati “a caldo” da uml_mconsole.

Possiamo montare quanti block device vogliamo, monimandoli con una lettera seguita dalla stringa ubd: ubda, ubdb ecc e possiamo agganciarci qualunque file sull’ host, quindi sia normali file che dispositivi presenti in /dev come cdrom, /dev/mem, dischi fisici ecc nonchè dispositivi con partizioni di swap

In questo articolo avvieremo una virtual machine con un filesystem formato da una root presente su un dispositivo su cui vengono montate una /tmp, una /var, una /srv presenti su dispositivi diversi ed una partizione di swap

Preparazione dei file

Il procedimento è molto simile a quello descritto in questo articolo che seguiremo per quanto riguarda la fase di fine tuning in chroot, qui però abbiamo bisogno di 4 file che simulino i 4 dispositivi ubda, ubdb, ubdc ed ubdd.

  • ubda conterrà la root e disporrà di 320M
  • ubdb contterrà le partizioni /tmp e /var e disporrà di 320M che divideremo in 64 e 256
  • ubdc conterrà la partizione /srv di 256M
  • ubdd conterrà la partizione di swap, da 256M

Montiamo i file su loop device e creiamo le partizioni con fdisk o parted. Con il device associato a ubdd dobbiamo impostare il tipo di partizione a swap. Dovremo ottenere questo risultato:

Partizionamento

Formattiamo le partizioni

Ora montiamo le prime 3 nel filesystem vuoto. La partizione /srv non viene popolata da debootstrap quindi non serve montarla

Installazione debian

Popoliamo il root-fs con una distro debian stable

Post installazione

Dopo aver eseguito il fine tuning inseriamo le informazioni in fstab

Terminate le operazioni, smontiamo le partizioni ed i loop device ed avviamo la vm

Avvio

Passiamo al boot loader di uml la lista di user block devices e specifichiamo quale partizione contiene la root

Login

Una volta effettuato login, vediamo le partizioni correttamente montate

Anche la partizione di swap