Feeds:
Posts
Comments

Archive for April, 2009

Oracle ve Webservis …

İnternet üzerinde veri alışverişinde kullanılan webservislerden bahsetmek istiyorum. Gönderdiğimiz xml verileri sonucunda bize yine bir xml veri seti döner ve gelen xml parse edilerek dönen sonuçtaki istenen veri elde edilir. Oracle’da webservis kullanılabilmesi için utl_http paketi mevcut bu paketin kullanımı ile ilgili olarak http://wslite.strikeiron.com/simplegraphinglite01/SimpleGraphingLite.asmx sitesindeki webservisi örnek olarak kullanacağız. Bu linke tıkladığımız zaman bize SimpleGraphingLite.asmx servisinde bulunan metodlar listelenecektir. Bu yazıda buradaki GetBarGraph metodunun kullanımını göstereceğim. GetBarGraph linkine tıkladığımız zaman bize göndermemiz gereken xml verisi;

POST /simplegraphinglite01/SimpleGraphingLite.asmx HTTP/1.1
Host: wslite.strikeiron.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://www.wslite.strikeiron.com/GetBarGraph"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetBarGraph xmlns="http://www.wslite.strikeiron.com">
      <strGraphOrient>string</strGraphOrient>
      <strGraphTitle>string</strGraphTitle>
      <strXAxisLabel>string</strXAxisLabel>
      <strYAxisLabel>string</strYAxisLabel>
      <BarColor>RED or GREEN or BLUE</BarColor>
      <strXPoints>
        <string>string</string>
        <string>string</string>
      </strXPoints>
      <strYPoints>
        <string>string</string>
        <string>string</string>
      </strYPoints>
    </GetBarGraph>
  </soap:Body>
</soap:Envelope>

Ve gönderdiğimiz veri sonucunda bize dönecek xml verisi yani;

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetBarGraphResponse xmlns="http://www.wslite.strikeiron.com">
      <GetBarGraphResult>
        <ServiceResult>
          <GraphImage>base64Binary</GraphImage>
        </ServiceResult>
      </GetBarGraphResult>
    </GetBarGraphResponse>
  </soap:Body>
</soap:Envelope>
görülecektir.

Göndereceğimiz verinin sonucunda gelen xml’deki <GraphImage>base64Binary</GraphImage> kısmında bize base64 formatında sıkıştırılmış bir jpg dosyası gelecektir. (base64 aslında basit bir şifreleme yöntemidir.) Gelen base64 veriyi decode ettiğimiz zaman bize jpg dosyasını verecektir. Gelin Pl/Sql ile nasıl veri gönderip alınabilir buna bir gözatalım.
Basit bir script yazacak olursak;

declare
 sorgu utl_http.req;
 sonuc utl_http.resp;
 deger VARCHAR2(32000);
 vxml  VARCHAR2(32000);
 g_data VARCHAR2(32000);
BEGIN
g_data := '
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
 <soap:Body>
 <GetBarGraph xmlns="http://www.wslite.strikeiron.com">
 <strGraphOrient>aaaaa</strGraphOrient>
 <strGraphTitle>bbbbb</strGraphTitle>
 <strXAxisLabel>cccccc</strXAxisLabel>
 <strYAxisLabel>ddddddd</strYAxisLabel>
 <BarColor>RED</BarColor>
 <strXPoints>
 <string>eeeeeee</string>
 <string>fffffffff</string>
 </strXPoints>
 <strYPoints>
 <string>ggggggg</string>
 <string>hhhhhhh</string>
 </strYPoints>
 </GetBarGraph>
 </soap:Body>
