Linux Üzerinde Erişim İzinleri

Transkript

Linux Üzerinde Erişim İzinleri
İçindekiler
Sudo Dergi Tayfası
Serkan Çalış
Eren Kovancı
Hüseyin Sarıgül
Çağlar Ersöz
Burak Demir
Murat Pınar
Aydın Bez
Caner Bulut
Ergin Üresin
Misafir Yazarlar
Samet Konak
Kadir Yücel
SUDO Dergi tayfası
Ubuntu Türkiye
bünyesindedir.
İletişim: sudo@ubuntu­tr.org
SUDO, Creative Commons(CC)
by­nc­nd ile lisanslanmıştır.
Not: SUDO, Gimp ve Scribus
gibi
özgür tasarım araçları
kullanılarak
hazırlanmıştır. SUDO,
GNU/Linux
dağıtımları altında tüm PDF
yazılımlarıyla
sorunsuz olarak görüntülenir.
SUD
Open source software proves affordable, flexible for NIH, DoD................................Samet KONAK...............1
Linux üzerinde erişim izinleri......................................................................................Serkan ÇALIŞ................3
Conky.........................................................................................................................Murat PINAR.................8
İnceleme: SMPlayer...................................................................................................Eren KOVANCI............12
Scribus.......................................................................................................................Çağlar ERSÖZ.............15
Espeak.......................................................................................................................Ergin ÜRESİN..............17
Amarok 2....................................................................................................................Burak DEMİR..............18
Linux ve Grafik............................................................................................................Kadir YÜCEL..............19
Bash Extended Globbing............................................................................................Samet KONAK............23
Shell script'e başlangıç...............................................................................................Caner BULUT.............25
Çocuklara da özgürlük................................................................................................Burak DEMİR..............28
Bilginin bilişim alanında gelişimi ve üretimi.................................................................Aydın BEZ...................30
Gimp ile renk düzeltme...............................................................................................Hüseyin SARIGÜL......33
.
Editör l Çağlar Ersöz
SUD
Open source software proves affordable, flexible for NIH, DoD
SUD
On yıl önce, ulusal sağlık enstitülerindeki mühendisler süper
hesaplamalar yapabilmek (supercomputing) adına bir grup sıradan
bilgisayarı bir araya topladılar. Sonuç başarılı oldu ve binlerce DNA
dizisini işlemek veya hücre işlevi üzerine çalışmak adına 6 aylık molekül
simülasyonlarını çalıştırmak gibi aksi takdirde imkansız görünen
işlemlerin gerçekleştirilmesini sağlayan bu yöntem o günden itibaren
geliştirilmeye başlandı.
başına 370 $ masrafı olurdu. Bu bedel tescilli yazılımların bakımı için
harcanan ve satın alma fiyatının en az yüzde 10'u değerindeki yıllık
ücretlerini içermemektedir" diyor Fellini.
Bu simülasyonlar bilim adamlarına laboratuvarlarda ölçemedikleri
şeyleri inceleme imkanı sağlamaktadır. — Örnek olarak, moleküller
hücre zarına nasıl nüfuz edeler veya bir ilaç bir proteinle nasıl etkileşir.
NIH'in sayısal biyoloji uzmanı Susan Chacko "Açık laynak yazılım
lisanslarının sınırlandırmalarını ortadan kaldırmaktadır" demiştir ve
şöyle devam etmiştir: "Yazılım ve bakım alanlardaki tasarruflar
donanım alanında kullanılarak sistemin genişletilmesi sağlanabilir".
Biowulf olarak bilinen bu sistem, hızlı ağda haberleşen 6500 işlemciye
ve 8800 gigabyte hafızaya sahiptir. Bir süperbilgisayar oluşturabilmek
için yeterli sayıda yazılım satın almak acentaya milyon dolarlara mal
olabilirdi. Fakat 1999'da Biowolf'u oluşturan tasarımcılar çoğu ücretsiz
temin edilebilen açık kaynak yazılımlar kullanmayı tercih ettiler.
"1999'dan beri geliştikçe gelişti, bunu zamanında başarabildik çünkü
yazılım masrafları neredeyse sıfırdı" sözü NIH (National Institutes of
Health)'in sistem uzmanı Steven Fellini'ye ait.
Tescilli yazılımların aksine, açık kaynaklı uygulamalar uygun gördükleri
şekilde düzenleyebilmek üzere kullanıcıların uygulamanın kaynak
kodlarına ulaşmalarına izin verirler. Bütün açık kaynaklı yazılımların
ücretsiz olmamasına rağmen, açık kaynaklı yazılımlar için kullanılan
lisanslar kullanıcılara yazılımı dağıtma hakkını vermek zorundadırlar.
Açık kaynaklı lisanslar aynı zamanda teknolojik­tarafsız olmalıdır, ve
başka bir yazılıma ihtiyaç duymadan çalışmalıdırlar.
Fellini "Eğer NIH sistemini kurmak için tescilli yazılımlar kullanmış
olsaydı, masrafları nedeniyle bugünkü olduğu halinden çok daha küçük
çapta olurdu" diyor. "Biowolf için kullanılan açık kaynaklı yazılımlara
yakın Tescilli yazılımların sistemde kullanılan 2200 düğüm için lisans
Bunun yanında Biowolf kümelerinde tescilli bilimsel yazılımlar
kullanılıyor olsaydı, NIH'in gücü ancak sınırlı sayıda lisans satın almaya
yetebilirdi ve bilim adamları bu sayıyla sınırlanırdı.
Özelleştirilmiş Uygulamalar
Ancak Açık Kaynak yazılımlar kullanmanın yararı ücret tasarruflarından
ibaret değildir.Çünkü Açık Kaynak kullanıcılara yazılımın çalışmasını
sağlayan her satırı görebilmelerini sağlamaktadır, kullanıcı uygulamayı
bir hesap tablosu veya kelime işlemci gibi ihtiyaçlarına yönelik
özelleştirebilir. Tescilli yazılımlar kullanıcılarına bu esnekliği
sağlamazlar.
Savunma Departmanının veri strateji lideri Daniel Risacher
"departmanın kullandığı tescilli yazılımlar söz konusu olduğunda
esneklik çok önemli bir mevzudur" diyor.
Risacher aynı yazılımı kullanmak adına departmanın bütün şubelerinin
lisansa sahip olabilmelerine rağmen lisans anlaşmasındaki
sınırlandırmalar nedeniyle aynı yazılımın bir başka servis versiyonunun
kullanılamadığını söylemiştir. Bunun bugünün ortamında en gerekli
zorunluluklardan departmanın şubeleri arasındaki veri paylaşımına
mani olduğu belirtmiştir.
Risacher açık kaynağın departmana çok daha fazla kendi kararlarının
belirleme gücü vereceğini ve bu sayede daha kararlı bir ortam
1
Open source software proves affordable, flexible for NIH, DoD
oluşturulacağını belirtiyor. Risacher, açık kaynak servislere sadece
yazılımı paylaşma hakkını değil, aynı zamanda yazılımı tedarik etme,
satıcının tarifesinde değil acentanın tarifesinde güncelleme ve yazılımı
onarma hakkını verdiğini söylüyor.
Risacher yeni yazılıma geçiş evresinde açık kaynağın kullanıcılarına
sahip oldukları eski yazılımları tekrar kullanabilme imkanını da
sağladığını vurguluyor. Yazılımı kullanan acentalar aynı zamanda
yazılımı onarma masrafları konusunda da paylaşım yapabilmekteler
çünkü son sonuçları paylaşabilmekteler.
Risacher "Bizim amacımız kaynak kodu görebilmek ve onun üzerinde
birlik olarak çalışabilmektir, bu yazılımı güncelleme imkanı sağlamaktadır
ve yazılımı potansiyel olarak daha güvenli ve emniyetli kılmaktadır" diyor.
Risacher kasım ayında açıklanacak olan savunma acentalarına yazılım
seçme konusunda yardımcı olacak ve Açık Kaynağın departmanlar için
en iyi seçim olabileceğini vurgulayan bir açıklama üzerinde çalışıyor.
Daha Temiz Kodlar
Açık kaynak yazılım şirketi Red Hat'ın teknoloji şefi ve Açık Kaynak
Girişim Başkanı Michael Tiemann şu sözleri dile getiriyor: "Bütün bunlara
ek olarak Açık Kaynak kodlar tescilli kodlara göre daha temizdirler
(hatasızdırlar). Tescilli kodlar ortalama olarak her 1000 satır kod için 20­
30 adet hata içermektedir".
Tiemann: "20­30'unun asilerden oluştuğu 1000 askerlik bir tabur
mevzilemeyi hayal edin, bu savaşa gitmek için isteyeceğiniz türden bir
ordu değildir."
Tiemann, buna karşılık açık kaynak kodlar ortalama her 1000 satır kod
için 1'den daha az sayıda hata içermekte olduğunu söylüyor ve bu
durumun açık kaynak platformlarda geliştirilen yazılımların daha az
problem içerdiklerini göstermekte olduğunu belirtiyor.
SUD
Tiemann: "32 en popüler açık kaynak uygulamanın en kötüleri tescilli
yazılımlara oranla 50 kat daha iyi seviyede kusur yoğunluğuna
sahiptirler".
Güvenlik Üzerine Uyarı
UNIX, Linux ve Windows işletim sistemleri kullanıcılarına güvenlik
yönetim uygulamaları geliştiren Symark Software yazılım şirketinin
yardımcı pazarlama müdürü Ellen Libenson açık kaynak yazılımların
tescilli yazılımlara göre daha iyi bir ize sahip olmasının %100 güvenli
olduğu anlamına gelmediğini belirtiyor. Linux popüler bir açık kaynak
işletim sistemidir.
Libenson, Linux gibi açık kaynak ürünlerin tamamen güvenli olduğu
düşünüldüğünde ve şirketlerin topluluk tarafından geliştirilen basit
uygulamaların kullanıcıların ihtiyaçlarını giderebileceği düşünüldüğünde,
bu uygulama hakkında herhangi bir destek bulunmadığı ve kaynak
kodun saldırılara karşı savunmasız olup olmadığı hakkında kimsenin
güvence almadığı anlamına gelmekte olduğunu belirtiyor.
Libenson, açık kaynak yazılım seçmeden önce (seçerken) kullanıcıların
tescilli yazılımlar için harcadıkları kadar çaba harcamaları gerektiğini
belirtiyor.
Libenson: "Ürünün arkasında gerçek bir organizasyon var mı, yoksa
ürünün kaynağı belirsiz/güvenilmez mi, kaynak çeşitli yetenek grupları
bireylerinin açık topluğunun vahşi batısı mı?".
Acentaların ürünün satıcısına önem verdikleri gibi tedarik edicisine de
önem vermeleri ve sorgulamaları gerektiğini, ürünü ortaya çıkaran
personelin kalitesinin ve ürünü oluştururken en iyi güvenlik pratik
metodlarının kullanılıp kullanılmadığının araştırılması gerektiğini
belirtiyor.
Open source software proves affordable, flexible for NIH, DoD |
Elise Castelli ­ federaltimes.com
Çeviren: Guardian
2
Linux Üzerinde Erişim İzinleri
­ Giriş ­
Linux üzerinde zaman zaman karşımıza çıkan sorun veya meselelerden
biri de dosya ve dizin erişim izinleridir. Bu yazıda kısaca izinler olacak
anılacaktır. Linux üzerinde işlerini gören bir kullanıcının izinleri mutlak
surette bilmesi gerekir. Bu kaçınılmaz bir durumdur zira ileride
karşılaşılabilecek muhtemel bir problemin çözümünü üretmek için
izinlerin tamamen anlaşılmış olması bize büyük bir getiri sağlayacaktır.
Yazıda izinlerin mantığı anlatıldıktan sonra değişikliklerin nasıl
yapılacağı da izah edilecektir. İşlemler yapılırken Linux'un temel
bileşenlerinden olan terminal yolu kullanılacaktır. İzin değişimlerini
normalde kullandığımız masaüstlerinin bize sağladığı yollarla da
yapabiliriz. Fakat bu bizi masaüstü ile sınırlar ve kullanmak zorunda
kalacağımız diğer masaüstünde tekrar bir öğrenme sürecine gitme
zorunluluğu getirir. Terminal ile yapılacak işlemleri öğrenmek bize her
Linux dağıtımında ve her masaüstünde aynı şekilde çözüm üretme
kabiliyeti kazandırır. Meselenin özünü öğrenen kullanıcı dilerse yine
diğer yollarla işini görebilir.
SUD
mevcuttur: Okuma, yazma, çalıştırma. Her bir dosya veya dizin için
bunları ayrı ayrı belirleyebiliriz. Böylece dosya veya dizinler bizim
belirleyeceğimiz izinler doğrultusunda davranış gösterir. Fakat dosya ve
dizinler için bu izinler biraz daha farklıdır. Bunu yazının ilerleyen
bölümlerinde anlatalım. Şimdi ise çıktıyı ve izin meselelerini incelemeye
çalışalım.
Görüleceği üzere çıktıda dört blok mevcuttur. İlk blokta sadece "­"
karakteri vardır. İkinci blok rw­, üçüncü ve dördüncü bloksa r­­
bölümünü içerir. Buradaki ilk bloku normal dosyalar için her zaman "­"
olarak görürüz. Dizinlerde bu "d" olacaktır. Blok aygıtlarında "b",
karakter aygıtlarında ise "c" olarak geçer. Fakat bahsettiğimiz son iki
mesele bu yazının konusu değildir. Ancak kabaca söylemek gerekirse
Linux üzerinde diskler, cd­rom gibi aygıtlar blok aygıtlarıdır. Fare,
klavye gibi aygıtlar ise karakter aygıtlarıdır. Aşağıda çıktı örneklerini
görebilirsiniz:
­ İzin Seçenekleri ve Bloklar ­
drwxr­xr­x 2 serkan serkan 4096 2009­01­06 00:46 deneme_dizin/
brw­rw­­­­ 1 root disk 8, 0 2009­01­05 20:53 /dev/sda
crw­rw­­­­ 1 root root 13, 63 2009­01­05 20:53 /dev/input/mice
Öncelikle işe izin bölümlerinin ne anlama geldiğini anlatarak başlayalım.
Aşağıda ev dizinimizde oluşturulan yeni bir dosyanın izin bölümleri
görülmektedir. Terminal ile bir dosya veya dizinin izinlerini görmek için:
Çıktılarımızda ilk bölümde bu ayrımı belirten karakterleri ayrı ayrı
görebiliyoruz. Bu konuyu burada kapatıp izin bloklarından devam
edelim.
ls ­l dosya_ismi
ls ­ld dizin_ismi
Mevcut bulunan üç bloktan birincisi kullanıcının, ikincisi dosya veya
dizinin ait olduğu grubun, üçüncü ve son blok ise diğerlerinin erişim
izinlerini gösterir. Bu durumda yukarıdaki örnekte aldığımız çıktıya
bakacak olursak,
komutları kullanılabilir. Çıktıda karşımıza çıkan ilk bölüm izinlerle
alakalıdır:
­rw­r­­r­­
Çıktının ne anlama geldiğini anlatmadan önce izin meselesinin temeline
inelim.
Linux dizin ve dosya yapısında izinler için temelde üç seçenek
­rw­r­­r­­
rw­ : Kullanıcı
r­­ : Grup
r­­ : Diğerleri
3
Linux Üzerinde Erişim İzinleri
şeklinde bir yapı görürüz.
Bu aşamada artık izinler için belirlenen ifadelerin ne anlama geldiğini
görebiliriz.
r : Okuma (Read)
w : Yazma (Write)
x : Çalıştırma (eXecute)
Görülebileceği üzere her bir blok üç haneden müteşekkildir. Bizim
belirleyeceğimiz izinlerin durumuna göre bu haneler değişiklik gösterir.
Çıktımızdan yola çıkarsak,
rw­ : Dosyanın sahibi okuma ve yazma hakkına sahipken, çalıştırma
hakkına sahip değildir. Kısacası dosya kimse için çalıştırılabilir durumda
değildir.
r­­ : Dosyanın ait olduğu gruptaki kullanıcılarla beraber diğer kullanıcılar
ise sadece okuma hakkına sahiptirler.
­ Dosya ve Dizinler İçin İzin Farklılıkları ­
Tam bu aşamada izinlerin dosyalar ve dizinler açısından nasıl
değiştiğine değinebiliriz.
Dosyalar için zaten bunu anlatmış olduk: r ile işaretlenmiş bir dosya için
okunma izni vardır. w yazma hakkıyla beraber isim değiştirme hakkı da
verir bize. x ile de çalıştırılabilir duruma getirmiş oluruz.
Dizinlerde ise durum biraz değişiktir.
r izni verilen bir dizinin içeriğini listeleme hakkına sahip oluruz. Eğer bu
hak verilmemişse dizin içeriğini listeleyemeyiz.
w izni verilen bir dizinin içinde alt dizin ve dosya oluşturma hakkını elde
ederiz.
x izni ise bize dizine girme hakkı verir.
Kabaca bakacak olursak bir dizin rw­ iznine sahipse girme hakkımız da
SUD
olmadığından hiçbir şey yapamayız (Aslında ls ile içeriğe bakarız ancak
alt dizin ve dosyalar görünmesine rağmen izin ve sahiplik gibi bilgiler
görünmez).
r­x iznine sahip bir dizine girip, içeriği listeleyebiliriz ancak dosya veya
alt dizin oluşturamayız.
­ İzin İfadelerinin Rakamsal Gösterimi ­
Yazının bir sonraki bölümü olan izin değişimlerine geçmeden önce
ifadelerin rakamsal gösterimini anlatmakta fayda var. İzinleri
değiştirirken kullanacağımız r,w,x gibi harfsel ifadelerin yerine daha
kullanışlı olabilen rakamsal gösterimleri açıklayalım. Daha fazla detay
vererek kafa karıştırmamak için ifadelerin doğrudan rakamsal değerlerini
vererek, daha fazlasını öğrenmek isteyen okuyucularımızın yazının
sonundaki gelişmiş yönetim bölümüne bakmalarını belirtelim.
r: 4
w: 2
x: 1
değerlerini alır. İzinleri belirlerken bu değerleri kullanarak üç blok için de
farklı şekilde işlem yapabiliriz. İzinleri verirken toplamlardan yola çıkarız.
­ İzinlerin Belirlenmesi ­
Bir önceki bölümde de ifade edildiği gibi izinler belirlenirken rakamsal
ifadelerin kullanılması daha pratiktir. Bu nedenle öncelikli olarak
rakamsal yöntem anlatılacaktır.
Linux üzerinde bir dosya veya dizinin izin işlemleri
chmod izinler dosya_ismi
komutu ile gerçekleştirilir. Dizinlerde barındırılan alt dizinler ve onların
4
Linux Üzerinde Erişim İzinleri
altındaki dosyaların da izinlerine müdahale etmek içinse ­R seçeneği
kullanılır:
chmod ­R izinler dizin_ismi
Şimdi izinlerimizin bir önceki bölümde anlatılan rakamsal ifadeler
doğrultusunda belirlenmesine geçebiliriz.
1. senaryo
Elimizdeki örnek dosyaya sadece sahibi için tüm hakları verip, geri kalan
grup ve diğer kullanıcılar için hiçbir hak vermek istemiyoruz.
Yapacağımız hesap dört işlemin ötesine gitmeyecektir:
Dosya sahibi için: rwx = 4+2+1 = 7
Diğerleri için: ­­­ = 0+0+0 = 0
O zaman kullanılacak komut:
chmod 700 dosya_ismi olacaktır.
2. senaryo
Senaryoyu değiştirelim. Dosya sahibinin okuyup, yazmasını, diğerlerinin
sadece okumasını istiyoruz:
SUD
Dosya sahibi için: rwx = 4+2+1 = 7
Grubu için: r­x = 4+0+1 = 5
Diğerleri için: ­­x = 0+0+1 = 1
chmod 751 dosya_ismi
Örneklerle de anlatıldığı üzere izin meselesi, temelini anladıktan sonra
son derece kolay bir şekilde halledilebiliyor. Şimdi rakamsal ifade yerine
harfsel ifadelerle izinlere nasıl müdahale edebileceğimize bir bakalım.
İlk etapta harfsel ifadenin daha kolay olduğu düşünülebilir ancak
örnekler incelendiğinde neden daha meşakkatli olduğu anlaşılacaktır.
Kullanacağımız komut yine chmod'dur. Fakat bu sefer rakamlar yerine
izinlerin harfsel ifadelerini kullanacağız, +r +w +x gibi. Dosyanın sahibi
için u (user), grubu için g (group), diğerleri içinse o (others) ile hakları
tanımlarız.
Öncelikle belirtelim, üç blok için de (sahip, grup, diğerleri) kimin için
olduğunu söylemeden tek bir defada belirlenebilecek izin hakları r ve
x'tir. w tek seferde sadece kullanıcı için belirlenebilir. Örneğin hakları ­­­
olan bir dosya için şu komut sadece sahibi için +w hakkı verecektir.
chmod +rwx dosya_ismi
Dosya sahibi için: rw­ = 4+2+0 = 6
Diğerleri için: r­­ = 4+0+0 = 4
Daha işin başındayken bile ufak bir kaybımız oldu. Bu kaybı şu şekilde
aşabiliriz:
chmod 644 dosya_ismi
chmod ugo+rwx dosya_ismi
3. senaryo
Ancak asıl kaybı örnekleri inceledikten sonra göreceğiz. Rakamsal
ifadelerdeki izinleri anlatırken kullandığımız örnekler üzerinden anlatıma
devam edelim.
Son senaryomuza geçelim. Dosya sahibinin her hakka sahip olmasını,
grubun sadece okuyup çalıştırmasını, diğerlerinin ise sadece
çalıştırmasını istiyoruz:
5
Linux Üzerinde Erişim İzinleri
1. senaryo
Kullanacağımız komut şu şekilde olmalıdır:
chmod u+rwx dosya_ismi
chmod go­rwx dosya_ismi
olacaktır. Gördüğümüz gibi komut değil komutlar kullandık.
2. senaryo
chmod u+rw­x dosya_ismi
chmod go+r­wx dosya_ismi
3. senaryo
chmod u+rwx dosya_ismi
chmod g+rx­w dosya_ismi
chmod o+x­rw dosya_ismi
Sanırım rakamsal olarak izinleri değiştirmenin ne kadar yararlı olduğunu
daha iyi görmüş olduk.
­ Gelişmiş Yönetim 1: Rakamsal İfadelerin Detaylı İncelenmesi ­
Rakamsal ifadeleri anlatırken doğrudan izinlerin değerlerini vermiş ancak
neden bu şekilde olduğunu anlatmamıştık. Şimdi bu konuya değinmeye
çalışalım. Anlattığımız üzere, r:4, w:2, x:1 değeri alır demiştik. Buradaki
belirleyici kıstas bloklardaki her bir hanenin bit olarak değeridir ve şu
şekilde gösterilebilir:
SUD
İzinler
İkilik
Onluk
­­­
­­x
­w­
­wx
r­­
r­x
rw­
rwx
000
001
010
011
100
101
110
111
0
1
2
3
4
5
6
7
Burada da gördüğümüz gibi harfsel ifadeler tek başlarına verdiğimiz
değerleri alıyorlar. Biz dört işlem ile meseleyi hallettiğimizden dolayı
diğer değerleri hafızamızda tutmamıza ve hatta bilmemize bile gerek
yok.
­ Gelişmiş Yönetim 2: Setuid, Setgid ve Stickybit seçenekleri ­
Dosya ve dizin izinlerinde normal erişim haklarına ek olarak başka
izinler de belirleyebiliriz. Bunlar sıradan bir kullanıcının çok az
başvuracağı seçeneklerdir.
User ID Belirlemek (suid)
Eğer suid belirlenmişse, bir dosya sahibi kimse onun haklarıyla
çalışacaktır. Örneğin dosya root'a aitse hangi kullanıcı olursa olsun,
dosya çalıştırıldığında root hakları ile çalışır.
Suid belirlemek için şu komut kullanılır:
chmod 4755 dosya_ismi
Burada 755 sadece bir örnektir, önemli olan en baştaki 4 rakamıdır.
Suid'i sağlayan işte bu 4 rakamıdır. Muadili olan harfsel komutsa şudur:
6
Linux Üzerinde Erişim İzinleri
chmod u+srwx dosya_ismi
chmod go+rx­w dosya_ismi
İzinlere baktığımızda şöyle bir gösterimle karşılaşırız:
­rwsr­xr­x
Burada ilk bloktaki son hanede suid'in belirlendiğini s harfinden rahatça
görebiliriz.
SUD
Sticky Bit Belirlemek
Sticky bit belirlenen bir dosyada sadece dosyanın sahibi erişim izinlerini
değiştirebilir ve dosyayı silebilir. Eğer sticky bit belirlenmemişse dosyaya
yazma hakkına sahip herhangi birisi erişim izinlerini değiştirip, dosyayı
silebilir. Yine bir dizin paylaşan kullanıcılar için kullanışlıdır bu seçenek.
Sticky bit belirlemek için şu komu kullanılır:
Group ID Belirlemek (sgid)
chmod 1755 dosya_ismi
Sgid suid'e benzer ancak biraz farklılık gösterir. Sgid daha çok dizinler
için belirlendiğinde yararlı olur. Sgid belirlenmiş bir dizin altında
oluşturulacak yeni bir dosya dizinin grup erişimleri ile aynı değerleri alır.
Kısacası dizin hangi gruba aitse dosya da o gruba dahil olacak şekilde
oluşturulur. Böylece ortak dizinde çalışan kullanıcılar yeni oluşturdukları
dosya için grup ayarları yapmak zorunda kalmazlar.
İzinler şu şekilde görülecektir:
Sgid belirlemek için şu komut kullanılır:
chmod 2755 dizin_ismi
Alternatif harfsel chmod komutunu Suid için verilen anlatımdan yola
çıkarak kullanabilirsiniz.
İzinler şu şekilde görülecektir:
drwxrws­­­
Görebileceğimiz gibi sadece grup blokunda s harfi mevcut ve bu sgid
belirlendiğine işaret eder.
­rwxr­xr­t
Son hanedeki t harfi sticky bit'in belirlendiğini gösterir.
­ Sonuç ­
İlk aşamada karışık gibi görünen dosya ve dizin izinleri birkaç pratiğin
ardından rahatlıkla öğrenilebilecek kadar kolaydır. Karşınıza çıkacak
izinlerle alakalı durumlarda chmod komutunu kullandıkça meseleyi daha
iyi kavrarsınız. Yazımızı bitirirken son olarak izin meselelerinin sistem
genelinde hayati önem taşıdığını belirtelim. Sistem geneli gibi büyük
değişikliklerle normal kullanıcının pek işi olmaz. Eğer olmuşsa ve
kullanmanız gerekiyorsa bile çok dikkatli olun. Bilhassa ­R ile
kullanılacak yanlış bir chmod komutu tüm sistemi çalışmaz hale
sokabilir.
Serkan Çalış
7
Conky
Ubuntu’dan Arch Linux’a geçmemle hayatımda değişen şeyler oldu. Her
ne kadar yeni sisteme sahip bir kullanıcı olsam da, Arch Linux’a
geçtikten sonra programların ne kadar bellek ve işlemci kullandığı ile
ilgilenmeye başlayıp bunları minimuma düşürmeye başladım. Bu
bağlamda tanıştığım programlardan biri de Conky.
Conky küçük bir dosya aracılığı ile (~/.conkyrc) çok az sistem ve ram
tüketerek sisteminiz hakkında yapılandırmanıza bağlı olarak
belirlediğiniz özellikleri masaüstünde görmenizi sağlayan bir program.
Kurulmuş hali 800 kb kadar.
Conky ile yapılabilecekler sayısız olmakla birlikte küçük örnekler vermek
gerekirse saati, tarihi, sistem özelliklerinizi, o anki cpu / ram kullanımını,
hard diskinizin bölümlerinin doluluk oranlarını, kullandığınız müzik
çalıcının betikleri aracılığı ile belirlediğiniz özellikler dahilinde
gösterebilirsiniz. Bunun haricinde perl, python gibi programlama dilleri ile
hazırladığınız betikleri conky ile masaüstünüzde görebilirsiniz. Conky’nin
kendi hazırladığınız betikler hariç kendi dahilinde gelen 250 tane veri var
ve bunlardan hangisini seçip hangi renk, yazı biçimi, yazı boyutu ile
gösterileceğini ve yerini siz belirlemektesiniz.
Aslında masaüstünü en verimli halde kullanmayı seven bir insanımdır,
her alanını kullanmak isterim ancak Conky bu alışkanlığımı da değiştirdi.
Şu anda terminalimi, Firefox penceremi, Msn pencerelerimi Conky’nin
görünmesini engellemeyecek şekilde boyutlandırıp her an karşımda
görmek istemeye başladım, böyle de güzellikleri var.
Conky’nin en güzel yanlarından birisi de ikinci paragrafta belirttiğim
~/.conkyrc dosyasıdır. Bu dosya kurulumda bulunmuyor, içini siz
doldurup kendinize özel Conky’nizi yaratarak veya internetten
bulacağınız hazır conkyrc dosyalarını indirerek kullanabiliyorsunuz.
Önerim internetten beğeneceğiniz bir conkyrc dosyası indirip kendi
ihtiyaçlarınız dahilinde düzenlemeniz. Bu sayede hem Conky’nin
işleyişini öğreniyorsunuz hem de kendinize özel bir şeyler ortaya
çıkarıyorsunuz.
Conkyrc Dosyası Düzenleme
Conkyrc dosyası iki bölümden oluşmakta. İlk bölüm Conky’nin
ayarlarının yapılacağı ayar kısmı ve diğer bölüm ise Conky üzerinde
SUD
göstermek istediğimiz şeyleri yazdığımız ikinci kısım. Şimdi dilerseniz
bunları kabaca inceleyelim.
Conky ayarları :
alignment : Conky’nin nereye yerlesecegi, top_left, top_right,
top_middle, bottom_left, bottom_right, bottom_middle, middle_left,
middle_right seçenekleri kullanabilirsiniz.
background : Conky’nin kendisine arka plan atayıp atamayacağı. Yes ya
da no seçenekleri geçerlidir.
default_color : Conky’nin hangi renkte olacağını belirler.
double_buffer : Gelişmiş ekran önbelleğini ayarlar. Yes ya da no
seçenekleri geçerlidir.
draw_shades : Conky’nin gölge kullanıp kullanmayacağı. Yes ya da no
seçenekleri geçerlidir.
default_shade_color : Conky’nin gölge rengi. Eğer gölge kullanıyorsanız
bu satırdan gölge rengini ayarlayabilirsiniz.
draw_borders : Conky’nin çerçeve kullanıp kullanmayacağı. Yes ya da
no seçenekleri geçerlidir.
draw_graph_borders : Grafiklere çerçeve çizilip çizilmeyeceği. Yes ya
da no seçenekleri geçerlidir.
gap_x : Conky’nin soldan ne kadar boşluk bırakacağı. 1­100 seçenekleri
kullanılabilir. Yazdığınız rakama göre belirlediğiniz özellikler sağa doğru
kayacaktır.
gap_y : Conky’nin yukardan ne kadar boşluk bırakacağı. 1­100
seçenekleri kullanılabilir. Yazdığınız rakama göre belirlediğiniz özellikler
aşağıdan başlayacaktır.
maximum_width : Conky’nin kullanacağı en geniş alan. Rakam olarak
giriyorsunuz. Boyut size kalmış.
override_utf8_locale : Türkçe karakterlerde sorun yaşamamak için utf8’i
locale bölgeye göre zorlayıp üzerine yazması. Yes ya da no seçenekleri
geçerlidir.
own_window : Conky’nin kendi penceresine sahip olup olmayacağı. Yes
ya da no seçenekleri geçerlidir.
8
Conky
own_window_type : Conky’nin kullanacağı pencere tipi.
own_window_transparent : Conky’nin şeffaflık kullanıp kullanmayacağı.
Yes ya da no seçenekleri geçerlidir.
own_window_hints : Conky’nin pencere özellikleri. Undecorated,
below,sticky, skip_pager, skip_taskbar seçeneklerinden istediklerinizi
seçebilirsiniz.
use_xft : Fontların daha güzel görünmesi için açabilirsiniz. Yes ya da no
seçenekleri geçerlidir.
update_interval : Conky’nin kaç saniyede bir kendisini güncelleyeceği.
Rakamlar ile saniyeyi belirleyebilirsiniz.
Xftalpha : Fontların yumuşatılma değeri. 0,1 den 1 e kadar seçenekleri
kullanabilirsiniz.
Xftfont : Xft’nin yazıtipi.
Diğer ayar nesnelerini incelemek isterseniz
http://conky.sourceforge.net/config_settings.html adresini ziyaret
edebilirsiniz.
Conky İle Yapabilecekleriniz
Conky’nin görüntüleyeceği verilere nesne diyoruz. Conky’deki nesneleri
genel hatları ile inceleyip, neler yapabileceğimizi
–görüntüleyebileceğimizi­ aşağıda görebiliriz.
Kullandığınız ip adreslerini görüntüleyebilirsiniz.
(addr, addrs)
Anakart ısısını celcius ve fahrenheit olarak gösterebilirsiniz.
(acpitemp, acpitempf)
Audacious kullanıyorsanız audacious nesnelerini kullanarak hangi
şarkıyı dinlediğinizi, şarkının uzunluğunu, geçen ve kalan süreyi
görüntüleyebilirsiniz.
(audacious_bar, audacious_bitrate, audacious_channels,
audacious_filename, audacious_frequency, audacious_length,
audacious_length_seconds, audacious_playlist_position,
audacious_playlist_length, audacious_position,
audacious_position_seconds, audacious_status, audacious_title)
SUD
Laptop kullanıyorsanız pil durumunuzu
görüntüleyebilirsiniz.
(battery, battery_bar, battery_percent,
battery_time)
BMPx kullanıyorsanız BMPx nesnelerini
kullanarak hangi şarkıyı dinlediğinizi,
şarkının uzunluğunu, geçen ve kalan süreyi
görüntüleyebilirsiniz.
(bmpx_artist, bmpx_album, bmpx_title,
bmpx_track, bmpx_bitrate, bmpx_uri)
Conky’nin kurulum tarihini gösterebilir,
versiyonunu görüntüleyebilirsiniz.
(conky_version, conky_build_date)
Belirlediğiniz süre zarfında işlemci
kullanımını görüntüleyebilirsiniz. Buna ek
olarak grafik görüntü koyma şansınız da var.
(cpu, cpubar, cpugraph)
Hard diskinizdeki bölümlerin toplam boyutu,
kullanılan boyutu ve ne kadar boş alan
bulunduğunu görebilirsiniz. Grafik görüntüsü
ekleyip daha görsel hale de getirebilirsiniz.
(diskio, diskiograph, diskio_read,
diskiograph_read, diskio_write,
diskiograph_write disk_protect)
Oturum esnasında internet kullanımınıza
göre dosya indirme hızınızı, gönderme
hızınızı ve toplam indirilen ve gönderilen
dosya boyutunu grafik olarak ve yazılı
gösterebilirsiniz.
(downspeed, downspeedf, downspeedgraph,
upspeed, upspeedf, upspeedgraph)
Kernel ismini ve işletim sistemi tipini
gösterebilirsiniz.
9
Conky
(kernel, machine)
Pop3 mail sahibi iseniz, okumadığınız, okuduğunuz mailleri
gösterebilirsiniz.
(mails, mboxscan, new_mails, pop3_unseen, pop3_used)
Bilgisayarınızın o anki ram kullanımını grafiksel ve yazı ile
görüntüleyebilirsiniz.
(mem, membar, memmax, memperc)
MPD (Music Player Daemon) kullanıyorsanız MPD nesnelerini kullanarak
hangi şarkıyı dinlediğinizi, şarkının uzunluğunu, geçen ve kalan süreyi
görüntüleyebilirsiniz.
(mpd_artist, mpd_album, mpd_bar, mpd_bitrate, mpd_status, mpd_title,
mpd_vol, mpd_elapsed, mpd_length, mpd_percent, mpd_random,
mpd_repeat, mpd_track, mpd_name, mpd_file, mpd_smart)
Kullandığınız dağıtımın o anda çalışan ve uyuyan işlemler sayısını
görüntüleyebilirsiniz.
(processes, running_processes)
RSS aracılığı ile belirlediğiniz RSS adreslerini conky üzerinden
belirlediğiniz sürelerde yenilenecek şekilde görüntüleyebilirsiniz.
(rss)
Belirlediğiniz süre zaafında görüntülenecek olmak üzere süreyi ve tarihi
gösterebilir, aylık takvim görüntüleyebilirsiniz.
(time, utime, tztime)
Bilgisayarınızın ne zamandır çalıştığını gösterebilirsiniz.
(uptime, uptime_short)
İşlemcinin kullandığı voltajı görüntüleyebilirsiniz.
(voltage_mv, voltage_v)
Kablosuz bağlantılarınızın özelliklerini tüm detayları ile
görüntüleyebilirsiniz.
(wireless_essid, wireless_mode, wireless_bitrate, wireless_ap,
wireless_link_qual, wireless_link_qual_max, wireless_link_qual_perc,
wireless_link_bar)
XMMS2 kullanıyorsanız XMMS2 nesneleri kullanarak hangi şarkıyı
dinlediğinizi, şarkının uzunluğunu, geçen ve kalan süreyi
görüntüleyebilirsiniz.
SUD
(xmms2_artist, xmms2_album, xmms2_title, xmms2_genre,
xmms2_comment, xmms2_decoder, xmms2_transport, xmms2_url,
xmms2_tracknr, xmms2_bitrate, xmms2_id, xmms2_duration,
xmms2_elapsed, xmms2_size, xmms2_percent, xmms2_status,
xmms2_bar, xmms2_smart)
Nesnelerin ne işe yaradığını görmek için
http://conky.sourceforge.net/variables.html adresini kullanabilirsiniz.
CONKY İle Kullanabileceğiniz Hazır Betikler
Hava Durumu: Conky’niz aracılığı ile hava durumunu görüntülemek için
hava durumu betiğini kullanabilirsiniz.
Kurulumu :
Ekte verilen conkyForecast.py isimli dosyayı ~/scripts/conkyForecast.py
olarak kaydedin.
~/.conkyrc ayar dosyanızı açıp istediğiniz bölüme;
${alignc}${color #3366CC}~[ Weather ]~
${color #3366cc}${execi 1680 python ~/scripts/conkyForecast.py ­­
location=TUXX0015 ­­datatype=DW}:${alignc} ${execi 1680 python
~/scripts/conkyForecast.py ­­location=TUXX0015 ­­datatype=DW ­­
startday=1 ­­endday=1}:${alignr}${execi 1680 python
~/scripts/conkyForecast.py ­­location=TUXX0015 ­­datatype=DW ­­
startday=2 ­­endday=2}:
${color #FFFFFF}${font Weather:size=25}${execi 1680 python
~/scripts/conkyForecast.py ­­location=TUXX0015 ­­datatype=WF ­­
startday=0 ­­endday=2 ­­spaces=4}${font}${color #CCCCCC}
${execi 1680 python ~/scripts/conkyForecast.py ­­location=TUXX0015 ­­
datatype=LT}${alignc}${execi 1680 python ~/scripts/conkyForecast.py ­­
location=TUXX0015 ­­datatype=LT ­­startday=1 ­­
endday=1}${alignr}${execi 1680 python ~/scripts/conkyForecast.py ­­
location=TUXX0015 ­­datatype=LT ­­startday=2 ­­endday=2}
${execi 1680 python ~/scripts/conkyForecast.py ­­location=TUXX0015 ­­
datatype=HT}${alignc}${execi 1680 python ~/scripts/conkyForecast.py ­­
location=TUXX0015 ­­datatype=HT ­­startday=1 ­­
10
Conky
SUD
Murat Pınar'ın masaüstü görüntüleri
endday=1}${alignr}${execi 1680 python ~/scripts/conkyForecast.py ­­
location=TUXX0015 ­­datatype=HT ­­startday=2 ­­endday=2}
satırını ekleyin.
İp Numarası : Conky’niz aracılığı ile ip numaranızı görüntülemek için ip
numarası betiğini kullanabilirsiniz.
Kurulumu:
Ekte verilen ip.txt isimli dosyayi /usr/bin/ip.txt olarak kaydedin.
Gerekli çalıştırma haklarını verin. ( chmod 777 /usr/bin/ip.txt)
~/.conkyrc ayar dosyanızı açıp ip numaranızı görüntülemek istediğiniz
yere;
${color grey}IP :${color white} ${execi 3600 ip }
satırını ekleyin.
GMail Eklentisi : Gmail kullanıyorsanız Conky aracılığı ile yeni gelen
maillerinizi kontrol etmek için bu eklentiyi kullanabilirsiniz.
Kurulumu :
Ekte verilen gmail.py isimli dosyayi /usr/bin/gmail.py olarak kaydedin.
Gerekli çalıştırma haklarını verin ( chmod 777 /usr/bin/gmail.py )
~/.conkyrc ayar dosyanızı açıp gmail eklentinizin görüntülenmesini
istediğiniz yere;
${color #ffcb48}Gmail${hr 2}
${color lightgray}Email: ${color D7D3C5}${execi 300 python
~/usr/bin/gmail.py}
satırını ekleyin.
Son Olarak..
Conky 800 kb’lık boyutu ve çok az ram kullanımı ile baş tacı olabilecek
bir program. Eğer masaüstünüzde hareket görmek istiyorsanız sizin için
biçilmiş kaftan.
Not: Dergimizin bu sayısında ek olarak .conkyrc dosyamı ve hazır
betikler bölümünde incelediğim hava durumu, ip numarası, gmail
eklentisi için kullanmanız gereken betikleri bulabilirsiniz. İstediğiniz gibi
değiştirebilir veya memnun kalırsanız bu şekli ile kullanabilirsiniz.
Arch Linux 2008.06 ­ Xfce 4.6
Murat PINAR
11
İnceleme: SMPlayer
SUD
SMPlayer
Son 2 senem Ubuntu içinde kullanabileceğim, Windows sistemlerde
kullandığım GOM Player'ın yerini doldurabilecek bir oynatıcı aramakla
geçti diyebilirim. Kaffine, VLC, Mplayer, KMPlayer gibi onlarca popüler
görüntü oynatıcısını denedim ama hiçbirinden verim alamadım.
Özellikle alt yazılımı Divx (avi) film izlemek bir işkenceye dönüşüyordu.
Denediğim bütün oynatıcılarda alt yazı kalitesi düşük ve alt yazı filmin
altındaki siyah alana gelmiyordu.
Alt yazılı film izleme konusunda Ubuntu'nun ve Ubuntu ekseninde diğer
Linux dağıtımlarının yetersiz kaldığını, GOM Player'ı her zaman
arayacağımı düşünürken SMPlayer ile tanıştım. Önceleri alışamadım bu
oynatıcıya, soğuk geldi, ayarlarını yapamadım, istediğim kaliteyi
bulamadım derken biraz kurcaladıktan sonra benim için vazgeçilmez bir
oynatıcı haline geldi. SMPlayer artık film dendiğinde ilk aklıma gelen
oynatıcı olmuş, bana ilk aşkım GOM Player'ı bile unutturmuştu.
Neydi SMPlayer'ı bu kadar özel yapan derseniz herhalde vereceğim
cevaplar bu yazıya sığmaz ama ben sizleri sıkmadan biraz özelliklerini
dilim döndüğünce, kalemim yettiğince anlatmaya çalışacağım.
Bölüm 1 ­ Genel Görünüm
SMPlayer bildiğiniz, sevdiğiniz oynatıcılardan farklı bir görünüme sahip
değil. Gom Player ile kıyaslanırsa benzer bir arayüze sahip. Özellikle
Windows'dan geçiş yapacaklar rahatlıkla alışacaklardır.
Bölüm 2 ­ SMPlayer Özellikleri
SMPlayer özellikleri saymakla bitmeyecek kadar fazla ancak ben size
en temel ve en çok işinize yarayacak özellikleri sıralamaya çalışacağım,
özellikle yazının sonlarına doğru Ubuntu Türkiye sayesinde öğrendiğim
bazı püf noktalarını sizlerle paylaşacağım.
* 0.6.4 sürümünden genel bir görünüş
(­) Döndürme özelliği: Bu özellik
sayesinde filminizi 90 derece sola, 90 derece sağa ya da 180 derece
kendi ekseni etrafında döndürebilirsiniz. Menü yolu Video > Rotate
(­) Filtreler: Bu özellik sayesinde elde ettiğiniz görüntü üzerinde
oynayabilir ve film izleme seçeneklerini değiştirebilirsiniz. Menü yolu
Video > Filtreler
(­) Eşitleyici: Eşitleyici sayesinde zıtlık, parlaklık, renk tonu, doygunluk ve
gama gibi değerleri değiştirebilir, göz zevkine kitap eden ve gözü
yormayan daha kaliteli görüntüler elde edebilirsiniz. Menü yolu Video >
Eşitleyici
12
İnceleme:SMPlayer
SUD
(­) Kanallar: Kanallar vasıtasıyla eğer ses çıkışınız destekliyorsa stereo,
4+1 surround ve 5+1 surround ses ayarlarını yapabilirsiniz.
Bölüm 3 ­ Püf Noktaları
Alt yazı ayarları
İşte benim en büyük derdim olan alt yazı ayarlarını burada vereceğim
püf noktaları sayesinde sorunsuzca yapabilirsiniz.
(­) Türkçe karakter seçimi
Seçenekler > Özellikler > Alt Yazılar > Alt yazı Default Subtitle
Encoding: bölümünden Türkçe (ISO­8859­9) kısmını seçerseniz alt
yazıda Türkçe sorunu yaşamazsınız.
(­) Alt yazı kalitesini arttırma
Seçenekler > Özellikler > Alt yazılar > SSA / ASS Library yolunu takip
edin ve Use SSA/ASS ile başlayan cümlenin başındaki kutucuğa
tıklayın. Styles kısmına
Bold=1,Outline=1,Shadow=4,FontName=Sans,Fontsize=21 yazıp
sırasıyla uygula ve tamam tuşlarına basınız. Bu sayede alt yazı
kalitesinde gözle görülür bir kalite artışı olduğunu fark edeceksiniz.
(­) Alt yazıyı siyah alanda göstermek
Video > Filtreler > Add black borders seçeneğini işaretleyin. Bu sayede
alt yazılar filmin en altındaki siyah alanca gözükecektir.
(­) Yazı boyutunu pencereye göre ayarlamak
Seçenekler > Özellikler > Alt Yazılar >Yazıtipi (Font) kısmından
Autoscale: bölümüne gelin ve filmin genişliğiyle orantılı seçeneğini
seçin. Bu şekilde ayarlanırsa alt yazınız filmin pencere boyutuna göre
otomatik olarak orantılanacaktır.
* Gizli Dosyalar isimli 1998 yapımı bilim kurgu filminden bir görüntü
Bölüm 4 – Son Nokta
Smplayer'ın çalışması için sisteminizde gerekli codeclerin ve özellikle
Mplayer'ın kurulu olması gerekiyor. Sorun yaşamamak için bu hususlara
dikkat etmelisiniz.
Alt yazılı film için bulabileceğiniz en iyi oynatıcı SMPlayer. Eksileri yok
mu, tabii ki var, örneğin DVD filmlere ait özel menüleri SMPlayer şimdilik
göstermiyor. DVD filmleri de SMPlayer yerine başka oynatıcıyla
(Örneğin Kaffeine ile) izleyebilirsiniz.
13
İnceleme:SMPlayer
SUD
Eren Kovancı'nın masaüstü görüntüleri
Ubuntu 8.04
*Seçenekler menüsünden bir görüntü
Seçenekler menüsünden oynatma listesi ayarlarını, kısa yolları, filtreleri,
otomatik oynatma için disk sürücülerinizi, ekran görüntüleri kayıt yolunu,
video ve ses ayarlarını, ses paket ayarlarını, bağlantı ayarlarını, kayıt
ayarlarını ve çok daha fazlasını ayarlayabilirsiniz.
SMPlayer'ı denedikten sonra alt yazılı film izlemek için en iyi yazılım
olduğuna, GOM Player'a alternatif olabileceğine, Linux dağıtımları için
hazırlanan oynatıcılardan çok daha iyi olduğuna şahit olacak ve bu
yazıda değinilmeyen özellikleri gördükçe az bile anlatmışsın deyip bana
kızacaksınız. :)
Boş vakitlerinizde bol bol film izlemenizi tavsiye eder, okuduğunuz için
teşekkürler diyerek de yazıma son noktayı koyarım. Son nokta böyle bir
şey olsa gerek. :)
Eren Kovancı
Kubuntu 7.10
14
Scribus
SUD
Scribus'u açtığınızda sizi, yeni belgede kullanmak istediğiniz sayfa
yapısını belirleyebileceğiniz ekran karşılayacaktır. Biz Sudo dergisi
olarak okunuş kolaylığı olması açısından fazla sütunu
sığdırabileceğimiz yatay sayfa düzeninde A4 boyutlarını tercih ediyoruz.
Siz de işinize uygun sayfa yapısını istediğiniz gibi seçebilirsiniz.
İsterseniz öncelikle inceleyeceğimiz bölümleri sıraya koyalım:
1.Metin ekleme
2.Resim­Şekil ekleme, boyutlandırma ve şeffaflık ayarları
3.Link ve diğer sayfalara bağlantı ekleme
4.Tablo oluşturma
5.Diğer özellikler
Tanışıklığım kısa süre içinde olmuş olsa da kullanımına çabucak
alıştığım ve dergimizin bu tasarımını oluşturmamızda katkısı büyük olan
program Scribus'u bu ay sizin için incelemeye karar verdik. Yani Ubuntu­
tr tayfası olarak geleneği bozmadık ve balık vermek yerine balık tutmayı
öğretmeyi tercih ettik. Diğer tasarım programlarının yanında oldukça
pasif gibi kalsa da Scribus özgür dünyanın nadide tasarım programı
olması nedeniyle tercih edilmektedir. Bu program sayesinde PDF
kitaplar, dergiler hazırlayabilir; kendi kartpostal tasarımlarınızı,
takvimlerinizi oluşturabilirsiniz.
1.Metin ekleme
Metin eklemek için en kısa yol klavyeden "T" tuşuna basmak ve bir
metin kutusu oluşturmaktır. Daha uzun yollar ise üstten
sembolüne
tıklamak veya ekle menüsünden "Metin" seçeneğini seçmektir. Daha
sonra oluşturduğumuz metin kutusuna iki kere tıklayarak yazı yazabilir
veya ayrıntılı ayarlar için sağ tıklayıp metni düzenle dedikten sonra
Scribus'un kendi metin editöründe düzenleyebiliriz. Bir diğer seçenek
ise "Metin al"dır. Bu seçenekle dışarıda bulunan bir metin dosyamızdan
metin aktarımını otomatik olarak yapabiliriz.
İncelediğim sürüm 1.3.4 aslında stabil olmayan sürüm. Ancak stabil olan
1.3.3.12 den daha stabil davranışlarıyla dikkatimi çekti. Bu benim
donanımımdan kaynaklanmış olabilir ya da geliştiriciler hataları kapatmış
olabilirler. Menü olarak aralarında fazla fark yoktur. Anlattıklarım her iki
sürüm için de geçerli durumdadır.
İtiraf etmeliyim ki ilk açtığımda basit yapısı ile gözümde büyümüş ve
usta işi olduğuna inanmıştım. Ancak öyle değilmiş. Türkçe olması
sayesinde menüleri çabucak kavrayıp tasarıma başlamam fazla süremi
almadı.
15
Scribus
SUD
2.Resim­Şekil ekleme, boyutlandırma ve şeffaflık ayarları
Resim eklemek için kısayolumuz "I", şekil eklemek içinse kısayolumuz
"S" dir. Yine aynı şekilde ekle menüsünden ve üstteki seçeneklerden bu
işlemleri gerçekleştirebiliriz. Resim kutusunu ekledikten sonra yapmamız
gereken şey bellidir. Sağ tıklayıp "resim
al" seçeneğini seçeriz. Burada sizin de
fark edebileceğiniz üzere resim özgün
boyutlarında alınır. Çerçeveyi
genişlettiğimizde ya da
küçülttüğümüzde resim bundan
etkilenmez. Bunu yapabilmek için
resme sağ tıklayıp "Özellikler"
menüsüne girdikten sonra buradan
"Resim" sekmesine tıklayıp çerçeveye
göre ölçeklendir dememiz gerekiyor.
Aynı şekilde bu menü altından
"Colours" sekmesinde "Opaklık"
değerini düşürerek resmi
şeffaflaştırabiliriz. Eğer bu bir şekil ise
bu menü altından renk ayarlarını, kenar
çizgi ayarlarını kolaylıkla sekmeleri
kurcalayarak yapabiliyoruz.
3.Link oluşturma ve diğer sayfalara
bağlantı ekleme
bağlayacaksak "Tip" kısmından
"Dışarıya Bağlantı (web)"
seçeneğini seçmemiz ve "Yol"
hanesine adresi girmemiz yeterli
olacaktır.
4.Tablo oluşturma
Tablo oluşturmak için
kısayolumuz "A" tuşudur. Bunun
haricinde tabloya çerçeve
eklemek için ayrıca "N" ve içeriği düzenlemek için "E" kısayolları
bulunmaktadır. İstersek tablonun bir kutusuna çift tıklayarak da tablo
içeriğini düzenleyebilmekteyiz.
5.Diğer özellikler
Scribus altında bir çok betik vardır. Örneğin barkod oluşturucusunda
adınızı barkod yapabilmek eğlenceli sayılır. :) Serbest çizim her yerde
lazım olduğu gibi burada da önemini korumaktatadır ve "F" kısayoluyla
aktif hale gelmektedir. 1.3.4 sürümünde mevcut olan takvim
oluşturucuda, hediye olarak hazırladığınız takvimlerle sevdiklerinizi
mutlu edebilirsiniz.
Çağlar ERSÖZ
Link oluşturmak için öncelikle bir link
alanı oluşturmamız gerekmektedir. Linkler bir yazıya, resme bağlı
değillerdir. Yani bir yazı ile resimin ortasına link eklenebilmektedir. Link
alanı oluşturmak için
sembolüne basıp bir alan belirledikten sonra
oluşan alana çift tıklarız. Bundan sonra, eğer diğer sayfalara link
vereceksek "Tip" kısmından "Link" seçeneğini seçerek sayfayı
belirleyebilir ve yanda önizlemesini görebilirsiniz. Eğer bir web adresine
16
Espeak
Espeak, sözcükleri sesli olarak okutmanıza yarayan c++ ile yazılmış,
komut satırından çalışan, gpl ile lisanslanmış, ubuntu ile kurulu gelen bir
yazılımdır. Espeak ile komut çıktılarını, yazı dosyalarını Türkçe de
olmak üzere birçok dilde okutabilir ve ses dosyası olarak
kaydedebilirsiniz. Eğer sisteminizde kurulu değilse
sudo apt­get install espeak
komutu ile kurabilirsiniz. Konsolu açıp (uygulamalar > donatılar >
uçbirim)
espeak merhaba
komutunu verdiğimizde sözcükler okunacaktır. Eğer başka parametreler
veya birden fazla sözcük kullanacaksak, okumasını istediğimiz
sözcükleri tırnak içine almalıyız. Ubuntu'nun sesini duyup merakımızı
giderdikten sonra artık daha detaya inebiliriz.
Ses seviyesini ­a parametresi ile 0­200 arası bir değer girerek
belirliyoruz. Ön tanımlı değeri 100'dür.
espeak ­a50 "sesi kıstı"
Sesin kalınlığını ­p ile beraber 0­99 arası bir değerle ayarlıyoruz. Ön
tanımlı değeri 50'dir.
Okuma hızını ­s ile beraber 80­390 arası bir değerle ayarlıyoruz. Ön
tanımlı değeri 170'dir.
Sözcükler arası duraklama süresini ­g parametresi ile milisaniye
cinsinden bir değerle belirliyoruz. Ön tanımlı değeri dakikada 170 kelime
okunacak şekildedir.
Uzun bir metni okutmamız gerektiğinde büyük/küçük harf duyarlılığı
önem kazanır. Bunu ­k parametresi kullanarak ayarlayabiliriz.
Komutumuza ­k1 parametresini eklediğimizde büyük harflerden önce bir
tıklama sesi çalar. Eğer sözcüğün bütün harfleri büyükse iki tıklama sesi
çalar. ­k2 kullandığımızda büyük harften önce "capital" der. ­k1000,
­k6000 gibi parametreler kullanıldığında ise sadece büyük harf, sadece
küçük harf ve karışık olanları ayrı ayrı tonlarda okuyacaktır.
Türkçe de dahil olmak üzere çeşitli dillerde okutma yapabilmek için ­v
parametresini kullanıyoruz. Bu parametre ile aynı zamanda dört kadın
(+f1, +f2, +f3, +f4) altı erkek (+m1, +m2...) sesinde okutma yapabiliriz.
espeak ­v tr+f2 "türkçe kadın sesi"
espeak ­v en+m3 "ingilizce erkek sesi"
SUD
Sözcüklerin nasıl okunduğunu
ekrana göstermek istersek ­x ve
­X parametrelerini kullanabiliriz.
Sesi kapatmak için ­q
parametresini kullanıyoruz. Belki
­x parametresi ile kullanışlı
olabilir.
Programa bir dosya içeriğini
okutmak için ­f parametresini
kullanıyoruz.
espeak ­f Masaüstü/oku.txt
Okunan sözcükleri mp3, flac,
wma, wav gibi formatlarda
kaydetmek istersek ­w parametresini kullanıyoruz.
espeak ­w merhaba.wav "merhaba dünya"
Standart bir çıktı üreten komutları okutmak için ­stdin kullanıyoruz.
Örneğin lsusb komutunun çıktısını okutmak için,
lsusb | espeak ­stdin
komutunu yazmalıyız. Burada "|" işareti unix sistemlerde bir komutun
çıktısını diğer komuta girdi olarak vermeye yarar. Örnekte, lsusb çıktısını
espeak programına girdi olarak vermek için kullanılıyor.
Bazı ssml ve html taglarını kullanabilme özelliğini ­m parametresi ile
veriyoruz.
Yardım ve sürüm bilgileri ­h parametresi ile görüntülenir. Çıktının ilk
satırında yazılımın sürüm numarasını görebilirsiniz.
İndirme adresi: http://espeak.sourceforge.net/
Ergin ÜRESİN
17
Amarok 2
SUD
*Tümüyle yeniden tasarlanmış arayüzü ile Amarok 2'nin kullanımı
kolaylaştırılmış. Özellikle şarkı sözlerinin, Wikipedia'dan sanatçı
bilgisinin ve başka bilgilerin görüntülendiği alanın orta kısma taşınmış
olması buradaki içeriğin okunmasını kolaylaştırmış.
* Amarok 2; Magnatune, Last.fm, Jamendo, Ampache, MP3tunes ve
Shoutcast gibi çevirimiçi hizmetlerle daha bütünleşik çalışabiliyor.
*Amarok'a ilave özellikler eklememizi sağlayan Betik Yöneticisi de
yeniden yapılanmış.
Burak Demir
[email protected]
Amarok 2.0 Aralık ayında yayınlanmıştı. Geçtiğimiz günlerde de bazı
hataları düzeltilmiş ve beklenen bazı özellikler de eklenmiş olarak
Amarok 2.0.1.1 yayınlandı. Önceki sayımızda Amarok 1.4'ü
detaylarıyla incelemiş olduğumuzdan Amarok 2 hakkında detaylı bir
inceleme yapmayacağız. Çünkü, zaten Amarok 1.4 ile
yapabildiklerinizin çoğunu neredeyse aynı şekilde Amarok 2 ile de
yapabilirsiniz.
Amarok 2'nin Bazı Yenilikler
*KDE 3 yerine KDE 4 altyapısını kullanan Amarok'un artık daha güzel
bir görünümü var. Ayrıca Amarok kullanımını kolaylaştıran Plasma,
Phonon ve Solid teknolojilerini kullanmak da mümkün.
18
Linux ve Grafik
SUD
Linux, müzik sanatçıları için olduğu kadar grafik sanatçıları için de çok
uygun bir ortam. Mevcut grafik programlarının çoğunluğu özgür yazılım
olduğu için bütçeyi dert etmenize gerek yok. Bununla birlikte bu
programların birçoğu en az kapalı kodlu alternatifleri kadar performans
göstermekte.
Blender
3­boyutlu modellemenin özgür yazılım dünyasındaki bayraktarlığını
yapan Blender, inanması zor fakat, sadece 10 MB büyüklüğe sahip.
Modellemenin dışında animasyon, fizik ve parçacık simülasyonu, oyun
motoru gibi birçok işi de yapabiliyor. Python betikleriyle de istenildiği
kadar işlev kazandırılabiliyor. Programın arayüzü ilk başta yabancı gelse
de birkaç kere kullandıktan sonra çok rahat aşina olunabiliyor. Hatta
daha sonra muadilleri çok hantal ve kısıtlayıcı gelmeye başlıyor.
Blender'ın başta kendi sitesinde olmak üzere çok sayıda yazılı ve görsel
rehber belgeleri bulunuyor. Bilhassa video rehberlerle çok rahat
öğrenilebiliyor. Elephants Dream (http://orange.blender.org/download) ve
Big Buck Bunny (http://www.bigbuckbunny.org/index.php/download/) gibi
filmlerin yapımı tamamen bu programla yapıldığı gibi Big Buck Bunny
filminin oyunu olan Yo Frankie! (http://www.yofrankie.org) de bu
programla yapılmıştır. Kapalı kodlu alternatifleri arasında 3ds Max,
Lightwave, Maya gibi programlar bulunmaktadır.
GIMP
Linux dünyasının neredeyse de fakto olmuş resim işleme yazılımı.
Programı başlattığınızda ilk fark edeceğiniz şey muhtemelen çok
pencereli arayüzü olacaktır. Bu arayüze alışmak zor geliyorsa sadece bu
iş için üretilmiş Gimphoto gibi alternatifleri de kullanabilirsiniz. RGB
desteği sunmakta olan GIMP'le CMYK renkleri RGB'ye çevirerek kısmen
de olsa düzenleme yapabilirsiniz. Şu an için CMYK desteği bazı üçüncü
parti (third party) eklentiler hariç ne yazık ki bulunmuyor. JPEG, GIF,
PNG, TIFF gibi birçok uzantıyı destekleyen GIMP'i sadece Linux üzerinde
değil Windows, Mac OS, Solaris, BSD gibi çeşitli işletim sistemleri
üzerinde de kullanabilirsiniz. http://registry.gimp.org adresinden birçok
eklentisini bulabileceğiniz GIMP'le beraber USB ve MIDI çizim
donanımlarının çoğu desteklenmektedir. Kapalı kodlu alternatiflerinden
en bilineni ise Photoshop'tur.
19
Linux ve Grafik
SUD
Scribus
Masaüstü yayıncılık yazılımı. Desteklediği en önemli iki özellik PDF
oluşturma ve CMYK renk desteği olarak verilebilir. Masaüstü yayıncılık
terimi 1980'lerin ortalarında oluşturulmuş, dergiden broşüre birçok
görsel medyanın dizaynını içeren bir terim. SVG dahil çok kullanılan
resim formatlarının çoğunu destekleyen Scribus'un gömülü Python
betik desteği de mevcut. Kendi formatı olan SLA, XML tabanlı ve
tamamiyle belgelendirilmiş bir formattır. Scribus yazılımı Quark,
InDesign, Publisher gibi yazılımların alternatifi olmaya çalışıyor fakat bu
yazılımların kullandıkları dosya uzantılarını içe ya da dışa aktarma
seçeneklerini içermiyor. Geliştiricileri böyle bir tersine mühendisliğin
(reverse engineering) çok zor ve hatta bazılarının patentlerle
korunduğu için imkansız olduğunu belirtiyorlar.
Inkscape
Vektörel çizim programı ya da bir diğer deyişle SVG editörü. SVG, XML­
tabanlı bir format olup açık kaynak kodludur ve çoğunluk tarafından
kullanılmaktadır. Inkscape şu anda halen daha yoğun bir şekilde
geliştirilmekle birlikte, web grafikleri, teknik diyagramlar, ikonlar, logolar,
haritalar gibi birçok alanda başarıyla kullanılmaktadır. Bunlardan en göz
önünde örnek Wikipedia'dır. Bu sitedeki binlerce resim Inkscape
kullanılarak oluşturulmuştur. Firefox 1.5 ve sonraki sürümler SVG
formatına tam destek verdikleri için web tasarımlarında yoğun olarak
kullanılmaktadır. Bunun yanında oluşturduğunuz SVG dosyalarınızı
Blender'da içe aktarıp animasyonlarınızda da kullanabilirsiniz. Inkscape'in
desteklediği formatlar: SVG, SVGZ, PDF ve AI (Adobe Illustrator). Kapalı
kaynaklı alternatifi ise Adobe Illustrator'dur.
20
Linux ve Grafik
SUD
Synfig
Dia
Kısaca 2­boyutlu vektör animasyon programı. Sıfırdan başlayıp
gerçekten kaliteli animasyonlar hazırlayabileceğiniz bir program.
Synfig'in animasyon mantığı diğer programlarınkinden farklı: diğer
programlar kullanılarak yapılan animasyonlarda asıl kareler büyük çizer
tarafından çizilir ve ara kareler daha küçük bir çizere bırakılır. Synfig ise
ana karelerin (keyframe) aralarını kendisi doldurarak hem büyük çizere
kolaylık sağlamış oluyor hem de zamandan tasarruf sağlıyor. Synfig
kendi formatı olan SIF'i kullanmasına rağmen Inkscape'te
oluşturduğunuz SVG dosyalarını svg2sif programıyla
(http://www.synfig.org/Svg2synfig) SIF'e çevirip Synfig'de
kullanabilirsiniz. http://www.synfig.org/Tutorials adresindeki yazılı ve
http://www.synfig.org/Video_Tutorials adresindeki video anlatımlar
yardımıyla Synfig'i iyi derecede kullanabilir düzeye gelebilirsiniz.
Synfig'in kapalı kodlu alternatifi ise Anime Studio olarak gösteriliyor.
Dia bir diyagram oluşturma yazılımı. Bir Windows programı olan Visio'ya
alternatif olması için başlanan bu yazılım şu anda bu tarz bir programda
olması gereken çoğu özelliği barındırıyor ve uzun süredir geliştirildiği
için şu anda gayet kararlı bir durumda. Dia halihazırda UML
diyagramları, flowchart'lar, network diyagramları gibi birçok öntanımlı
nesneyle birlikte geliyor.Dia'nın dışa aktarabildiği formatlar arasında
EPS, SVG, XFIG, WMF ve PNG bulunmakta.
CinePaint
CinePaint film karelerini ve profesyonel fotoğrafları düzenlemek için
oluşturulmuş bir resim işleme yazılımı. DPX, 16­bit TIFF ve OpenEXR
gibi yüksek çözünürlüklü formatların yanı sıra çok bilinen JPEG ve PNG
gibi formatları da destekliyor. CinePaint'in belli başlı kullanım alanları:
hareketli filmlerin kare­kare düzeltilmesi, leke yoketme, kablo destekleri
silme, arkaplan tabakaları ve 3­boyutlu model yüzeyleri boyama olarak
verilebilir. Bu yazılımı kullanan stüdyolardan en bilindiği Sony Pictures
Imageworks'tür. CinePaint'in kullanıldığı filmlere birkaç tane örnek
verecek olursak The Last Samurai, 2 Fast 2 Furious, Harry Potter,
Grinch, Stuart Little, Planet of the Apes ve Spider Man. CinePaint'in
kapalı kodlu alternatifi olarak da Adobe After Effects verilebilir.
21
Linux ve Grafik
SUD
QCAD
İpucu
QCAD 2­boyutlu bilgisayar destekli çizim (CAD ­ Computer Aided
Drawing) yazılımıdır. QCAD kullanılarak bina, iç mekan, mekanik parça,
şema, diyagram çizimleri yapılabilir. Okuduğu format sadece DXF fakat
yazabildiği formatlar arasında BMP, JPEG, PNG gibi resim formatları,
SVG ve yüksek çözünürlük PDF bulunmakta. AutoCAD'in sahip olduğu
özelliklerin hepsine sahip olmamakla birlikte kullanabilmek için yeterli
birçok özelliği barındırıyor. AutoCAD dosyalarınızı DXF olarak kaydedip
kayıpsız bir şekilde QCAD'de açabilirsiniz.
Yazan: Kadir Yücel
apt ile program aramak
İndirilecek paketin tam adı bilinmediği zaman işe yarayan bir özellik.
Paketin isminin bir kısmı yazılarak pakete ulaşılabilir. Mesela, deluge
programını indirmek isteyen ama sadece "luge" kısmını hatırlayan biri
şu komutla arama yaparsa hedefe ulaşacaktır.
apt­cache search luge
içinde "deluge" adı geçen bütün paketleri listelemek istersek,
apt­cache search deluge
Bu sefer deluge­torrent paketinin md5sum, sha1, boyutu, adresi gibi
açıklamalarını görüntülemek isteyelim.
apt­cache show deluge­torrent
Eğer regex biliyorsanız aramalarınızda bunu kullanarak nokta atışı
yapabilirsiniz. Regex kullanılmış basit bir örnek ise,
apt­cache search "(\w)luge"
22
Bash Extended Globbing | Mitch Frazier
Bash dilinde joker karakterler pathname expansion (hedef isim
genleşmesi) olarak adlandırılırlar. pathname expansion'larda bazen
globbing (topaklama) denilen işlemi ifade etmektedirler. pathname
expansion'lar komut içerisinde kullanıldıklarında "*", "?", ve "[...]"
karakterlerini genişletirler, örneğin:
Kod:
$ ls *.jpg
# Bütün JPEG dosyalarını listeler
$ ls ?.jpg
# Tek karaktere sahip (isminde) bütün JPEG dosyalarını
listeler (eg a.jpg, 1.jpg)
$ rm [A­Z]*.jpg # Adı büyük harflerden oluşan tüm JPEG dosyalarını
siler
pathname expansion hakkında genel olarak anlaşılmayan nokta; bu
eylemin işletim sistemi veya çalıştırılan program tarafından değil, BASH
dili tarafından gerçekleştiriliyor olmasıdır. Çalıştırılan uygulama joker
karakterleri asla görmez, BASH uygulamayı çalıştırmadan önce
expansion'ları komut satırında kullanır. exec() ve benzer fonksiyonlar
kullandığınız kodlar yazdığınız zamanlar hariç, bu nadiren önem arz
eden bir durumdur. Uygulamayı BASH aracılığı ile çalıştırmıyorsanız,
exec() fonksiyonuna yönlendirdiğiniz komut satırında yer alan joker
karakterler genişletilmeyecektir.
Fakat BASH tarafından desteklenen joker karakter formları bu kadarla
sınırlı değildir. Bu diğer formlar Extended Globbing (Harici Topaklama)
olarak adlandırılırlar ve bu formlar kullanılmadan önce aşağıdaki betik ile
aktifleştirilmelidir:
Kod:
$ shopt ­s extglob
harici topaklamanın (extended globbing) BASH kabuğunun man (manual­
SUD
klavuz) dosyalarındaki tanımı:
Kod:
?(pattern­list) Matches zero or one occurrence of the given patterns
//numune karakterlerinin sıfır veya bir adet karakter değişikliğini
karşılaştırır
*(pattern­list) Matches zero or more occurrences of the given patterns
//numune karakterlerinin sıfır veya daha çok sayıda karakter değişikliğini
karşılaştırır
+(pattern­list) Matches one or more occurrences of the given patterns
//numune karakterlerinin bir veya daha çok sayıda karakter değişikliğini
karşılaştırır
@(pattern­list) Matches one of the given patterns //girilen numune
karakterlerinin birini karşılaştırır
!(pattern­list) Matches anything except one of the given patterns
//girilen numune karakterleri haricinde herşeyi karşılaştırır
Burada numune karakterleri ile kastedilen "|" (pipe symbol ­ boru
sembolü) karakterleri ile ayrılmış karakter listesidir. Sıradan ifadelerle
(Regular Expressions) karşılaştırarak neden rehber karakter
kullanıldığını anlayabilirsiniz:
Kod:
[b]Bash
Sıradan İfadeler (Regular Expression)[/b]
?(numune­listesi) (...|...)?
*(numune­listesi) (...|...)*
+(numune­listesi) (...|...)+
@(numune­listesi) (...|...) [@ bir Sıradan İfade değildir]
!(numune­listesi) "!" Sıradan ifadelerde negatif eylemleri belirtmede
kullanılmaktadır.
Evet, "@" karakteri haricindekiler için nedenini görebilirsiniz..
23
Bash Extended Globbing | Mitch Frazier
Örnek olarak, "ab" veya "def" ile başlayan tüm JPEG veya GIF
dosyalarını listelemek için şu komutu kullanabilirsiniz:
Kod:
$ ls +(ab|def)*+(.jpg|.gif)
Tabii ki harici topaklama (extended globbing) kullanmadan aşağıdaki
komutu da kullanabilirsiniz:
Kod:
# ls ab*.jpg ab*.gif def*.jpg def*.gif
SUD
Kod:
$ ls *!(.jpg|.gif)
[i]# yanlış, Yanlış, YANLIŞ[/i]
Bu karşılaştırma çalışmaz, çünkü herhangi bir dosyanın ".jpeg" veya
".gif" kısımları "*" ifadesi karşılaştırmasına tabi tutulmakta ve dosya
adının sonunda yer alan hükümsüz metin (null string) "!(...)" ifadesi ile
karşılaştırılmayan kısıma dahil olmaktadır. Diğer bir değişle, "*" ve "!"
ifadeleri birlikte kullanılmıştır. Doğru yazım biçimi aşağıdaki gibidir:
Kod:
$ ls !(*.jpg|*.gif)
"ab(2|3)+.jpg" sıradan ifadesi ile aynı karşılaştırmayı yapacak bütün
dosyaları listelemek için aşağıdaki komutu kullanabilirsiniz:
Daha karmaşık olumsuz bir örnek için birinci örneğimize geri dönelim
ve JPEG veya GIF olmayan ve "ab" veya "del" ile başlayan tüm
dosyalarımızı listeletelim. Çok kolay, sadece birinci örneğimizi alıyoruz
ve "!(...)" ifadesi içerisine yerleştiriyoruz.
Kod:
Kod:
$ ls ab+(2|3).jpg
Bu işlem sıradan topaklama (regular globbing) ile
gerçekleştirebileceğiniz bir işlem. Not: Bu işlem ab2.jpg, ab3.jpg,
ab2222.jpg, ab333.jpg, gibi ifadeleri karşılaştırmaktadır.
Bununla birlikte; muhtemelen en ilginç harici topaklama (extended
globbing) ifadesi, harici olan herşeyi karşılatırmaya yarayan (syntax)
"!(...)" ifadesidir. Ancak, dikkatli olmanız gereken konu bu ifadenin her
zaman gerçekleştirmek istediğinizi uygulamayabileceğidir. Örnek olarak,
JPEG veye GIF olmayan bütün dosyaları listeleyelim.
$ ls !(+(ab|def)*+(.jpg|.gif))
Tabii ki; karmaşık sıradan ifadelerde (regular expressions) olduğu gibi,
bu karşılaştırma yazdığınız andan 10 dakika sonra akıl almaz bir hal
alacaktır.
Orjinal metin: Bash Extended Globbing | Mitch Frazier ­ linuxjournal.com
Çevirenler: Guardian
24
Shell Script'e Başlangıç
Shell Scripting – Hazırlıklar ve Sistem
Merhabalar, bu ilk yazımda Linux dünyasında Shell Scripting diye
bilinen kavramı sizlere açıklamaya çalışacağım. Eğer Linux’un gücüne
tanık olmak istiyorsanız kendinizi komutların sihrine bırakın.
Linux’un eski günlerinde her şey komutlardan oluşuyordu.
Kullanıcıların, tüm işlemlerini arayüz (GNOME ya da KDE)
kullanmadan yapmaları gerekiyordu. Kullanıcılar işlemlerini, komutlarını
girebildikleri Komut Satırı (Command Line İnterface – CLI ) adını
verdiğimiz uygulamalar ile gerçekleştiriyordu. Günümüzde CLI
kullanımı kullanıcı arayüzlerinin devreye girmesi ile azaldı, çünkü
kullanıcılar iki tıklama ile işlemlerini kolaylıkla yapabiliyorlar. Ancak bazı
durumlarda CLI kullanmak zorundayız. Linux üzerindeki işlemlerinizi
otomatikleştirmek istiyorsanız, ya da sisteminizin kontrolünü tamamen
elinizde toplamak istiyor iseniz komutlar gerçekten işimize yarayacak
en güçlü araçlar.
SUD
Herhangi bir masaüstü teknoljosi (GNOME, KDE) kullanıyor i.eniz, Linux
üzerinde komutlarımızı çalıştırabileceğimiz, grafik ortamda da çalışabilen
Terminal programları yer almaktadır. Bu uygulamalar, komutlar yazarak
sistem ile iletişime geçebilmenizi sağlarlar. Shell oturumu, kullanıcı
sisteme giriş yaptığında (login olduğunda) başlatılır. Kullanıcı bilgilerinin
tutulduğu /etc/passwd dosyasında hangi kullanıcının hangi Shell tipini
kullanacağını görebilirsiniz.
rich:x:501:501:Rich Blum:/home/rich:/bin/bash
Her Shell tipinin ve her terminal uygulamasının kendilerine göre detaylı
özellikleri vardır. Detaylara girerek konuyu karmaşıklaştırmak
istemiyorum. Bu nedenle hemen Shell üzerindeki çalışmalarımıza
başlayalım.
Shell Komut Satırı
Biz konumuz boyunca GNU Bash Shell uygulamasını kullanacagız. Bir
terminal uygulaması başlatıldığında yada sisteme grafiksel arayüzü
olmayan bir sistem ile giriş yapıldığında, bir Shell oturumu başlatılmış
olur. Örneğim Rich kullanıcısı ile sisteme giriş yapılır ise;
rich@1[~]$
şeklinde bir komut satırı karşımıza gelir ve komut girmeniz beklenir. Bu
satırı düzenleyebilir, sizin için daha anlamlı bir hale getirebilirsiniz.
Örneğin Fedora gibi sistemlerde bu satır aşağıdaki gibidir.
[rich@testbox ~]$
Yukarıdakı satıra dikkat edersek,
Kullanıcı Adı ­ rich
Makinenin Adı ­ testbox
~ işareti ise dizini belirtir: Home dizini
25
Shell Script'e Başlangıç
Dikkat edilirse, farklı dağıtımlarda Shell komut satırları farklı
olabilmektedir. Siz Shell komut satırlarını kendinize göre
düzenleyebilirsiniz. Bu düzenlemeler için iki farklı sistem değişkeni
bulunmaktadır.
PS1 : Varsayılan Shell komut satırı bilgilerini tutar.
PS2 : Bir komut ile ilgili ekstra özellikler girmek için gerekli özellikleri
tutar.
rich@1[~]$ echo $PS1
\u@\l[\W]\$
rich@1[~]$ echo $PS2
>
rich@1[~]$
Bu PS1 ve PS2 degerlerini yazdırdığımızda karşımıza çıkan ifadeler
başlangıçta garip gelebilir ancak hepsinin belirli bir anlamı
bulunmaktadır. Shell, özel karakterleri kodlamak için çeşitli formatlar
kullanır.
SUD
karakterlerini kullanabilirsiniz.
\a
\d
\e
\h
\H
\j
\l
\n
\s
\t
\T
\@
\u
\v
\w
\W
­ Bell karakteri
­ Gün Ay Yıl olacak şekilde tarih bilgisi.
­ ASCII kaçış karakteri
­ Hostname
­ FQDN (Domain İsmi)
­ Shell tarafından yönetilen işlem sayısı
­ Shell terminal aracının sistemdeki adı
­ ASCII yeni satır karakteri
­ Shell’in adı
­ 24 Saat formatında zaman bilgisi
­ 12 saat formatında zaman bilgisi
­ 12 saat formatında am/pm destekli zaman bilgisi
­ Shell üzeindeki aktif kullanıcı adı
­ Bash Shell’in versiyonu
­ Üzerinde çalışılan tam dizin bilgisi
­ Üzerinde çalışılan dizin bilgisi
echo $PS1 sonucundaki çıktıya dikkat edilirse, tüm karakterler \ ile
başlar. Bu normal bir karakterin Shell için kullanılabilmesini sağlar. Yeni
bir Shell komutu oluşturalım:
[rich@testbox ~]$ PS1="[\t][\u]\$ "
[14:40:32][rich]$
Görüldüğü gibi, Shell komut satırı üzerinde çalışılan bilgisayarın saatini
ve hangi kullanıcı ile sistemde bulunduğunuzu gösterir. Ancak bu
ayarlarınız sadece siz sisteme giriş yaptığınız sürece devam edecek,
oturumuzunu kapattığınızda Shell komut satırı varsayılan haline geri
dönecektir. İleriki yazılarımızda bu ayarları nasıl kaydedebileceğinizi
sizlerle paylaşacağız.
Shell komut satırını düzenlerken, aşağıda önemlileri verilen komut
Bash Shell Man Sayfaları
Komutlarla ilgili işlemler yapılırken en çok ihtiyaç duyulan komutların
Man sayfalarıdır. Bu sayfalarda komutların nasıl çalıştığı, komutların
özellikleri ve daha bir çok bilgiye hızlıca erişebilirsiniz. Örneğin üzerinde
devamlı çalışacağımız Bash Shell’in Man sayfalarına erişemek için
aşağıdaki gibi bir komut girilmesi gerekir.
$ man bash
Bu komut sonucunda karşımıza aşağıdaki gibi bir ekran açılır.
26
Shell Script'e Başlangıç
SUD
c:\Documents and Settings\Rich\My Documents\test.doc.
Fakat Linux’ta dosya sistemleri böyle çalışmazlar. Linux bütün dosyaları
ve dizinleri bir ağaç yapısı şeklinde tutar. Diski C yada D şeklinde
bölmez. Linux’ta tüm dizinler ana dizin olan root dizinine bağlıdır.
Örneğin;
/home/rich/Documents/test.doc
Görüldüğü gibi Linux’ta test.doc dosyasının hangi disk bölümü üzerinde
tutulduğu belli değildir.
Man komutu tüm komutlar içinde aynen kullanılabilir. Böylelikle hızlı bir
şekilde komutların nasıl kullanıldığı konusunda bilgiler elde
edebilirsiniz.
Linux Sanal Dizin adı verilen bir dosya sistemi yapısı kullanır. İlk hardisk
sistemde Root Aygıt adını alır, ve sanal dizin yapısı bu disk üzerinden
oluşturulur. Bu root disk üzerinde Linux, sistem klasörlerini oluşturur,
artık sisteme bağlanacak her depolama aygıtı, CD, USB, Harici disk root
disk üzerindeki bağlantı noktalarından Linux dosya sistemine
bağlanırlar.
Dosya Sistemleri ve Shell
Bir Shell oturumu başlatıldığında dizin olarak HOME dizininize
konumlanırsınız. Ve çoğu zaman siz bu dizinden çıkıp başka bir dizine
geçerek işlemlerinizi yaparsınız.
Eğer Linux’ta yeni iseniz Linux üzerinde dosya ve dizinlerin nasıl
çalıştığı konusunda kafanızda bazı sorular bulunuyor olabilir. Özellikle
Windows ortamından Linux’a gelenler için dosya sistemi farklılıkları çok
göze batıcıdır.
Ilk dikkat çeken fark; Linux, disk bölümleri için C yada D gibi isimler
kullanmaz. Windows disk üzerindeki bölümlere bir harf verir ve dosya
ve dizinlerini bu harflere göre yönetir. Örneğin;
Siz Shell oturumunu başlattığınızda konum olarak Shell, sizin HOME
dizininize konumlanır. HOME dizini sistemde oluşturulan bir kullanıcı
için oluşturulmuş bir dizindir. Ve kullanıcının kişisel bilgilerinin tutulduğu
yerdir.
Hazırlayan; Caner Bulut
[email protected]
27
Çocuklara da Özgürlük: GCompris
SUD
Bu sayımızdan itibaren dergimizin bir bölümünü çocuklara ayırmaya
karar verdik. Bu bölümde, çocukların beğeneceklerini düşündüğümüz
oyunları ve eğitici programları tanıtmaya çalışacağız.
GCompris
Gcompris, 2­10 yaşlarındaki çocuklar için hazırlanmış 100'den fazla
eğitici aktiviteden oluşan bir oyundur. Bu oyunun ilk sürümü Fransız
yazılım mühendisi Bruno Coudoin tarafından 2000 yılında yapılmış,
daha sonra pek çok geliştiricinin de desteğiyle daha nitelikli sürümleri
üretilmiş ve bunların hepsi GNU Genel Kamu Lisansı (GPL) ile ücretsiz
olarak dağıtılmıştır.
Gcompris; Linux, Mac OS X ve Windows işletim sistemlerinde
çalışmaktadır. Ne var ki, Linux ve Mac OS X sistemlerinde tüm
özellikleri ücretsiz olarak kullanılabilmekteyken Windows'ta kısıtlı bir
versiyonu ücretsiz olarak kullanılabilmekte ve tüm özelliklerinden
faydalanabilmek için belli bir ücret karşılığında oyunun satın alınması
gerekmektedir.
Oyunda bulunan farklı
aktivitelerin farklı
konularda eğitici
özellikleri bulunmaktadır.
Bu aktiviteler çocukların
bilgisayar kullanımını,
matematik becerisini,
coğrafya bilgisini, okuma
becerisini, hafızasını ve
mantığını geliştiren
oyunlar olarak
sınıflandırılabilir.
Oyuncunun; bir oyunda
gemiyi kanaldan
geçirebilmek için suyun hareket şeklini mantığıyla çözmesi gerekirken
başka bir oyunda renk bilgisini ve hafızasını kullanması gerekebiliyor;
ya da bir oyunda paraşütle atlayan Tux'ın (Linux pengueninin)
rüzgardan nasıl etkileneceğini kestirmesi gerekirken başka bir oyunda
sesli olarak söylenen harfe klavyeden basması gerekebiliyor.
Ubuntu kullanıcıları oyunu depolardan kolaylıkla indirip yükleyebilir.
Oyunun nasıl kullanılacağıyla ilgili detaylı bir açıklama yapma gereği
duymuyorum çünkü çok küçük yaştaki çocukların bile kendi kendilerine
kullanabilecekleri kadar kolay bir kullanımı var.
Ufak bir bilgi daha: GCompris'in Fransızca okunuşu, Fransızcada
“Anladım” anlamına gelen “J'ai compris” cümlesinin okunuşuyla aynıdır.
28
Çocuklara da Özgürlük: SuperTuxKart
SuperTuxKart, rakiplerinize “masumca” saldırabileceğiniz bir yarış
oyunudur. Oyunda yarıştırmak için seçebileceğiniz başta Tux olmak
üzere toplam 11 maskot ve yarışabileceğiniz 16 parkur vardır.
Yarış sırasında topladığınız kutucuklar sayesinde bazı ekipmanlar
kazanıyorsunuz. Kazandığınız ekipmana göre önünüzdeki rakibinizi
havaya uçurabiliyorsunuz (ölmüyor ya da yok olmuyor, tekrar yarışa
devam edebiliyor), önünüzdeki tüm rakipleriniz yavaşlasın diye onlara
paraşüt takabiliyorsunuz, yarış lideri yavaşlasın diye arkasına
demirden kütle takabiliyorsunuz ya da aldığınız hızlandırıcılar
sayesinde aniden hızlanabiliyorsunuz.
Yarış sırasında ayrıca gümüş ya da altın paralar toplayabiliyorsunuz.
Bunları toplayarak ekipman edinme kapasitenizi arttırıyorsunuz.
Örneğin 5 gümüş para topladıktan sonra kutucuk aldığınızda,
kutucuktan ne kazanırsanız bir yerine iki tane kazanıyorsunuz.
SUD
zevk almak için çocuk olmaya gerek yok, özellikle çok oyunculu
yarışlar sebebiyle pek çok yetişkin de oyunun tiryakisi olabilir.
Yarış Türleri
Oyunda 4 farklı yarış türü vardır:
. Grand Prix: Farklı parkur kombinasyonlarından oluşan farklı farklı
grand prix'lerden birini seçip yarışıyorsunuz. Seçtiğiniz grand prix'nin
parkurlarında arka arkaya yarışarak şampiyon olmaya çalışıyorsunuz.
. Quick Race: Kurallarını (yarışmacı sayısı, tur sayısı gibi)
belirlediğiniz tek bir yarış yapabiliyorsunuz.
. Time Trial: Zamana karşı yarışabiliyorsunuz.
Yarışırken “Shift”
tuşuna basarak aracın
önünü kaldırıp gitmeniz
mümkün. Bu şekilde
daha süratli
gidebiliyorsunuz ama
ön tekerlekler havada
olduğundan dönüş
yapamıyorsunuz.
Çoklu Oyuncu Desteği
Oyunu tek kişilik oynayabileceğiniz gibi aynı klavyeyi kullanarak çok
kişilik (iki, üç ya da dört kişilik) de oynayabilirsiniz. Oyunu kaç kişilik
açtıysanız ekran o sayıya bölünüyor ve her kullanıcı kendi ekranına
bakarak yarışabiliyor. Diğer rakiplere saldırabilme özelliğinden dolayı bu
oyunu çok kişilik oynamak gerçekten çok zevkli. Bu aralar yeğenimin en
büyük zevki benimle birlikte SuperTuxKart oynamak. Ancak oyundan
. Follow The Leader: Bu bölümde yarışırken maksat lideri takip
etmektir. Yarışta bir lider var ve lideri geçmemek gerekiyor. Eğer
geçerseniz oyundan eleniyorsunuz. Ayrıca belli bir zamanda bir, o
anda sonuncu kimse o eleniyor. Örneğin, eğer yarış on kişilikse önce
onuncu eleniyor, bir süre sonra dokuzuncu eleniyor... Dolayısıyla bu
yarışı kazanmak için ikinci olmak gerekiyor. Yarışta herkes hızla lideri
takip ederken lider kaza yaparsa (ya da bir füze tarafından havaya
uçurulursa...) siz dahil tüm yarışçılar yanlışlıkla lideri geçiyorsunuz ve
işte o zaman seyreyleyin cümbüşü. Herkes geri geri giderek liderin
arkasına geçmeye çalışıyor. :­)
Oyunda bunlardan başka bir de “challenge” bölümü var. En başta
kilitli olan bazı parkurları açabilmek için buradaki yarışları kazanmak
gerekiyor.
Burak DEMİR
29
Bilginin Bilişim Alanında Gelişimi ve Üretimi
SUD
Toplumların bireylerden oluştuğu ve bireylerin de gelişerek toplumları
ileriye ya da tam tersi gelişime ket vurup, gelişimle inatlaşıp, eskiyi yeğ
tutmasıyla geriye doğru götürdüğü aşikar.
Devir, zamanı yönetme ve insanlık için en iyisini, en güzelini, en
yararlısını yapma zamanı olduğundan bilginin ve bilginin paylaşımı ile
birlikte sınırsızlaşması, bilginin evrim yolunun zararlılardan arındırılması,
kısaca üretilmesi her zamankinden daha önemli hale gelmiştir.
Bugün gelinen noktada insanlık, her alanda bilişim ve bilgi
teknolojilerinden, yenilikçi fikir ve gelişmelerden faydalanarak geçmişe
oranla büyük bir yol almıştır. Çoğu Amerikan bilim kurgu, macera
filmlerinde ağzımızı açık bırakan birçok teknolojik alet ya da yeni moda
deyimiyle oyuncaklar artık çevremizde yer alırken; biz, onların yeni,
doğal efendileri konumundayız.
Bilgiye ulaşmak eskiye nazaran hiç olmadığı kadar kolay olmasına
rağmen ulaşılan bilginin doğruluğu da o kadar şüphelidir. Çünkü açık ve
şeffaf olan bilgiye erişimin de bir maliyeti olduğu gibi bilgiyi üretenin de
katlandığı bir maliyet vardır. Ancak, üretici daima şunu bilir: bilgi en
yararlı hale, ancak paylaşıma açık bir şekilde topluma sunulursa
ulaşabilir. Nitekim elimizin altında bilimin şimdiye kadar ürettiği
teoremleri, hesaplamaları, icatları, bilgileri ve nicelerini içeren kitaplar,
kütüphaneler mevcut. Üstelik hepsi de kişisel ve kamusal kullanıma
açık.
Kuşkusuz, bilgisayarların eskiye oranla bugün çok farklı oldukları
gerçek; ama anı olmanın da ötesinde artık bilgisayarlar odalara değil
ceplere sığmaktalar. Hatta minicik boyutta olanları da sağlık ve tıpta
yoğun bir şekilde kullanılmakta. Artık, koca koca bilgisayarlar ve sadece
dört işlemi yapıp delikli kartonlara işleyen, ampullü transistörler ile
çalışanları da sadece müzelerde yer almaktadır. Sürece bakılınca,
bilginin gelişiminin inanılmaz hızı daha da anlaşılıyor.
Bugünün vazgeçilmez iş makineleri bilgisayarlar kişisel kullanımın yanı
sıra şirketlerde, kamu yönetimlerinde, birden fazla işlev yüklenerek
*Çok değil, bundan 10­15 yıl öncesinin biricik bilgi kaynağı kitaplar ve
kütüphaneler bugün rağbet sayıları azalsa da doğru ve ulaşılabilir
olmalarını hâlâ korumaktadır.
adeta dünyayı yönetmektedirler.
Eğitimden adalete, yönetimden üretim süreçlerine ve planlamasına,
sağlık ve tıp alanından spora, eğlenceden ekonomiye dek her alanda
artık biz, kendi ürettiğimiz bilgisayarlara bağlıyız. Yazının girişinde "biz,
onların yeni, doğal efendileri konumundayız" demiştik; evet bu doğrudur,
ancak her şey içinde karşıtını da taşır ilkesi gereğince insanlığın
yarattığı değer yine insanın egemeni olacaktır.
Dolayısıyla bu saydığımız daracık alandaki iş kollarında her gün, her
saniye milyonlarca bilgisayar (belki de milyarlarca, evet, milyarlarca
demek daha doğru) kendilerine daha önce belletilen iş akış ve
süreçlerine uygun olarak yazılmış programlarla bu işi yürütmektedirler;
ta ki, fişleri çekilene kadar ya da iş süreci değişene kadar.
30
Bilginin Bilişim Alanında Gelişimi ve Üretimi
SUD
birleşimiyle açığa çıkan ürünün evrensel ve de paylaşıma açık olması;
yani tüm insanlığın hizmetine bencil olmayan kısıtlamalar dahilinde
sunulması gerekir. Ancak bu şekilde emek, hak ettiği değeri bulur.
Çünkü paylaşıma açılmış ve insanlığa mal olmuş bilgi bünyesine yeni
değerler katarak işe yaramaz ve çağın gereklerine uyum
sağlayamayan, yararı azalmış parçalarını geride bırakıp (en zayıf
halkaların zincirden kopartılması ve kaybedilen hızın kazanılması) yeni
ve işlevsel bir şekilde daha iyiye ulaşır ki, bu aynı zamanda evrimin
gereğidir.
Örneğin elektriği ve akımları keşfeden, hatta sayısız icadın patentini
alıp, bulanın kendisi olduğunu kanıtlamak için kaydettiren Nikola Tesla
bulduklarını sadece kendisine saklasaydı ve saklamakla kalmayıp katı
anlaşmalarla, lisanslarla kullanım hakkını satsaydı bugün geldiğimiz
noktada olabilir miydik? Elektrik ve elektronik bu denli dallanıp
budaklanır, cebimize dek giren aletlerin içinde yer alabilir miydi? Ne
olacağı kesin: her lamba açıp kapattıkça Tesla'nın kanından gelenlere
*Koca bir odanın içine sığan ve ampullü transistörler ile çalışan, işlediği
verileri ise delikli kağıtlara döken ilk bilgisayarlardan ENIAC.
Ancak şurası kesin; bunca gelişime karşın bilişim ve teknolojileri hala
tam olarak gelişememiştir; gelişemediği gibi bilginin gelişim seyri de
yavaşlamıştır. Bunun en başlıca nedeni ise hemen hemen her evde
bulunan kapalı kaynak kodlu işletim sistemi ve bu tekele bağımlı olarak
yapılan programlardır. Yani bilgisayarların, insanlarca yazılan
programların, işlemlerin, fikirlerin, algoritmaların anlamlandırılıp elle
tutulur, gözle görülür hale getirilmesini sağlayan işletim sistemleri ve
programların büyük oranda tekel ve paralı, üstelik kaynak kodlarının
kapalı olmasıdır.
Tabii ki, burada emek sorunsalı ortaya çıkmaktadır. Emek, evrensel bir
değer olup harcanan emek, zaman, öğrenilen bilgi­beceri ve enerjinin
*Bilgisayarlı eğitim gören öğrenciler
31
Bilginin Bilişim Alanında Gelişimi ve Üretimi
*Ubuntu'nun resmi bir türevi olan GNU/Linux;
dahası açık kaynak kodlu işletim sistemlerinin;
kullanımını ilköğrenim çağındakilere
kullandırmayı, sevdirmeyi amaçlayan
Edubuntu'nun CD kapağı.
lisans anlaşmaları dahilinde belirledikleri parayı
ödeyecektik. Örneği genişletirsek gelmiş geçmiş
tüm bilim adamları yaptıkları çalışmaları koruma
altına alıp yanlışlanabilirliğini ve düzenlenmesini engelleyip kullanımını
da kurallara bağlasaydı; üstelik her bir işlem başına da ücret talep
etselerdi ne olurdu? Soruya soru ile cevap verirsek: okullarda fen
bilgisi dersleri işlenebilir miydi?
Bugün işletim sistemleri ve iş gören uygulamalar pazarına bakıldığında
temelde belli başlı firmaların kuşkusuz hakimiyeti görülmektedir. İşletim
sistemi kullanıcıya kısaca sadece bir temel sunmaktadır aslında; kendi
kullanımına göre de kişi, sistemini izin verildiği ya da bilgisayar
alanında bildiği, düşündüğü ölçüde düzenleyebilir.
İşletim sistemleri ve üzerinde
çalışacak bağımlı uygulamaları
temelde ikiye ayrılmaktadır.
1.Kapalı kaynak kodlu
2.Açık kaynak kodlu ve özgür
Kapalı kaynak kodlu işletim
sistemleri firmalar tarafından kâr
amacı güdülerek yapılıp pazara
*Nikola Tesla, düşündüğü ve kar
amacı duymaksızın patent altına
aldırdığı yığınla icatlarını katı lisans
anlaşmalarıyla koruma altına alsaydı
bugün kullandığımız bilgisayarlar nasıl
çalışacaktı acaba?
SUD
sunulduğu için ücretlidir; satın alan son kullanıcıya (artık müşteridir)
sadece belli başlı işlemleri yapması için izin verdiği gibi satın aldığı ürünü
tam olarak tüketmesine de izin vermez. Ancak destek ve bakım­onarım
hizmetlerini sonuna dek satın alması için de müşteriye cazip seçenekler
sunar ki, bunlara pekala satılan malın açıkları da diyebiliriz; bu şekilde
satışa sunduğu malın açıklarını da yeniden satış yoluyla gizler.
Üstelik müşteri satın aldığı kapalı kaynak kodlu işletim sistemini kendi
isteklerine göre düzenleyemez; bu, sadece firmanın izin verdiği ölçüde
olur. Çünkü satın aldığı bir taban sistem değil ön koşullu olarak
kullanıcıyı paralı ve kapalı kaynak kodlu diğer yazılımlara mahkum eden
gelişime kapalı bir tabandır; gelişimi sadece izin verildiği ölçüde
mümkündür. Birde ne kapalı kaynak kodlu işletim sistemi satıcıları ne de
uygulamaları satıcı firmaları ürünlerinin güvenliğini garanti eder. Bu
işlemi de kapalı kaynak kodlu güvenlik yazılımları satan firmalara havale
ederler ve tüketicinin özgürlüğü, dahası üreteceği bilginin gelişeceği alan
bir çemberle sınırlanır; tüketici hep tüketici olarak kalır, sınıf atlayamaz.
Bu, aynı zamanda bilginin “fasit bir daireye” hapsolması demektir.
Bu çember içinde hapsolan birey sadece imkan verildiği ölçüde çözümler
üreteceği içindir ki, bu sonrasında mekanikleşecek ve kendini
tekrarlayacaktır. Ortaya çıkan bilgi ise bildik ve daima aynı sorunları
çözen bir bilgi olacaktır.
*Kaynak kodu denilen aslında açık
devre/kapalı devre şeklinde
tanımlayabileceğimiz 1 ve 0
sayılarının art arda dizilmesiyle oluşan
satırları kendince anlamlandıran
bilgisayarların ve son kullanıcının işini
biraz olsun kolaylaştırmak için yazılan
ve bir çekirdekçe ekrana yansıtılan
kodlardır.
Aydın BEZ
[email protected]
32
Gimp ile Renk Düzeltme
Bu dersimizde GIMP ile renk düzeltme konusunu ele alacağız. Dijital
fotoğraf makinesi ile çektiğimiz resimler her zaman istediğimiz sonucu
vermeyebilir. Bazen açık çıkar bazen koyu. Bazen de renk hakimiyeti
vardır. Şöyle deriz "bu resim kırmızıya kaçmış". Yani resimde kırmızı
rengin fazla olduğunu belirtmiş oluruz. Eski fotoğraflarımıza göz atarız.
Bir bakarız ki en sevdiğimiz resim solmuş. Burada solmak kelimesi
fotoğraflarımızın renklerinin değiştiği anlamını taşımaktadır. Peki biz
bunları nasıl düzelteceğiz. Bu soruların cevabını bu yazıda bulacaksınız.
Şimdi öncelikle renk modellerinden bahsedelim. Renk modelleri LAB,
RGB, CMYK olarak adlandırılır. CMYK modeli matbaada baskı
sistemlerinde hatta renkli yazıcılarda kullanılan modeldir. Yazıcı
kartuşlarına göz atabilirsiniz. Bunların biri renkli kartuş CMY renklerini
içerir diğeri ise Black yani siyah kartuştur. Bu model tüm renklerin 4
renkten cyan, magenta, yellow, ve key (black) renklerinin tonlarının
birleşmesi sonucu olduğunu varsayar.
SUD
GIMP programımızı açarak Dosya menüsünden Aç'a tıklayalım veya
Ctrl + O tuş kombinasyonu ile resmimizi açalım.
Size sponge'i tanıtayım. Gayet şirin mi şirin bir köpekcik. Çok değer
verdiğim bir tanıdığımın köpeği. Kendisinden rica ettim, o da beni
kırmayıp birkaç resmini GIMP derslerinde kullanmam için verdi.
CMYK Renk Modeli
Tanıtacağımız ikinci renk modeli ise RGB renk modelidir. Adı
Red(Kırmızı), Green(Yeşil) ve Blue(Mavi) kelimelerinin baş harfleri
kullanlarak oluşturulmuştur. Dijital fotoğraf makinelerinde, monitörlerde,
televizyonlarda ve tarayıcılarda standart olarak kabul edilmiştir.
RGB Renk Modeli
Bu yazımızda RGB renk modeli üzerinde çalışacağız
Sponge :)
33
Gimp ile Renk Düzeltme
Şimdi pencereler menüsünden Histogram'ı açalım. Histogram bize bir
fotoğraftaki renk dağılımı hakkında bilgi verir. Renk soldan sağa doğru
en koyudan en açığa dogru sıralanır. Grafiğin yüksekliği o tondaki
renklerin fotoğrafta hangi oranda bulunduğunu gösterir, başka bir
değişle benek (pixel) sayısı ile doğru orantılıdır. Bu resimde koyu
tonların daha fazla olduğunu görmekteyiz. ( Histogramın sol bölgesi )
Orta tonların az bulunduğu söylenebilir. ( Histogramın ortası ) Açık
tonların bulunduğunu ve en sağdaki en açık tonun yani beyazın bir
sıçrama yaptığını görüyoruz. GIMP her renk kanalı için ayrı ayrı
histogram oluşturulabilir.
SUD
Burada Kanal'dan diğer kanalları seçerek buradaki renk dağılımlarını
görebiliriz. Kırmızı, Yeşil, Mavi Alfa kanalı veya RGB Kanalını seçebiliriz.
RGB kanalını seçersek tüm renk dağılımlarını aynı histogramda
gösterecektir.
Histogram değerleri fotoğraftan fotoğrafa değişir. İdeal bir histogram
yoktur denilebilir. Histogram bize renk dağılımı konusunda bilgiler verir.
Mesela resimde açık tonların olmaması veya koyu tonların olmamasını
eksiklik olarak değerlendirebiliriz. Fotoğrafın nerede çekildiği hangi
zaman diliminde ve nasıl bir aydınlatma ile çekildiği önemlidir. Gece
karanlığında çekilmiş bir resmin koyu tonlarının daha fazla olması çok
doğaldır.
34
Gimp ile Renk Düzeltme
Pencereler menüsünden kanallara tıklayalım. Aşağıda kanallar
penceresi görülmektedir.
Kanallar resim üzerinde bulunan Kırmızı Yeşil Mavi renklerini tek
başına veya bir bütün olarak gösterilmesini sağlar. Kanallar penceresi
üzerinde göz işaretlerini görebilirsiniz. Bunların üzerine tıklayarak açıp
kapatabilirsiniz.
Histogram yardımı ile renk düzeltmeyi nasıl yapacağız.
SUD
Renk düzeltmenin o kadar çok yolu var ki. Renk düzeltme ile ilgili
sayfalarca yazı yazılabilir. Kontrast ayarı bozuk bir fotoğrafı
düzeltmek için öncelikle fotoğrafı GIMP programında açıyoruz.
Renkler menüsünden seviyelere tıklayalım.
Parlaklık ve Kontrast ayarı bozuk bir resim. Resimde koyu ve açık
tonların bulunmadığı görülmektedir.
35
Gimp ile Renk Düzeltme
SUD
Bu resimde orta tonların bulunduğunu açık ve koyu tonların hiç
bulunmadığını histogram yardımı ile görmekteyiz. Bunu düzeltmek
için 1 ile numaralandırdığım üçgen şeklindeki nesneye tıklayıp
histogramın başladığı yere kadar sürükleyelim. Aynı şekilde 3
numaralı üçgen biçiminde olan nesneye tıklayarak gene histogramın
başlangıcına kadar olan yere taşıyalım. Resmimizin renklerinin
düzeldiğini göreceğiz. En son 2 numaralı nesneye tıklayarak ince bir
ayar yapalım. Böylece resim renklerini düzenlemiş oluruz.
1
4
2
3
6
5
7 8 9
İkinci yol: 6 numaralı otomatik butonuna tıklayalım. Bu her zaman
için kaliteli sonuçlar vermeyecektir. Bu resimde istediğim sonucu
elde edemedim.
Üçüncü yol koyu açık ve orta tonları tanımlamak
7 numaralı butona tıklayarak resimdeki en koyu alana tıklayalım.
8 Numaralı butona tıklayarak orta tonun bulunduğu yere tıklayalım.
9 Numaralı butona tıklayarak açık tonların olduğu yere tıklayalım.
Böylece renkleri düzeltmiş oluruz. Şunu belirtelim ki bu da her
zaman kaliteli sonuç vermeyecektir. En kaliteli sonuç elle yapılan
düzeltmedir.
4 ve 5 numaralı nesneler resimde kullanılacak en koyu ve açık
tonları göstermektedir. İleriki yazılarda bu nesnelerin nerede
kullanılacağını ayrıntılı biçimde ele alacağız.
36
Gimp ile Renk Düzeltme
SUD
Giriş seviyeleri ayarlandıktan sonra fotoğrafımız görülmektedir. Bu
yöntem eski solmuş resimler üzerinde çok kaliteli sonuçlar
vermektedir.
37
Gimp ile Renk Düzeltme
SUD
Başka ve eğlenceli bir yol: Resmimizi açalım. Histogram görünmüyorsa
pencereler menüsünden histogramı açalım. daha sonra Pencereler
menüsünden Brightness Contrast'a tıklayalım. Şimdi açılan pencereden
Parlaklık ve Kontrast değerlerini değiştirip resimdeki değişiklikleri ve
histogramdaki değişiklikleri izleyelim. Birçok deneme yapmanızı tavsiye
ederim. Histogramın en koyudan en açığa doğru açılması gerektiğini
belirteyim. Uygun değerleri ayarladıktan sonra histogramın durumu:
Resmimiz altta, Parlaklık ve Kontrast penceresi yanda görülmektedir.
38
Gimp ile Renk Düzeltme
SUD
Renk düzeltmenin dışında daha keskin renkler elde etmek için Parlaklık
ve Kontrastı kullanmamız gerekmektedir. Bu işlem için parlaklık değerini
düşürüp Kontrast değerini arttırmamız gerekmektedir. Aşağıda orjinal
resim ve daha keskin renkler elde ettikten sonraki durum gözükmektedir.
Gelecek sayıda renk düzeltme konusuna devam edeceğiz.
Gelecek sayıda görüşmek üzere, hoşçakalın.
Hüseyin SARIGÜL
[email protected]
39

Benzer belgeler