salut les gars!
J'ai mis en place de quota de disque sur mon / home et / var de fichiers sur mon inux édition serveur de messagerie d'entreprise où mon 12.000 boîtes aux lettres des utilisateurs (UID ayant> 99) résident dans le répertoire / var / mail.... Qu'est-ce que j'ai besoin est un script shell qui WUD calcule automatiquement les utilisateurs qui dépasse la limite de disque tht i ont alloué à eux et de les envoyer par courriel autonatically alerte à rester dans les limites et combien d'espace, ils ont consommé de combien ils ont l'autorisation d'utiliser.
Je m coller le script ci-dessous tht ive got mais il faut les âges, et il y reste, mais fait courir nuthing b ou mai, il se bloque i dunt know.please quelqu'un vérifier ce script, ou quelqu'un a une meilleure script ne m'envoyer.
*******************
#! / bin / sh
#DISKHOGS - Disk quota outil d'analyse pour les systèmes Unix, l'utilisateur assume tous les
#les comptes sont> UID = 100. Emails message à chaque utilisateur en violation
#rapports et une synthèse à l'écran
MAXDISKUSAGE = 2
contrevenants = "/ tmp/diskhogs0. $ $ "
trap "/ bin / rm-f $ contrevenants" 0
pour le nom in $ (cut-d:-f1, 3 / etc / passwd | awk-F: $ 2> 99 (print $ 1))
faire
echo-n "$ nom"
find / / usr / var / Users utilisateur $ nom-xdev-type f-ls | \
awk (somme + = $ 7) END (print sum / (1024 * 1024))
done | awk "\ $ 2> $ MAXDISKUSAGE (print \ $ 0)"> $ contrevenants
if [! -s $ contrevenants], puis
echo "n ° utilisateurs dépassent les quotas de disque $ () MAXDISKUSAGE MB"
cat $ contrevenants
exit 0
fi
lire tout l'utilisation des comptes, ne
cat <<EOF | fmt | mail-s "Attention: $ compte dépasse Quota" $ compte
Votre utilisation du disque est de $ (usage) MB, mais vous avez été alloué
$ () MAXDISKUSAGE MB. Cela veut dire que soit vous avez besoin de supprimer certains
vos fichiers, compresser vos fichiers (voir "gzip" ou "bzip2" pour les puissants et
facile à utiliser les programmes de compression), ou de parler avec nous de plus en plus
votre disque allocation.
Merci pour votre coopération à ce sujet.
Dave Taylor @ x554
EOF
echo "$ en $ compte d'utilisation Mo d'espace disque. utilisateur avisé. "
done <$ contrevenants
exit 0
*********************************************
thnx pour l'aide à l'avance
Shahzad