Linux Köşesi
Bilgisayar dünyası Windows'dan ibaret değil!
Bedava ve geliştirmeye açık bir işletim sistemi olan Linux ile ilgili köşeyi Görkem kaptı ve sizlere lezzetli bir yazı hazırladı. Sevgili Burçak'ın önerisiyle, üniversiteliğimin ilk yıllarında hoşça
vakit geçirdiğim Antrak için büyük bir hevesle kaleme kağıda.. pardon
klavyeye sarıldım.
Ne yazsam acaba? Ekran başında kendime en çok sorduğum soru bu
herhalde.
İsterseniz kısa keselim, zira yolumuz uzun. Gelin Linux nedir, ne değildir
şöyle bir üzerinden geçelim. Sanal projelerden bahsedelim. Bazılarımızın
ütopya dediği, ancak teknolojinin gelişimine yadsınamaz etkileri olan
ücretsiz yazılıma değinelim.
Linux Nedir ?
Linux, serbestçe dağıtılabilen, çok görevli, çok kullanıcılı UNIX işletim
sistemi türevidir. Linux, İnternet üzerinde ilgili ve meraklı birçok
kişi tarafından ortaklaşa geliştirilmekte olan ve başta IBM-PC
uyumlu kişisel bilgisayarlar olmak üzere birçok platformda çalışabilen
ve herhangi bir maliyeti olmayan bir işletim sistemidir.
UNIX 70'li yılların ortalarında büyük bilgisayarlar üzerinde çok
kullanıcılı bir işletim sistemi olarak geliştirilmiştir. Zaman içerisinde
yayılarak birçok türevi ortaya çıkmış ve bugün kişisel bilgisayarlardan
süper bilgisayarlara kadar biçok bilgisayar için UNIX türevleri yazılmıştır.
Ne var ki bu türevlerin çoğunun gelişimi belirli bir noktada durmuş ve
yüksek fiyatla satılan ticari yazılımlardır.
Linux, Finlandiya Üniversitesinde öğrenci olan Linus Torvalds'ın
ve İnternet üzerinde meraklı bir çok yazılımcının katkıları ile
geliştirilmiştir. Linux gelişimi açık bir şekilde yapılmaktadır. Bunun
anlamı, işletim sisteminin her aşaması açık olarak İnternet üzerinde
yayınlanmakta, dünyanın dört bir yanında kullanıcılar tarafından kontrol
edilmekte, hataları ve eksiklikleri tesbit edilerek düzeltilmekte ve
geliştirilmektedir. Zaman zaman bu deneme aşamaları belirli bir noktada
durdurulur ve güvenilir bir işletim sistemi sunulup, geliştirme için
ayrı bir seriye devam edilir. Geliştirmede yer alan bu açıklık Linux'un
en büyük avantajlarından biridir. Gelişimi evrimseldir, hatalar anında
kullanıcılar tarafından tesbit edilip rapor edilmekte ve birçok kişinin
katkısıyla düzeltilmektedir. Bazı işletim sistemi sürümleri saatler
içerisinde güncellenebilmektedir.
Linux gerçekten son yıllarda hızlı bir gelişme göstermiş, çeşitli
ülkelerden birçok kullanıcıya erişmiş ve yazılım desteği günden güne
artmıştır. Değişik kuruluşlar Linux sistemi ve uygulama yazılımlarını
biraraya getirerek dağıtımlar oluşturmuşlar ve kullanımını
yaygınlaştırmışlardır.
Kısaca Linux'un desteklediği donanımlardan bahsedelim. Linux şu anda
başta IBM-PC uyumlu (386 ve yukarısı) kişisel bilgisayarlar olmak üzere
Apple, Atari ve Amiga gibi 68000 tabanlı bilgisayarlar üzerinde, Sun Sparc
işlemcili iş istasyonları, Alpha işlemcili kişisel bilgisayarlar, MIPS,
PowerPC, HP PA-RISC ve ARM mimarilerinde çalışmaktadır.
Metin ekranlarda CGA, EGA, VGA, Hercules veya uyumlu kartlar
desteklenmektedir. X Window ortamında genel VGA ve SVGA uyumlu
kartlar ve S3, ET4000, 8514/A, ATI MACH8, ATI MACH32 gibi
birçok görüntü kartı için yazılım mevcuttur. Birçok 10 ve 100 Mbit ethernet
kartı, ISDN, ATM, FDDI, SLIP, CSLIP, PPP desteği
verilmektedir.
Bir makinada Linux çalıştırmak için kullanacağınız uygulamalara bağlı
olarak en az bir 386SX işlemci ve 4 Mbayt RAM'a ihtiyaç vardır. Sabit disk
üzerinde ise en az 40 Mbayt'lık bir alan ayırmanız gerekecektir. Rahat
bir kullanım için en az 8 Mbayt RAM ile 200 Mbayt sabit disk ve bir 486
işlemci önerilmektedir.
Linux evinde veya işinde UNIX işletim sistemi altında çalışmak
isteyenler için ideal bir platformdur. Özellikle işi veya eğitimi
sırasında UNIX platformlar altında çalışmak, uygulamalar kullanmak veya
yazılım geliştirmek isteyenler kendi kişisel bilgisayarlarında benzer
ortamı yakalayabilmekte ve işlerini kendi kişisel bilgisayarları altında
yapabilmektedirler.
Linux kurulumda doğrudan TCP/IP desteği ile gelmektedir. Bu yönü ile
TCP/IP temelli bilgisayar ağlarında hem istemci hem de sunucu olarak
yaygın kullanım bulmuştur. Üzerinde halihazırda bulunan servislerin
çeşitliliği, yeni çıkan servislere hızlı ayak uydurması, kolay
yapılandırılabilmesi ve özellikle de düşük maliyeti sebebi ile yaygın
olarak İnternet servislerinin verilmesi amacıyla kullanılmaktadır.
Linux, WWW, DNS, NFS, NIS, X, BOOTP, SMTP, FTP, LIST, NEWS gibi
yaygın TCP/IP servislerinin yanısıra
* NOVELL sunucu (Novell protokolü kullanarak disk ve yazıcı servisi)
* SAMBA sunucu (Windows 3.1, Windows95, Windows NT ve WfW için
disk ve yazıcı servisi)
* APPLETALK sunucu (MacOS kullanan Apple makinalar için disk ve yazıcı
servisi)
servisleri verebilmektedir.
Linux yazılım desteği ile birçok ağ elemanının yerine geçebilecek
bir alternatif olarak kullanılabilmektedir. Birden fazla ağın
birbirine bağlanması amacıyla bir yönlendirici (router) olarak da
yararlanılabilir. Özellikle farklı protokoller arası bir geçiş elemanı
olarak üniversitelerde yaygın şekilde Linux'tan faydalanılmaktadır. Ayrıca
yönlendirici olarak kullanıldığında kolaylıkla güvenlik duvarı (firewall)
olarak da yapılandırılabilir. Buna ek olarak bir ağ üzerinde bulunan
iki segment trafiğini birbirinden ayıran bir köprü (bridge) olarak da
hizmet verebilir.
Eğer Linux'a azimle dolma yapmasını da öğretebilirsem evde
ikinci bir kişiye ihtiyacım olmayacağı da açıktır.
Yazılım Özellikleri
Bir işletim sistemi, mimari dizayn olarak ne kadar mükemmel olursa olsun,
uygulama yazılımlarının çokluğu ve kalitesi ile varolabilir. Herhangi bir
Linux dağıtımı içerisinde, değişik amaçlara hizmet eden birçok yazılım
bulunmaktadır. Ancak her geçen gün bu dağıtımlarda yer almayan yeni yeni
yazılımlar çıkmaktadır.
UNIX makinalar üzerinde yer alan uygulamaların çoğu, değişik platformlar
altında bulunduğundan çalıştırılabilir (executable) olarak dağıtılmaz,
kaynak kodu şeklinde sunulurlar. Sözkonusu yazılımı kullanmak isteyen bir
kullanıcı bu kaynak kodunu kendi platformunda derleyerek çalıştırır. Bu
yazılımların birçoğu Linux altında kolaylıkla çalıştırılabilmektedir. Bu
tür yazılımları İnternet üzerinde çeşitli FTP arşivlerinde bulmak
mümkündür.
X Window Arabirimi
Linux işletim sistemi altında X Window sistemi ile Windows benzeri
bir grafik arabirimiyle birlikte çalışabilirsiniz. Windows ile ilgilenen
herkes rahatlıkla X Window'a geçiş yapabilir. X ile ekranda aynı anda
birden fazla pencere açılabilir, fare yardımıyla birden fazla uygulama
aynı anda kontrol edilebilir.
Bilgisayar Destekli Eğitimde Linux
Linux'un hemen her alan
da olduğu gibi bilgisayar destekli eğitimde de yeri
var. Ağ yönetimi gayet gelişkin olan bu sistemde tek makina üzerinde
pek çok İnternet sunucusunu çalıştırabilirsiniz. Sıfır maliyetle
eğitim kurumlarımızın ihtiyaç duyabileceği yazıcı, disk alanı paylaşımı
ile temel her türlü İnternet servisi kolayca verilebilir, bu servisler
merkezi bir yönetim altında denetlenebilir.
Bilgisayar Destekli Eğitim projesinde belirli bir işletim sistemi ve
donanım modeline bağımlı kalmak son derece tehlikelidir. Linux ile bu
tehlikeden uzak olarak okullarımızın İnternet erişimi sağlıklı bir
biçimde yerine getirilebilir. AR-GE ve akademik kurumlar da
geliştirmeye dayalı projelerini Linux'a taşıyabilir, donanım ve yazılım
masraflarını büyük oranda kısarak bütçelerini daha verimli
kullanabilirler.
Bunun yanında bilgisayar mühendisliği eğitiminde, örneğin "İşletim
Sistemleri" dersi çerçevesinde, bir işletim sisteminin aygıt sürücüleri
konusu anlatılırken Linux'un kaynak koduna referans verilebilir, ya da
Linux'un tanıdığı onlarca dosya sisteminden biri üzerinde örnek çalışma
yapılabilir. Kaynak kodu erişilebilir olduğundan sistemin çalışma
prensibini öğrenmek, geleceğin mühendis adayı için eşi bulunmaz bir
fırsattır. Linux'u bir "deney seti" gibi kullanmak sadece akademisyenin
olumlu onayına kalmıştır.
Bir işletim sistemi ya da yazılımın öğrenci ve akademik çalışanlar
için ücretli olması talihsizliktir. Eğitim yaşamı boyunca meraklı bir
beyni yönlendirmek ve bilişim alanında yeni teknoloji üretmesini
sağlayabilmek için önündeki tüm engellerin kaldırılması gerekir.
Bu da ancak ücretsiz ve karşılığını verecek olan her an erişilebilir, kaliteli
yazılımla mümkün olacaktır.
Turkuaz Türkçe Linux Dağıtımı
Turkuaz, Türkiye Linux Kullanıcıları Grubu tarafından geliştirilen ve mevcut
Türkçe desteğini bir araya getiren bir Linux dağıtımıdır. Şu an mevcut
kaynaklar tamamen bağımsız bir dağıtım sunulmasını engellediği için bilinen
ve sürekli desteği bulunan Red Hat 5.0 dağıtımından esinlenilmiştir.
11 Kasım tarihinde İTÜ'deki ftp arşivinin kurulması ve ilk Turkuaz
dağıtımının bu adrese yerleştirilmesiyle başlanan projede halen 5 ayrı
noktada ftp dağıtımı yapılıyor ve web hizmeti veriliyor.
Turkuaz Linux'un geliştirilmesinde temel amaç, Türk Linux kullanıcılarına
işletim sistemi bazında destek vermek ve Linux'un daha popüler olmasını
sağlamak. Bu amaçla yerelleştirme ve uluslalaraştırma işlemlerine dağıtım
dahilinde hız verilmiştir.
Turkuaz'ın diğer Linux dağıtımlarından farkı şöyle sıralanabilir :
1. Kurulum ve yapılandırma paketleri “locale'' desteklidir, bu sayede
program bir kabuk değişkenine bağlı olarak Türkçe ya da İngilizce desteği
altında çalışabilir.
2. X Window ve konsol altında klavye eşlemleri ve yazıtipleri Türkçe diline
uygundur.
3. Türkiye'de kullanım yaygınlığı yaratmamış bazı paketler dağıtımdan
ayrıldı ve Turkuaz dağıtımının ücretsiz olmasının getirdiği fırsat ile
telif hakkı bulunan bazı paketler yazarlarından izin alınarak dağıtıma
eklendi.
Turkuaz Linux Dağıtımı projesi bir ihtiyaçtan doğmuştur. Linux'un kurulumu
tamamen İngilizce metinlere dayanmakta, zaten yeni başlayanlar için zor
olan işletim sistemine alışma süresi daha da uzamakta ve öğrenme-zaman
eğrisi yayvanlaşmaktaydı. Linux, bir UNIX türevi olduğundan geçmiş
alışkanlıkların verdiği zorluklarla karşılaşan kullanıcı daha işin başından
havlu atmaktaydı.
Turkuaz Linux'un kullanıcı dostu X Window arabirimi ile tüm sistem yönetimi
X altından yapılabilmektedir. En sık kullanılan komutların Türkçe
açıklamaları ve kılavuz sayfaları her an erişilebilir durumdadır. İnternet
üzerinde geniş bir kullanıcı kitlesinin oluşması durumunda Türkiye'deki
Linux kullanıcılarının önemli bir bölümünün İnternet bağlantılarını Turkuaz
Linux üzerinden sağlayacaklarını tahmin ediyorum.
Sanal Projeler
İnternet'in kendine has bir kültürü ve etiği vardır. Bu durumun getirdiği
sosyo-kültürel ayrıcalık ile İnternet, diğer iletişim ortamlarına nazaran
kendine ayrı bir yer edinmiş, Türkiye'de 5. doğum yılında her kesime
ulaşamasa da gelecek vaat eden bir medya olmuştur.
İnternet sadece sonsuz sayıda karışık verinin, eğlencenin ya da tek yönlü
bilginin akışını değil, paylaşımın ve imecenin de yine sonsuz derinlikte
yaşandığı bir bilgi toplumuna geçiş aracıdır.
Linux ise sadece İnternet yardımıyla haberleşen kullanıcıların varolduğu
sanal bir ortamda gelişim imkanı bulmuş ve sıfırdan yazılmış bir işletim
sistemidir. Bir bakıma bu dev proje, büyük yazılımların sadece
topluma mal olmuş yazılım şirketleri tarafından üretilmeyeceğinin de
açık bir kanıtıdır.
İnternet'in tarihi sanal çalışma gruplarının başarılarıyla doludur.
Özellikle lise ve üniversite öğrencilerinin uzak mesafeleri bir ekran
uzaklığı kadar kısaltan ağ aracılığı ile haberleşmeleri sonucu
İnternet'teki paket yazılımların ve dökümanların büyük bir çoğunluğu
bu grup tarafından üretilmiştir. Türkiye'deki İnternet kullanıcılarının
%70'i üniversite mezunu ve %40'ı öğrencidir. %48'lik bir bölümün yaşı ise
25'in altındadır.
Türkiye'deki hal böyle olunca sanal çalışma gruplarının önemi bir kat daha
artıyor. İnternet'i kullanan genç nüfusun İnternet grup çalışmalarına
özendirilmesi ile daha üretken ve paylaşımcı bir gençliğe doğru geçiş
yapılabilir. Bu makale içınde verilecek örnekler yazılım alanında olsa da
benzer şekilde pozitif bilimler, eğitim, sosyal bilimler gibi alanlarda da
rahatlıkla çalışma gruplarının oluşturulması ve işlev kazanması mümkündür.
Linus Torvalds tarafından geliştirilen birkaç satır kod, başlangıçta bir
disketi okutmak amacını güderken şimdi İnternet'te servis veren işletim
sistemlerinin en yaygın kullanılanlarından biri olmuştur. Peki, nedir Linus
Torvalds'ın açık gelişim modelinde yatan sır?
Her sanal proje ve doğabilecek önemli başarılar, bir geliştiricinin ve
meraklının sıcak mesajı ile başlar. Gereksinimler bir projenin başlangıcı
için en belirgin nedendir.
İnternet'in demokratik ortamı en çok kullanılan web ve listeci gibi iki
güçlü iletişim aracıyla birleştiği anda arkada kalan tek eksiğin
potansiyel fikirler olduğu hemen ortaya çıkar. Sanal projeler en az iki
kişiyle başlar, Linux gibi sayıca yüzbinleri bulan bireylerin fikir
alış-verişinde bulunduğu dev çalışma grupları haline gelebilir.
Her meraklı, bir gün gelir kullanıcı olur, her kullanıcının da erişebileceği
üst seviye yete
ri kadar bilgi ve beceriye sahip olduğu an `geliştiricilik'tir.
Bir sanal proje, dikkatli bir meraklının gereksinimleri görmesinden ve pek
çok kişinin aynı sorundan musdarip olmasından sonra başlar.
Serbest Yazılım
Arkadaşlarınızla gezerken bir pastahaneye uğradınız. Yediğiniz pasta o
kadar lezizdi ki aşçıdan tarifini isteme gafletinde bulundunuz. O da haklı
olarak bu işten para kazandığını, tarifi size verirse aç kalacağını söyledi.
Damak zevkinize bir yenilik daha ekleyebilirdiniz, ama olmadı.
Örnekleri uzatmak mümkün, ama karşilaştığınız durum bilgisayar pazarı
için geçerliliğini yitirmek üzere. Gelişen sayısal teknoloji veriyi
kopyalamamıza ve daha geniş kitlelerce kullanılabilmesine olanak veriyor.
Burada en büyük yardımcımız bilgisayarlar ve bilişimin aydınlatıcı ışığı.
Serbest yazılım (SY) da bilişim alanına yeni bir çehre kazandırmak
üzeredir. UNIX kültüründe SY, bilgiyi paylaşmak, sınırsızca dağıtmak ve
değiştirmek anlamına geliyor. Kısaca açıklamak gerekirse serbest yazılım,
belirli hakları gözetmek şartıyla herkesin özgürce kullanabildiği,
kopyalayabildiği, üzerinde değişiklik yapabildiği ve ücretli/ücretsiz
tekrar dağıtabildiği yazılımdır. "Bilgi herkesindir, sınırlanamaz"
felsefesine uyan yazılımcılar, geliştirdikleri her ürünü karşılık
beklemeksizin İnternet'in onayına sunmakla bu ürünün mükemmele
koşmasına yardımcı oluyorlar.
SY kavramı sadece "beleş sirke" olarak görülmemelidir.
Bir başka anlamda, SY, yazılımın ücretsiz olmasını değil,
serbestiyi ve bilginin yayılması felsefesini ön plana çıkarır.
Yanında verilen kaynak kodu ile yazarının adını koruyarak üzerinde her
türlü değişiklik yapmak kullanıcıların elindedir. Böylece sağlam tabanlı
bir kaç satır kod, binlerce programcının da yardımıyla hiç beklenmedik
bir uygulama yazılımına, kelime işlemciye ya da hesap tablosuna
dönüşebilir. İnternet, buna benzer onlarca başarı hikayeleriyle doludur.
Yazılan bir programın serbest hale getirilebilmesi için bir seçenek de
bu programın GNU lisansı altında dağıtılmasıdır. Bu haliyle dolaşımda
bulunan yazılım “copyleft'' adını alır.
Serbest yazılım modelinde aynı ya da yüksek kalitede bir mal aynı fiyata
değil, ücretsiz olarak elde edilebilir.
Ancak programın sadece çalıştırılabilir hali GNU serbest yazılımı olarak
algılanamayacağı gibi satın alınan bir bilgisayara yüklenen ücretsiz
ya da cüzi bir ücret karşılığı alınan yazılım da serbest kapsamına girmez.
"copyright'' kavramı, ayrıca üretileni satan bir malsahibi kavramını da
akıllara getiriyor. Bir malsahibinin amacı da çoğu kez yazılımı geliştirmek
değil, satmak oluyor. Nadir olmayan ve üzerinde düşünülmesi gereken
başka bir durum da yazar ile programı arasında beklenmedik bir bağ
oluşması.
Yazar bu durumda çoğunluğun gereksiniminlerini ve ihtiyaçlarını ikinci
planda bırakabilir ya da kendi beğenisini ürüne ekler. Gelişmeyi engelleyen
bu durumun ruhen kaygı verdiği de ortadadır.
Program yazmak bir başlangıçtır, bu atılımı halkın hizmetine sunmak
için onu kaynak koduyla birlikte sunmalısınız. Linux dünyası serbest yazılım
felsefesiyle birlikte sadece geliştiricilere değil, İnternet'i işinde,
hobisinde ve boş vakitlerinde kullanan tüm bilgisayar severlere açık
gelişimin önemini kanıtlarken sanal projeler yardımıyla nasıl daha
üretken olunabileceğinin yolunu da gösteriyor.