</soap:Envelope>
';
 BEGIN
 utl_http.set_transfer_timeout(300);
 sorgu := utl_http.begin_request('http://wslite.strikeiron.com/simplegraphinglite01/SimpleGraphingLite.asmx', 'POST');
 utl_http.set_header(sorgu, 'Content-Type', 'text/xml; charset=utf-8');
 utl_http.set_header(sorgu, 'User-Agent', 'Mozilla/4.0');
 utl_http.set_header(sorgu, 'content-length', LENGTH(g_data));
 utl_http.write_text(sorgu, g_data);
 sonuc := utl_http.get_response(sorgu);
 LOOP
 utl_http.read_line(sonuc, deger, true);
 vxml := vxml || deger;
 END LOOP;
 utl_http.end_response(sonuc);
 EXCEPTION
 WHEN utl_http.end_of_body THEN
 utl_http.end_response(sonuc);
 END;
 dbms_output.put_lıne(vxml);
END;
/

Şeklinde bir kullanım ile direk pl/sql’den webservisleri kullanabiliriz. Burda g_data değişkenine göndereceğimiz xml veriyi, begin_request komutu ile kullanacağımız servisin yolunu belirliyoruz. set_header komutu ile post edeceğimiz başlık bilgilerini ayarlıyacağız. get_response komutu ile sonucu alıp read_line komutu ile satır satır okuyarak ekrana sonucu yazdırıyoruz.
örnek sonuç;

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<GetBarGraphResponse xmlns="http://www.wslite.strikeiron.com">
<GetBarGraphResult>
<ServiceStatus>
<StatusNbr>311</StatusNbr>
<StatusDescription>Invalid number of data points.</StatusDescription>
</ServiceStatus>
<RemainingHits>97</RemainingHits>
<ServiceResult>
<Count>0</Count>
<GraphImage>
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
</GraphImage>
</ServiceResult>
</GetBarGraphResult>
</GetBarGraphResponse>
</soap:Body>
</soap:Envelope>

Kırmızı ile işaretlediğim kısım aslında şifrelenmiş bir jpeg dosyasıdır bu kırmızı işaretli GraphImage tagları arasındaki veriyi base64 ile decode ederek ve jpg formatına çevirip gösterimini sağlayabilirsiniz. Xml parse işlemi için Xdb foksiyonlarını kullanabilirsiniz. Daha sonraki yazılarımda bunu da anlatacağım.
İyi çalışmalar…

Advertisements

Read Full Post »

Linux sisteminiz üzerine oracle kurdunuz. İhtiyacınız olacak en önemli şey sql, function, procedure, vs.. yazarken size yardımcı olacak bir pl/sql editörü olacaktır. Bu işi sizin için üstlenecek çeşitli araçlar mevcut fakat bir kısmı ücretli, bir kısmı ise gerçekten devamlı hata veren ve görsel fakat görsellikten bir haber olan araçlar. Bunlardan bazı seçenekler;

Direk indirme işlemi yaptıktan sonra oracle ayarlarını yaparak kolayca kullanıma başlayabileceğiniz bir program. Program trial versiyon bir süre sonra satın almanız gerekiyor.

Kurulumu bazı sistemlerde sorun çıkartabiliyor. Mesela benim sistemimde. 🙂 Program ücretli fakat sadece ticari olarak kullanımlarda. Şu an sitesinde şu şekilde bir açıklama var. “For Evaluation Version,when the software starts, it asks you a serial number. Please click Trial. Other than this, that is not difference between License version and Evaluation version.” Yani;

Deneme sürümü için, program başladığı zaman sifre soracaktır. Trial butonuna basınız. Bununla ilgili olarak, lisanslı versiyon ve deneme sürümü arasında bir fark yoktur. Şeklinde bir ibare mevcut ben çalıştıramadım, daha doğrusu çok fazla uğraşmadım.

Oracle ile program geliştiricilerin çok fazla kullanıkları araçların başında toad ve pl/sql developer geliyor. Tora programı bazı kısımlarda toad yazılımını hazırlayan Quest Software firmasının bazı yerlerde desteğini almış ve çapraz platformlarda çalışabilme özelliği olmasına karşın sitesinde “For commercially supported database tools for Windows please see Toad for Oracle by Quest Software – You can expect more.” yazıyor. Yani;

