- DESCRIPTION: ce script regroupe des fonctions utilitaires
- pour gérer la VM _depuis_ son hôte ;
- il sert à la fois d'outil et de documentation.
- Voir \`$tool/vm_hosted' pour les utilitaires côté VM hébergée.
+ DESCRIPTION:
+ ce script regroupe des règles pour administrer la VM ($vm_fqdn)
+ _depuis_ son hôte ($vm_host) ;
+ il sert à la fois d'outil et de documentation.
+ Voir \`$tool/vm_hosted' pour les règles côté VM hébergée.
EOF
}
readonly vm_dev_disk=/dev/mapper/domU-$(printf %s "$vm_fqdn-disk" | sed -e 's/-/--/g')
readonly vm_dev_disk_boot="${vm_dev_disk}1"
EOF
}
readonly vm_dev_disk=/dev/mapper/domU-$(printf %s "$vm_fqdn-disk" | sed -e 's/-/--/g')
readonly vm_dev_disk_boot="${vm_dev_disk}1"
#sudo xm block-attach 0 phy:/dev/domU/$vm_fqdn-disk $vm_dev_disk w
}
rule_disk_umount () { # DESCRIPTION: démontage du disque de la VM depuis l'hôte
#sudo xm block-attach 0 phy:/dev/domU/$vm_fqdn-disk $vm_dev_disk w
}
rule_disk_umount () { # DESCRIPTION: démontage du disque de la VM depuis l'hôte
sudo lvcreate --contiguous y -n ${vm_lvm_lv}_root -L 15G $vm_lvm_vg
sudo lvcreate --contiguous y -n ${vm_lvm_lv}_var -L 5G $vm_lvm_vg
sudo lvcreate --contiguous y -n ${vm_lvm_lv}_home -l 99%FREE $vm_lvm_vg
sudo lvcreate --contiguous y -n ${vm_lvm_lv}_root -L 15G $vm_lvm_vg
sudo lvcreate --contiguous y -n ${vm_lvm_lv}_var -L 5G $vm_lvm_vg
sudo lvcreate --contiguous y -n ${vm_lvm_lv}_home -l 99%FREE $vm_lvm_vg
sudo cryptsetup luksHeaderBackup $vm_dev_disk_root --header-backup-file ./root.luks
}
rule_part_swap_format () {
sudo cryptsetup luksHeaderBackup $vm_dev_disk_root --header-backup-file ./root.luks
}
rule_part_swap_format () {
sudo mke2fs -t ext4 -c -c -m 5 -T ext4 -b $vm_e2fs_block_size \
-E resize=10G${vm_e2fs_extended_options} \
-L ${vm_lvm_lv}_var \
/dev/mapper/${vm_lvm_lv}_var_deciphered
sudo mke2fs -t ext4 -c -c -m 5 -T ext4 -b $vm_e2fs_block_size \
-E resize=10G${vm_e2fs_extended_options} \
-L ${vm_lvm_lv}_var \
/dev/mapper/${vm_lvm_lv}_var_deciphered
mountpoint -q /mnt/$vm_fqdn/var ||
sudo mount -v -t ext4 /dev/mapper/${vm_lvm_lv}_var_deciphered /mnt/$vm_fqdn/var
}
rule_part_var_umount () {
! mountpoint -q /mnt/$vm_fqdn/var ||
sudo umount -v /mnt/$vm_fqdn/var
mountpoint -q /mnt/$vm_fqdn/var ||
sudo mount -v -t ext4 /dev/mapper/${vm_lvm_lv}_var_deciphered /mnt/$vm_fqdn/var
}
rule_part_var_umount () {
! mountpoint -q /mnt/$vm_fqdn/var ||
sudo umount -v /mnt/$vm_fqdn/var
sudo mke2fs -t ext4 -c -c -m 0 -T ext4 -b $vm_e2fs_block_size \
-E resize=400G${vm_e2fs_extended_options} \
-L ${vm_lvm_lv}_home \
/dev/mapper/${vm_lvm_lv}_home_deciphered
# NOTE: -O quota pas supporté par e2fsprogs/squeeze
sudo mke2fs -t ext4 -c -c -m 0 -T ext4 -b $vm_e2fs_block_size \
-E resize=400G${vm_e2fs_extended_options} \
-L ${vm_lvm_lv}_home \
/dev/mapper/${vm_lvm_lv}_home_deciphered
# NOTE: -O quota pas supporté par e2fsprogs/squeeze
mountpoint -q /mnt/$vm_fqdn/home ||
sudo mount -v -t ext4 /dev/mapper/${vm_lvm_lv}_home_deciphered /mnt/$vm_fqdn/home
}
rule_part_home_umount () {
! mountpoint -q /mnt/$vm_fqdn/home ||
sudo umount -v /mnt/$vm_fqdn/home
mountpoint -q /mnt/$vm_fqdn/home ||
sudo mount -v -t ext4 /dev/mapper/${vm_lvm_lv}_home_deciphered /mnt/$vm_fqdn/home
}
rule_part_home_umount () {
! mountpoint -q /mnt/$vm_fqdn/home ||
sudo umount -v /mnt/$vm_fqdn/home
sudo DEBOOTSTRAP_DIR=/usr/share/debootstrap/ LANG=C LC_CTYPE=C debootstrap \
--arch=$vm_arch --verbose --keyring=/usr/share/keyrings/debian-archive-keyring.gpg \
--exclude=vim-tiny \
sudo DEBOOTSTRAP_DIR=/usr/share/debootstrap/ LANG=C LC_CTYPE=C debootstrap \
--arch=$vm_arch --verbose --keyring=/usr/share/keyrings/debian-archive-keyring.gpg \
--exclude=vim-tiny \
sudo umount -v /mnt/$vm_fqdn/sys
! mountpoint -q /mnt/$vm_fqdn/proc ||
sudo umount -v /mnt/$vm_fqdn/proc
sudo umount -v /mnt/$vm_fqdn/sys
! mountpoint -q /mnt/$vm_fqdn/proc ||
sudo umount -v /mnt/$vm_fqdn/proc