15 Kasım 2007
Thunderbird konu başlığına göre dizilim yapmasın
# Only thread by reference headers, ignore subject user_pref("mail.strict_threading", true);
ve kayıt ettim... Thunderbird'ü tekrar çalıştırdığımda kabuslarım sona erdi.
16 Ekim 2007
Disklerin dolduğunu haber veren script
Henüz denemeler yapıp yazılımı test ediyorum. Bu denemelerimde disk dolduğu zaman bana e-posta atmasını sağlayamadım. Fazla da uğraşmadım ve kendi işimi kendim görmeye karar verdim. Hemen şöyle bir script yazdım:
#!/bin/sh if df -h | egrep "90%|91%|92%|93%|94%|95%|96%|97%|98%|99%|100%" then df -h > disk.txt echo " " >> disk.txt echo " " >> disk.txt du -sh /var/* >> disk.txt mail -s "[Proxy-Hastane] Disk Doluyor!" tirtil@zabazingo.com < disk.txt rm disk.txt fi |
Görüldüğü gibi basit bir 'eğer' kalıbı ile işimi hallettim.
Önce disk bölümlerinin doluluk oranına bakıp bu çıktıda %90 ve üzeri bir ifade var mı ona bakıyoruz. Eğer bu ifade var ise disk bölümlerinin doluluk oranlarının bilgisi ile /var dizininde bulunan dosya ve dizinlerin boyutlarını disk.txt dosyasına yazıp, bu dosyayı e-posta ile gönderiyoruz. Hepsi bu...
Bu scripti crontab'a ekleyip günde bir kez çalıştırmak yeter sanırım.
15 Ekim 2007
Konsoldan e-posta göndermek
Kurduğumuz sistemlerde neler olup bittiğini izlemek için yada belirli aralıklarla yaptırdığımız bir işin (örneğin yedekleme) sağlıklı bir şekilde yapıldığından emin olmak için birtakım çıktıları e-posta ile takip ederiz. Konsoldan e-posta atmak için;
# mail kullanıcı@alanadı.com -s "Konu Başlığı" < /var/log/dosya.log
komutunu kullanmak yeterlidir. Bu komut ile dosya.log dosyası kullanıcı@alanadı.com'a gönderilir. Fakat bu komutu kullanmak için önce bir MTA ayarı yapmak gerekir. Ben Debian'da ön tanımlı olarak gelen exim4'ü kullanıyorum. Eğer kurulu değil ise:
# apt-get install exim4 |
ile kurulumu yapıyoruz. Kullandığım gmail hesabım için ayarları şöyle yapıyorum:
# dpkg-reconfigure exim4-config |
Yapılandırmayı küçük dosyalara bölmek ister misiniz? hayır Posta yapılandırma türü? Posta gönderme akıllı-makine ile; posta alma SMTP/fetchmail ile Sistemin posta adı? localhost.localdomain |
Ayarları kayıt ediyoruz. Yapılan bu ayarlar /etc/exim4/update-exim4.conf.conf dosyasına yazılır. Bu dosyanın içeriği şöyle birşey oluyor.
# nano /etc/exim4/update-exim4.conf.conf |
dc_eximconfig_configtype='smarthost' dc_other_hostnames='localhost.localdomain' dc_local_interfaces='127.0.0.1' dc_readhost='debian' dc_relay_domains='' dc_minimaldns='false' dc_relay_nets='' dc_smarthost='smtp.gmail.com::587' CFILEMODE='644' dc_use_split_config='false' dc_hide_mailname='false' dc_mailname_in_oh='true' dc_localdelivery='mail_spool' |
aytekin kullanıcısının gönderdiği postalarda zabazingo@gmail.com adresinin görünmesini istiyorum. Bunun için /etc/email-addresses dosyası şöyle düzenliyoruz.
# nano /etc/email-addresses |
aytekin: zabazingo@gmail.com |
Son olarak kullanıdğımız e-posta adresinin kullanıcı ve şifre bilgilerini girmemiz gerekiyor.
# nano /etc/exim4/passwd.client |
*:zabazingo:şifre |
Ayarlar tamamlandı. Şimdi de exim4'ü yeniden başlatıyoruz.
# /etc/init.d/exim4 restart |
08 Ekim 2007
Dinamik IP'ye hostname atama (dyndns.org güzelliği)
Belli aralıklarla IP'yi güncellemek için ubunturehberi.com'da anlatılanları uyguladım. Komut satırından komutu verdiğimde herşey normal ama cron'dan komut çalışmıyor. Betik path'de olmadığı için sorun oluyor. Bende şöyle yaptım. dyndns_update.sh betiğini /usr/sbin/'in altına taşıdım. Betik içinde de değişiklik yapmak gerekiyor. ipcheck komutu olan satırlarda da /usr/sbin/ipcheck .... şeklinde yol tanımladım. Sonuç olarak betiğin son hali şöyle:
#!/bin/sh
USERNAME=kullanıcı
PASSWORD=şifre
HOSTNAME=xxxxxx.dyndns.org
cd /root/
if [ -f /root/ipcheck.dat ]; then
/usr/sbin/ipcheck -r checkip.dyndns.org:8245 $USERNAME $PASSWORD $HOSTNAME
else
/usr/sbin/ipcheck --makedat -r checkip.dyndns.org:8245 $USERNAME $PASSWORD $HOSTNAME
fi
crontab'a da şöyle ekliyoruz:
# crontab -eher saat başı çalışması için eklenecek satır:
00 * * * * /usr/sbin/dyndns_update.sh
05 Ekim 2007
/home'u ayrı bölüme/diskte taşımak
Şöyleki:
Önce dizin oluşturup 2.diski buraya bağlıyoruz.
# mkdir /yenihome
# mount -t ext3 /dev/sdb1 /yenihome
/home 'da bulunan tüm dosyaları /yenihome 'a taşıyoruz.
# cd /home
# find . -depth -print0 | cpio --null --sparse -pvd /yenihome/
/home'un yerini değiştiriyoruz.
# umount /yenihome
# mv /home /eskihome
# mv /yenihome /home
...ve bağlıyoruz.
# mount -t ext3 /dev/sdb1 /home
Tabi bu bağlama işini fstab'a da ekliyoruz:
/dev/sdb1 /home ext3 usrquota,grpquota 1 1
Kaynak : http://eventualis.org/home-dizinini-tasimak/
Artık yazmam lazım gelir...
yazılardan sonra kaldı öyle. Sildim o yazılarıda zaten. Şimdi tekrar
bişiler karalayım dedim Linux hakkında. Tırmalayıp duruyorum akşama
kadar şu ekranın önünde. Deneyimlerimi paylaşayım dedim bende işte. Öle
işte be ...