Untitled - Tilkinin Dilinden
Transkript
Untitled - Tilkinin Dilinden
8 Pardus-Linux e-dergi Mart 2009 Sayı 6 İÇİNDEKİLER Editörden C ile Programlama II Gnu/Linux Dünyasından Haberler Gnu/Linux Antivirüs Yazılımları Torrent ve Ktorrent Python Modülü : optparse Pardus'ta Python 3.0 Happy Hacking! Firefox Eklentileri Qucs ile Doğru Akım Devre Analizi Oyun İnceleme: Ri-Li Web Site Tanıtımları Kitap Tanıtımlar Pardusum DOruk FİŞEK Röportajı 1 ..................................................... ..................................................... ..................................................... ..................................................... ..................................................... ..................................................... ..................................................... ..................................................... ..................................................... ..................................................... ..................................................... ..................................................... ..................................................... ..................................................... ..................................................... 1 2 6 10 15 18 20 23 25 28 32 35 36 37 38 Pardus-Linux e-dergi Mart 2009 Sayı 6 EDİTÖRDEN Nihad KARSLI [email protected] Sevgili özgür yazılım ve özgür düşünce dostları, Pardus-Linux.org 'un zor ve kısıtlı şartlar altında yayımladığı Pardus-eDergi'nin yeni bir sayısını da sizlerle buluşturmanın mutluluğu içerisindeyiz. Dostlar, bu dergi teknik servis ya da sizlere hiç bir yerde ulaşamayacağınız yeni bilgiler sunmuyor. Bu dergi, özgür yazılımın terini, kokusunu, sıcaklığını ve içtenliğini sunuyor. Bu dergi olabildiğince özgür, samimi ve bir o kadar da özverili olarak özgür yazılıma elinde olanı veriyor. Bu sayımızda Türkiye'nin en büyük özgür yazılım topluluğu yani Linux Kullanıcıları Derneği'nin yönetim kurulu başkanı ile röportaj yaptık. Pardus eDergi yaklaşımı ile çok verimli ve güzel sonuçlar çıktığını düşünüyorum. Yine bu sayımızda oldukça teknik ve derin bilgi gerektiren konular yanında, el kitabı gibi zaman zaman ihtiyaç duyabileceğiniz konularda anlaşılır şekilde bilgiler içeren yazılım tanıtımlarını sizlere sunuyoruz. Uzun bir duraksamadan sonra yeniden heyecanla dergimizi çıkarmaya başladığımız şu 2-3 aydır bir şeyin farkına vardık ki, bu zor ama zevkli iş yararlı oluyor. Her sayımızda yeni şeylerin üstesinden geliyoruz. Ve hep daha iyi şeyler veriyor ve vermek için enerji buluyoruz. Tabii ki bu enerjinin en büyük kaynağı okurlarımız. Rakam vermeyeceğim ancak her sayıda basılı yayınların üzerinde ve gittikce artan oranda okuyucumuzun olması bizi mutlu ediyor. Gelecek sayımızda ve içinde yine süprizlerle dolu özgür yazılım topluluğunun sıcak satırlarını bulacağınız dergimizde görüşmek üzere.. Özgür kalın. 2 Pardus-Linux e-dergi CC Mart 2009 Sayı 6 C ile PROGRAMLAMA II M. Talha İLHAN [email protected] Yazılım Geliştirme Dilinde Veri Tipleri Alfasayısal veri tipi katar, string şöyle tanımlanır: dizgi veya orijinal deyimiyle string'dir. Bir char <nesne ismi>[<nesne uzunluğu>] <;> Veri tipleri türlerine göre ve belirlenişlerine göre diye iki şekilde sınıflandırılırlar. Belirlenişlerine göre sınıflandırmada: 1-C'de zaten var olan veri tipleri. 2-Programcı tarafından oluşturulan veri tipleri. Şimdi örnek olarak şöyle açıklayabilirim. Stringler program başladığında bellekte yerleri ayrılacağından kaplayacağı uzunluğu biz belirliyoruz. Örneğin bir string tanımlaması aşağıdaki gibi olur: Türlerine göre sınıflandırma ise şöyledir: 1-Sayısal veri tipleri. 2-Alfasayısal veri tipi. Burada 20 karakter uzunluğunda isim adında bir dizgi açtık. Hatırlatma: Kullanılmayan karakterler NULL karakter olur. Evet genel olarak veri tiplerimiz bunlar ileride kullandıkça long, short ve double'dan da bahsedeceğiz. Yine de kısaca bahsedelim: Bir değişkeni tanımlarken değişken türünün başına long eklemek artırır short eklemek kısaltır. Her değişken türü ilk başta signed yani işaretli olur. Bu hem pozitif hem de negatif olabileceğini gösterir. Eğer başına unsigned eklenirse negatif olmaz ama pozitif sınır iki katına çıkar. Double ise bir nevi floatın genişletilmiş hali. char isim[20]; Bu yazıda sayısal veri tiplerinden bahsedeceğiz. Temel olarak C'de tamsayı ve kayan noktalı sayı (ondalıklı sayı,kesirli sayı gibi) olmak üzere 2'ye ayrılır. Daha sonra bunların başına eklenen short, long, unsigned gibi eklentilerle kapsadıkları alan azaltılır veya artırılır. Veri tiplerini tek tek işlemeden önce değişken nasıl tanımlanır onu da görelim: <tür> <nesne ismi> <;> Temel Giriş & Çıkış Fonksiyonları “printf ve scanf” printf Fonksiyonu Değişkenlerin içerisindeki değerler aslında bellekte ikili sistemde tutulmaktadır. Bir değişkenin içerisindeki değerin ekrana, kaçlık sistemde ve nasıl yazdırılacağı programcının isteğine bağlıdır. Değişkenlerin içerisindeki değerlerin ekrana yazdırılmasında printf fonksiyonu kullanılır. printf standart bir C fonksiyonudur. Örneğin: int a; bir tanımlamadır. int(integer)=>Tamsayı Bildiğiniz tamsayıdır. 1. Aralığı: -32.768 ve 32.767 dır. 2. Bellekte 2 byte yer kaplar. 3. Unix sistemlerde 4 byte yer kaplar. float=>Kayan aslında çok ayrıntılı özelliklere sahip bir fonksiyondur. Burada yalnızca temel özellikleri görsel bir biçimde açıklanacaktır. printf iki tırnak içerisindeki karakterleri ekrana yazar. Ancak iki tırnak içinde gördüğü % karakterlerini ekrana yazmaz. printf fonksiyonu % karakterlerini yanındaki karakter ile birlikte format karakteri olarak yorumlar. Format printf noktalı sayı Özellikleri: 1. Aralığı : -3.4x10^18 ile 3.4x10^18 2. Bellekte 4 byte yer kaplar. 3 Pardus-Linux e-dergi Mart 2009 Sayı 6 C ile PROGRAMLAMA II M. Talha İLHAN [email protected] karakterleri iki tırnaktan sonra yazılan parametrelerle birebir eşleştirilir. Örnek: int x, y; (okunabilirliği artırdığı için) daha çok tercih edilmektedir. Yukarıdaki tabloya göre unsigned int türünden bir sayıyı aşağıdaki şekillerde yazdırabiliriz : x = 125; unsigned int u; y = 200; printf("%u", u); printf("x = %d\ny = %d\n", x, y); printf("%o, u); printf("%x, u); fonksiyonunun yukarıdaki şekilde çağrılmasıyla içindeki değerler ekrana onluk sistemde yazdırılacaktır. printf x // u sayısını 10'luk sistemde yazar // u sayısını 8'lik sistemde yazar // u sayısını 16'lık sistemde yazar ve y değişkeni short bir sayıyı yazarken kullanıyoruz : Format karakterleri yerine eşlenen değişkenlerin içerisindeki değerler ekrana yazılır. Format karakterleri sayıların ekrana nasıl yazılacağını belirtmekte kullanılır. d o u ya da x karakterlerinden önce karakterini l karakterini short int sh; printf("%hd", sh); // 10'luk sistemde yazar unsigned short int unsh; printf("%hu", unsh); // 10'luk sistemde yazar format Anlamı karakteri printf("%ho", unsh); // 8'lik sistemde yazar %d int türünü desimal sistemde yazar. printf("%hx", unsh); %ld long türünü desimal sistemde yazar %x unsigned int türünü hexadecimal sistemde yazar. %X h // 16'lık sistemde yazar long bir sayıyı yazarken d o u ya da kullanıyoruz : unsigned int türünü hexadecimal sistemde yazar.(semboller büyük harfle) x karakterlerinden önce long int lo; %lx unsigned long türünü hexadecimal sistemde yazar. printf("%ld", lo); %u unsigned int türünü decimal sistemde yazar. unsigned long int unlo; %o unsigned int türünü oktal sistemde yazar. printf("%lu", unlo); // 10'luk sistemde yazar %f float ve double türlerini desimal sistemde yazar. printf("%lo", unlo); // 8'lik sistemde yazar %lf double türünü desimal sistemde yazar. printf("%lx", unlo); // 16'lık sistemde yazar %e gerçek sayıları üstel biçimde yazar. %c char veya int türünü karakter görüntüsü olarak yazdırır. %s string olarak yazdırır. %lf long double türünü desimal sistemde yazdırır. // 10'luk sistemde yazar Yukarıdaki bilgilerde unsigned bir tamsayıyı printf fonksiyonuyla 8'lik ya da 16'lık sistemde yazdırabileceğimizi gördük. Peki signed bir tamsayıyı 8'lik ya da 16'lık sistemde yazdıramaz mıyız? Yazdırırsak ne olur? Söz konusu signed tamsayı pozitif olduğu sürece bir sorun olmaz. Sayının işaret biti 0 olduğu için sayının nicel büyüklüğünü etkilemez. Yani doğru sayı ekrana yazar, ama sayı negatifse işaret biti 1 demektir. Bu durumda Yukarıdaki tabloda görüldüğü gibi double türü hem %f format karakteri hem de %lf format karakteri ile yazdırılabilmektedir. Ama %lf 4 Pardus-Linux e-dergi Mart 2009 Sayı 6 C ile PROGRAMLAMA II M. Talha İLHAN [email protected] ekrana yazılacak sayının işaret biti de nicel büyüklüğün bir parçası olarak değerlendirilerek yazılır. Yani yazılan değer doğru olmayacaktır. % karakterinin yanında önceden belirlenmiş bir format karakteri yoksa , % karakterinin yanındaki karakter ekrana yazılır. %%, (%) karakterini yaz anlamına gelir. scanf(“%d%d”, &x, &y); Fonksiyonu scanf fonksiyonu klavyeden her türlü bilginin girişine olanak tanıyan standart bir C fonksiyonudur. scanf fonksiyonu da printf fonksiyonu gibi aslında çok detaylı, geniş kullanım özellikleri olan bir fonksiyondur. Ancak biz bu noktada scanf fonksiyonunu yüzeysel bir şekilde tanıyacağız. 5 Yukarıdaki örnekte x ve y sayıları için desimal sistemde klavyeden giriş yapılmaktadır. Giriş arasına istenildiği kadar boşluk karakteri konulabilir. Yani ilk sayıyı girdikten sonra ikinci sayıyı SPACE, TAB ya da ENTER tuşuna bastıktan sonra girebilirsiniz. Örneğin: scanf 60 biçiminde bir giriş geçerli olacağı gibi; 5 60 biçiminde bir giriş de geçerlidir. scanf fonksiyonuna gönderilecek diğer argumanlar & operatörü ile kullanılmaktadır. & bir gösterici operatörüdür. Bu operatörü göstericiler konusunda öğreneceğiz. scanf fonksiyonunun yalnızca giriş için kullanılır, ekrana yazmak için printf fonksiyonun kullanmamız gerekir : fonksiyonunun da birinci parametresi bir stringdir. Ancak bu string klavyeden alınacak bilgilere ilişkin format karakterlerini içerir. Bu format karakterleri önceden belirlenmiştir ve % karakterinin yanında yer alırlar. scanf fonksiyonunun kullandığı format karakterlerinin printf fonksiyonunda kullanılanlar ile aynı olduğunu söyleyebiliriz. Yalnızca gerçek sayılara ilişkin format karakterlerinde önemli bir farklılık vardır. printf fonksiyonu %f formatı ile hem float hem de double türden verileri ekrana yazabilirken scanf fonksiyonu %f format karakterini yalnızca float türden veriler için kullanır. double tür için scanf fonksiyonunun kullandığı format karakterleri %lf şeklindedir. scanf fonksiyonunun format kısmında format karakterlerinden başka bir şey olmamalıdır. printf fonksiyonu çift tırnak içindeki format karakterleri dışındaki karakterleri ekrana yazıyordu, ancak scanf fonksiyonu format karakterleri dışında string içine yazılan karakterleri ekrana basmaz, bu karakterler tamamen başka anlama gelecektir. Bu nedenle fonksiyonun nasıl çalıştığını öğrenmeden bu bölgeye format karakterlerinden başka bir şey koymayınız. Buraya konulacak bir boşluk bile farklı anlama gelmektedir. scanf #include “stdio.h” int number; main() printf(“bir sayi giriniz : “); { scanf(“%d”, &number); char ad[20],soyad[20]; Evet biraz da örnek yapalım. int dgmyili; #include “stdio.h” printf(“Adinizi giriniz ”); main() scanf(“%s”,ad); { printf(“Soyadinizi giriniz ”); int sifre;sifre=2009; scanf(“%s”,soyad); printf(“Sifreniz %d'dir”,sifre); printf(“Dogum yilinizi giriniz ”); return 0; scanf(“%d”,&dgm); } printf(“\n”); printf(“Adiniz : %s\n”,ad); Burada basit bir program yaptık. printf(“Soyadiniz : %s\n”,soyad); printf(“Dogum yiliniz: %d\n”,dgm); return 0; Bir basit program: int x, y; 5 } Pardus-Linux e-dergi Mart 2009 Sayı 6 GNU/LINUX DÜNYASINDAN HABERLER LKD Seminerler Dizisi Google Earth 5 Duyuruldu Geçen yıl ilk kez yapılan ve 4 seminerden oluşan seminerler dizisinin ikincisi bu yıl Bilkent Üniversitesi Teknoloji Topluluğu ve LKD Seminer Çalışma Grubu'nun işbirliğiyle Bilkent Üniversitesi Mithat Çoruh ve C Blok Amfilerinde yapılacaktır. 10, 17, 24 ve 31 Mart tarihlerinde yapılacak olan seminerlerin konuları sırasıyla Meraklısına GNOME, Kısaca Django, Linux Nedir? XEN ve Sanallaştırma. Oturduğunuz yerden birçok yeri görmenize olanak sağlayan Google Earth yeni sürümünü duyurdu. Bu sürümde göze çarpan en önemli özellikler, bir bölgede zamanla meydana gelen değişimleri görebileceğiniz tarihsel yolculuk, National Geographic ve BBC gibi basın kuruluşlarının hazırladığı belgesellerle okyanuslara dalış ve Google Earth'de gezmiş olduğunuz yerleri kamera kaydı yaparmış gibi kaydedip, gezintinizi izleyebilme imkanı.. Google Earth'ü yüklemek için kendi sitesinden ikili paketi indirebileceğiniz gibi, eDergimizin 4. sayısında tanıttığımız GooPi adlı yazılımla Pisi paketini hazırlayabilir ve sağlıklı bir kurulum yapabilirsiniz. Wine 1.1.16 Duyuruldu Nova : Küba'dan Penguen Aromalı Püro! Bir önceki sayımızda yine güncelleme haberini verdiğimiz Wine'nın geliştiricileri boş durmamış ve hata kayıt sistemlerine[1] girilen onlarca hatayı düzeltmişler, Gecko motorunu güncellemişler, winegcc ile çapraz ortam derleme, MS Metin Framework, gelişmiş SANE tarayıcı, sayısal CD eDergimizin 5. sayısında haberini vermiş olduğumuz Rusya'nın Linux tabanlı işletim sistemi projesinden sonra Küba da Linux tabanlı bir işletim sistemi geliştireceğini duyurdu. Adı Nova olan işletim sistemini sayesinde, hükümetin bir Amerikan şirketi olan Microsoft'un ürünlerini kullanmasından ve Amerikan güvenlik ajanlarının Microsoft kodlarına erişim haklarından doğan güvenlik tehditinin ortadan kaldırılacağı, ayrıca Amerikan egemenliğine bir başka darbe vuracağı bildiriliyor. Bilgisayarların yüzde 20'sinde Linux kullanılan ülkede, bu oranın beş yıl içinde yüzde 50'ye çıkarılması hedefleniyor ve özgür yazılım hareketinin Küba insanının bağımsızlık ve egemenlik yolundaki idelojisiyle yakın olduğu bildiriliyor. Avidemux 2.4.4 Sürümüne Terfi Etti Geçen sayımızda yazarımız Serdar Kaçmaz tarafından tanıtılan ve bir film uygulaması gösterilen Avidemux'un yedi ay aradan sonra yeni sürümü olan 2.4.4 duyuruldu. Bir önceki sürüme göre MPEG, MP4, JPEG, PNG, BMP/DIB desteği iyileştirilen bu sürümde MOV dosyalarını açarken meydana gelen çökmelere neden olan hata onarılmış, QT arayüzü tam fonksiyonel hale getirilmiş ve komut satırında AAC dil desteği eklenmiş. Avidemux 2.4.4 'ün 2.4.x serisinin son sürümü olması ve gelecek sürümün 2.5 olması düşünülüyor. 6 Pardus-Linux e-dergi Mart 2009 Sayı 6 GNU/LINUX DÜNYASINDAN HABERLER KOffice 2.0 Beta 7 Duyuruldu Cepte Nvidia ve Google İşbirliği Bir önceki sürümden yaklaşık bir ay sonra çıkan KOffice 2.0 Beta 6'da, önceki sürüme göre birçok yazılım hatası onarılmış. Bu sürümle gelen önemli özelliklere bakacak olursak : KSpread 'da birleştirilmiş hücrelerin daha iyi çalışması, resimlerin dosyadan yüklenebilmesi ve saklanabilmesi, belgeler arasında yumuşak geçiş özelliği, Karbon için daha iyi SVG desteği ve Kirita üzerinde iyileştirmeler sağlandı. Nvidia, akıllı telefonlar(smartphone) için çıkarmayı düşündükleri Tigra adlı entegre devreleri için Linux uygulamaları geliştirmek amacıyla Google ile çalıştıklarını belirtti. Google'ın telefonlar için çıkarttığı açık kaynak kodlu Android'le Tegra'nın birlikte kullanılmasının, telefonlara gelişmiş grafik özellikleri kazandıracak olan Tigra'nın akıllı telefon üreticilerine uyumunu hızlandırması düşünülüyor. Akıllı telefonlar için bir nevi ekran kartı olan Tigra'nın, gelişmiş ekran özelliklerinin yanında daha uzun ömürlü pil ve her zaman açık İnternet erişimi sunması hedefleniyor. MIPS, Linux Vakfına Katıldı Kâr amacı gütmeden, Linux'un gelişimini hızlandırmak ve kullanımını yaygınlaştırmak amacıyla çalışan Linux Vakfı, mikro işlemci, ağ sistemleri gibi birçok pazarın liderlerinden olan MIPS Teknoloji'nin vakfın üyelerinden biri olduğunu açıkladı. Bu sayede MIPS'in çalışma alanında, müşteri tabanlı Linux kullanımının artması hedefleniyor. Kdevelop 4 Beta 1 Duyuruldu KDE'nin yazılım geliştirme araçlarından KDevelop 'un 4. sürümünün ilk betası duyuruldu. Beta sürüm olmasının verdiği kararsızlıklar ve hataları yok sayarsak, sahip olduğu önemli özellikler : gelişmiş C++ desteği, CMake ile bütünleşik çalışabilme, subversion, git ve QT GUI Designer bütünleşmesi. Asus'tan Android Tabalı EEE PC'ler Google tarafından cep telefonları için işletim sistemi olarak düşünülen açık kaynak kodlu Android için Asus mühendisleri göreve çağrıldı ve yıl sonuna kadar Android tabanlı EEE PC'ler yapılması hedeflendi. Mozilla'dan Web Tabanlı Geliştirme Aracı Mozilla Labs'ta geliştirilen Bispin adlı web tabanlı geliştirme aracıyla, ortak çalışmaya imkan sağlayan, komut satırı ile bütünleşik olabilen, hızlı ve her yerden erişilebilme imkanı sağlayan bir ortama sahip olabilirsiniz. JavaScript tabanlı olan Bispin'e http://bispin.mozilla.com adresinden ulaşabilirsiniz. 7 Pardus-Linux e-dergi Mart 2009 Sayı 6 GNU/LINUX DÜNYASINDAN HABERLER BASH 4.0 Çıktı! S3'ten OpenGL 3.0 ve VA-API Destekli GNU/Linux Sürücüsü Komut satırında sıkça kullandığımız GNU Bourne-Again Shell yani BASH yazılım geliştirme dilinin 4.0 sürümü duyuruldu. Bu sürümde 3.x sürümüne göre birkaç hatanın düzeltilmesinin yanında, diziler, programlanabilir tamamlanma fonksiyonu, söz dizimi gibi yenilikler içeriyor. POSIX uyumsuzluğunun bir kısmı onarılarak, komut çözümlemelerinin daha titiz bir şekilde gerçekleştirilmesi sağlandı. OpenGL 3.0 desteğiyle Aralık '08 'de GNU/Linux sürücüsünü duyuracağını söyleyen fakat üzerinden yaklaşık üç ay geçmesine rağmen duyurmayan S3 şirketi, nihayet GNU/Linux sürücüsünü Şubat '09 sonunda duyurdu. Üstelik duyurulan sürücü sadece OpenGL 3.0 desteği değil aynı zamanda H.264, VC-1 ve MPEG-2 çözümleme desteği de sunuyor. XFCE 4.6 Final Sürümü Çıktı İki yıldan fazla bir süredir geliştirilen Xfce 4.6'nın nihayet kararlı sürümü çıktı. Yeni sürüm, gelişmiş masaüstü yöneticisi ve daha fonksiyonel sağ tık menüsü, gelişmiş oturum yönetimi, çoklu ses sistemlerini destekleyen ve birden fazla ses kartını yönetme imkanı sunan yeniden yazılmış ses karıştırıcı, erişebilirlik seçenekleri, bilgisayar ayarlarını değiştirebilme, farklı çalışma alanları gibi özellikler sunuyor. Xfce 4.6 ile tura çıkmak isterseniz : http://www.xfce.org/about/tour Marvell'den 5 Wattlık Mini GNU/Linux Sunucu Marvell, yaklaşık adaptör boyutunda olan fakat içinde 1200 Mhz işlemci, 512 MB flash, 512 MB DRAM, Gigabit Ethernet ve USB 2.0 desteği bulunan ve sadece 5 Watt güç harcayan mini GNU/Linux sunucusunu duyurdu. Düşük ses, güç tüketimi ile gerek yerel ağdan gerekse İnternet üzerinden dosyalara erişim sağlayabilen sunucu, henüz Türkiye'de satışa çıkmasa da sadece 49$. Seminer: GNOME ve Özgür Yazılım Dünyası Seminer: Linux ve Özgür Yazılım İstanbul Kültür Üniversitesi Bilişim Topluluğu ve Bilişim Platformu tarafından 27 Şubat'ta, GNOME Vakfı Başkanı Behdad Esfahdod'un konuşmacı olarak katılımıyla “GNOME ve Özgür Yazılım Dünyası” konulu seminer verildi. Yeditepe Üniversitesi Bilgisayar Topluluğu ve Linux Kullanıcıları Derneği Seminer Çalışma Grubu işbirliğiyle, 26 Şubat'ta “Linux ve Özgür Yazılım” konulu seminer verildi. 8 Pardus-Linux e-dergi Mart 2009 Sayı 6 GNU/LINUX DÜNYASINDAN HABERLER Seminer: Linux'a Derinlemesine Dalış Amarok 2.0.2 – 'Only Time Will Tell' Duyuruldu Kadir Has Üniversitesi Bilişim Güvenliği Kulübü ve Linux Kullanıcıları Derneği Seminer Çalışma Grubu işbirliğiyle, 2 Mart Pazartesi Günü, eski Pardus Geliştiricilerinden Koray Löker'in konuşmacı olarak katıldığı “Linux'a Derinlemesine Dalış” konulu seminer, üniversitenin Fener Salonu'nda yapıldı. Amarok 2.0 serisisin yeni kararlı sürümü olan Only Time Will Tell yani Sadece Zaman Anlatacak kod adlı sürümü Amarok 2.0.2 duyuruldu. Çok önemli değişiklikler içermeyen yeni sürümde, birçok hata düzeltilmiş. Amarok geliştiricileri kendileri için öncelikli olanın Amarok 2.1 sürümü olduğunu fakat 2.0.1.1 sürümündeki hataların da düzeltildiğini bildiriyorlar. GNASH : Daha Özgür Bir GNU/Linux İçin PlayOnLinux 3.4 Çıktı Çoğu Pardus kullanıcısının kullandığı Adobe Flash Player yazılımının aksine tamamen özgür bir yazılım olan Gnash'ın 0.8.5 sürümü duyuruldu. Yeni sürümde birçok hata düzeltilmiş, GNOME ve KDE için oynatıcılar eklenmiş, YouTube tarzı sitelerden görüntü izleme kalitesi artırılmış ve ayarlar için yeni arayüz yazılmış. Özgür olan yazılımınız Firefox'u, özgür olmayan yazılım olan Adobe Flash Player'dan kurtarmak için Gnash'ı kaynak koddan derleyip kurabilirsiniz. Şu an depolarda 3.1.4 sürümü bulunan ve Windows oyunlarını GNU/Linux altında oynamaya aracı olan PlayOnLinux'un 3.4 numaralı sürümü duyuruldu. Yeni sürümde depolar otomatik güncellenecek ve her kurulum öncesi winecfg açıp profil düzenlemeye olanak sağlayacak. BMW de Açık Kaynak Dünyasında 3-8 Mart tarihlerinde Almanya'da yapılan CeBIT Bilişim Fuarının Açık Kaynak Oturumunda BMW, iletişim sistemleri ve genel yönetimin açık kaynak ile nasıl geliştirilebileceği konusunda yeni bir oluşum yaratacaklarını belirtti. GENIVI adlı oluşum, BMW, Delphi, General Motors, Intel, Peugot gibi dünyaca ünlü şirketler tarafından kuruldu ve arabalarda Linux tabalı sistemlerin çalıştırılması üzerine çalışmalar yapacak. 9 Pardus-Linux e-dergi LL Mart 2009 Sayı 6 GNU/LINUX ANTİVİRÜS YAZILIMLARI Çağatay ÇEBİ inux için ücretsiz Anti-Virus yazılımları Linux için güvenlik üzerine bir yazı yazmak gerçekten zor bir konu; ne yazacağınıza karar veremiyorsunuz. Windows kullananlar için belli başlı uyarılar vardır: Disk taraması yapın; disk birleştirici kullanın; gereksiz dosyaları kaldırın; aman virüs programınız olsun; spyware (casus yazılımlar) için anti-spyware yükleyin; açık portlarınızı kapatın; en güncel yamaları kurun; yeni bir virüs daha çıktı... bu liste uzayıp gider. Linux dünyasında kullanıcıya düşen işler çok daha basittir; sisteminizi güncel tuttuğunuz sürece elektrik kesintileri dışında bir sorun yaşamazsınız. Yıllarca Windows kullanıp, özel bir bakım gerektirmeyen Linux'a geçmek insana tuhaf geliyor; kendinizi boşlukta hissediyorsunuz. Kısa zamanda, virüs programı neden yok; niçin anti-spyware yazılımlar bulunmuyor; ya trojan girerse gibi sorulara yanıt arıyorsunuz. Bu yazımız, bu soruları soran arkadaşlara yönelik olacak. http://cagataycebi.com/ (Administrator) ve Konuklar (Guest)... Elbette güvenlik politikalarını değiştirip ara kullanıcı grupları yaratabilirsiniz, fakat kullanıcıları, yönetici ve konuk grubuna indirgemeyi daha doğru buluyorum. Konuk kullanıcıların, sistem genelinde değişiklik yapma hakkı yoktur; üstelik o kadar yetkisizlerdir ki, zaman zaman çeşitli programları bile açamazlar. (Bayağı bir zaman önce, kardeşime bilgisayarımda konuk (Guest) hesabı açmıştım. Kısa sürede hiçbir programı doğru dürüst çalıştıramadığını söyleyerek, isyan bayrağını çekmişti.) Oldukça kıt yetkileri olduğundan, bilgisayarını evinde kullanan hiç kimse, kendisini "Konuk Kullanıcı" olarak kısıtlamaz. Sistem genelinde rahatça çalışmak için hemen hemen herkes, Yönetici olmayı tercih eder. Fakat bu büyük sorunları da beraberinde getirir. Yapacağınız ufak hatalar bile, bütün sisteme zarar verir. Bir gün MSN Messenger programında tanıdığınız bir arkadaşınız size bir adres gönderiyor. Nasılsa bir tanıdık diyerek fazla önemsemiyor ve adrese tıklıyorsunuz. Ancak bilmediğiniz şey; arkadaşınızın bilgisayarında bir virüs olduğu ve kendi bilgisi dışında MSN Messenger üzerinden sağa sola bu mesajın yollandığı... Eğer bu durumda, iyi bir virüs tarayıcınız varsa, adres indows'ta Durum açıldığında virüsü bloklar ve bir sorun yaşamazsınız. Peki ya virüs programınız yoksa? Linux'un Windows'tan farklı bir kullanıcı yapısı İşte o zaman hayli dramatik bir senaryoyla vardır. Windows işletim sisteminde temel olarak karşılaşıyoruz. iki grup kullanıcı bulunur: Yöneticiler W W 10 İyi yazılmış bir virüs, trojan ya da spyware, kendi kopyalarını, Windows klasörü altındaki System, System32, Temp vb. klasörlere atar. Bilgisayarı bir yönetici olarak kullandığınız için bunu yapmasında en ufak bir sorun çıkmayacaktır. Çünkü ilgili çalıştırılabilir dosyaya tıkladığınızda, ona her türlü değişiklik yapma hakkını zaten vermişsinizdir. Daha sonra sistem başlangıcına kendisini koyar ve bilgisayar her başladığında çalışacak hâle gelir. Hatta duruma göre kendisini bir servis olarak gösterebilir. Virüs arka planda çalıştığı sürece, daha çok dosya etkilenecek ve bilgisayarınızın her yerine bulaşacaktır. Sonuç tam bir kabus; bütün bilgisayarınızın virüsten tamamen etkilendiği bir durum! LL inux'ta Virüsler, Casus Yazılımlar ve Truva Atları Yazımıza Linux diye başladık, ama uzun uzun Windows'u anlattık. Aradaki bariz çalışma farkınızı görebilmek için bu gerekliydi. Yeni çıkan Windows Vista, yönetim yetkilerini biraz iyileştirmiş olsa bile, hâlen yeterli değil. Şimdi Linux'a dönelim... Linux kullanırken, çok nadir yönetici olmanız gerekir. Windows'un aksine bilgisayarınızı, yönetici olarak kullanmanız asla önerilmez. Eğer bir program yükleyecekseniz, güncelleme yapacaksanız ya da sistemin genelini etkileyecek benzer bir konu varsa, geçici olarak ya da sadece bir komut çalıştıracak kadar yönetici (yani root) Pardus-Linux e-dergi Mart 2009 Sayı 6 GNU/LINUX ANTİVİRÜS YAZILIMLARI Çağatay ÇEBİ http://cagataycebi.com/ olursunuz. Üstelik bunu yapmak için sisteme yeniden giriş (login) yapmanız gerekmez; bir konsol açıp, root olmak istediğinizi belirtir, ardından şifresini girersiniz; voila! artık yönetici olmuşsunuzdur. Peki bu neden çok önemli bir avantaj? Linux kullanıcıları, kendi ev (home) klasörleri içerisinde, dilediklerini yapmakta özgürdür. Fakat yapabilecekleri, sadece bu kadardır; sistemin genelini etkileyemezler. Senaryomuza dönelim, arkadaşınızdan bir adres alıyorsunuz ve merak içinde tıklıyorsunuz, üstelik virüs programınız da yok. Sizce n'olur? Hemen söyleyeyim; hiçbir şey! Tıkladığınız adreste bulunan virüs, %99.9 Windows için yazılmıştır ve indirseniz dahi size bir zararı olmaz. 2003 yılında yayımlanan bir makaleye göre Linux'ta sadece 40 civarında virüs bulunuyormuş. Elbette ki bu rakam günümüzde oldukça artmış durumda; F-Prot 1900 kadar Unix/Linux virüsü tespit edebildiğini belirtiyor. Artık zamanında verilen rakamlar mı yanlıştı, yoksa F-Prot bütün Unix tabanlı işletim sistemlerine ait toplam virüs sayısını mı veriyor bilmiyorum. Fakat yüzbinlerle ifade edilen Windows ve MS-DOS virüslerine oranla dikkate alınmayacak kadar ufak sayılardan bahsediyoruz. Üstelik virüsün, Windows'taki kadar rahat bir biçimde hemen bulaşamayacağını da hesaba katmak gerekir. FProt'un işletim sistemlerine göre tespit edebildiği virüs rakamları aşağıda bulunuyor: Windows kullansaydınız, o an bellekte olup, çalışan bütün programlar virüsten etkilenebilir ve virüs hızla yayılabilirdi. Ancak Linux'ta bu olmayacaktır. Çünkü sistem genelinde olan hiçbir şeyi etkileme şansınız yoktur. Başınıza gelebilecek en kötü şey, ev (home) klasörü içindeki bazı dosyalarınızın etkilenmesidir. Üstelik bunun olma olasılığı gerçekten çok çok çok küçük. Linux tasarımı gereği, virüslerin, casus yazılımların, truva atlarının (trojan) büyük riskler taşımadığı bir ortam. Bu saydığımız üçlü arasında en büyük problem yaratabilecekler, virüsler olmasına rağmen, tehditleri oldukça küçük kalıyor. Yine de kendinizi garantiye almak istiyorsanız, merak etmeyin Linux için de antivirüs programları bulunuyor. Üstelik ücretsiz! Bir Internet sitesi zararları bir içeriği sahipse, çoğu durumda Firefox, -Internet Explorer'ın aksine- kendiliğinden yüklenmeye çalışan yazılımları engelleyecektir. Diyelim ki Firefox engellemeyi başaramadı ve virüs Linux için özel olarak hazırlanmıştı... Peki şimdi n'olacak? Yine cevap verelim: siz çalıştırana kadar bir şey olmaz! Windows'un aksine, Linux'ta programlar siz başlatana kadar çalışmamaktadır. Programı başlatıp, aktive edene kadar, virüsün size zarar verme şansı yoktur. Fakat olabilecek en olumsuz şeyleri düşünüyoruz ve virüslü programı çalıştırdığınızı varsayalım... 11 FF -Prot 1993 yılından beri faaliyet gösteren F-Prot ismi tanıdık gelecektir. Oldukça eskiye dayanan virüs tarama araçlarını muhtemelen tecrübe etmişsinizdir. Windows işletim sisteminde parayla satılan F-Prot, ev kullanıcısı olmanız kaydıyla DOS, BSD, Solaris ve Linux için ücretsiz olarak sunuluyor. Ücretsiz sunulan bu versiyonlara, F-Prot sitesinden ulaşabilirsiniz. Pardus-Linux e-dergi Mart 2009 Sayı 6 GNU/LINUX ANTİVİRÜS YAZILIMLARI Çağatay ÇEBİ F-Prot kurulumu ve kullanımı oldukça basit bir anti-virüs programı. Sitesinden, Linux dağıtımınıza uygun RPM ya da DEB paketini çekip kuruyorsunuz. Eğer bunları destekleyen bir paket yönetim sisteminiz yoksa, programın sıkıştırılmış hâlini (fp-Linux-i686-ws.tar.gz isimli bir dosya) indirip, kullanabilirsiniz; ben böyle yapmayı tercih ettim. http://cagataycebi.com/ yükleme aşamasının başlaması ve sizden alacağı olarak komutta verdiğim parametreler, daha iyi ve cevaplar doğrultusunda, F-Prot'u sisteminize geniş bir tarama yapmak için. kurması gerekiyor. Eğer Internet bağlantınız varsa, virüs tanım dosyası da güncellenecektir. Yukarıda vermiş olduğum komutları kullanırsanız, bir problem çıkacağını sanmıyorum. F-Prot komut arabirimi üzerinden çalıştırılıyor. Arka plânda sürekli çalışan bir virüs kalkanı Terminali açın ve fp-Linux-i686-ws.tar.gz isimli şeklinde değil. (Zaten buna da ne kadar gerek var, dosyayı kaydettiğiniz yere terminal üzerinden tartışılır.) Terminalde "man fpscan" yazarak, programın kullanım detaylarına erişebilirsiniz. gelin. Ardından şu komutu yazın: Ancak okumayı pek sevmiyor ve bilgisayarınızı baştan aşağı detaylı bir şekilde taramak tar -xvf fp-Linux-i686-ws.tar.gz istiyorsanız, şu komutu girmenizi öneririm: Yukarıda verilen komutla, sıkıştırılmış fp-Linuxi686-ws.tar.gz dosyasının içeriğini f-prot adındaki klasöre çıkarttınız. Şimdi bu klasörü herkesin değişiklik yapamayacağı /opt klasörünün altına atalım: sudo mv f-prot/ /opt/ Artık sıra yükleme aşamasına geliyor. Yükleme aşamasında birkaç soru soruluyor. Soruların hepsinde default (yani varsayılan değer) uygun. Bu yüzden Enter'a basarak geçebilirsiniz. Yüklemeyi başlatmak için aşağıdaki komutu giriyoruz: sudo perl install-f-prot.pl Komutu girdiğiniz takdirde sorunsuz bir şekilde F-Prot 850.000 (yazıyla sekizyüzellibin) dolayında virüs tarıyor. Ancak bu sayı, bütün işletim sistemleri için toplam bir değer. Yani Linux versiyonu için ayrı, Windows için ayrı bir değerden bahsetmiyoruz. Bunun iyi yönü, Windows işletim sisteminize virüs bulaşmışsa, Windows'u hiç açmadan Linux üzerinden tarama sudo fpscan --adware -f --applications --disinfect / yapabilmeniz. Etkinliği, geniş virüs kütüphanesi, hızı ve kolay kullanımı açısından en iyi tercih Burada / işareti yerine taramak istediğiniz klasör olduğunu söyleyebilirim. adını da girebilirsiniz. Komutu root olarak ntiVir vermemizin espirisi, her klasöre ve dosyaya yetki sorunu olmadan erişebilmek için. Yetkiniz olan klasör ve dosyaları taramak için root olmanız gerekmez. Örneğin aşağıdaki komutu yazarak AntiVir, Windows kullanırken masaüstü ve alt klasörlerini -root olmadan- tercih ettiğim tek anti-virüs programıdır. Hafızada az yer tarayabilirsiniz: kaplar, hızlıdır, geniş bir virüs tanıma desteği vardır ve en fpscan --adware -f --applications --disinfect ~ güzeli ücretsizdir. Firmanın Komutlar uzun gelmiş olabilir. Aslında bu kadar Linux versiyonunu çıkarttığını öğrendiğimde, uzun bir komut vermenize de gerek yok. Basit bir büyük bir merakla indirdim. "fpscan klasor_adi" istediğiniz klasörü, alt klasör ve dosyalarıyla birlikte tarayacaktır. Fakat ekstra A A 12 Pardus-Linux e-dergi Mart 2009 Sayı 6 GNU/LINUX ANTİVİRÜS YAZILIMLARI Çağatay ÇEBİ AntiVir'in Linux versiyonu ücretsiz olarak yine web-sitesinden indiriliyor. Programın kurulumu, FProt kadar basit değil ve kurulum dökümanını adım adım takip etmeniz lâzım. Bilgisayar bilgisi temel düzeyde kalanlar biraz zorlanacaktır. Programın kullanımıysa, kurulumuna oranla basit. Java programlama dilinde hazırlandığı belli olan bir arayüzle programı yönetiyoruz ve konsola ihtiyaç duyulmuyor. Üstelik hazırlanan arayüz, AntiVir Windows'un tıpatıp aynısı olmuş. Programın virüs tarama hızı iyi olmasına rağmen; arayüzün Java ile yazılmış olması, düşük belleğe sahip bilgisayarda kısmen yavaşlığa sebep olacaktır. Keşke swing arayüzünü kullanıp, daha hızlı bir arayüz sağlasalardı... Elbette arayüzden vazgeçip, programı konsol üzerinden de kullanabilirsiniz. Sadede gelirsek, AntiVir için Windows'ta edindiğim memnuniyet, ne yazık ki Linux ortamında devam etmiyor. Güçlü bilgisayar ihtiyacı ve sıkıntılı kurulum süreci programın negatif noktaları. A A va st Ev kullanıcıları için ücretsiz sunulan anti-virüs yazılımlarından birisi de Avast'tır. Windows'ta AntiVir kullanmaya başlayana kadar, uzun bir müddet avast kullanmıştım. Virüs tanıma ve engelleme başarısı, AntiVir'in arkasından geliyordu. Ayrıca hafızayı biraz fazla meşgul etmekteydi. Bu saydığım olumsuzluklar sizi http://cagataycebi.com/ yanıltmasın. Eğer AntiVir ile tanışmasaydım, muhtemelen Windows için tek tercihim avast olmaya devam ederdi. İyinin iyisini tercih ederek, avast'tan zamanla uzaklaştım. Linux ortamındaysa, sonuçlar biraz daha farklı. Avast birçok platformda, ev kullanıcılarına ücretsiz olarak sunuluyor. F-Prot'a benzer şekilde uygun dağıtım paketini (RPM, DEB veya sıkıştırılmış dosya) programın Internet sitesinden (http://www.avast.com) çekiyoruz. Kurulum işlemi, AntiVir'e nazaran oldukça zahmetsiz; bir iki tıklamayla programı Dosya tarama hızına gelirsek, işte o an çok değişik bir kurabiliyorsunuz. Kullanımsa, konsoldan ve sonuç bizi bekliyor. Avast ne yazık ki rakipleri arayüzle olmak üzere iki şekilde yapılabiliyor. arkasından nal topluyor. F-Prot ile 1 saat 20 dakika olan tarama süresi, avast'ta 3 saatin üzerine çıkıyor. Program arayüzü, GTK kullanılarak hazırlanmış Keza Avast, AntiVir'den de yavaş çalışmakta... Ancak ve bu nedenle hız sorunu yaşamıyorsunuz. bir anda sabit diskinizde bulunan 700 bin dosyayı Yazılım güncellemesinden, disk taramasına kadar taramaya niyetiniz yoksa, ya da sadece geceleri her şeyi yapabileceğiniz basit bir ekran karşınıza çalıştıracaksanız, bu yavaşlık sizi o kadar da rahatsız çıkıyor. Program arayüzü gayet sade ve neyin ne etmeyebilir. 1-2 GB'lik klasörleri tatmin edici bir hızda olduğu belli. Belki bu sadelik, göz zevkinizi kontrol edebiliyor. bozacak derecede çirkin gelebilir; fakat kullanışlı... Konsol kullanmak isteyenler, "avast /" lamAV yazarak sabit disklerinde olan her şeyi tarayabilirler. Slash işareti (/) yerine klasör ismi vererek, sadece orada tarama yapabilirsiniz. Clamav, Unix tabanlı işletim sistemleri için yazılmış CC oldukça ünlü bir anti-virüs programıdır. GPL (Genel Kamu Lisansı) ile sunulmakta, doğal olarak açık 13 Pardus-Linux e-dergi Mart 2009 Sayı 6 GNU/LINUX ANTİVİRÜS YAZILIMLARI Çağatay ÇEBİ kaynak kodlu. Hemen hemen bütün popüler Linux dağıtımlarına (Debian, Fedora, Slackware, Mandriva, Gentoo, vs...) desteği var. Ayrıca FreeBSD, OpenBSD, Solaris ve Mac OS X gibi diğer Unix tabanlı işletim sistemlerinde de çalışıyor. Son dönemde Unix tabanlı işletim sistemlerinden, Windows dünyasına da taşınmış. Artık Windows kullanıcıları da ClamAV'ı kullanabiliyor. ClamAV normalde, konsol tabanlı, komutla çalıştırılan bir virüs programı. Proje websitesinden (http://www.clamav.net) kendi Linux dağıtımınıza uygun kurulum dosyalarını bulup indirebilirsiniz. Ancak ben ClamAV'ı kurmak yerine, KlamAV'ı (http://klamav.sourceforge.net) kullanmanızı tavsiye ederim. http://cagataycebi.com/ Konsoldan komut temelli çalışan birçok Linux programına, kullanım kolaylığı olsun diye arayüz hazırlanır. Programın çalışmasında değişen şey olmaz ama artık komut girmek yerine bir ön yüzle (front-end) arka plandaki yazılımı kullanırsınız. KlamAV aynen böyle bir çalışma... ClamAV antivirüs programının daha rahat kullanılabilmesi için, bir arayüz yazılmış ve ortaya KlamAV çıkmış. Terminalle, komut satırıyla, uğraşmak istemeyenler için iyi bir çözüm. Virüsler, truva atları, casus yazılımlar, Linux dünyası için öncelikli tehdit değildir. Virüsten zarar görme olasılığınız, elektrik kesintisinden zarar görme olasılığınızla hemen hemen aynı. Çünkü Linux tasarımı gereği virüslerin yayılmasına set çekmektedir. Sistemi sürekli olarak yönetici (root) olarak kullanmadığınız sürece, aksi bir durum yaşanmaz. Ancak mutlaka bir anti-virüs programı kullanmak isterseniz, bunun hızlı çalışan ve az sistem kaynağı tüketen bir yazılım olması gerekir. Bu faktörleri göz önüne aldığımızda, tercih hakkımı F-Prot'tan yana kullanıyorum. Güçlü sistemlere sahip kişiler, kullanım rahatlığı bakımından, AntiVir ya da Avast'ı da seçebilir. Ancak kendinizi güvende hissetmek için, bilgisayarınızın hızından fazla feragat etmemenizi tavsiye ederim. Elbette bu tavsiyem, Linux kullanıcılarına yönelikti; Windows kullanıyorsanız, bu kadar rahat davranmamalısınız. Çağatay ÇEBİ [email protected] Eğer KlamAV'ı kurarsanız, kullanımı kolay bir virüs programınız oluyor. Anlattığımız bütün virüs programlarından daha başarılı bir arayüz sunmuşlar. Virüs programını güncellemeden tutun, tarama işlemlerine kadar her şey kolay ve anlaşılır bir yapıda sunuluyor. Üstelik arka plânda sürekli çalışan bir virüs kalkanı kullanabiliyorsunuz. Ancak program ne yazık ki sıkıştırılmış dosyaların taramasını çok ama çok yavaş yapıyor. Bu zayıf bir nokta. Seçim yapalım... 14 Pardus-Linux e-dergi Mart 2009 Sayı 6 TORRENT ve KTORRENT Ümit KAŞ [email protected] Torrent Nedir? Kelime olarak sel anlamına gelmektedir. Yaratıcının(Bram Cohen) bu ismi vermesindeki amacı, dosya paylaşımlarının selin akışındaki düzensizlik benzeri bir yapı göstermesidir. Torrent bir p2p (Peer To Peer/ Kaynaktan Kaynağa) uygulamasıdır. Torrent ilk kez, Linux sistemler için düşünülmüştür. Linux yazılımlarının boyutlarının büyük olmasından ötürü, aktarım esnasında oluşan hatalara çözüm olarak doğmuş yeni bir uygulamadır. İnternet'ten normal yolla dosya indirirken, bilgisayarımız tarafından istediğimiz dosyanın saklı tutulduğu sunucu bilgisayara bir istek yollanır. Eğer isteğin gönderildiği tarihte dosya mevcutsa ve isteğin gönderildiği bilgisayarın erişim izni (Bazı sunucularda bazı bilgisayarlara erişim izninde kısıtlamalar söz konusu olabilir. Örn. Rapidshare Basic Üyelik Sistemi) varsa o bilgisayar ilgili dosyayı paylaşır. Torrentte ise bir kontrol sunucusu ve paylaşılacak dosyanın bulunduğu kullanıcı bilgisayarları mevcuttur. Dosya aktarımı, kontrol sunucusunun kontrolünde, kullanıcı bilgisayarları arasında olur. Torrenti kullanabilmek için indirilmek istenen dosyanın özelliklerini, aktarım protokolünü (Torrent Bittorrent aktarım protokolünü kullanır), indirmek isteyen kullanıcıya ait bilgilerin(Üyelik sistemine dahil torrent sitelerinde uygulanmakta) özelliklerinin bulunduğu “.torrent “ uzantılı torrent dosyası indirilir. Bu dosyaların paylaşımı,torrent akış hızı ile ilgili bilgiler (dosyanın bulunduğu bilgisayar sayısı, yükleme hızları bilgisi (Torrentte dosyanın bulunduğu bilgisayarın yükleme hızı alınarak eşik değer kuralı uygulanır, yani dosyayı indirmek isteyen kişinin bilgisayar hızı 10Mb iken dosyanın bulunduğu bilgisayarların toplam yükleme hızı 1Mb ise ve yalnızca siz indirme yapıyorsanız (başka bir bilgisayar da aynı dosyayı indirmek istiyorsa aranızda bu hız paylaşılır) sizin azami indirme hızınız 1Mb olacaktır. )) ve dosya akışının yapıldığı sunucuya sahip olan torrent siteleri mevcuttur. Bu sitelerin bir kısmında üyelik zorunluluğu (Referans ile Üye Alımı, Bağış ile Üye Alımı şeklinde üyelik kabulü ile) bulunurken genel torrent sitelerinde ise torrent dosyalarını siteye üye olmadan indirebilirsiniz. İndirmiş olduğumuz torrent dosyası Bittorrent protokolünü destekleyen 15 araçlar tarafından kullanılarak açılır (Bu araçlara örnek olarak; utorrent, Azureus, BitCommet, BitTorrent (Windows’ta sık kullanılan) Ktorrent, Azureus(Linuxta sık kullanılan)). Bir süre sonra kontrol sunucu ile bağlantı sağlanınca dosyamızın mevcut olduğu bilgisayar görünmeye başlayacaktır. Torrent ile dosya aktarımında dosyalar ufak parçalara bölünerek aktarılır. (Elimizdeki bir dosyayı parçalara bölüp göndermek (torrent teknolojisi), tek parça halinde göndermek (bilinen metot)). Sizin bilgisayarınızda dosyaların parçaları yüklendikçe siz de onları sunmaya başlayacaksınız. (Dosya aktarımı eski metottaki gibi tek yönlü değil,çift yönlü(sizden de başka biri yükleyecektir). Sitelerde üyelere bununla ilgili kısıtlamalar getirilmiş durumdadır (Ratio sınırı (Ratio=Yüklenen Dosya Miktarı/İndirilen Dosya Miktarı) belirli sayının altına düşünce uyarı alıyorsunuz ertesinde siteden uzaklaştırlıyorsunuz)). Burada Pardus ile birlikte gelen Ktorrent programı üzerinden torrent dosyasının Ktorrent’e eklenmesi ve port açılması (Torrent uygulamasında modemden port açılmadığı taktirde bu uygulamayı tam verimle kullanamayız. Oldukça düşük hızda indirme yapılacaktır) işlemi anlatılacaktır. Ufak bir hatırlatma: Torrentten indirilen dosyaların telif hakları ile ilgili sorumluluklar tamamen indiren kişiye aittir. P2p uygulaması için öncelikle bir kural adı ve bu kuralın uygulanacağı port seçilir. Bu işlem hem TCP hem de UDP protokolleri için ayrı ayrı uygulanır (Şekil 1-2). Bu kuralların uygulanması için uygulama listesine eklenir ve ayarlar kaydedilir (Şekil 3-4). Ayarlarınız aktif olması için modemin yeniden başlatılması gerekir (Şekil 5). Açılan potun torrent aracına uygulanması gerekir (Şekil 6-7). Ktorrent programının Dosya menüsünden aç öğesi Pardus-Linux e-dergi Mart 2009 Sayı 6 TORRENT ve KTORRENT Ümit KAŞ [email protected] tıklanarak ilgili dosya seçilerek indirme işlemine başlanır (Şekil 8-9). Şekil2:Torrent için UDP Protokol Ayarı Şekil1:Torrent için TCP Protokol Ayarı Şekil 3:Oluşturulan Kuralların Uygulama Listesine Eklenmesi 16 Pardus-Linux e-dergi Mart 2009 Sayı 6 TORRENT ve KTORRENT Ümit KAŞ [email protected] Şekil 4: Uygulama Listesine Eklenen Kuralların Kaydedilmesi Şekil 6:Açılan Portun Ktorrent’de kullanımı Şekil 5: Ayarların aktif olması için modemin yeniden başlatılması Şekil 7:Açılan Portun Ktorrent’de kullanımı Şekil 8: İndirim Esnasındaki bir dosya Şekil 9: Gönderim Esnasındaki bir dosya 17 Pardus-Linux e-dergi Mart 2009 Sayı 6 PARDUS'TA PYTHON 3.0 Erdem Artan [email protected] Pardus'ta Python 3.0 yüklemenizi mahvedeceği için tavsiye edilmiyor. Pardus'un kendine has yazılımlarının yazıldığı yazılım geliştirme dili Python 3.0 'ı konsoldan çalıştırmak istersek, kullanacağımız komut Python'un 3.x serisinin duyurulduğunu ve yeni sürüm ile beraber yazılım olacak : hazırlama yolunda Python 2.x serisiyle uyumluluğu olmayan bazı guDa@baDibere Python-3.0.1 $ python3.0 değişiklikleri getirdiğini birçoğumuz duymuştur. python3.0 Python 3.0.1 (r301:69556, Feb 15 2009, 13:22:08) Python 3.0'ı yüklemek için öncelikle resmi sitesinden[1] son sürümü indiriyoruz. Bu yazıda, yazı hazırlandığı sıradaki son sürümü olan 3.0.1 üzerinden işlem yapacağız. Kurulum işlemi oldukça aslında oldukça basit. Çoğu kaynak koddan kurma işlemlerinde olduğu gibi : ./configure --prefix=/usr make sudo make install komutlarını kullanacağız. ./configure 'ye --prefix=/usr parametresinin eklenmesinin nedeni, öntanımlı olarak /usr/local dizini olarak ayarlanmış kurulum dizinini /usr dizini olarak değiştirme isteğimizdir. Bu komutları verdikten sonra korkmayın çünkü sisteminizle ilgili bir sorun çıkma olasılığı oldukça düşük. Çünkü mevcut olan Python 2.x serisine bir müdahalede bulunulmuyor. Bunu make install komutundan sonra verdiği aşağıdaki çıktıdan öğreniyoruz : [GCC 4.3.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> Eğer çalıştırılabilir bir betik hazırlıyorsak, dosyamızın başına Python 2.x serisinde yazdığımız #! /usr/bin/env python komutu Python3.0.x serisinde #!/usr/bin/env python3.0 olarak yazılmalıdır. Karakter seti ayarlarında ise 2.x serisine göre herhangi bir değişiklik içermiyor. Python 3.x serisinin 2.x serisine göre getirdiği değişiklikleri inceleyecek olursak, elbette ilk göze çarpan değişiklik print komutunun artık print() fonksiyonu olarak kullanılacak olması. Bu fonksiyonu inceleyecek olursak, genel yazım kuralı şu şekildedir : print(yazilacak, sep=AYRAC, end=SONA_EK, file=YAZILACAK_DOSYA) Ekrana Yazı Yazdırmak : print(“Pardus-Linux.org”) * Note: not installed as 'python'. Dosyaya Yazı Eklemek print(“Eklenecek Yazi”,file=dosya) * Use 'make fullinstall' to install as 'python'. Kelimelere Ayraç Ekleme: print(“Pardus”,”Kullanicilari”,”Dernegi”,sep=”&”) * However, 'make fullinstall' is discouraged, Sona Sabit Yazı Ekleme : print(“Pardus”,end=”Pardus-Linux.org”) * as it will clobber your Python 2.x installation. Yani, yükleme işlemimiz sonunda Python 3.0 sistemimizde birçok yazılımın kullandığı python olarak yüklenmemiştir. Eğer python olarak yüklemek isterseniz make fullinstall komutunu verin fakat bu yükleme Python 2.x : İkinci önemli değişiklik ise raw_input() ve input() fonksiyonlarında. Bilindiği üzere bu iki fonksiyondan birincisi kullanıcıdan string tipinde veri, ikincisi de sayı tipinde veri beklerdi ve input() fonksiyonuna sayı verilmezse input() fonksiyonuna bağlı bir hata oluşurdu. Python 3.x ile birlikte raw_input() 18 Pardus-Linux e-dergi Mart 2009 Sayı 6 PARDUS'TA PYTHON 3.0 Erdem Artan fonksiyonu kaldırıldı ve her iki işlem için input() fonksiyonu atandı. Yalnız burada belirtilmesi gereken önemli bir nokta mevcut. input() fonksiyonu artık sayı da girilse girdiyi string olarak algılıyor. Eğer sayı olarak algılamasını istersek eval(input()) şeklinde kullanmamız gerekiyor: >>>input(“Veri Giriniz » “) >>>eval(input(“Bir Sayi Giriniz » “) String işlemleri de birtakım değişiklikler içeriyor. Artık format() fonksiyonuna sahip olan string kütüphanesi ile %s kullanmak yerine {} kullanabileceğiz. Örnek vermek gerekirse : [email protected] 3.x ile yazarak değiştirmek ya da Python geliştiricilerinin bizler için yaptığı güzellik olan 2to3 adlı çevirici yazılımı kullanmak. Bu yazılımı kullanmadan önce Python 3.x 'e uyarlamayı düşündüğünüz yazılımınızın Python 2.6 ile tamamen sağlıklı çalışıyor olması şiddetle tavsiye ediliyor. Yazılım Python 3.x ile birlikte geliyor ve konsoldan 2to3 komutu ile çağrılıyor. Kullanımına gelince : # -*- coding : utf-8 -*isim = raw_input(“İsminiz » “) print “Merhaba %s, Pardus-eDergi.org” 'Merhaba Pardus, merhaba PKD' yukarıdaki örneğin, ornek.py adıyla kaydedildiğini düşünelim. Bu örneği Python 3.x ile yazılmış hale döndürmek için konsolu açıp, >>> "{kim} {neye} bak.".format(kim="Ali",neye="esege") 2to3 ornek.py >>> "Merhaba {0}, merhaba {1}".format("Pardus","PKD") 'Ubuntu, openSUSE ve Pardus toplandik' komutunu yazarsak, konsolda iki dosyada gerçekleştirilmesi gereken değişiklikleri içeren bir metin bize merhaba diyecektir. Doğrudan eski dosyanın üzerine yazması ve eski dosyayı yedeklemesi için >>> "{{0}}".format("Gorunmez") 2to3 -w ornek.py 'Ali esege bak.' >>> "{0}, {1} ve {ben}".format("Ubuntu","openSUSE",ben="Pardus") '{0}' Sadece önemli değişiklikleri aktardığımız Python 3.x için tabii ki tüm değişiklikler bu kadarla sınırlı değil. Bazı kütüphane isimleri, listeler, sözlükler, sınıflar da Python 3.x ile söz dizimi ya da kullanım şekli değişen türler arasında. yazmamız yeterli olacaktır. Bu işlem sonrasında dosyamıza baktığımızda önceki satırların # -*- coding : utf-8 -*isim = input('İsminiz » ') print('Merhaba %s, Pardus-eDergi.org'%isim) Bu değişiklikleri Python 3.x için ısınmaya başladığımız sıralarda forumumuzda, wiki adresimizde, gelecek sayılarımızda ve sevgili istihza'nın Python içerikli sitesinde[2] görebileceksiniz. Peki yazılımlarımızın Python 2.x'ten 3.x'e geçişi nasıl olacak? Birçok yazılımın Python 2.x ile yazıldığını ve Python 3.x 'in geriye uyumluluk sağlamadığını düşünürsek, bu gerçekten ciddi bir sorun olarak gözüküyor. Bu durumda yapacağımız, Python 2.x serisi ile yazılmış olan yazılımımızı Python şeklinde değişmiş olduğunu görmüş olacağız. [1] http://www.python.org/download/ [2] http://www.istihza.com Erdem Artan [email protected] 19 Pardus-Linux e-dergi Mart 2009 Sayı 6 PYTHON İLE KOMUT SATIRINDA PARAMETRELER: OPTPARSE Erdem Artan [email protected] : Python ile Komut Satırında Parametreler : optparse optparse Yazılım hakkında açıklayıcı bilgiler yazılır. add_help_option : Yazılımın kendiliğinden yardım dosyası oluşturması ya da oluşturmaması belirlenir. Ön tanımlı olarak yardım belgesi oluşturulur fakat False değeri girilirse oluşturulmayacaktır. modülü aslında sys.argv ile aynı şeyi yapar ama sys.argv'den çok daha güçlüdür ve bize kolaylıklar sağlar. Şimdi, modülümüzü basitçe işleyelim : import optparse modülü, komut satırında yazılımıza parametre desteği sunmak için fonksiyonlar sağlar. Bu parametrelere örnek verecek olursak, Pardus'ta sıkça kullanmış olduğumuz pisi komutunu inceleyebiliriz. Örneğin, GooPi paketini yüklemek istediğimizde, komut satırında "pisi it GooPi" ya da "pisi install Aşağıda kullanımlarını göreceğimiz bu seçeneklerin OptionParse() fonksiyonu GooPi" komutlarından birini veriyoruz. Bu komutlarda pisi yazılımımızın adı, içerisinde kullanımı şart değildir. Ayrıca usage seçeneği girilmese bile yazılım it/install parametremiz ve GooPi de it/install parametresinin aldığı değerdir. kendine bir usage kullanımı oluşturacaktır. optparse optparse prog = "PLO" modülü diğer birçok modül gibi usg = "%s [secenekler]"%prog import optparse komutuyla yazılıma dahil edilir. optparse modülünü yazılımımıza dahil etmemiz sayesinde, modülün bize sağlamış olduğu OptionParser() fonksiyonu ile kolayca parametre içine dalabileceğiz. Gerek optparse modülü, gerekse OptionParser() fonksiyonunun isminden de anlayacağınız üzere, bunlar eDergimizin 4. sayısında işlediğimiz xml.dom.minidom modülü gibi birer parçalayı ya da ayrıştırıcı olarak da görülebilir. Neyse konumuza dönelim. Hemen bir parçalayıcı oluşturalım : import optparse parcalayici = optparse.OptionParser() fonksiyonu ile version, prog, usage, description, gibi değişkenler kullanılabilir. Teker teker inceleyecek olursak : OptionParser() Yazılıma sürüm numarası eklemek için kullanılır. Yazılımın adı yazılır. : Kullanım şekli yazılır. v = "1.0" desc = "Bu yazilim Pardus-Linux.org eDergi icin bir ornektir." parcalayici = optparse.OptionParser(version=v, usage=usg, description=desc, prog=prog) Bu betik şu anda çalışır durumda değildir. Çalıştırılabilir halini birazdan göreceğiz. Şimdi sıra geldi parametre eklemeye. Yazılımımıza parametre eklemek için add_option() fonksiyonu kullanılır. Her ekleyeceğimiz parametre için ayrı add_option() fonksiyonları kullanırız. Örneğin : import optparse add_help_option parcalayici = optparse.Optionparser() parcalayici.add_option("-a", "--adi") parcalayici.add_option("-s", "--soyadi”) version : prog : usage description Yukarıdaki betikte, iki farklı parametre oluşturduk. Bu parametrelerden adi olana değer atamak için -a ya da --adi, soyadi olana -s ya da --soyadi 20 Pardus-Linux e-dergi Mart 2009 Sayı 6 PYTHON İLE KOMUT SATIRINDA PARAMETRELER: OPTPARSE Erdem Artan parametrelerini kullanacağız. Örneğin konsolda çalıştıracağımızı düşünürsek vereceğimiz komut : [email protected] komuta daha ihtiyacımız var. fonksiyonu, oluşturduğumuz parametreleri parçalayarak bize sunar. (deger, arg) = parcalayici.parse_args() şeklinde kullanılır ve girilen tüm değerler deger değişkenine yazılır. Örneğin isim değişkenine atanan değeri çağırmak için deger.isim değişkenini çağırırız. parse_args() yazilimismi -a pardus -s linux yazilimismi --adi pardus -s linux satırlarından biri olabilir. Şimdi öğrendiklerimizle ekrana ad ve soyad yazdıran bir uygulama yapalım : fonksiyonu da OptionParser() fonksiyonu gibi çeşitli seçenekler alabiliyor. Bunlardan bizim için temel olarak inceleyeceklerimiz dest, help, metavar seçenekleri olacak. Bu seçenekleri açıklayacak olursak : add_option() 01 - # -*- coding: utf-8 -*02 - import optparse 03 - v = "1.0" dest : Girilen değere bir değişken atar diyebiliriz. 04 - desc = "Ekrana Ad ve Soyad Yazdırır" 05 - parcalayici = optparse.OptionParser(version=v, description=desc) Belirlediğimiz parametrenin ne işe yaradığını yardım belgesinde yazdırmak için kullanılır. help : 06 - parcalayici.add_option("-a", "--adi", dest="isim", metavar="ADI", help="Ekrana isim yazdırmak için kullanılır.") 07 - parcalayici.add_option("-s", "--soyadi", dest="soyisim", metavar="SOYADI", Yardım belgesinde parametrenin kullanımında anahtar kelime olarak geçer. Örneğin sıkça rastladığımız --file=FILE gösterimindeki FILE, metavar değeridir. metavar : help="Ekrana soyisim yazdırmak için kullanılır.") 08 - (deger, arg) = parcalayici.parse_args() 09 - if deger.isim: 10 - add_option() fonksiyonu ile ilgili öğrendiklerimizi uygulayacak olursak : print "Adı : %s"%deger.isim 11 - if deger.soyisim: 12 - print "Soyadı : %s"%deger.soyisim import optparse Eğer yazılımımızın adı prds.py ise; parcalayici = optparse.OptionParser() parcalayici.add_option("-a", "--adi", dest="isim", metavar="ISIM", help="Ismi hafızaya alir.") "prds.py --help" komutu parcalayici.add_option("-s", "--soyadi", dest="soyisim", metavar="SOYISIM") Usage: prds.py [options] Şu ana kadar verilen örnek kodları çalıştırmaya kalktığınızda muhtemelen hiçbir karşılık alamamışsınızdır. Çünkü, parçalayıcıyı etkinleştirmek için bir Ekrana Ad ve Soyad Yazdırır Options: 21 Pardus-Linux e-dergi Mart 2009 Sayı 6 PYTHON İLE KOMUT SATIRINDA PARAMETRELER: OPTPARSE Erdem Artan --version show program's version number and exit -h, --help show this help message and exit -a ADI, --adi=ADI Ekrana isim yazdırmak için kullanılır. [email protected] -s SOYADI, --soyadi=SOYADI Ekrana soyisim yazdırmak için kullanılır. şeklinde çıktı verecektir. "prds.py -a Pardus -soyadi=GNU/Linux" komutu ise Adı : Pardus Soyadı : GNU/Linux şeklinde çıktı verecektir. Erdem Artan [email protected] 22 Pardus-Linux e-dergi Mart 2009 Sayı 6 HAPPY HACKING! Erdem Artan Bazı yazılımlar üzerinde kendinize göre bazı küçük değişiklikler yapmak istemez misiniz? Eğer cevabınız evetse 'Happy Hacking!' bölümü tam size göre. Bu yazımızda Pardus'un “pisi search” komutu üzerinde bir takım küçük değişiklikler yapıp, komut satırı çıktılarını daha işlevsel yapacağız. Şimdiden yapacağınız işlemlerde dikkatli olmanız gerektiğini belirtmek isteriz. Resimde de görüldüğü gibi “pisi search” komutunun çıktısında yazılar hep birbirine karışıyor : [email protected] Bu döngüde bizim için önemli olan değişkenleri açıklayacak olursak, name değişkeni paketimizin adını, summary değişkeni de paketimizin açıklamasını içeriyor. 83. ve 85. satırlarda bulunan print deyimleri ise ekrana çıktı vermemizi sağlıyor. Yapacağımız değişiklikle paket ismi yeşil olsun. Bunun için name değişkenini aşağıdaki gibi değiştirmemiz gerekiyor : name = "\033[32m"+name+"\033[m" Yukarıdaki renk kodlarını açıklayacak olursak : Peki neler yapabiliriz? Paket isimlerini renklendirmek, açıklamaların alt alta başlaması yapabileceklerimizden bazıları. Bu işlemleri yapabilmek için öncelikle /usr/lib/pardus/pisi/cli/search.py dosyasını yönetici yetkileriyle açıyoruz. Dosyayı açtığımızda 80. satırda aşağıdaki gibi bir döngüye rastlayacağız : \033[32m : Yeşil için renk kodu \033[m : Öntanımlı renk kodu Açıklama kısımlarının alt alta başlaması için paket ismine sabit bir genişlik atayabiliriz. Bunun için 83. ve 85. satırlarda bulunan print deyimlerini değiştirmemiz gerekiyor. name değişkenine sabit genişlik atayacağımıza göre, name değişkenini ekrana yazdıran %s ifadesiyle oynamamız gerekecek. 30 karakter genişliğinin uygun olduğunu düşünürsek, paket isimlerinin sağa yaslı olması için %30s, sola yaslı olması için de %-30s olarak değiştirmemiz, amacımıza ulaşmamızı sağlayacaktır. Değişikliği yaptıktan sonra, yeni name değişkenimizi 82. satıra yazınca şimdilik amacımıza ulaşmış olacağız. Son hali aşağıdaki gibi olacaktır : for pkg in pkgs: for pkg in pkgs: pkg_info = get_info(pkg) pkg_info = get_info(pkg) name, summary = get_name_sum(pkg_info) name, summary = get_name_sum(pkg_info) if lang and summary.has_key(lang): name = "\033[32m"+name+"\033[m" print "%s - %s" % (name, summary[lang]) if lang and summary.has_key(lang): else: print "%-30s - %s" % (name, summary[lang]) print "%s - %s" % (name, summary) else: print "%-30s - %s" % (name, summary) 23 Pardus-Linux e-dergi Mart 2009 Sayı 6 HAPPY HACKING! Erdem Artan [email protected] Böylece 78. ve 89. satırların arası aşağıdaki gibi olmuş olacak : i=0 Bu değişikliklerden sonra meyvemize bakalım nasıl olmuş: paket=[] for pkg in pkgs: pkg_info = get_info(pkg) name, summary = get_name_sum(pkg_info) paket.append(name) name = "\033[32m"+name+"\033[m" if lang and summary.has_key(lang): Bunca işlemden sonra, “pisi install” komutu kullanmak yerine, arama sonuçlarına atayacağımız numaralar sayesinde, arama sonrası sorulacak soruya bu numaralarla cevap vererek doğrudan kurulum gerçekleştirebiliriz. Ayrıca bir sonuç bulunamadığında bize bildirmesini de isteyebiliriz. print "[%3s] %-30s - %s" % (i, name, summary[lang]) else: print "[%3s] %-30s - %s" % (i, name, summary) i=i+1 Bu aşamaya kadar sadece paket isimlerini listeledik. Bundan sonraki aşama listelediğimiz paketleri kurmak olacak. Bunun için aşağıdaki komutları, search.py dosyamızın sonuna, yukarıdaki döngü ile aynı girintilemeye sahip olacak şekilde ekliyoruz : Önceden göstermiş olduğumuz döngünün üstüne aşağıdaki değişkenleri yazalım : i = 0 #Paket Numaralandırılması paket = [] #Paket Listesi if paket: Daha sonra sonuçlardaki paket listesini almak için yukarıda tanımladığımız değişkene name değişkeni atayalım. Bunun için name değişkenin tanımlandığı satırın (name, summary) = get_name_sum(pkg_info)) altına aşağıdaki komutu yazalım: kur = [] kurulacak = raw_input("Install(Require Root Privileges) : ") if kurulacak: kurulacak = kurulacak.split() paket.append(name) for i in kurulacak: Şimdi de sonuçları numaralandırmak için print deyimini değiştirmemiz gerekiyor. Önceden de belirttiğimiz gibi numaralandırma işlemini i değişkeni ile yapacağız. Bunun için print deyiminin bulunduğu bölümü aşağıdaki gibi değiştirelim: try: i = int(i) try: kur.append(paket[i]) if lang and summary.has_key(lang): except: print "[%3s] %-30s - %s" % (i, name, summary[lang]) pass else: except: print "[%3s] %-30s - %s" % (i, name, summary) pass Ve i değişkeninin paket sayısı kadar artması için yukarıdaki komutun altına i=i+1 deyimini yerleştirelim. pisi.api.install(kur) else: print "\033[31m No Result Found \033[m" 24 Pardus-Linux e-dergi Mart 2009 Sayı 6 HAPPY HACKING! Erdem Artan [email protected] Bu komutları satır satır açıklayacak olursak,[1. satır] öncelikle bir if sorgusuyla, bulunan bir paket bulunup bulunamadığını sorduk. Böylece [17. satır] eğer bir paket bulunamamışsa, bize bulunamadığı doğrultusunda bir yanıt vermesini sağladık. sorgusunun içinde [2. satır] kurulacak paket listesi için kur adında bir dizi tanımladık. [3. satır] Ardından kurulacak numaraları almak üzere kurulacak dizinine string türünde, kullanıcının gireceği verileri atadık. If [4. satır] If deyimiyle kurulacak numara girilip girilmediğini kontrol ettikten sonra, [5. satır] eğer girdi varsa arasına boşluk giren her girdiyi dizi elemanı olarak tekrar kurulacak değişkenine atadık. [6. satır] Ardından kurulacak dizisinin içinde bulunan her bir eleman için, [8. satır] önce tam sayı türüne dönüşüm ve [10. satır] kur dizisine bu tam sayı sırasındaki paketi ekleme işlemini gerçekleştirdik. ile ilgili değişikliklerimiz bu kadar. Bu dosyanın son halini dergimizin ekinde bulabilirsiniz. search.py Bu yazının hazırlanmasında ilham kaynağı olan ve yardımları dokunan Burak Sezer'e teşekkürler. Dikkat ettiyseniz, for döngüsünün içerisinde iki adet try, except ikilisi bulunmakta. Bu ifadeler [7./13. satır] kullanıcı sayı yerine başka bir veri girdiyse ve [9./11. satır] dizi içeriğinden fazla bir sayı girilmişse hatadan kaçmak için kullanılmıştır. Erdem Artan [email protected] Ve en sonda da pisi'nin kendi fonksiyonlarından biri olan “install”ı kullanarak kur dizisine atanan paketlerin kurulumunu gerçekleştiriyoruz. İkinci dikkat edilmesi gereken nokta, ikinci satırdan da anlaşılacağı gibi bu işlemin yönetici yetkileriyle yapılması gerektiği. Yani “pisi search” ifadesi yönetici yetkileriyle çağrılmalı. Tüm bu işlemlerden sonra nasıl çalıştığına bir göz atalım isterseniz : 25 Pardus-Linux e-dergi Mart 2009 Sayı 6 FIREFOX EKLENTİLERİ Erdem ARTAN [email protected] Zemanta KidZui KidZui, Firefox'ınızı çocuklar için İnternet tarayıcısına çeviren bir eklenti. Resimde çocuklar için arayüzünü gördüğünüz eklenti, tam ekran çalışır ve sadece çocuklar için uygun olan milyonlarca veriye bağlantı kurar. Ayrıca çocuğun yaptığı işlemleri e-posta ya da kendi sitesinde ebeveynlere ait hesaba veri olarak raporlar. KidZui yazılımı ücretsiz olmasına rağmen, hesabın ücretsiz kullanımının yanında ebeveynlere daha gelişmiş özellikler sağlayan ücretli hizmeti de mevcuttur. Zemanta Wordpress, Blogger gibi günlük sistemleri ile GMail, Yahoo! Mail gibi e-posta sistemlerinde çalışabilen, Flickr, Facebook, Twitter, YouTube gibi ortamlardan veri isteyebilen bir Firefox eklentisidir. Eklentinin tam olarak yaptığı aslında bir e-posta yazarken ya da günlük girdisi oluştururken, yazdığınız konuyla alakalı metin, resim ya da görüntü aradığınızda size yardımcı olmaktır. Zemanta, resimden de görebileceğiniz gibi, örneğin bir Wordpress sisteminde sağ taraftaki menüye yerleşir ve bir resim için sizden anahtar kelime ister. Ve siz de sonuçlar arasından istediğinizi tek tıklama ile yazınızın arasına ekleyebilirsiniz. http://www.kidzui.com/ http://www.zemanta.com/ 26 Pardus-Linux e-dergi Mart 2009 Sayı 6 FIREFOX EKLENTİLERİ Erdem ARTAN [email protected] Yoono – İnternet Tarayıcınızı Sosyalleştirin LastPass Yoono, sloganından da anlaşılacağı LastPass, İnternet hesaplarınızı, notlarınızı ve bir takım bilgilerinizi güvenli üzere Firefox ile sosyal etkileşim bir şekilde saklamak için kullanılan bir eklenti. Firefox'un kendiliğinden sahip sitelerine daha kolay erişmek için bir olduğu şifre hatırlama özelliğinden bağımsız ve değişik olarak, LastPass eklenti. Yüklendikten sonra genelde verileri çevrimiçi bir şekilde saklıyor. Bu da demek oluyor ki siz nereye Firefox penceresinin sol tarafına giderseniz gidin, şifrelerinize ve kişisel notlarınıza İnternet'e bağlanabildiğiniz kenar çubuğu olarak yerleşen Yoono her noktada erişebilirsiniz. Sadece veri saklamanın yanında sayfalarda ile Facebook hesabınızı takip edebilir, bulunan formları sizin yerinize doldurabilen LastPass'a, arkadaşlarınızın son durum iletilerini www.lastpass.com adresinden erişebilirsiniz. gözden geçirebilir, paylaşılan öğelere göz atabilirsiniz. Bunun yanında Twitter, Myspace, Flickr gibi sosyal etkileşim hesaplarınızı da takip Coolpreviews edebilir, ayrıca AIM, Gtalk, MSN ve Yahoo! Messenger hesaplarınızı ekleyebilirsiniz. Last.fm, Imeem, Seeqpod gibi sitelerden müzik dinleyebileceğiniz eklenti ile aynı zamanda RSS bağlantıları, e-postaları takip edebilir, gezdiğiniz siteleyle alakalı ürünleri satın alabilirsiniz. Coolpreviews, resimleri ve link verilen web sayfalarını önizleme penceresi içinde göstrir. Hızlı internet gezintisi sağlar. Sadece resimlerin ve linklerin üzerinde gezinmeniz önizleme yapmanız için yeterli. http://www.yoono.com/ https://addons.mozilla.org/en-US/firefox/addon/2207 27 Pardus-Linux e-dergi Mart 2009 Sayı 6 Qucs ile Doğru Akım Devre Analizi Erdem ARTAN [email protected] Qucs yani Quite Universal Circuit Simulator, GNU GPL ile dağıtılan yani açık kaynak kodlu ve özgür olan, QT ile tasarlanmış bir devre benzetim yazılımıdır. Pardus 2007 depolarında bulunan fakat her nedense Pardus 2008 depolarında yer almayan Qucs yazılımı, Users-2008 deposunda bulabilirsiniz. 12 MB'lik Pisi paketi olarak depomuzda bulunan Qucs paketini kurmak için her zamanki gibi paket yöneticisini veya pisi it Qucs komutunu kullanabilirsiniz. Alternatif ve doğru akım devreleri ile sayısal devreler üzerinde benzetim yapabileceğiniz Qucs'u, yüklendikten sonra Uygulamalar > Bilim ve Matematik bölümünde bulabilirsiniz.Qucs'u çalıştırdığınızda aşağıdaki gibi bir ekran görüntüsü sizi karşılayacaktır: Bu resimde işaretlenen bölgeleri açıklayacak olursak, 1 numaralı menüde tasarımınızın ayarlarından, yeni tasarım oluşturmaya dek işlemler yapabileceğiniz gibi yazılımın ayarlarını da gerçekleştirebilirsiniz. 2 numaralı bölüm devre tasarlarken en çok ihtiyacınız olacak ögeleri barındırır. 3 numaralı bölüm ise devre ile ilgili elemanları, içerilen veri tipi ve tasarımlarınızı bulabileceğiniz bir yerdir. 4 numaralı bölüm de devre tasarımının gerçekleştirildiği bölümdür. 28 Pardus-Linux e-dergi Mart 2009 Sayı 6 Qucs ile Doğru Akım Devre Analizi Erdem ARTAN [email protected] Bu yazımızda size iki ayrı doğru akım devresinin benzetiminin nasıl yapılacağını göstereceğiz. Bu devrelerden birincisi Wheatstone Köprüsü, ikincisi ise OpAmp devresi olacak. açılacaktır. Bu pencereden tabloda ne görmek istediğimizi ayarlayabiliriz. Örneğin aşağıdaki ayarlamaya göre Pr1'den Pr6'ya kadar ad verdiğimiz ampermetrelerin değerini okumak istemişiz. Wheatstone Köprüsü'nün benzetimi için aşağıdaki devreyi kuralım. Devre elemanlarını 3 numaralı menüde, Bileşenler sekmesinde bulabilirsiniz. Devre elemanlarının değerlerini değiştirmek için, 2 numaralı menüde Seç (Esc) seçiliyken devre elemanına sağ tıklayıp özelliklerine girebilir ya da üzerlerine çift tıklayabilirsiniz. Devre elemanlarını birbirine bağlamak için 2 numaralı menüdeki Bağlantı Hattı (CTRL+E) seçeneğini kullanabilirsiniz. DC Benzetimi de yine bileşenler kısmında bulabilirsiniz. Ayarları yapıp tamam dediğimizde istediğimiz değerleri gösteren bir tablo doldurulacaktır : Tablodan gördüğünüz gibi giren ve çıkan akımlar birbirine eşit ve Pr3 ile Pr4 üzerinden geçen akımların birbirine eşit olması R5 direncinin üzerinden akım geçmediği anlamına gelmektedir. Böylece Wheatstone Köprüsü'nün “kollardaki dirençlerin oranı her iki kolda da eşitse ortadaki dirençten akım geçmez” kuralını gözlemlemiş olduk. Eğer orta kola bir akım ölçer ekler ve değerini gözlemlerseniz ya 0 olacaktır ya da hata payı olarak 0'a çok çok yakın bir değer verilecektir. Devre çizimini başarıyla gerçekleştirdikten sonra 1 numaralı menüdeki Benzetim menüsünden ya da 2 numaralı menüden Benzetimi Başlat (F2) düğmesine basarsanız, önce dosyayı kaydetmenizi isteyecektir. Dosya kayıt işleminden sonra yazılımda yeni bir sekme olarak boş bir sayfa açılacaktır. Sol taraftaki menüden tabloyu seçip boş alana sürükleyince aşağıdaki gibi bir pencere 29 Pardus-Linux e-dergi Mart 2009 Sayı 6 Qucs ile Doğru Akım Devre Analizi Erdem ARTAN [email protected] Şimdi de ikinci devremiz olan OpAmp devresini çizelim. OpAmp'ı bileşenler sekmesindeki doğrusal olmayan bileşenler bölümünde bulabilirsiniz. Bu devremizde OpAmplardan birincisinin Umax değeri 10V, ikincisinin 15V olarak ayarlanmıştır. Bu devrede önceki devremizden değişik olarak etiketleme ve değişken süpürüm adlı iki yeni eleman da kullandık. Etiketleme işlemini 2 numaralı menüdeki Bağlantı Hattı Yaftası (CTRL+L) düğmesini kullanarak yapabilirsiniz. Etiketler gerilim değerini ölçeceğimiz hat üzerine gerilim ölçer yerleştirmek yerine doğrudan ölçüm yapmamızı sağlayan kolaylıklardır. Bunun yanında DC Benzetim'in yanında Değişken Süpürüm kullanmamızın nedeni devreye değişik gerilimler uygulayarak çıkışı incelemek için. Bu işlem için bazı dikkat edilmesi gereken noktalar var. Dikkat ederseniz gerilim kaynağımızın değerinde “U=V1” yazıyor. Bu demektir ki normalde “U=1 V” olarak gelen gerilim değerini biz V1 değişkenine atadık. Değişken Süpürüm ayarlarını ise şu şekilde yaptık : Burada benzetim olarak DC1 seçmemizin nedeni, DC1 adlı benzetim seçeneği üzerinden süpürüm yapacak olmamızdır. Süpürülen değişken olarak da V1 seçmemizin nedeni ise gerilim kaynağının değerini V1 değişkenine atamış olmamız. Resimdeki değerlere göre -30 V ile 30 V arasında 3.15 V arayla V1 değişkenimiz değerler alacaktır. Tüm çizim ve ayarlama işlemleri bittiğinde gösteriye başlayabiliriz. F2 tuşuna basıp benzetime geçip, sol taraftaki menüden Kartezyeni seçip aşağıdaki ayarları yaparak, giriş gerilimine göre Vcikis1 ve Vcikis2 olarak adlandırdığımız noktalardaki gerilimin değerlerini görebiliriz: 30 Pardus-Linux e-dergi Mart 2009 Sayı 6 Qucs ile Doğru Akım Devre Analizi Erdem ARTAN [email protected] Bu devremizde de OpAmp'ın özelliğini incelemiş olduk. Ayrıca önceki devremizde kullandığımız tabloyu burada kullanırsak aşağıdaki gibi bir sonuç bizi bekliyor olacak : Bu yazımızda kullandığımız devreleri dergimizin ekinde bulabilirsiniz. Gelecek sayılarda türev, integral ve logaritma alan devrelerde görüşmek üzere. da Erdem Artan [email protected] 31 Pardus-Linux e-dergi Mart 2009 Sayı 6 OYUN İNCELEME: Ri-Li Erdem ARTAN [email protected] Resimden de göründüğü gibi, gayet renkli, çocukların ilgisini çekebilecek düzeyde ve eğlendirme hissini verecek bir şekilde tasarlanmış. Bizi karşılayan menüden Puanlar bölümüne giderek, daha önce oynanan oyunlarda elde edilen puanları görülebilir, Seçenekler bölümüne giderek de oyunun ses, görüntü ve kontrol ayarları değiştirilebilir. Oyna bölümüne girdiğimizde, Yeni Oyun oluşturabileceğimiz ya da Eski Oyunumuzun herhangi bir seviyesinden devam edebileceğimiz bir menü bizi karşılayacaktır : GPL ile dağıtılan Ri-li, aralarında Doruk Fişek'in çalışmalarıyla Türkçe'nin de bulunduğu 19 dil seçeneğine sahip, arcade türü bir oyundur. Mandriva, emacs, Gimp, SDL, GCC ve Pov-Ray gibi özgür yazılımlar kullanılarak yazılan ve daha çok çocuklara veya içindeki çocukla mutlu olanlara hitap eden oyunun amacı, hali hazırda olan rayların üzerinde bulunan treni, kavşaklarda yönlendirerek raylar üzerindeki vagonları toplayarak puan toplamanın yanında, her bölümün sonunda sorulan sorularla birşeyler öğrenmek ve ek puanlar kazanmak. Son sürümü 2.0.1 olan Ri-li, Pardus depolarından rahatlıkla kurulabilmektedir. Diğer tüm yazılımların kurulumunda olduğu gibi, Ri-li'yi kurmak için Paket Yöneticisi'ndeki arama özelliğini kullanabileceğimiz gibi, komut satırında sudo pisi it Ri li komutunu da kullanabiliriz. Kurulumdan sonra Uygulamalar > Oyunlar > Oyun Makinası yoluna yerleşen Ri-li'yi çalıştırdığımızda, bizi aşağıdaki gibi bir ekran karşılayacaktır : 32 Pardus-Linux e-dergi Mart 2009 Sayı 6 OYUN İNCELEME: Ri-Li Erdem ARTAN [email protected] Bu bölümü geçtiğimizde bizi karşılayacak olan menü, oynayacağımız oyunun zorluk derecesini ayarlamamıza yarıyor. Kolay, Orta ve Zor seçeneklerinin bulunduğu menüde, bu seçenekler trenin hızını ifade ediyor : bulunan vagonları toplarken uzayan trenimizin herhangi bir parçasına çarpmamak. Cep telefonlarının meşhur oyunu olan Snake yani Yılan Oyununda olduğu gibi kendisine çarptığı anda bir can yanacak ve tüm vagonları baştan toplamak zorunda kalınacaktır. Vagonları topladıktan sonra, önceden de belirttiğimiz gibi bir soruluyor ve bilinmesi karşılığında 50 puan ödül veriliyor. Bu aşamadan sonra sıra geldi oyuna başlamaya..Oyunun amacından kısaca bahsetmiştik. Peki ya dikkat etmemiz gerekenler? Resimde de görüldüğü gibi oyuna başladığımızda bize verilen üç can var. Bu da demek oluyor ki hakkımızı kaybetmemek için bazı şeylere dikkat etmemiz gerekiyor. Temel olarak dikkat etmemiz gereken şey, rayların üzerinde 33 Pardus-Linux e-dergi Mart 2009 Sayı 6 OYUN İNCELEME: Ri-Li Erdem ARTAN [email protected] Çocuklar ya da kendini çocuk hissedenler için güzel bir oyun olarak düşündüğümüz Ri-li'nin resmi sitesindeki[1] ekran görüntülerinden bazılarını paylaşırsak, bunu çocuklar nasıl yapacak dedirtecek durumlarla karşılaşacağımızın haberini vermiş oluyoruz : Ve sizi oyunla baş başa bırakma zamanı geldi. Sakin oyunlar dileriz ;) [1] http://ri-li.sourceforge.net/ Erdem Artan [email protected] 34 Pardus-Linux e-dergi Mart 2009 Sayı 6 WEB SİTE TANITIMLARI Serdar GÜNDÜZ [email protected] Bu ayki site tanıtımları bölümümüzde, açık kaynak kodlu, bedelsiz olarak dağıtılan ve tabiri caizse Açık Kaynak Kodlu yazılımların bayraktarlığını yapan ofis yazılımları paketi OpenOffice'nin Türkçe destek forumları olan http://forum.openoffice.org.tr'yi tanıtacağız. OpenOffice ile ilgili karşılaştığınız hemen hemen her soruna openoffice Türkiye forumlarında cevap bulabilirsiniz. Kullanışlı bir içerik yönetim sistemi olan SMF 1.8 alt yapısını kullanan forumda demokratik yönetim anlayışını benimsemiş moderatörler kullanıcılara özgür bir ortam sunmaktadırlar. PardusLinux ailesi olarak, OpenOffice yazılımlarını keşfetmeniz için, http://forum.openoffice.org.tr [1] sitesini tüm okuyucularına tavsiye ederiz. 35 Pardus-Linux ailesinin kelebek rumuzlu üyesine ait http://blog.yollu.com adlı web günlüğünü (blog) tanıtacağız. Dokuz eylül Üniversitesi Bilgisayar Mühendisliği öğrencisi olan kelebek, ekonomiden spora, sinemadan siyasete pek çok başlık altında web günlüğüne yazmakta. WordPress alt yapısının kullanıldığı blog, göz alıcı bir temaya sahip. Nitelikli bir içerik oluşturduğu için kelebek'i tebrik eder; blog.yollu.com'u tüm okuyucularımıza tavsiye ederiz. http://blog.yollu.com [1] Pardus-Linux e-dergi Mart 2009 Sayı 6 KİTAP TANITIMLARI Serdar GÜNDÜZ [email protected] "Linux Ağ Yönetimi" adlı bu kitap; Barış Metin ve Görkem Çetin tarafından kaleme alınmış, Linux Altına ağ Yönetimi konulu kitapçılarda karşılabileceğimiz bir kaç Türkçe kaynaktan biridir. Hızlı, güvenilir ve açık kaynak kodlu olması nedeniyle dünyada popülerliği hızla artan Gnu/Linux işletim sistemini tanımamız, ağ yönetim, iletişim servislerini öğrenmemiz için gerekli bilgileri içeren kitap, kendi bilgisayar ağımızı sıfırdan kurup yönetmemize imkan tanıyor. Kitapta Yer Alan Önemli Konu Başlıkları Linux Ağ Yönetimi; bilgisayar ağları, TCP/IP ve protokoller, ağ yönetimi, IP Masquerading, Apache web sunucu, DNS, Squid proxy, Sendmail, Samba, NFS, PPP, Listeciler, Sistem ağ yönetim araçları ve Linux?ta güvenlik konularıyla ilgili merak ettiğiniz her şeyi sunmaktadır. 36 Python, tüm değişkenlerin, fonksiyonların, sabitlerin, modüllerin ve sınıfların birer nesne olarak görüldüğü bir dildir. Bu özelliklere sahip başka nesne tabanlı dillerden daha fazla özelliklere sahiptir. Kaynak kodunun herkese açık olması Python Programlama dilinin önümüzdeki yıllarda çok yaygın olarak kullanılacağının bir belirtisidir. Bir akademisyen olan Mustafa Başer’in kaleme aldığı Python, python programlama dilini programı bütün özellikleriyle irdeleyen bir kaynak. Kitap, web programlama konusunda bir ek bölüm içeriyor. Web programcılığıyla ilgilenenlere de hitap eden bu kaynağın Türkçe olarak yayımlanmış piyasadaki tek python konulu kaynak olması kitaba ayrı bir önem katmaktadır. Pardus-Linux e-dergi Mart 2009 Sayı 6 PARDUSUM Cemalettin KARA Adım; Cemalettin kara, Kütahya'da yaşıyorum. Yaşım 22. Mühendislik Fakültesi Elektrik-Elektronik Bölümü öğrencisiyim. Gnu/Linux ile tanışmam lise yıllarında oldu. Pardus'tan önce Gnu/Linux'u Chip dergisi sayesinde Knoppix live cd ile tanıştım. Özgür yazılım düşüncesi ilgimi çekti. Gnu/Linux ve özgür yazılım hakkında araştırma yaptım. Sonra Turkix'le tanıştım ama OpenSuse veya o zaman ki adıyla Mandrake kullanmayı plânlıyordum. Turkix kullanayım dedim ama sonra proje durdu.. Ardından Gnu/Pardus'u duydum. Geçen sene freedoslu dizüstü bilgisayar alınca direkt Gnu/Pardus 2007.3 kurdum şimdi 2008.2 kullanıyorum ve test takımındayım. "Pardus hayatımda ne değiştirdi?" sorusuna gelince: öncelikle blog tutmama vesile oldu. Çünkü 2008 çıkış sürecinde her gün blogları takip ediyordum. Bunun dışında hayatıma ayrı bir renk getirdi. Artık bildiğim kadarıyla diğer kullanıcılarla paylaşıyorum ve onların teşekkürlü mesajları beni çok sevindiriyor. Bir de formatı hayatımdan sildi :) Evdeki masaüstü bilgisayarımı üç kardeşim ortaklaşa kullanıyor. Bir tanesi daha ilkokul birinci sınıfa gidiyor ve şimdiden sıkı bir pardus fanı. Bunun dışında sınıfımdan bir arkadaşım kullanıyor. Bir kaç arkadaşıma de en kısa zamanda kuracağım. Sistemimi nasıl özelleştirdiğime gelirsek; Pardus 2008.2 ve KDE 3.5.10 kullanıyorum. Kurulumda gelen Pardus temasınını kendimce düzenledim. Neler mi yaptım? kde-look.org'dan crystal 37 diamond adlı simge setini sistemime kurdum. Pencere dekarasyonu değiştirdim.Amsn Kabuğu olarak kdelook.org'dan wlm lite adlı temayı kurdum. Firefoxun kendi sayfasından oxygen adlı temayı kurdum. Duvar kağıdı olarak da http://cmeeren.deviantart.com/art/ adresinden kendime bir tane seçtim. Tüm Pardus-Linux ailesine saygılarımı sunarım... Pardus-Linux e-dergi Mart 2009 Sayı 6 LKD YÖNETİM KURULU BAŞKANI DORUK FİŞEK İLE RÖPORTAJ Pardus-eDergi Takımı - [email protected] PKD : Doruk Fişek kimdir? Kendinden biraz bahsedebilir misiniz? D.FİŞEK : 1977 yılında Ankara'da doğdum. İlk kez 8 yaşımda bilgisayarla tanıştım, ilk bilgisayarım bir ZX Spectrum 48K idi. 1991'de ise PC dünyasına geçiş yaptım. 1995'te bilgisayarıma zorla 9600 modemini takan bir arkadaşım sayesinde bilgisayar ağları ve toplulukları ile bittiğini izlemeye özen gösteriyorum. tanıştım. O zamandan beri mesaj Topluluklar da aslen kişilerden yazıyorum:) oluştuğu için, tek tek bireyleri de izlemek ve tanımak gerekiyor. Çeşitli PKD : LKD Başkanı olmak nasıl bir ortamlarda konuşurken kelimelerimi duygu? de dikkatli seçmem gerekebiliyor, D.FİŞEK : Çok garipsiyorum, o resmi sadece kendimi değil bir topluluğu sıfata her zaman Mustafa Akgül'ün temsil eden bir konumda sahip olmasına alışmışım. Düşme olabiliyorum. riskine karşı altınızda bir ağ olmadan ipte yürümek gibi tarif edebilirim -Bir özgür yazılımcı olarak ise diğer üstelik bu sırada üzerinize büyük bir bilgisayar çalışanlarından farkım; spot ışığı çevrilmiş durumda ve çok herhangi bir konuyu öğrenmek ya da sayıda göz de sizi izliyor. Görev bir sorunu çözmek istediğimde, süremizin dolmasına az kalmasına dilediğim kadar derinine inebilmek karşın hala alışabilmiş değilim. ve kendimi geliştirebilmek herhalde. Özgür yazılım dünyası alabildiğine PKD : LKD Başkanı ve bir özgür geniş ve özgür. Herhangi bir konuda yazılımcı olarak kişisel günlük emek harcadığınız zaman, hemen yaşamınızda diğer insanlardan farklı geri dönüşlerini almaya ne tür şeyler yapıyorsunuz? başlıyorsunuz. İnsanlar görüşlerinize D.FİŞEK : Dernekte aktif görev değer vermeye başlıyor ve takdir aldığım için özgür yazılım ediyor. Bir başka deyişle çalışıp, dünyasında, özellikle Türkiye'deki üreten düdüğü çalıyor. özgür yazılım dünyasında neler olup PKD : Pardus Kullanıcıları Derneği hakkında düşünceleriniz nelerdir? D.FİŞEK : İnsanların ortak amaçları doğrultusunda örgütlenmeleri gerektiğine inanan bir insanım. Tek başlarına değil ortak çalışma yapmalarının, ortak yapılan bu çalışmayı sahiplenecek kadar benimsemelerinin ama kendi "mülk"leri olmadığı için bir gün başka birine bayrağı devredecekleri düşüncesiyle hareket etmelerinin doğru bir model olduğunu düşünüyorum. Herkesin eşit söz hakkının olduğu böyle bir topluluk modelinin Türkiye'deki yasal karşılığı bir dernek. Baktığımızda bugün birçok özgür yazılım topluluğunun aslen bu yapıda olduğunu görüyoruz. Keşke yasal işlemleri bu kadar yorucu olmasa, her topluluk kolayca birer dernek olarak tüzel kişilik sahibi olabilseler ve Türkiye'de hak ettikleri yasal haklarına sahip olabilseler. Pardus Kullanıcıları Derneği bunu yapan nadir topluluklardan biri, o nedenle özel bir yeri olduğunu düşünüyorum. PKD : GNU/Linux ile nasıl tanıştınız? Size GNU/Linux yenir mi içilir mi diye anlatan oldu mu? 38 D.FİŞEK : O sıralar HiTNeT isimli Fido tipi bir bilgisayar ağında yazışıyordum. HiTNeT'te tanıştığım arkadaşlarımdan GNU/Linux'u duymuştum, hatta ısrarla denememi isteyenler olmuştu. Bir tanesi GNU/Linux CD'si bile vermişti bana. Yeni bir sistem ilgimi çekmesine karşın, kurcalamak için bir nedenim olmamıştı. 1997 Aralık'ında, çalışma hayatına atılmamla GNU/Linux'la tanıştım. İlk çalıştığım yer Türk Standartları Enstitüsü (TSE) Bilgi İşlem Daire Başkanlığı idi. BBS sistemleriyle olan OS/2 deneyimimden hareketle beni alternatif bir sistem olarak Pardus-Linux e-dergi Mart 2009 Sayı 6 LKD YÖNETİM KURULU BAŞKANI DORUK FİŞEK İLE RÖPORTAJ Pardus-eDergi Takımı - [email protected] GNU/Linux işletim sistemini araştırmak ve kurum içinde olası kullanım alanları oluşturmakla görevlendirdiler. Ben de uzun zamandır ertelediğim GNU/Linux'la uğraşmaya başladım. Takıldığım noktalara yanıt bulabilmek için o dönemki adıyla Linux Kullanıcıları Grubu'nun e-posta listesine üye oldum, orada yer alan insanlar bana yardımcı oldular. PKD : Hangi Linux dağıtımını kullanıyorsunuz? LKD camiası genelde hangi dağıtıma sıcak bakıyor ve hangi dağıtım ağırlıklı olarak kullanıyor? Sizce nedenleri nedir? D.FİŞEK : Şu anda sunucuda Gentoo, masaüstünde Pardus kullanıyorum. Geçmişte her ikisi için de Slackware kullanıyordum. LKD camiasının genel olarak sıcak baktığı belirli bir dağıtım yok. LKD'de hemen her tür dağıtımla ilgilenen insanlar bulunuyor. PKD : KDE4 ile birlikte L. Torvalds'ın KDE'den Gnome'ya çark ettiği bir dünyada KDE4, KDE 3.5 ve Gnome üçgenindeki düşünceleriniz nelerdir? Şubat'ın sonunda çıkan Xfce 4.6'yı deneme fırsatınız oldu mu? Olduysa görüşlerinizi alabilir miyiz? D.FİŞEK : Özgür yazılımın bizlere sunduğu "seçim" şansını seviyorum. Söz konusu olan insanların kullanım alışkanlıkları olunca tek bir doğru olması mümkün değil, herkesin beklentileri farklı oluyor. Örneğin benim Linux'u masaüstümde kullanmaya başlamamı sağlayan Windowmaker isimli bir pencere yöneticisiydi. Bir seminerde izlemiş ve çok beğenmiştim. O sırada kullandığım masaüstünün bana sunamadığı bir basitlik ve rahatlık sunuyordu. Şimdi düşünüyorum, o sırada KDE ya da GNOME bana o geçişi yaptıramamıştı. Çeşitlilik her zaman güzeldir. PKD : Özgür yazılımcıların yaşam tarzları ve görünümleri bir genelleme yaparsak benziyor diyebiliriz. Örneğin uzun saçlı, kilolu ve toplumda marjinal bir imaj çiziyor. Sizce bu tespit doğru mu, nedenlerini sıralayabilir misiniz? D.FİŞEK : Şöyle bir derneğimizin 39 üyelerini gözümün önünden geçiriyorum, sonra yurt dışından tanıdığım çeşitli insanları düşünüyorum, çok da doğru sayılmaz. Özgür yazılımın ilk zamanları için belki daha doğruydu çünkü özgür yazılımın kendisi de "marjinal"di. Özgür yazılımın giderek yaygınlaşmasıyla artık çok da geçerli değil. PKD : LKD Türkiye'nin ilk ve en büyük özgür yazılım örgütü. Türkiye'de özgür yazılım hareketi dünya ile paralel başladı diyebilirsek, Türkiye'nin özgür yazılım dünyasında konumu nedir? D.FİŞEK : Aslında paralel başladı diyemiyoruz çünkü dünyada özgür yazılım hareketi 1980'lerin ilk yarısında başlarken, Türkiye'de yankı bulması biraz daha zaman aldı. Bu biraz da özgür yazılımın birincil iletişim aracı olan Internet'in Türkiye'de nispeten geç yaygınlaşmasıyla ilgili. Türkiye'nin dünyadaki yerinin hak ettiğinin oldukça altında olduğunu düşünüyorum. Çok güzel işler yapılmasına karşın bunu tüm dünyadaki özgür yazılımcılarla paylaşma konusunda çok gerideyiz, fazla içimize kapanığız. Daha fazla Pardus-Linux e-dergi Mart 2009 Sayı 6 LKD YÖNETİM KURULU BAŞKANI DORUK FİŞEK İLE RÖPORTAJ Pardus-eDergi Takımı - [email protected] iletişim içinde olmamız, Bunu yaparken de kimsenin yıpranıp, yaptıklarımızı ortaya koymamız yorulmamasına özen göstermeye çalışıyoruz. Birbiriyle iletişim içinde gerekiyor diye düşünüyorum. olan insanlar beraber yapmak çok daha rahat PKD : Özgür yazılımın gerek istediklerini gerçekleştirebilir bir halde Türkiye, gerekse dünyadaki geleceğine nasıl bakıyorsunuz? LKD olacaklardır. bu konumda ne tür adımlar atmayı düşünüyor? D.FİŞEK : Özgür yazılımın önlenemez bir biçimde yaygınlaşmaya ve yükselmeye devam edeceğini düşünüyorum. Bazı yerlerde sessiz ve derinden, bazı yerlerde bağıra bağıra artarak ilerliyor. Onlarca yıl boyunca bu ilerlemeyi yavaşlatabilen ya da durdurabilen bir etmen olmadı. Çeşitli engeller her zaman oluşabilir ama özgür yazılım dünyası bu engelleri aşmanın her zaman bir yolunu buluyor. LKD özelinde ise, dernek şu anda bir "yara sarma" dönemi geçiriyor. Yoğun çalışma ile geçirilen seneler arkasında yapısal birçok sorunu miras bıraktı. Öncelikli hedefimiz şu anda hem derneğin kendi içi hem de özgür yazılım camiasının arasındaki iletişim kanallarını tamir etmek, genel bir "bahar temizliği" yapmak ve camiayı tekrar biraraya getirmek. Göç hiçbir zaman kolay değildir, oldukça da sancılı bir süreçtir ama bu özgür yazılıma özel değil, tüm göçlerde geçerlidir. Kullanılandan farklı bir sahipli yazılıma geçişte de benzer sıkıntılar yaşanır. Kurumlarda geçişin bir gecede bir anda değil; planlı, adım adım ve zamana PKD : Özellikle MEB'in yayılmış bir biçimde gerçekleşmesi uygulamalarında Microsoft standartlarını ve kapalı kodlu alt yapısını kullandığını, MEB personeli ve öğrencilerin veritabanına girilişinin üç yıl gibi bir zaman aldığı düşünülürse, ülkemizde oturmamış bazı şeylerin olduğunu görüyoruz. Sizce kurumsal olarak özgür yazılım kullanılmasında herhangi bir engel var mıdır ki MEB gibi kurumlar ısrarla MS uygulamalarıyla yola çıkıyorlar? Bu durumda gerek LKD gerekse özgür yazılım gönüllüleri olarak neler yapabiliriz? D.FİŞEK : Kurumların önünde özgür yazılım kullanımıyla ilgili aşılamayacak bir engel olduğunu düşünmüyorum. Seneler içerisinde özgür yazılım kullanmamak için öne sürülen farklı farklı "bir de x olsa" gerekçelerini çokça duyduk hepimiz. Bunların çoğunluğunun aslında birer bahane olduğu zamanla ortaya çıktı; çünkü o nedenler ortadan kalktığında, başkaları yerini doldurdu. 40 gerekir. Gerek Türkiye'de, gerek dünyada kurumsal kullanımla ilgili binlerce başarı öyküsü var. Bazı kurumların neden ısrarla özgür olmayan yazılımlara yöneldiklerini, o kurumların kendilerine sormanız gerekir. Pardus-Linux e-dergi Mart 2009 Sayı 6 LKD YÖNETİM KURULU BAŞKANI DORUK FİŞEK İLE RÖPORTAJ Pardus-eDergi Takımı - [email protected] PKD : Arkasında maddi olarak devlet desteği bulunan Pardus'un Türkiye'deki ve dünyadaki durumunu nasıl görüyorsunuz? LKD'nin Pardus hakkında ortak bir görüşü var mıdır? D.FİŞEK : Pardus'un bilinirliği ve kullanımı Türkiye'de giderek artıyor, özgür yazılımın yaygınlaşması için önemli bir araç görevi görüyor. Yurt dışında ise ürettiği değer ölçüsünde o kadar tanınmıyor, bunda en önemli nedenin yapılan çalışmaların yurt dışındaki camiayla ortak hareket etmek için yeterince emek harcanmaması olduğunu düşünüyorum. LKD'de olduğu gibi bir dil engeli de var bu konuda. Son dönemde projede bu konuda olumlu yönde değişiklikler olmaya başladı. Geliştiriciler yurt dışında çeşitli toplantılara katılıyorlar, Pardus'ta yaptıklarını diğer özgür yazılımcılarla da paylaşıyorlar. LKD, Türkiye'de yaşayan/yaşamış üyelerden oluştuğu için, doğal olarak özgür yazılımla ilgili Türkiye'de yapılan çalışmalara her zaman daha fazla önem ve öncelik vermiştir. gerek resmi olarak dernek adıyla gerekse de dernek üyelerimizin bireysel Pardus'a, tıpkı Türkiye'de üretilen çalışmalarıyla her zaman destek olduk ve olmaya da devam edeceğiz. tüm özgür yazılımlara olduğu gibi, 41 PKD : Pardus'u R. M. Stallman'a sorduğumuzda bize özellikle özgür olma konusunda pek iyi şeyler söylemedi. Sizce Pardus'un gerek özgürlük, gerekse diğer yazılımsal özellikleri açısından imajı nasıldır? D.FİŞEK : Stallman'ın bakış açısıyla bugün yapılan dağıtımların büyük bir çoğunluğu "özgür" değil. Genellikle bu sorun çeşitli kısımları kapalı donanım sürücüleri ve bazı çoklu ortam biçemlerinden kaynaklanıyor. Bugünkü şartlarda kullanıcılara ne kadar "hazır" bir dağıtım vermeye çalışırsanız, o kadar özgürlükten taviz vermek zorunda kalıyorsunuz. Pardus, özellikle geliştirme modeli açısından bakıldığında, birçok dağıtımdan daha az "açık" değil, hatta birçoğundan çok daha iyi durumda -- ama elbette daha iyi olması mümkün. Marka korunması kaygısıyla yer yer yapılan çıkışların projenin bu konudaki imajını zedelediğini düşünüyorum. PKD : Sizce Pardus'un eksikleri ve varsa diğer yazılımlara göre artısı nelerdir? D.FİŞEK : Pardus'a bir özgür yazılım projesi olarak baktığımda en büyük Pardus-Linux e-dergi Mart 2009 Sayı 6 LKD YÖNETİM KURULU BAŞKANI DORUK FİŞEK İLE RÖPORTAJ Nihad KARSLI artısını, çalışanlarını TÜBİTAK personelinden oluşturmak yerine öncelikle özgür yazılım camiasında aktif olarak görev alan ya da almış kişilerden oluşturması olarak görebiliriz. Özgür yazılım konusunda deneyim kazanmış insanlar, açık bir projede, tüm zamanlarını özgür yazılıma ayırarak çalışabiliyorlar. Eksiğini ise odaklanma olarak görüyorum. Zaman içerisinde farklı yönlere savrulabiliyor proje. Daha belirli hedeflere odaklanılsa, daha başarılı olunabileceğini geliştiricilerin daha yıpranabileceğini düşünüyorum. [email protected] ve esneklik sağlamaması ve teknik olsa, söz konusu topluluğun kar az belgelendirme olarak görüyorum. amacı gütmeyen bir tüzel kişiliğinin olmasının yararlı olacağını PKD : Eğer gün gelir ve TÜBİTAK düşünüyorum. Bir dağıtım olarak baktığımda; ek bir Pardus'tan elini çekerse, sizce ayar gerektirmeden otomatik Pardus'un geliştirilmesine devam donanım tanıma/ayarlama, çeşitli edilmeli mi? Edilmeliyse bu nasıl bir çoklu ortam dosyalarını oynatabilme topluluk tarafından yapılmalı? Linux Kullanıcıları Derneği ve ve çok sayıda oyunun depolarında D.FİŞEK : Evet, devam edilmesi Sayın Doruk Fişek'e verdikleri bu olması diyebilirim. Eksiğini ise gerektiğini düşünüyorum. Çünkü güzel cevaplar ve dergimizi uzman GNU/Linux kullanıcılarının Pardus TÜBİTAK'a değil, topluma renklendirdikleri için teşekkür öngörülen kalıplara uymayabilecek aittir. Zamanın ne göstereceğini ederiz. çeşitli cambazlıkları için yeterince bilmiyorum ancak bugünkü şartlarda 42 FF İKİRLERİNİZ BİZLER İÇİN DEĞERLİDİR Pardus-Linux e-dergimizin gelişimi için bizlerle iletişim kurabilirsiniz. Derginin sonraki sayılarında yayımlanmasını istediğiniz özgün;inceleme, makale, GNU/Linux içerikli haber vb. yazılarınızı bizlere gönderebilirsiniz. IRC kanalımız: irc.freenode.org adlı irc serverinde bulunan #pardus-destek adlı kanaldır. E-posta adresimiz [email protected]'dir. cc reativecommons Dergimizde kullanılan tüm yazı ve görsel materyallerin sorumluluğu yazarlarına aittir. Dergimizin içeriğini oluşturan ürünler Creative Commons Lisansı ile lisanslanmıştır. Kaynak gösterilmek şartıyla özgürce geliştirilebilir, paylaşılabilir. http://creativecommons.org/ PP E E D D ardus-Linux E-dergi Ekibi ditör Nihad Karslı - [email protected] ergi Yazarı/İmla denetmeni Erdem Artan - [email protected] M. Talha İlhan - [email protected] TT asarım Emin İnanç Ünlü - einancunlu@gmail M M iz a n p a j Serdar Gündüz- [email protected]
Benzer belgeler
Kendi Çoklu Ortam Sunucunuzu Kurun: Gnump3d
Gnump3d CLI İpuçları
Gnump3d, "CLI" yani komut satırı arayüzü, kullanıcıya bir-
Untitled - Tilkinin Dilinden
Rakam vermeyeceğim ancak her sayıda basılı yayınların üzerinde ve gittikce artan
oranda okuyucumuzun olması bizi mutlu ediyor. Gelecek sayımızda ve içinde yine
süprizlerle dolu özgür yazılım toplul...
Konqueror Dosya ve İnternet Tarayıcısı
Avidemux 2.4.4 Sürümüne Terfi Etti
Geçen sayımızda yazarımız Serdar Kaçmaz tarafından
tanıtılan ve bir film uygulaması gösterilen Avidemux'un
yedi ay aradan sonra yeni sürümü olan 2.4.4 duyuruldu.
...