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