“Windows üzerinde desteklenen ticari veritabanı aracı için Quest software tarafından yazılan oracle için toad’a bakınız. yazıyor.” Program ücretsiz üstelik açık kaynak bir yazılım. Eğer Ubuntu kullanıyorsanız Synaptic paket yöneticisinde aratarak 1.3… versiyonunu bulabilirsiniz fakat bu sürüm postgresql destekliyor. Sitesinde 2.0… oracle için sürümünü için deb paketini indirerek kurmanız veya sourceları indirdikten sonra sisteminize kurmanız gerekmekte.

Son olarak asıl benim kullandığım ve tavsiye ettiğim program ise, Oracle’a ait bedava, görsel olarak baya güzel yapılmış, bütün platformlarda rahatlıkla kullanabileceğiniz sqldeveloper programı. Programın kurulumu için herhangi bir deb paketi bulunmamakta. Program için, (Ubuntu, Debian, vs.. tarzı deb paketlerini kullanan sistemler için…) bazı ufak ayarlar gerekiyor. Eğer rpm paketi destekleyen bir linux sürümü kullanıyorsanız, rpm paketleri mevcut. Ben ubuntu üzerinde kullanıyorum ve gayet güzel ve kullanışlı bulduğumu söylemeliyim. Sisteminizde sqldeveloper çalıştırabilmek için jdk(Java Development Kit) ve jre(Java Run Time Environment) yüklü olması gerekiyor. Ubuntu tarzı deb paketi vs.. sistemler için Oracle SQL Developer for other platforms download seçeneği seçilmeli. 73 mb civarı bir dosya indireceksiniz. İndirdiğiniz zip dosyasını sisteminizde açtıktan sonra /home/ngeen/Masaüstü/sqldeveloper/sqldeveloper/bin ornek dizinde olduğu gibi bin klasorunun altında bulunan sqldeveloper.conf dosyasını, kate tarzı bir kelime işlemci program ile açarak SetJavaHome /usr/lib/jvm/java-6-sun-1.6.0.13 satırını eklemeniz gerekiyor. Sonrasında eğer çalıştırma yetkiniz var ise örnek dizin üstünden gidiyorum /home/ngeen/Masaüstü/sqldeveloper/ dizininde sqldeveloper.sh dosyası çalıştırıldıktan sonra gerekli ayarları yapınca aşağıdaki başlangıç ekranı ile karşılaşacaksınız.

sqldeveloper1

Sonrasında gelen ekranda sql,function,procedure, vs.. çalışmalarınıza başlayabilirsiniz…

sqldeveloper2

İyi Çalışmalar…


Read Full Post »

Oracle ve Sun Birleşimi….

Hafta içinde duyduğum bir haber beni resmen şoka uğrattı diyebilirim. Oracle, Sun’ı satın alıyormuş. Sun resmi sitesinde bunu yayınladı. Habere burdan ulaşabilirsiniz.

Bir hayli şaşırtıcı bir olay, şöyle ki hatırladığım kadarıyla, Sun 1 sene önce açık kaynak yazılım olan mysql için tam 1 milyar dolar para harcamış ve satın almıştı. Bunun üstüne mysql server için değişik sürümleri çıkartmışlardı. “İşlemde, Sun’ın nakit ve borçları, yaklaşık 7,4 milyar dolar veya 5,6 milyar net olarak değerlendirildi.” şeklinde bir ifade mevcut. Demek ki kriz Sun’ı teğet geçmedi. 🙂 Oracle bakımından düşünürsek kendisine epeyce bir güç daha kattığını söyleyebiliriz. Bu arada kafamda bazı soru işaretleri mevcut.

Jdeveloper vs Netbeans…

