Ajout de commentaires
This commit is contained in:
parent
b9b9716693
commit
fb4322420f
1 changed files with 15 additions and 2 deletions
15
check.sh
15
check.sh
|
@ -3,36 +3,49 @@
|
||||||
# Script de vérification. Récupère la liste des fichiers répertoriés, et
|
# Script de vérification. Récupère la liste des fichiers répertoriés, et
|
||||||
# vérifie leur état, en fonction de leur taille et leur somme de contrôle
|
# vérifie leur état, en fonction de leur taille et leur somme de contrôle
|
||||||
|
|
||||||
|
# Défini la date de vérification, au format epoch
|
||||||
DATE=$(date +%s)
|
DATE=$(date +%s)
|
||||||
|
|
||||||
|
# Défini la date de vérification à utiliser dans les logs
|
||||||
FULL_DATE=$(date -d "@$DATE" "+%Y-%m-%d %H:%M:%S")
|
FULL_DATE=$(date -d "@$DATE" "+%Y-%m-%d %H:%M:%S")
|
||||||
|
|
||||||
|
# Pour chaque fichier de la table fichier
|
||||||
for c in $(sqlite3 suidchecker.db "SELECT chemin FROM fichier;")
|
for c in $(sqlite3 suidchecker.db "SELECT chemin FROM fichier;")
|
||||||
do
|
do
|
||||||
|
# Si le fichier existe encore
|
||||||
if [ -f $c ]
|
if [ -f $c ]
|
||||||
then
|
then
|
||||||
|
# Récupère son checksum et sa taille
|
||||||
checksum=$(cksum $c | cut -d' ' -f1)
|
checksum=$(cksum $c | cut -d' ' -f1)
|
||||||
taille=$(cksum $c | cut -d' ' -f2)
|
taille=$(cksum $c | cut -d' ' -f2)
|
||||||
|
|
||||||
|
# Récupère les valeurs d'origine pour comparer
|
||||||
old_checksum=$(sqlite3 suidchecker.db "SELECT checksum FROM
|
old_checksum=$(sqlite3 suidchecker.db "SELECT checksum FROM
|
||||||
fichier WHERE chemin='$c';")
|
fichier WHERE chemin='$c';")
|
||||||
|
|
||||||
old_taille=$(sqlite3 suidchecker.db "SELECT taille FROM fichier
|
old_taille=$(sqlite3 suidchecker.db "SELECT taille FROM fichier
|
||||||
WHERE chemin='$c';")
|
WHERE chemin='$c';")
|
||||||
|
|
||||||
|
# Si la taille et le checksum sont inchangés, le status est
|
||||||
|
# mis à identique, sinon à modifié
|
||||||
if [ $checksum -eq $old_checksum -a $taille -eq $old_taille ]
|
if [ $checksum -eq $old_checksum -a $taille -eq $old_taille ]
|
||||||
then
|
then
|
||||||
status="identique"
|
status="identique"
|
||||||
else
|
else
|
||||||
status="modifié"
|
status="modifié"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# On insère les informations dans la base
|
||||||
sqlite3 suidchecker.db "INSERT INTO controle VALUES(
|
sqlite3 suidchecker.db "INSERT INTO controle VALUES(
|
||||||
'$c','$DATE','$checksum','$taille','$status');"
|
'$c','$DATE','$checksum','$taille','$status');"
|
||||||
else
|
else
|
||||||
|
# Quand le fichier n'existe pas, on indique qu'il est supprimé
|
||||||
status="supprimé"
|
status="supprimé"
|
||||||
sqlite3 suidchecker.db "INSERT INTO
|
sqlite3 suidchecker.db "INSERT INTO
|
||||||
controle(chemin,date,status) VALUES('$c',
|
controle(chemin,date,status) VALUES('$c',
|
||||||
'$DATE','$status');"
|
'$DATE','$status');"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo -e "$FULL_DATE $c $status"
|
# Affichage des logs sur la sortie standard
|
||||||
|
echo "$FULL_DATE $c $status"
|
||||||
done
|
done
|
||||||
|
|
Loading…
Reference in a new issue