mirc

Destekciler

Sitede Ara

Shell Nedir

Temmuz 20th, 2007 Yazar admin

Basitçe, bir shell hesabı aldığınızda sürekli ve yüksek hızda(T1,T3,Kablo vs.) internete bağlı bir bilgisayarınız olacak diyebiliriz. Ancak sheller sadece bunun için kullanılmaz, en azından sadece bu özelliklerinden dolayı bir shell almak gerekmez. IRC için düşünüldüğünde bir irc sunucusu kurmak, eggdrop kurmak yada bir bouncer kurmak için sheller ideal olabilir. Bunun yanında shell hesabınızın olduğu bilgisayarlar donanım ve yazılım olarak üst seviye bilgisayarlardır. Asıl önemli olan bu ekstra özelliklerinden faydalanabilmektir.

ÖrneÄŸin bir web siteniz var diyelim ve sitenizi bir hosttan diÄŸer bir hosta geçireceksiniz. Bir kaç ftp komutuyla yaklaşık 10MB’lık bir siteyi en fazla bir kaç dakika içinde yeni hostunuza gönderebilirsiniz. Kendi bilgisayarınıza linux kurmak yerine linux kurulu bir shell alıp neredeyse tüm uygulamaları kullanabilirsiniz. CGI, PHP, TCL, ASP türü programları rahatlıkla ve ekstra hiç bir kurulum gerekmeden shell hesabınızda çalıştırabilirsiniz.

Shellerde genellikle Unix, Linux ve FreeBSD gibi işletim sistemleri kullanılır. Bunun yanında WinNT yada Win2000 sunucuları da bulabilme imkanınız var. BP (background process,siz shell hesabınızdan bağlantınızı kestikten sonra çalıştırılmaya devam eden uygulamalara veya programlara verilen ad. eggdrop gibi) çalıştırmanıza izin veren ve bedava olan bir shell bulma olasılığınız yolda giderken beşyüz milyon bulma olasılığınızla aynı. Siz shelle bağlıyken BP çalıştırmanıza izin veren sheller var ancak siz bağlantınızı kesince çalıştıdığınız uygulamalar ve programlar kapatılıyor. Dolayısıyla eggdrop veya bouncer kurup çalıştıramıyorsunuz. Çoğu bedava shellde BP çalıştırılmasına izin verilmiyor. Bedava sheller genelde program derleme, script çalışıtırma, yazılan bir programın veya scriptin farklı platformlarda denenmesi için kullanılıyor.

Kısaca shell şu işlere yarayabilir:

Shell hesabınıza FTP ve TELNET ile bağlanabilirsiniz.
Yüksek hızda internete bağlandığı için büyük dosyaları veya acil indirilmesi gereken dosyaları kısa sürede shell hesabınıza indirir daha sonra zaman bulduğunuzda shell hesabından kendi bilgisayarınıza çekebilirsiniz.
Kendi bilgisayarınızda derleyemediğiniz büyük programları shell hesabınıza gönderip burada kısa sürede derleyebilirsiniz.
PHP, CGI gibi dilleri rahatlıkla çalıştırabilirsiniz. (Hatta çoğu ASP bile destekler)
Kendi IRC sunucunuzu kurabilirsiniz
E-mail gönderip alabilirsiniz
Web sitesi kurabilirsiniz
BNC(bouncer) kurabilirsiniz
Eggdrop kurabilirsiniz.
Ancak hemen belirtelim, bir shell hesabı almadan ve bir eggdrop kurmadan önce mutlaka orta seviye (ileri seviye sizin için daha iyi olur) IRC bilginizin olması gerekir. Eğer IRC konusunda pek fazla bilginiz yoksa ve linux türü işletim sistemlerine yabancıysanız bu işe kalkışmadan önce biraz daha beklmenizde fayda olaktır.

not: alıntıdır.

Kategori Linux Komutlari | 2 yorum »

Linux

Temmuz 13th, 2007 Yazar admin

Daha önce hiç Linux programı derlemediyseniz, önce bazı kavramları açıklığa kavuşturalım:

tar: (tape archiver) birden fazla dosyayı tek dosya haline getirir ve sıkıştırır. Teyplere yedekleme amacıyla geliştirilmiştir. tar dosyaları sıkıştırılmışsa uzatması .gz, değilse .tar olur.

