MT ile apache2

Serdar Hoca da sık sık söyler: “Birşey bozulmadıysa tamir etmeye kalkma!” Gerçi deMarco Slack’de farklı birşey söylemekte, ama bu kaide oldukça geniş kabul görür. Ben, her zamanki gibi, genelgeçer kuralı dinlemedim ve durup dururken apache 1.3’ümü apache 2.0 ile değiştirdim.

Sonuç mu? Çalışmayan MovableType dolayısıyla kaybolan yarım gün.

MovableType hayli sıkı bir web günlüğü (blog) aracı. Gerçi GPL değil, ama yine de hayli açık sayılabilecek bir lisans anlaşması var. Epeyce bir süredir web günlüğüm için MT kullanıyorum, her ne kadar günlüğün içeriği sık değişen ve heyecanlı birşeyler olmasa da.

Neyse, gelelim oyunun diğer aktörüne: apache, neredeyse yıllardır, ara versem de, kullandığım web sunucusu. 2.0 sürümüne bir türlü alışmadım, “Ne gereği vardı ki” diye düşündüm genelde. Paşa paşa 1.3 ile yürüttüm işlerimi. Zaman zaman kaynaktan derleyip içine envai modül yükledim, zaman da kutudan çıkarıp olduğu gibi kullandım. Şimdiki hali özellikle sanal sunucular açısından hayli başarılı, yıllardır uzak durmaya çalıştığım bu işi sonunda öğrendim ve abartı düzeyinde kullanmaya başladım.

Kısa keseyim, geçenlerde bir Synaptic Package Manager çalıştırırken adam “apache’leri kaldıracağım” diye tutturdu. Ben de “herhalde ilahi bir işaret olsa gerek” diyerek “eyvallah” dedim, o 1.3’ü kaldırdı, ben 2.0’ı yükledim. Kısa bir sürede yapılandırma dosyalarını ayarladım ve eskisinden farksız bir şekilde faaliyetime devam ettim.

Acaba? MT sürekli sorun çıkarıyor, ne yapsam login penceresini geçemiyorum. Hayır, sorunun hangi parçadan kaynaklandığından da emin değilim. MT mi, tarayıcı mı, veritabanı mı, web sunucu mu? Önce tarayıcıya yüklendim, MT kılavuzunda söylendiği gibi kurabiyelerle (cookie) hemhal oldum, izledim, gözledim.Herşey yolunda. Sonra veritabanına döndüm, mysql’den Berkeley DB’ye döndüm ve geri döndüm, mysql loglarına baktım. Yok yok, sorun var. Adam kurabiye işleyemiyor, geri dön tarayıcıya bak.

Oradan MT’ye geçtim. Web sitesinden indir, yooo, elimdeki son sürüm zaten. Yine de indir. Var olanı sil, yenisini kur. Dene, çalışmıyor. Veritabanı adını değiştir, herşeyi yeniden kur, dene, çalışmıyor. Perl ve apache modülleri ile boğuş.

Sonunda öyle bir noktaya geldim ki yapılacak şey apache2 ve tüm modüllerini kaynaktan derleyip yeniden denemek olacaktı. Tam başlarken bir ses dedi ki, “yahu sen ne yapıyorsun?” zaten apache ile çalışmıyor muydu bu MT? O zamandan bu zamana ne değiştirdin, bir tek apache sürümü değil mi? Boş ver 2.0’ı, paşa paşa 1.3’e dön!”, ben de o sesi dinledim.

Beş dakika sonra herşey tıkır tıkır çalışıyordu 🙂

Hisse olarak ilk noktaya geldik: “Bilgisayarlar o kadar acayip yaratıklar ki, herhangi bir şekilde çalışıyor olmaları dahi mucize addedilebilir. Hal böyleyken bozulmamış taraflarını kurcalayıp dertsiz başımıza dert almak kabul edilemez. Birşey bozulmadıysa tamir etmeye kalkma!” Her ne kadar dinlemeyecek olsam da genelgeçer kuralı bir kez daha vaz etmekte fayda var 🙂

switchconf

MAM‘a gelince yapılacak işlerin başında dizüstümü değişken çevreye uydurmak vardı. switchconf bu konuda attığım ilk adım oldu.

Tamam, diyelim MAM için tüm ayarları yaptım: IP değişikliği, resolv.conf, DNS ayarları, şu ve bu. Peki sabahları Uludağ ofisine gidince ne yapacağım? Ya da evde makineyi açarken neden bağlı olmayan Ethernet’i bekleyip durayım? Ya da taşınıp da hayırlısı ile bir ADSL alınca evin ayarları ne olacak? Evet, ÇOMAR‘ı bekleyecek halim olmadığına göre iş yine başa düşüyordu. Ben de iddialı durumları seven bir eleman olarak daldım!

Synaptic Package Manager’da bir arama ile ilk olarak divine çıktı karşıma. Akıllıca bir yaratık: Makineyi açarken ağı kontrol ediyor, kesinlikle aktif olması beklenen (yönlendirici, sunucu, yazıcı gibi) IP adreslerini tarıyor. Bunlardan hareketle hangi ortamda olduğunu buluyor ve ilintili resolv.conf dosyasını seçiyor. İstenirse başka işleri de script yolu ile yapabiliyor. Hemen indirdim, yapılandırdım ve çalıştırdım. Hüsran! Bir şekilde ARP çağrılarına yanıt alamayınca alet nerede olduğunu bulamadı 🙁

Devam ediyoruz. Karşımıza switchconf çıkıyor. Bu oldukça mütevazı bir proje, bir web sayfası bile yok. Çalışma yöntemi de çok basit: Kullanmayı düşündüğünüz ortam için gerekli yapılandırma dosyalarını burada bir ağaç yapısında yerleştiriyorsunuz. Normal durumda / dizininden başlayarak istediğiniz her dosyaya dalabiliyorsunuz. İki de script dizini var before.d ile after.d, bunlar da yapılandırmaya başlamadan önce ve bittikten sonra çalıştırılacak işleri gösteriyorlar. Yani durdur-yapılandır-yeniden çalıştır, aynen ÇOMAR gibi. Her ne kadar Serdar Hocam “Yooo, ÇOMAR apayrı bişey!” dese de 😉

Neyse, yükledim, ayarladım, çalıştırdım. veee… çalıştı! Hem de hiç problemsiz! Şu anda mam, uludag ve ev gibi üç ortamım var. Ama, örneğin, TÜSSİDE‘ye bir dahaki gidişte artık ne yapacağımı biliyorum, hem de 5 dakikada, tertemiz bir yolla!