Archive for the 'Linux' Category

Pardus’ta PDO_PGSQL ve PDO_MYSQL kurulumu

Drupal’ın geliştirilmekte olan 7.x sürümünün veritabanı sistemi PHP’nin PDO eklentisi kullanılarak yeniden yazıldı. Yeni sürümü denemek veya yama hazırlamak için PHP’nin PDO eklentisi ve PDO_PGSQL ve/veya PDO_MYSQL sürücüleri ile derlenmiş olması gerekiyor.

Pardus depolarındaki PHP paketleri bize bu desteği sağlamıyor. Bir süre önce Pardus’un hata takip sistemine durumu anlatan bir kayıt girmiştim. Umarım kısa zamanda ilgi görür.

Drupal 7.x sürümünü Pardus’a kurabilmek için PHP’yi kaynak kodlarından derlemek gerekiyor. Derlemeye hazırlanırken phpinfo() fonksiyonunun çıktısından Pardus’a özgü “configure” ayarlarını alıp bu ayarların en sonuna aşağıdaki iki ayarı ekleyin:

--with-pdo-pgsql=shared
--with-pdo-mysql=shared

Kurulum sırasında PHP “/etc/apache2/apache2.conf” dosyasının var olmasını gerektiriyor. Bu sorunu çözmek için aşağıdaki komut yeterli oluyor:

sudo ln /etc/apache2/httpd.conf /etc/apache2/apache2.conf

PHP derleme ve kurulum işlemi bittikten sonra “/etc/php/php.ini” dosyasını açıp “Dynamic Extensions” bölümünün altına aşağıdaki satırları ekleyin:

extension=pdo.so
extension=pdo_pgsql.so
extension=pdo_mysql.so

Hepsi bu kadar. Apache’yi yeniden başlattıktan sonra Drupal kurulumuna geçebilirsiniz.

Lighty HTTP sunucusu (lighttpd)

Bilgisayarımda FeedAPI eklentisini ve onun için yazdığım bazı eklentileri test ediyorum. Cron görevlerini 10 dakikada bir çalışmak üzere ayarladım.

Düne kadar Eclipse, Firefox ikilisi ile çalışırken bilgisayar bir süre sonra tepkisiz kalıyordu. Cron görevleri olmadığı zaman gayet rahat çalışabildiğimi bildiğim için bu tepkisiz kalmanın sebebinin Apache olduğunu biliyordum.

Önce Apache’nin ‘prefork‘ yerine ‘worker‘ modelini kurmak istedim. Ne yazık ki Ubuntu ‘worker’ modelini desteklemiyormuş. Desteklememesinin nedeni ise pek çok PHP uygulamasının ‘thread safe‘ olmaması. Bunun üzerine Lighty‘yi denemeye karar verdim. Apache’yi kaldırıp Lighty’yi kurmak gerçekten çok kısa sürdü. Şimdilik bu değişimden memnunum. Artık bilgisayarım tepkisiz kalmıyor.

Aşağıya paket yöneticisi ile kurulumu yaptıktan sonra uygulanması gereken bazı komutları yazıyorum:

cd /etc/init.d/
sudo ./apache2/apache2 stop
sudo ./lighttpd/lighttpd start
sudo lighty-enable-mod cgi
sudo ./lighttpd/lighttpd force-reload

(Linux’ta) Masaüstü yöneticisinin veri yolu (PATH) değerini değiştirmek

Sık kullandığımız bir programı çalıştırmak için her seferinde programı yerleştirdiğimiz dizinin tam yolunu yazmak bize zaman kaybettirir. Örneğin şu sıralarda çok kullandığım bir programın çalıştırılabilir dosyaları “/opt/arm/3.4/bin” dizininin içerisinde. Bu dizindeki “arm-linux-gcc” komutunu çalıştırmak için her seferinde “/opt/arm/3.4/bin/arm-linux-gcc” yazmak yerine bir sefer “export PATH=$PATH:/opt/arm/3.4/bin” komutunu çalıştırıyorum. Bundan sonra “arm-linux-gcc” komutunu istediğim yerde tam yolunu belirtmeden kullanabiliyorum.

Sistem her başladığında yukarıdaki basit ayarın kendiliğinden yapılmasını sağlamak için “/etc/profile” dosyasının sonuna “export PATH=$PATH:/opt/arm/3.4/bin” satırını ekledim. Bu değişiklik sayesinde kabukta (shell) çalışırken kendime kolaylık sağlamış oldum fakat masaüstü yöneticisi (gdm) farklı bir katmanda (!) çalıştığı için aynı değişiklik masa üstünden veya dosya yöneticisinden çalıştırdığım programlarda geçerli olmadı.

