Estendere il root filesystem di una virtal machine user mode linux non è molto diverso dall’ estendere il root file system di un normale host, se consideriamo il file in cui è montato come se fosse un disco contenente le varie partizioni
Quando abbiamo creato il file ubd-000 per le nostre vm, dopo aver installato alcuni pacchetti debian siamo rimasti a corto di spazio sul filesystem
1 2 3 4 5 6 7 8 |
root@uml-debian:~# df -h Filesystem Size Used Avail Use% Mounted on /dev/root 282M 276M 0 100% / devtmpfs 58M 0 58M 0% /dev tmpfs 58M 0 58M 0% /dev/shm tmpfs 58M 768K 57M 2% /run tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 58M 0 58M 0% /sys/fs/cgroup |
Non resta quindi che spegnere la vm ed incrementare lo spazio disponibile, ad esempio aggiungendo 200M
1 2 |
# cp ubd-000 ubd-000.bkp # dd if=/dev/zero bs=1024K count=200 >> ubd-000 |
Montiamo il file su un loop device
1 2 |
# losetup -vf -P --show ubd-000 /dev/loop0 |
Estendiamo la partizione usando parted
1 2 3 4 5 6 7 8 9 |
# parted /dev/loop0 print Model: Loopback device (loopback) Disk /dev/loop0: 315MB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 1049kB 315MB 314MB primary ext3 |
Visualizziamo lo spazio utilizzabile
1 2 3 4 5 6 7 8 9 10 11 |
# parted /dev/loop0 print free Model: Loopback device (loopback) Disk /dev/loop0: 524MB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 32,3kB 1049kB 1016kB Free Space 1 1049kB 315MB 314MB primary ext3 315MB 524MB 210MB Free Space |
Per incrementare lo spazio usiamo il comando resizepart con il numero della partizione ( 1 ) e End della riga Free Space
1 |
# parted /dev/loop0 resizepart 1 524MB |
Controlliamo il filesystem che è stato formattato in ext3
1 |
# fsck.ext3 -vf /dev/loop0p1 |
Ora possiamo estendere il filesystem utilizzando tutto lo spazio disponibile.
1 |
# resize2fs -p /dev/loop0p1 |
Smontiamo il loopdevice ed avviamo la vm
1 2 |
# losetup -d /dev/loop0 # linux ubda=ubd-000 root=/dev/ubda1 umid=uml-debian mem=128M con0=fd:0,fd:1 con=pts |
1 2 3 4 5 6 7 8 |
root@uml-debian:~# df -h Filesystem Size Used Avail Use% Mounted on /dev/root 476M 276M 175M 62% / devtmpfs 57M 0 57M 0% /dev tmpfs 57M 0 57M 0% /dev/shm tmpfs 57M 768K 57M 2% /run tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 57M 0 57M 0% /sys/fs/cgroup |