gcc: GNU’nun C derleyicisidir. İnsan tarafından okunabilen kaynak kodlarını makina tarafından okunabilen nesne (object) dosyalarına dönüştürür. C programlama diliyle yazılmış kaynak kodları içeren dosyaların uzantını .c olur. Nesne dosyalarının adının uzantısı genellikle .o olur. Derleyici baÅŸlık (header, uzantısı .h olan) dosyalarını bulamazsa derleme hatası verir.

make: henüz derlenmemiş kaynak dosyalarını derleyen yardımcı bir programdır. make, derleme talimatlarını Makefile adlı bir dosyadan alır.

ld: GNU’nun baÄŸlayıcı (linker) programıdır. Nesne dosyalarını ve kitaplık denen dosyaları birbirine baÄŸlayarak ortaya çalıştırılabilir bir program dosyası çıkartır. Genellikle Makefile’ın içinde linker’ın çalıştırılması talimatı bulunur ve sizin bu programı kullanmanız gerekmez.

ldconfig : paylaşılan kitaplık dosyalarını (shared librari) arar. Bu dosyalardan birden fazla program tarafından paylaşılır, ve dosya adlarında .so bulunur.

./configure : C derleyecisi ve header dosyalarının nerede olduğunu araştırır, ve vardığı sonuca göre Makefiles dosyasında değişiklik yapar.

PHP, bir Unix/Linux sisteminde müstakil yorumlayıcı veya Apache Web sunucusunun bir modülü olarak çalışmak üzere derlenebilir. PHP, müstakil yorumlayıcı olarak kurulduÄŸunda, Web sunucusu, her ihtiyaç halinde PHP yorumlayıcısının bir örneÄŸini çalıştırır. Bu, bir süre sonra Web sunucusunun bulunduÄŸu iÅŸletim sisteminin yükünün artmasına ve iÅŸleyiÅŸinde yavaÅŸlamaya yol açabilir. Oysa PHP, sunucunun bir modülü olarak kurulduÄŸunda, bu sakınca ortaya çıkmaz. (Bu özelliÄŸi ile PHP, klasik CGI/Perl’ün çalışma tarzından ayrılır, ASP’nin ve ColdFusion’ın çalışma tarzına yaklaşır.) Bununla birlikte kötü niyetle veya beceriksizce yazılmış PHP programları modül olarak kurulmuÅŸ PHP’yi çökertirlerse, Web sunucusunu da çökertmiÅŸ olurlar; oysa müstakil PHP yorumlayıcı çökerse, Web sunucusuna bir ÅŸey olmaz.

Burada yapacağımız kurulum işlemi sırasında Linux kurulu olan bilgisayarımıza Apache Web sunucu programını, bu sunucunun kullanacağı güvenli Socket katmanını sağlayacak Mod_SSL programını, bu programın gerektirdiği OpenSSL aracını, MySQL veritabanı sunucusunu ve PHP Scripting dilini kurmuş olacağız.

PHP’yi Linux ortamında Apache Web sunucusuna modül olarak kurmak için sırasıyla ÅŸu iÅŸlemleri yapmamız gerekir (Sisteminizde gzip veya gunzip ile gcc and GNU make kurulu olduÄŸunu varsayıyorum):

1. Sisteminizi root olarak baÅŸlatın ve sıkıştırılmış olarak alacağınız PHP ve Apache dosyalarını geniÅŸ yer olan geçici bir dizinde açın, ve o dizine gidin. Sözgelimi, Apache’nin tar-zip olarak sıkıştırılmış kaynak dosyalarının tmp adlı dizinde olduÄŸunu varsayalım:

# cd /tmp

# gunzip -c apache_1.3.12.tar.gz | tar xf -

Burada, indirdiÄŸiniz Apache sürümü farklı ise onun adını yazacaksınız. Åžimdi Apache’yi açtığınız klasöre gidin ve buradaki configure dosyasını çalıştırın:

# cd apache_1.3.12

# ./configure –prefix=/usr/local/apache

Buradaki örnekte Apache’yi /usr/local/apache dizinine koyduÄŸumuza dikkat edin. Bu dizini, bir çok kurulumun varsayım olarak arayacağı dizin olduÄŸu için tercih ediyoruz. Ama isterseniz siz Apache’yi baÅŸka dizine de kurabilirsiniz.

2. Sıra MySQL veritabanı sunucusunda. Linux’ta root oturumunda iken sıkıştırılmış dosyaları indirdiÄŸiniz geçici dizine geçin ve dosyaları açın; sonra oluÅŸturulan dizine giderek, configure komutu ile veritabanı sürücüsünü yapılandırın:

# cd /tmp

# gunzip -dc mysql-3.22.32.tar.gz | tar xvf -