Oracle jdeveloper araçı ile oracle ve java birlikte kullanılabiliyordu. Buna karşın Sun netbeans adında bir java idesine destek vermekteydi. Burda acaba netbeans idesi üzerine mi gidilecek yoksa 2 farklı ide direk jdeveloperda mı birleşecek?

Oracle vs Mysql…

Oracle veritabanının pazarda hemen hemen liderliği pek tartışılmaz. Buna karşın mysql’in tırmanışı bir anda kesilmiş olacak. Acaba mysql için ne düşünülüyor? Yoksa Mysql tarih mi oluyor?

Linux vs Solaris…

Oracle değişik linux sürümleri üzerine kurulabiliyor hatta Oracle Enterprise Linux 4 ve 5 sistemleri mevcuttu, solaris üzerinede oracle yüklenebiliyor. Acaba Oracle Enterprise Solaris 4 ve 5 çıkacak mı? 🙂

Ne olursa olsun yazılım dünyası için mysql açısından baktığım zaman bir miktar olumsuz fakat genel olarak olumlu bir sonuç gibi gözüküyor. Bakalım zaman neler gösterecek. Hep beraber göreceğiz…

Read Full Post »

Merhaba;

Eğer sisteminizde ubuntu,kubuntu veya debian dağıtımlarından herhangi birisi kurulu ise sisteminize çok kolay bir şekilde oracle kurabilirsiniz. Oracle 11g, 10g sisteme kurulurken bir hayli uğraştırıyor insanı.(servisi otomatik başlatmak için ayarlamak gerekiyor, kernel için bazı değerler atamak gerekiyor, vs..) Fakat Oracle Xe (Express Edition) bunları hemen hemen kendisi ayarlıyor size sadece şifrenizi belirlemek ve ayar için bir kaç satır komut yazmak kalıyor.

Haydi kuruluma yavaş yavaş hazırlanalım;

Öncelikle ayarları yaparken her seferinde sudo yazmaktan kurtaralım kendimizi;

#sudo su

komutundan sonra root şifremizi giriyoruz.

#kate /etc/apt/sources.list

komutu ile karşımıza gelen ekranda boş bir satır açıp aşağıdaki komut satırını ekleyin;

deb http://oss.oracle.com/debian unstable main non-free

kayıt işlemi yaparak ekrandan çıkın ve terminalde sırası ile aşağıdaki komut satırlarını çalıştırın;

# wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle -O- | sudo apt-key add –
# apt-get update
# apt-get install oracle-xe

Bu işlemlerin sonunda oracle-xe yüklenmesi için yaklaşık 221 mb boyutunda bir kurulum dosyası indirecek ve daha sonra kendisini sisteme kuracaktır. bir süre sonra terminal penceresinin kapandığını göreceksiniz.

Uygulamalar->Oracle Database 10g Express Edition görüyorsanız eğer kurulum başarılı bir şekilde tamamlanmış demektir. Bu adımdan sonra yapmamız gereken son şey oracle ayarlarını yapılandırmak, sakın gözünüz korkmasın işin en kolay yanı burası diyebilirim. 🙂 Yapmanız gereken;

# /etc/init.d/oracle-xe configure

Komutunu çalıştırmak, bu işlemden sonra

Specify the HTTP port that will be used for Oracle Application Express [8080]:

Kısmında sizden apex’in çalışması için port numarası belirlemenizi isteyecek. Burda default değer olan 8080’i isterseniz değiştirebilirsiniz.

Specify a port that will be used for the database listener [1521]:

Kısmında ise database listener için bir port belirlemenizi istiyor. Burdaki 1521 değerinide isterseniz değiştirebilirsiniz.

initial configuration:

Herhangi bir değer girmeden boş geçebilirsiniz. Sonrasında sizden şifre isteyecek. istediğiniz şifreyi girin.

Confirm the password: (* make sure you remember this password *)

Son olarak size Oracle veritabanını sistem başlangıcında aktif hale getirilmesini istiyormusunuz diye soruyor.

Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]: y

