netcat ile port kontrol script’i

netcat kullanarak aşırı yükten dolayı cevap veremeyen/çalışmayan portlardan haberdar olabileceğimiz bir linux betiği yazmamız gerekirse;

#!/bin/bash
date
host=127.0.0.1
for port in  25 80 110 443 3306
do
if ! nc -n -z -w 1 $host $port
then
sonuc=${sonuc}" "$port
fi
done
if [ -n "${sonuc+x}" ]; then
echo Cevap vermeyen portlar : $sonuc
echo Cevap vermeyen portlar $sonuc | mail -s "baslik" alici1@e-mail.com,alici2@e-mail.com
fi

not1: nc(netcat) komutundaki -n parametresi dns sorgusunu iptal eder, -z bağlantıyı kontrol eder, -w 1 zamanaşımı süresini 1 saniye olarak belirler.

not2: crontab a da */5 * * * * şeklinde girilip sonuçları da log dosyasına kaydedilirse izlemek daha kolay olabilir.

klasor boyutlari

Kullanıcıların posta kutusunun boyutunu listelemek için (Maildir) kullanılabilir;

du -h /home/kullanicilar | awk ‘$1 ~/M/ {sub(/M/, “Mb”); print $0}’ | awk ‘$2 ~/.Maildir$/{print $0}’|sort -n

20Mb den büyük dosyaları listelemek için

find / -type f -size +20000k -exec ls -lh {} ; | awk ‘{ print $9 “: ” $5 }’

Klasörde dosya isimlerindeki boşlukları ve büyük harfleri düzeltmek için;

#!/bin/bash
for f in *; do
file=$(echo $f | tr A-Z a-z | tr ‘ ‘ _)
[ ! -f $file ] && mv “$f” $file
done