Gestion des paquets a installer
This commit is contained in:
parent
5057b95a4d
commit
c1f0d57ed4
|
@ -1,11 +1,20 @@
|
|||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
su -c'
|
||||
|
||||
OUTPUT=($(lsblk -dpno name)) #Listing des disques présents sur la machine sous la forme "/dev/sd*" dans un array
|
||||
OUTPUT=($(lsblk -dpno name)) #Listing des disques présents sur la machine sous la forme /dev/sd* dans un array
|
||||
ARRAY_TEMPS=() #Creation d un array vide
|
||||
HOME=($(eval echo ~$USER)) #Chemin du home
|
||||
LOG=($(eval echo ~$USER/SANTE_DISK)) #Chemin du fichier de sortie du test (dans le repertoire home de l utilisateur)
|
||||
PACKAGES=(smartmontools mailutils) #Liste des paquets necessaires
|
||||
|
||||
date > $HOME/SANTE_DISK #RAZ fichier de sortie + inscription date
|
||||
for i in "${PACKAGES[@]}" #Verification et installation des paquets necessaires
|
||||
do
|
||||
if ! dpkg -s $i >/dev/null 2>&1; then
|
||||
echo "Installation du paquet "$i""
|
||||
apt install $i
|
||||
fi
|
||||
done
|
||||
|
||||
date > $LOG #RAZ fichier de sortie + inscription date
|
||||
|
||||
for i in "${OUTPUT[@]}" #Boucle de test sur chaque disque
|
||||
do
|
||||
|
@ -26,22 +35,21 @@ sleep "$TEMPS_MAX"m #Attente de fin des tests
|
|||
|
||||
for i in "${OUTPUT[@]}" #Boucle d inscription des résultats dans le fichier de sortie
|
||||
do
|
||||
echo "----------------------------------------------------------------" >> $HOME/SANTE_DISK
|
||||
echo "DISK "$i"" >> $HOME/SANTE_DISK
|
||||
/usr/sbin/smartctl -i "$i" | grep "Model Family" >> $HOME/SANTE_DISK
|
||||
/usr/sbin/smartctl -i "$i" | grep "Device Model" >> $HOME/SANTE_DISK
|
||||
/usr/sbin/smartctl -i "$i" | grep "Serial Number" >> $HOME/SANTE_DISK
|
||||
/usr/sbin/smartctl -i "$i" | grep "Firmware" >> $HOME/SANTE_DISK
|
||||
echo " "
|
||||
/usr/sbin/smartctl -H -A -l selftest "$i" >> $HOME/SANTE_DISK
|
||||
echo " " >> $HOME/SANTE_DISK
|
||||
echo "----------------------------------------------------------------" >> $LOG
|
||||
echo "DISK "$i"" >> $LOG
|
||||
/usr/sbin/smartctl -i "$i" | grep "Model Family" >> $LOG
|
||||
/usr/sbin/smartctl -i "$i" | grep "Device Model" >> $LOG
|
||||
/usr/sbin/smartctl -i "$i" | grep "Serial Number" >> $LOG
|
||||
/usr/sbin/smartctl -i "$i" | grep "Firmware" >> $LOG
|
||||
echo " " >> $LOG
|
||||
/usr/sbin/smartctl -H -A -l selftest "$i" >> $LOG
|
||||
echo " " >> $LOG
|
||||
done
|
||||
|
||||
echo "**************************************************
|
||||
***** TESTS TERMINES ET LOG DISPONIBLE SOUS *****
|
||||
************ $HOME/SANTE_DISK *************
|
||||
************ $LOG *************
|
||||
**************************************************"
|
||||
|
||||
cat $HOME/SANTE_DISK | /usr/bin/mailx -s "Sante des disques sur $HOSTNAME" $USER@localhost #envoi de mail
|
||||
|
||||
read'
|
||||
cat $LOG | /usr/bin/mailx -s "Sante des disques sur $HOSTNAME" $USER@$HOSTNAME #envoi de mail
|
||||
read'
|
||||
|
|
Loading…
Reference in New Issue