# cd mysql-3.22.32

# configure –prefix=/usr/local/mysql

Şimdi make komutu ile binary dosyalarını oluşturarak, ve sisteme yükleyelim:

# make

# make install

MySQL’in kullanım izinlerini belirlememiz gerekir. AÅŸağıdaki komutları yazarken “parola” kelimesi yerine vermek istediÄŸiniz parola kelimesini yazmanız gerekir:

# scripts/mysql_install_db

# cd /usr/local/mysql/bin

# ./safe_mysqld &

# ./mysqladmin -u root password ‘parola’

Kurulum işleminin başarılı olup olmadığını sınamak için, kurulum sırasında oluşturlan örnek veritabanı dosyalarını bulunup bulunmadığını soruşturabilir ve kendimiz yeni bir veritabanı oluşturabiliriz. Bunun için şu komutu yazalım:

# BINDIR/mysqlshow -p

# mysql -u root -p

Sistem “Enter password:” karşılığını verdiÄŸinde, yukarıda kullanım izinlerini belirlerken yazdığınız parolayı yazın; MySQL sunucusu çalışacak ve size kullanıcı izinlerinin bulunduÄŸu “mysql” ve sınama amacıyla oluÅŸturulan “test” adlı iki veritabanının bulunduÄŸunu bildirecektir. Åžimdi kendi veritabanımızı oluÅŸturalım. MySQL sunucu komut istemcisi satırına ÅŸunu yazın (Bilgisayarın vereceÄŸi karşılıklardan ayırt etmek için kendi yazdıklarımızı koyu renkle gösteriyoruz):

mysql> create database deneme;

Sunucu “Query OK, 1 row affected (0.00 sec)” ÅŸeklinde karşılık verecektir. Åžimdi bu veritabanını seçerek içinde deneme adlı ve içinde “no” ve “isim” adlı iki alan bulunan bir tablo oluÅŸturalım (MySQL komutları büyük harf-küçük harf ayrımı yapmaz; komutlardan sonra noktalı virgül konur). Burada koyu renkle gösterilen satırlar ve iÅŸaretler bize aittir:

mysql> use deneme;

Database changed

mysql> CREATE TABLE books (

-> no int(3) not null auto_increment,

-> isim char(50) not null,

-> unique(no),

-> primary key(no)

-> );

Query OK, 0 rows affected (0.00 sec)

Bakalım tablomuz başarılı şekilde oluşmuş mu?

mysql> show tables;

mysql> describe deneme;

Field Type Null Key Default Extra

no int(3) PRI 0 auto_increment

isim char(50)

2 rows in set (0.00 sec)

Çok güzel! Hem MySQL’i kurmuÅŸ, hem de ilk tablomuzu oluÅŸturmuÅŸ bulunuyoruz. MySQL komutlarını daha ayrıntılı öğrenebilmek için MySQL’in http://www.mysql.com adresindeki sitesini ziyaret edebilirsiniz. Åžimdilik MySQL’den çıkalım ve kuruluma devam edelim.

3. Sıra geldi PHP’ye! PHP kaynak dosyasının bulunduÄŸu geçici dizine geçin, ve dosyaları açın; sonra açılan dosyaların bulunduÄŸu dizine gidin:

# gunzip -c PHP-4.0.1pl2.tar.gz | tar xf -

# cd PHP-4.0.1pl2

Åžimdi configure dosyasını çalıştıracağız; bu komutun bir çok opsiyonu vardır; bunların tümünü görmek istiyorsanız, “configure –help” komutunu verebilirsiniz. Biz sadece PHP’ye MySQL ve Apache opsiyonlarını eklemekle yetineceÄŸiz:

# ./configure –with-mysql=/usr/local/mysql

–with-xml

–with-apache=../apache_1.3.12

–enable-track-vars

Oluşan binary dosyalarını program dosyasına çevirerek, yükleyelim:

# make

# make install

Oluşan ini dosyasını lib dizinine koplayalım:

# cp PHP.ini-dist /usr/local/lib/PHP.ini

PHP.ini dosyasındaki bir çok özelliÄŸi deÄŸiÅŸtirerek, PHP’nin çalışma tarzını ayarlayabilirsiniz; örneÄŸin ÅŸu satırı ekleyerek, PHP’nin azamî çalışma süresini arttırabilirsiniz:

max_execution_time = 60;

Kategori Linux Komutlari | Yorum yok »

Linux Telnet putty Komutlari

Temmuz 13th, 2007 Yazar admin

Kategori Linux Komutlari | Yorum yok »

none