Bu işlemede onay verdikten sonra gerekli ayarlar yapılıyor.

Starting Oracle Net Listener…Done
Configuring Database…Done
Starting Oracle Database 10g Express Edition Instance…Done
Installation Completed Successfully.
To access the Database Home Page go to “http://127.0.0.1:8080/apex&#8221;
root@ubuntu:/home/ngeen/Desktop#

And happy end. 🙂 Oracle kurulumunu tamamladık. Artık istediğimiz işlemi yapabiliriz. Firefox veya hangi web tarayıcıyı kullanıyorsanız, adres çubuğuna http://127.0.0.1:8080/apex yazarak Oracle Application Express uygulamasına erişebilirsiniz, kullanıcı adına sys şifre kısmına ayarlar kısmında verdiğiniz şifreyi yazarak giriş yapabilir ve sonrasında istediğiniz işlemi veritabanında yapabilirsiniz.

Verilerinizin kaybolmaması dileklerimle. 🙂

Read Full Post »

Eğer elinizde oracle bir sunucu var ise nerdeyse başka hiçbir şeye ihtiyacınız yok diyebilirim. Şöyle ki oracle ile javayı birlikte kullanabiliyorsunuz. Sistemde gerekli paketlerin bulunup, bulunmadığına bakmak için aşağıdaki sorguyu çektiğimizde gelen satırlara dikkat edelim;

SQL> select comp_name,version,status from dba_registry;

COMP_NAME                               VERSION    STATUS
————————————— ———- ——
Oracle Enterprise Manager               11.1.0.6.0 VALID
OLAP Catalog                            11.1.0.6.0 VALID
Spatial                                 11.1.0.6.0 VALID
Oracle Multimedia                       11.1.0.6.0 VALID
Oracle XML Database                     11.1.0.6.0 VALID
Oracle Text                             11.1.0.6.0 VALID
Oracle Data Mining                      11.1.0.6.0 VALID
Oracle Expression Filter                11.1.0.6.0 VALID
Oracle Rule Manager                     11.1.0.6.0 VALID
Oracle Workspace Manager                11.1.0.6.0 VALID
Oracle Database Catalog Views           11.1.0.6.0 VALID
Oracle Database Packages and Types      11.1.0.6.0 VALID
JServer JAVA Virtual Machine            11.1.0.6.0 VALID
Oracle XDK                              11.1.0.6.0 VALID
Oracle Database Java Packages           11.1.0.6.0 VALID
OLAP Analytic Workspace                 11.1.0.6.0 VALID
Oracle OLAP API                         11.1.0.6.0 VALID
Oracle Real Application Clusters        11.1.0.6.0 VALID

Eğer kırmızı işaretli satırı göremiyorsanız, oracle sunucunuza jserver bileşenini yüklemeniz gerekmektedir.

Java kodlarını veritabanına nasıl yükleriz?

Bunun 2 yolu bulunuyor;

  1. “CREATE OR REPLACE JAVA SOURCE” komutu,
  2. loadjava programcığı.

Örnek olarak;

1. Yöntem için;

create or replace java source named “uyari” as

public class uyari {                            /*Sınıfımız yaratıyoruz…*/

static public String mesaj(String mesajver) {

return “Bu mesajın içeriği ” + mesajver;

}

}

/

Sonrasında yazdığımız java kodunu Pl/sql  kodu olarak çevirmemiz gerekiyor;

create or replace function uyari_goster (v_deger varchar2) return varchar2 as

language java name ‘uyari.mesaj(java.lang.String) return java.lang.String’;

/

En son işimiz ise sql sorgusu içinde java kullanmaya geldi;

select uyari_goster(‘Ben Bir Mesajım 🙂 ‘) from dual;

/

2. Yöntem için;

