eole-one-master/postservice/99-init-hapy-master
Daniel Dehennin 539f5a3bd3 Les machines GNU/Linux gèrent l’horloge en UTC
L’utilisation de « LOCALTIME » pour les modèles de VM EOLE peut-être
problématique.

Pour les postes Linux, elle entraîne un décalage de l’horloge au
démarrage de la machine virtuelle qui devra être corrigé par ntp.

Ce qui peut entraîner des soucis avec certains services comme mysql.

* postservice/99-init-hapy-master (FEATURES): Suppression de
  « LOCALTIME ».

Ref: #18448
2016-12-23 13:33:58 +01:00

109 lines
3.3 KiB
Bash
Executable File

#!/bin/bash
[ $(CreoleGet hapy_init_master) == non ] && exit 0
DISKSIZE=$(CreoleGet hapy_init_master_disk_size)
DISKNAME="DSK-${DISKSIZE}-Go"
DISKDESC="Disque vide de ${DISKSIZE} Go"
VERSIONISO=$(CreoleGet hapy_init_master_iso_version)
MAJORVERSION=${VERSIONISO:0:3}
ISONAME="ISO-Eole-${VERSIONISO}-amd64"
ISODESC="Image ISO EOLE Stable ${VERSIONISO} 64 bits"
TMPLNAME="InstallEole-${VERSIONISO}-amd64"
TMPLDESC="Modèle de VM permettant d'installer un module EOLE ${VERSIONISO} 64 bits (non persistente)"
echo "########### suppr ${DISKNAME} ###############"
oneimage delete ${DISKNAME}
echo
echo "########### suppr ${ISONAME} ###################"
oneimage delete ${ISONAME}
echo
echo "########### suppr ${TMPLNAME} ###################"
onetemplate delete ${TMPLNAME}
echo
#*****************************************************
# DISQUE VIDE
#*****************************************************
if ! oneimage show "${DISKNAME}" &>/dev/null
then
echo "***** Création de ${DISKNAME} *****"
oneimage create -d $(CreoleGet one_ds_image_name) --name "${DISKNAME}" --type DATABLOCK --description "${DISKDESC}" --size $((${DISKSIZE}*1024)) --prefix vd --driver qcow2 --fstype qcow2
oneimage chtype "${DISKNAME}" OS
else
echo "***** ${DISKNAME} existe déjà *****"
fi
echo
#*****************************************************
# Image ISO EOLE Latest Stable
#*****************************************************
if ! oneimage show "${ISONAME}" &>/dev/null
then
echo "***** Téléchargement de ${ISONAME} *****"
wget --output-document "/tmp/eole-${VERSIONISO}-alternate-amd64.iso" "http://eole.ac-dijon.fr/pub/iso/EOLE-${MAJORVERSION}/${VERSIONISO}/eole-${VERSIONISO}-alternate-amd64.iso"
echo "***** Création de ${ISONAME} *****"
if [ $? -ne 0 ]; then
echo "Erreur lors du téléchargement, Abandon"
exit 1
fi
FILE=$(mktemp)
cat > ${FILE} <<EOF
NAME="${ISONAME}"
TYPE="CDROM"
DESCRIPTION="${ISODESC}"
DEV_PREFIX="hd"
PATH="/tmp/eole-${VERSIONISO}-alternate-amd64.iso"
PERSISTENT="No"
EOF
oneimage create -d $(CreoleGet one_ds_iso_name) ${FILE}
/bin/rm -f ${FILE}
for i in `seq 60`
do
sleep 1
#oneimage show ${ISONAME} | grep STATE | grep rdy &>/dev/null && break
oneimage show ${ISONAME} | grep STATE | grep lock &>/dev/null || break
echo -n "Attente : "
oneimage show ${ISONAME} | grep STATE
done
rm -f "/tmp/eole-${VERSIONISO}-alternate-amd64.iso"
else
echo "***** ${ISONAME} existe déjà *****"
fi
echo
#*****************************************************
# Template EOLEBASE
#*****************************************************
if ! onetemplate show "${TMPLNAME}" &>/dev/null
then
echo "***** Création de ${TMPLNAME} *****"
FILE=$(mktemp)
cat > ${FILE} <<EOF
NAME="${TMPLNAME}"
DESCRIPTION="${TMPLDESC}"
INPUT=[BUS="usb",TYPE="tablet"]
CPU="0.2"
DISK=[DEV_PREFIX="vd",IMAGE_UNAME="oneadmin",IMAGE="${DISKNAME}",DRIVER="qcow2"]
DISK=[DEV_PREFIX="hd",IMAGE_UNAME="oneadmin",IMAGE="${ISONAME}",DRIVER="raw"]
FEATURES=[ACPI="yes",PAE="no"]
VCPU="1"
GRAPHICS=[LISTEN="0.0.0.0",TYPE="vnc",KEYMAP="fr"]
OS=[BOOT="hd,cdrom",ARCH="x86_64"]
MEMORY="1024"
EOF
#NIC=[MODEL="virtio",NETWORK="CR_eole"]
onetemplate create ${FILE}
/bin/rm -f ${FILE}
else
echo "***** ${TMPLNAME} existe déjà *****"
fi
echo
exit 0