Quel type de VM ? Et quel OS pour l’hôte ?
Faire du développement demande pas mal de ressources en général (entrées/sorties, CPU, mémoire, espace disque, …) Ce n’est pas pour rien que souvent les meilleures machines sont réservées aux développeurs dans les entreprises.
Quel genre de développement et dans quel domaine ?
Je n’ai aucune idée de la place prise par ce genre d’environnement. Souvent la place prise par les outils est faible par rapport à celle prise par les dépendances et par les fichiers générés lors de la compilation.
Si vous allez jusqu’à la construction de paquets, vous avez un ordre de grandeur de la place nécessaire pour construire un paquet Debian dans les journaux de construction que vous accédez depuis la page développeur relative au paquet source.
Pour vous donner une idée, un simple paquet source avec des dépendances très limitées (build depends raisonnables, sources gérés avec git-buildpackage) peut nécessiter 16Go d’espace disque temporaire pour une seule construction.
fp2@debpacha:~$ df -hT /data/devel/pkgs
Sys. de fichiers Type Taille Utilisé Dispo Uti% Monté sur
/dev/mapper/pacha_vg-data_lv ext4 125G 21G 103G 17% /data
fp2@debpacha:~$ du -h -s /data/devel/pkgs
13G /data/devel/pkgs
fp2@debpacha:~$ du -h -s /data/devel/pkgs/*
4,1M /data/devel/pkgs/build_amd64.log
12G /data/devel/pkgs/buildarea
4,0K /data/devel/pkgs/fakeroot.rules
12K /data/devel/pkgs/lapack.rules
548K /data/devel/pkgs/of_build.log
183M /data/devel/pkgs/OpenFOAM-2.1.x
228M /data/devel/pkgs/OpenFOAM-4.1
16K /data/devel/pkgs/openfoam_4.1+dfsg1-1.debian.tar.xz
4,0K /data/devel/pkgs/openfoam_4.1+dfsg1-1.dsc
10M /data/devel/pkgs/openfoam_4.1+dfsg1-1_unstable_clang.log
604M /data/devel/pkgs/openfoam_4.1+dfsg1-2
24K /data/devel/pkgs/openfoam_4.1+dfsg1-2pre.debian.tar.xz
4,0K /data/devel/pkgs/openfoam_4.1+dfsg1-2pre.dsc
26M /data/devel/pkgs/openfoam_4.1+dfsg1.orig.tar.xz
fp2@debpacha:~$
Ceci est la première tentative avec un répertoire de construction sur le disque dur.
En le déplaçant sur un SSD
fp2@debpacha:~/devel$ du -h -s buildarea/
16G buildarea/
fp2@debpacha:~/devel$ df -hT $PWD
Sys. de fichiers Type Taille Utilisé Dispo Uti% Monté sur
/dev/mapper/pacha_vg-home_lv ext4 24G 16G 7,4G 69% /home
fp2@debpacha:~/devel$
Naturellement je vous conseille fortement d’utiliser LVM
fp2@debpacha:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 111,8G 0 disk
├─sda1 8:1 0 2G 0 part /boot
└─sda2 8:2 0 109,8G 0 part
├─pacha_vg-root_lv 254:3 0 8G 0 lvm /
└─pacha_vg-home_lv 254:4 0 24G 0 lvm /home
sdb 8:16 0 931,5G 0 disk
├─pacha_vg-swap_lv 254:0 0 12G 0 lvm [SWAP]
├─pacha_vg-var_lv 254:1 0 4G 0 lvm /var
├─pacha_vg-data_lv 254:2 0 128G 0 lvm /data
└─pacha_vg-tmp_lv 254:5 0 8G 0 lvm /tmp
sr0 11:0 1 1024M 0 rom
fp2@debpacha:~$
En résumé : pourquoi une machine virtuelle ?
Si vous êtes à fond dans la philosophie de développement à la Debian, le paquet sbuild
vous permet de gérer un espace de construction séparé ( chroot
) avec uniquement les dépendances de construction installées (au moment de la construction, donc prévoir soit une liaison internet très rapide soit un système de cache des dépôts de paquets + une machine de compétition).
En conclusion, prévoir de place pour un répertoire buildarea
.
NOTE: l’unique paquet source openfoam
crée un ensemble de bibliothèques et de programmes scientifiques de résolution d’équations différentielles : mécanique des fluides, combustion, …
Cordialement,
Regards,
Mit freundlichen Grüßen,
مع تحياتي الخالصة
F. Petitjean
Ingénieur civil du Génie Maritime.
« On ne perd pas son temps en aiguisant ses outils. »
Proverbe français