Je distribue une machine virtuelle à mes étudiants pour un cours de programmation pour débutants. Pour gagner du temps, au lieu de leur demander d'installer Ubuntu à partir de zéro, je prévois de leur donner une image entièrement configurée qu'ils pourront simplement exécuter.
Pour la configurer, j'ai attribué un nom d'hôte, un nom d'utilisateur et un mot de passe sacrifiables. Quel est le moyen le plus propre de le changer pour les étudiants lorsqu'ils seront opérationnels?
Je suis allé jusqu'à ce gist, qui a quelques progrès peu fiables avec le nom d'hôte, mais le nom d'utilisateur me résiste pour le changement.
Je voudrais que ce processus soit aussi indolore que possible car cela doit se faire lors de leur premier laboratoire.
Il est tout à fait possible qu'il existe une approche complètement différente que je devrais adopter. Je suis ouvert à toutes suggestions.
#!/bin/bash
clear
toilet " CODE1161 " --metal --font future
echo ""
toilet "Commençons!" --metal --font future
echo ""
echo "Nous devons faire de cet ordinateur le VÔTRE"
echo "Nous avons besoin d'un nom pour vous et votre ordinateur, faites-le court sinon cela prendra beaucoup de place."
echo "Mon ordinateur s'appelle um et je m'appelle ben, donc j'obtiens ben@um:~$ comme invite de commande."
echo ""
read -p "Entrez un nom pour votre ordinateur:" compname
read -p "Entrez votre nom : " username
echo ""
toilet "$username@$compname~$" --gay --font wideterm
echo ""
echo "Qu'en pensez-vous? Si vous détestez, appuyez sur ctrl+c et recommencez"
read -p "sinon, appuyez juste sur Entrée." sacrificial
# définir le nom d'hôte, à des millions d'endroits, pour une raison inconnue.
echo "1"
sed -i "/127\.0\.1\.1\s*vc/ { c \
127.0.1.1 $compname
}" /etc/hosts
echo "2"
sudo hostname -b $compname
echo "3"
sudo hostnamectl set-hostname $compname
echo "4"
sudo groupadd $username
echo "5"
sudo usermod -d /home/$username -m -g $username -l $username ben