Mesela NetBeans programını masa üstüne yerleştirilmiş olan kısayolu kullanarak çalıştırdım. Birşeyler derlemek istediğimde “arm-linux-gcc komutu bulunamadı!” gibi bir hata verdi.

Bu hatanın üstesinden gelmek için masa üstü yöneticisinin ayar dosyasında bir değişiklik yapmak gerekiyor.¹ Önce “/usr/share/gdm/defaults.conf” dosyasında “[daemon]” bölümünün altındaki “DefaultPath=” ile başlayan satırı alıyoruz. Bu satırı “/etc/gdm/gdm.conf” dosyasındaki “[daemon]” bölümünün altına kopyalıyoruz. Şimdi de kopyaladığımız satırın sonuna “arm-linux-gcc” dosyasının bulunduğu klasörü ekliyoruz. Bu işlem sonucunda şöyle bir satır elde ediliyor: “DefaultPath=( varsayılan değerler ):/opt/arm/3.4/bin

gdm.conf” dosyasını kaydettikten sonra bilgisayarı yeniden başlatmak gerekiyor. Bilgisayarınız açıldığında masa üstü yöneticisi ile aynı dili konuşuyor olacaksınız.

¹ Burada anlatılan ayarlar Debian GNU/Linux üzerinde denenmiştir. Diğer dağıtımlarda farklılıklar olabilir.

Slackware 12.0 duyuruldu!

slackware.png

Bu sürümde Linux kernel 2.6 sürümü varsayılan olarak yükleniyor. Harici diskleri bağlamak için root yetkileri almak gerekmiyor. HAL (the Hardware Abstraction Layer) desteği sayesinde harici diskler tak ve çalıştır rahatlığında bağlanabiliyor.

KDE ve GNOME

klogo-official-lineart_detailed-128x128.png

GNOME masaüstünde çalışırken hafıza kullanımı tavan yapıyordu. Öyle ki bir pencereden diğerine geçerken saniyeleri sayıyordum. Dağınık sistemler dersi projesinin yetişmeyeceğini düşünmeye başlamıştım. Ta ki herşeye KDE‘de devam etmeyi deneyene kadar.

Pardus’ta staj için başvuranlar Pardus’un ne olduğunu bilmiyor mu?

bunlari-okudum.jpg

Az önce “Bunları okudum!” bölümünde “Pardus staj başvurularına dair..” başlıklı bir yazıyı paylaştım sizlerle. Eğer “Bunları okudum!” bölümünden neyi kastettiğimi anlamadıysanız açıklayayım; günlüğümün sağ sütununda böyle bir bölüm mevcut. Burada Google Reader ile takip ettiğim ve beğendiğim yazıları yayınlıyorum. Günlüğe girdiğinizde bu yazıların başlıklarını görebilirsiniz. Eğer sürekli takip etmek isterseniz ayrı bir sayfa mevcut. Google Reader ile üye olmak isterseniz bu bağlantıyı kullanabilirsiniz. İlginizi çekeceğinden eminim.

staj-2007-dosya-uzantilari.png

Asıl yazmak istediğim meseleye geleyim. “Pardus staj başvurularına dair..” yazısında başvuru için gönderilen özgeçmiş belgelerinin büyük çoğunluğunun Microsoft Office ile yazılmış olduğu açıklanıyor. Konu ile ilgili yapılan yorum ise çok başarılı:

Gelen başvuru e-postaları çoğunlukla CV, kaynak kod ve niyet mektubu gibi ek materyaller içeriyordu haliyle. Dosya formatlarına gösterilen itinanın belirleyiciliği başta bir tartışma konusu idi. Örneğin “doc” uzantılı başvuruları değerlendirmeye dahi almaksızın geri çevirmek bile gündeme gelmişti. Sonuçta Pardus’un savunduğu değerler ve amaçları hakkında bu kadar bilgisiz olan ve en ufak araştırma yapmadan başvuru yapan kişiler ile ilgili ön yargısız davranmak pek kolay olmayacaktı. Fakat neticede bu başvuruları da kabul etmeye ve böyle bir sebeple insanları elememizin doğru olmayacağına kanaat getirdik. Yine de tablo son derece hazin idi.

Sonuç olarak: Yukarıdaki yoruma katılıyorum.