Elinizde sizin derlediğiniz veya daha önceden derlenen bir java dosyası olduğunu düşünelim. Örneğin bu dosyanın adı ornek.class olsun.

loadjava -user ngeen/ngeen -resolve ornek.class

Komutu ile veritabanına ornek. class dosyası eklendikten sonra, tekrar bir vt fonksiyonu veya proseduru ile istediğiniz gibi kullanabilirsiniz. Hayal gücünüz, java bilginiz vs.. kullanarak sınırsız kullanım alanı bulunmaktadır.

Unutmayalım ki biz sadece kendimiz ile sınırlıyız, hayal gücünüzün sınırsız olması dileğiyle…

Read Full Post »

Bir Dizini, Cd Sürücü Gibi Göstermek…

Hepimiz windows ortamında magic disk, virtual disk, alcohol %120, vs.. programlar kullanarak sanal bir cd sürücü yaratmışızdır mutlaka.(Özellikle oyun sever arkadaşların bilgisayarında şu an bile eksik olmayacak programlardır bunlar.) Linuxde de bu işlem için bazı programlar mevcuttur.(Depolarınızda Cdemu olarak aratırsanız bulabilirsiniz.) Fakat ben size konsol ortamında bu işlemi nasıl yapacağınızı anlatacağım.

Öncelikle istediğimiz dizini iso dosya formatına cevirelim;
root@ubuntu:/home/ngeen/Masaüstü/database#mkisofs -r -o database.iso database/

mkisofs komutu ile iso formatına dönüşüm işlemini tamamladık.
Buradaki -r ve -o parametreleri ve mkisofs komutunun detayları için tıklayınız

Sıra geldi oluşturduğumuz iso dosyasını cd olarak göstermeye;
root@ubuntu:/home/ngeen/Masaüstü/database#mount -t iso9660 -o ro,loop=/dev/loop0 database.iso /mnt/cdrom

mount komutuylada oluşturduğumuz iso dosyamızı /mnt/cdrom dizinine bağlamış bulunduk.

Mount komutunun kullanımı ile ilgili detaylı bilgi için tıklayınız

/dev/ dizinindeki aygıtlar hakkında bilgi için tıklayınız

İşlemlerden sonra istersek, iso dosyasını direk k3b vb.. bir program ile cdye yazabilir veya cd den cd ye kopyalama işlemi yapabilir veya sistemdeki /mnt dizinine yetkisi olan bütün kullanıcıların istediğimiz dosyaları görmesini sağlayabiliriz. Örnekler daha da detaylandırılabilir.

Read Full Post »

Ubuntu Jaunty Jackalope Vs Pardus 2008.2 Canis aureus

Daha önceki yazılarımda size Pardus’tan bahsetmiştim. Bilgisayarıma Pardus kurduktan sonra bir hayli uğraşıp eclipse ve netbeans idelerini kurmuştum. Pardus’un gayet hoş ve güzel bir kullanımı olduğundan bahsetmiştim. Ubuntu’ya gelecek olursak dünyanın en çok kullanılan linux dağıtımı olduğu söyleniyor. Fakat daha önceden Ubuntu 8.10’u sistemime yüklemeye çalışmıştım. Bu sürümü bazı bilgisayarlarda bir hayli yoruyor insanı. Nedeni ise bu sürümde kullanılan X-Server yazılımının güncel olmaması, özellikle Ati Radeon Hd ve bazı Nvidia ekran kartlarında sorun çıkartıyor. Fakat güncel Ubuntu versiyonu olan Jaunty Jackalope’da bu sorun çözülmüş. (X.org server 1.6 Sürümü eklemiş bu sürümde.) Tavsiyem bu sürümü indirip kullanmanız. Fakat eğer ben 8.10 kullanacağı derseniz o zaman paket güncellemesi yapmanızı önermekten başka çözüm yok.

Güncellemeler için;

#sudo apt-get update
#sudo apt-get upgrade

