Archive for January, 2009

Regexp kullanarak postfix’te catch-all tanimi

Diyelim ki, mail sunucunuzda bir çok alan adı var, bunların her birinde gurcan.ozturk@domain1.tld, gurcan.ozturk@domain2.tld şeklinde tanımlar yapmak istemiyorsunuz, her domaine gelen gurcan.ozturk maillerini tek bir emailde toplamak istiyorsunuz. (catch-all işlemi) Postfix’te aşağıdaki ayarları yaparak bunu basitce sağlayabilirsiniz.

Öncelikle /etc/postfix/main.cf dosyasına aşağıdaki satırı ekleyin.

virtual_alias_maps = regexp:/etc/postfix/virtual

Daha sonra /etc/postfix/virtual dosyası içine aşağıdaki satırı ekleyin, dosya yoksa oluşturun.

/^gurcan.ozturk@/ gurcan.ozturk@domain.tld

Aşağıdaki komutları sıra ile verdikten sonra, yaptığınız ayarlama aktif olacaktır.

postmap /etc/postfıx/virtual
postfix reload

İçince gurcan gecen her emaile gelenleri toplamak için ise catch-all satırı şu şekilde olmalıdır.

/.*gurcan.*@/ gurcan.ozturk@domain.tld

Ext3 Partition buyutme

Gectigimiz gunlerde calismakta olan web sunucularimizdan birinin yenilenmesi gerekiyordu, ben de sunucu ayarlarini bastan yapmaktansa var olan sunucunun disk imajini alarak platformunu degistirmeyi dusundum. Eski sunucu HP Proliant DL380 G4 bir sunucu iken, yeni sunucu IBM xSeries x3850 bir sunucu olunca insan nasil olacak diye dusunmeden edemiyor.

Ilk olarak, eski sunucudaki disk uzerindeki partitionlarin imajini partimage ile aldim, bu amacla SysRescueCD kullandim. IBM x3850 sunucu SysRescueCD uzerindeki default kernel ile acilmiyor, “checking TSC synchronization bla bla” hatasi verip cakilip kaliyor. Bunu cozmek icin sunucuyu SysRescueCD ‘nin “altker64″ boot parametresi ile boot etmek gerekiyor.

HP sunucunun toplam disk alani 270GB iken, yeni sunucuda 415GB civarinda oldugu icin imaj dosyasini yazdiginizda, partition buyuklugu 270GB olacak ve geri kalan alani kullanamayacaksiniz. Bunu cozmek icin yine SysRescueCD kullandim.

SysRescueCD ile boot ettikten sonra partitioni buyutmek icin asagidaki komutlar yeterli olacaktir. (Burada ornek olarak partition ismi /dev/sda1 verilmistir.)

tune2fs -O^has_journal /dev/sda1
e2fsck -f /dev/sda1
resize2fs /dev/sda1 -S 5
tune2fs -j /dev/sda1

Burada, resize2fs komutunun -S (RAID-stride) parametresi olarak diskler icin kullandiginiz RAID bilgisini verdiginizde, RAID durumuna gore partition buyuklugunu ayarlayacak sizin partition buyuklugu hesap etmenize gerek kalmayacaktir. (IBM sunucuda RAID5 ayarlamis oldugum icin -S 5 parametresi verdim.)

Sunucunuzu restart ettiginizde, partitionun buyuklugu degismis olacaktir.