Güncellemelerden sonra paketleri yüklüyor ve ayarlamaları yapıyoruz;

#sudo apt-get install build-essential xorg-driver-fglrx
#sudo aticonfig --initial -f

Düzenlemelerden sonra startx ile masaüstüne geçişi sağlayabilirsiniz;

#sudo startx

Peki Ubuntu ile Pardus arasındaki farklar nelerdir?

  • Uygulamaların sisteme yüklenmesi için Ubuntu deb paketlerini kullanırken, Pardus pisi paketlerini kullanıyor. deb paketi şeklinde olan bir uygulamanın Pardus’a kurulması için önce pisi formatına çevrilmesi gerekiyor. İstediğiniz paketleri sizde pisi olarak çevirebilirsiniz. Bunun için Pardus wikiyi inceleyiniz.
  • Pardus Kde ile çalışıyor, Gnome desteği yok. Ubuntu’da ise ister Kde, isterseniz Gnome masaüstü ortamlarını seçebiliyorsunuz.
  • Pardus yeni gelişmekte olan bir sistem olmasından dolayı depoları henüz kısıtlı. Burda önemli bir nokta Ubuntu’ya göre kısıtlı. 🙂 Pardus ile istediğiniz ve ihtiyaç duyabileceğiniz hemen hemen bütün programlar depolarda mevcut. Ubuntu’da ise depolarda hiçbir uygulamadan yoksun kalmıyorsunuz. Yüklediğiniz programlara ait güncelleme çıktığı zaman uyarılıyorsunuz ve güncellemeleri indiriyor ve kurabiliyorsunuz. Paket yöneticisi ise, seçtiğiniz program çalışmak için farklı programlarada ihtiyaç duyuyor ise bunları karşınıza otomatik olarak çıkartıyor. Gayet başarılı bir sistem.
  • En sevdiğim özelliklerinden birisi wubi adlı program. Beni gerçekten çok etkileyen ve çok hoşlandığım bir program. Özelliği ise, Ubuntu gibi bir işletim sistemini sanki bir windows programı gibi sisteme kuruyorsunuz, harddiskte istediğiniz kadar yer ayırabiliyorsunuz, istediğiniz zaman Ubuntu’yu (Burası çok bomba 🙂 ) Program Ekle/Kaldır’dan kaldırabiliyorsunuz. Sizi lilo,grub vb.. hiçbir şeyle uğraştırmadan kendisini mbr’ye ekliyor. Sonrasında ister windows, ister linux kullanın gayet hoş değilmi.
  • Java idelerini kurmam ise Pardus’tan çok daha kolay oldu. Java idelerini kurabilmek için JRE (java runtime environment) ve JDK (java development kit) yüklemek gerekiyor. Pardus’ta bunları pisi paketi şeklinde bulup kurabilmek için baya debelenmiştim. Şu an depolarda stabil sürümler bulunuyo olabilir. Ubuntu’da ise synaptic paket yöneticisini açıp burdan direk bu paketlere ulaşarak kurulumu yapabildim.
  • Bunların dışında son olarak Oracle 11g’yi Pardus’ta kurmaya çalıştığımda linking ntcontab kısmında takılı kalmıştım ve bir çözüm bulamamıştım buna, Ubuntu’da ise sıkıntısız bir şekilde kurulum yapabildim.

Sonuç olarak Ubuntu bende sorunsuz olmasından dolayı şu an Ubuntu kullanmaktayım. Fakat Pardus kesinlikle yabana atılacak bir sistem değil şu anda çoklu dil desteği olduğunu ve devamlı yenilenen, değişen bir sistem olduğunu göz önünde bulundurursak kısa zaman içinde daha fazla Türk ve yabancı kullanıcı kitlesine ulaşacağını düşünüyorum. Umarım birgün Ubuntu yerine Pardus için dünyada en fazla kullanılan linux dağıtımı ibaresini kullanırız.

Read Full Post »