F.Ü. MÜH. FAK. BİLGİSAYAR MÜH. BÖL. BİLGİSAYAR SİSTEMLERİ LAB. DENEY NO : 2



Benzer belgeler
Linux altında komut satırında...

Linux işletim sistemlerinde dosya hiyerarşisinde en üstte bulunan dizindir. Diğer bütün dizinler kök dizinin altında bulunur.

Linux ta komutlar hakkında yardım almak için aşağıdaki komutlar kullanılır : - man - info - whatis - apropos

Temel Linux Eğitimi 1., 2. ve 3. Bölümler

Komut Penceresi ile Çalışmaya Başlamak

Kurumsal Güvenlik ve Web Filtreleme

Kurumsal Güvenlik ve Web Filtreleme

LİNUX. Dosyalar ve dizinler

man komut man ls (ls komutu hakkında bilgi verir.) man pwd (pwd komutu hakkında bilgi verir.)

Linux Dosya ve Dizin Yapısı

Apache üzerinden Red Hat 5 yüklenmesi

Ağ Nedir? Birden fazla bilgisayarın iletişimini sağlayan printer vb. kaynakları, daha iyi ve ortaklaşa kullanımı sağlayan yapılara denir.

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

BİLGİ İŞLEM DERS 1. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

TL-WPS510U PRINT SERVER KURULUM DÖKÜMANI

Linux İşletim Sistemi Tanıtımı

NFS (Network File System) & NIS (Network Information System) H. Coşkun Gündüz cgunduz@cs.bilgi.edu.tr

Windows 2000 veya XP kurarken dosya sistemini seçmeniz gerekir. Ya FAT32 dosya sistemini kullanırsınız ya da NTFS.

BIND ile DNS Sunucu Kurulumu

Firewall Log Server. Kurulum Kılavuzu

AKINSOFT. Eofis NetworkAdmin. AKINSOFT EOfis NetworkAdmin Kurulumu Bilgi Notu. Doküman Versiyon : Tarih : Copyright 2008 AKINSOFT

Açık Kaynak Kodlu Yazılım

Linux un Tarihsel gelişimi

EKLER EK 12UY0106-5/A4-1:

Yazılım Mühendisliğine Giriş 2018 GÜZ

Linux Ubuntu Kurulumu

PHP ile İnternet Programlama

Temel Linux Eğitimi. İçindekiler

Paralel Hesaplama - Beowulf Cluster

Temel Bilgi Teknlolojileri 1. Ders notları 5. Öğr.Gör. Hüseyin Bilal MACİT 2017

EYLÜL 2012 İŞLETİM SİSTEMLERİ. Enformatik Bölümü

İÇERİK YÖNETİM SİSTEMİ (CMS) Bir web sitesi yayınlamak için yapılması gerekenler:

İşletim Sistemi. BTEP205 - İşletim Sistemleri

Kampüs Ağlarında Köprü-Güvenlik Duvarı (Bridge Firewall) ve Transparent Proxy

Bu makalede 2003 sunucu, Windows 2003 Server anlamına gelmektedir. Aşağıda yapılan işlemler 2003 R2 sunucu üzerinde denenmiş ve çalıştırılmıştır.

INTERNET BAĞLANTISININ KURULMASI İÇİN GEREKLİ YÖNLENDİRİCİ AYARLARI

Örnek bir kullanım ve bilgisayar ağlarını oluşturan bileşenlerin özeti

Bağlantı Kılavuzu. Desteklenen işletim sistemleri. Yazıcı yükleme. Bağlantı Kılavuzu

Öğr.Gör. Gökhan TURAN Gölhisar Meslek Yüksekokulu

7/24 destek hattı Kolay kurulum CD si Üç yıl garanti Üç yıl garanti YM.WR.5341.UM.TR.D01REV

SIMAN KULLANIM KILAVUZU

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı.

Quedra L MON Log Yönetim ve Güvenli Kayıt Yazılımı

MOODLE UZAKTAN ÖĞRETİM SİSTEMİ

AntiKor Güvenlik Sunucumu nereye yerleştirmeliyim?

-Floating, Wan ve Lan arayüzleri için ayrı kural yazma alanı vardır.

LİNUX İŞLETİM SİSTEMİNİN KÖPRÜ MODUNDA ÇALIŞTIRILMASI VE GÜVENLİK DUVARI İŞLEMLERİ

PERKON PDKS Kurulum ve hızlı başlangıç rehberi

BİT in Temel Bileşenleri (Yazılım-1)

Cisco 881 Router ve AirLink ES4X0, WAN Failover Tanımı

İşletim Sistemi Nedir?

Ubuntu Terminal Server Ve Uzak Masaüstü Sunucusu

Dosya/Dizin İzinleri. Okuma (r) Yazma (w) Çalıştırma (x) Dosya içeriğini görebilir mi? (Klasörler için) dosya listesini alabilir mi?

AirTies Kablosuz Erişim Noktası (Access Point) olarak kullanacağınız cihazı bilgisayarınıza bağlayarak ayarlarını yapabilirsiniz.

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

İşletim Sistemleri; İÇERİK. Yazılım BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI Yazılım Türleri

5651 ve 5070 Sayılı Kanun Tanımlar Yükümlülükler ve Sorumluluklar Logix v2.3 Firewall. Rekare Bilgi Teknolojileri

BİLGİ İŞLEM DERS 3. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

Yerel Okul Sunucusu Uygulama Yazılımları Prototipi

Bilg-101. Bölüm 6. Bilgisayar Ağları. Ne Öğreneceğiz? Bilgisayar Ağı Nedir?

BİLGİ NOTU. SpeedTouch 585 Kablosuz ADSL Router

Temel Kavramlar-2. Aşağıda depolama aygıtlarının kapasitelerini inceleyebilirsiniz.

Pardus ta Komutlarla Çalışmak

Internet Nedir? Devlet Kurumları. Internet Servis Sağlayıcılar. Lokal Ağ. Eğitim Kurumları. Kişisel Bilgisayar. Dizüstü Bilgisayar.

Veri Tabanı Yönetim Sistemleri Bölüm - 02

Linux Kurulumu (Sürüm 1.52) İçindekiler

Vmware Esx Server Nedir Ve Ne İşe Yarar

Temel Linux Komutları

3. DOSYA SİSTEMİ VE ÇALIŞMA MANTIĞI

AirTies Kablosuz Erişim Noktası (Access Point) olarak kullanacağınız cihazı bilgisayarınıza bağlayarak ayarlarını yapabilirsiniz.

$ rm dosya1 dosya2 dosya3 dosya4 dosya5 dosya6 dosya7 dosya8

Sistem Programlama. (*)Dersimizin amaçları Kullanılan programlama dili: C. Giriş/Cıkış( I/O) Sürücülerinin programlaması

CYGWIN KURULUMU ve KULLANIMI

İŞLETİM SİSTEMLERİ. (Operating Systems)

08224 Sunucu İşletim Sistemleri

Bağlantı Kılavuzu. Desteklenen işletim sistemleri. Yazıcıyı Yazılım ve Belgeler CD'sini kullanarak kurma. Bağlantı Kılavuzu

Bilgi ve Olay Yönetim Sistemi

ecyber Kullanıcı Kılavuzu 1 / 1 1. ecyber hakkında Sistem gereksinimleri:... 2 Donanım:... 2 Yazılım: Kullanım Rehberi...

Aşağıda listelenen temel linux komutları bilgisayarınızın komut satırında çalıtırılacaktır.

TecCom TecLocal Programı Kurulum ve Yapılandırma Rehberi

İnternet Programcılığı

BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ

Windows İşletim Sistemi

Öğr.Gör. Gökhan TURAN Gölhisar Meslek Yüksekokulu

Yrd. Doç. Dr. A. Burak İNNER

Yandex mail ve disk kullanım rehberi

Web Servis-Web Sitesi Bağlantısı

Hızlı Başlangıç Kılavuzu

ORDU ÜNİVERSİTESİ BİLGİ İŞLEM DAİRESİ BAŞKANLIĞI HİZMET ENVANTERİ TABLOSU

Linux e Giriş ve Dağıtımlar

PHP 1. Hafta 2.Sunum

Autofs. Hüseyin Kaya

WiFi Relay Sayfa 1 / 11. WiFi Relay. Teknik Döküman

-Bilgisayarı oluşturan iki temel unsurdan diğeri ise YAZILIM dır.


Bağlantı Kılavuzu. Yazıcıyı yerel olarak yükleme (Windows) Yerel yazdırma nedir? Yazıcıyı Yazılım ve Belgeler CD'sini kullanarak kurma

Sunucu İşletim Sistemini Ayarlamak ve Yönetmek. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

Dersin Konusu ve Amaçları: Ders P lanı: Bölüm 1: Bilgi Teknolojilerinde Temel Kavramlar

ÖĞRENME FAALİYETİ 2 ÖĞRENME FAALİYETİ 2

Transkript:

F.Ü. MÜH. FAK. BİLGİSAYAR MÜH. BÖL. BİLGİSAYAR SİSTEMLERİ LAB. DENEY NO : 2 Deneyde Yapılacaklar 1- Deneyin ilk gününde genel olarak linuxun özellikleri, diğer işletim sistemlerinden farkı, dosya ve dizin yapısı, temel kullanıcı ve admin komutları, genel olarak sunduğu internet ve diğer hizmetler öğrenilecektir. 2- Deneyin tam olarak amacına ulaşması ve verilen deneylerin hazırlanması için http://linux.org.tr, gibi sitelerin incelenmesi ve arama motorlarından faydalanılması gerekir. LİNUX NEDİR? Linux, serbestçe dağıtılabilen, çok görevli, çok kullanıcılı UNIX işletim sistemi türevidir. Linux, İnternet üzerinde ilgili ve meraklı birçok kişi tarafından ortaklaşa geliştirilmekte olan ve başta IBM-PC uyumlu kişisel bilgisayarlar olmak üzere birçok platformda çalışabilen ve herhangi bir maliyeti olmayan bir işletim sistemidir. UNIX 70'li yılların ortalarında büyük bilgisayarlar üzerinde çok kullanıcılı bir işletim sistemi olarak geliştirilmiştir. Zaman içerisinde yayılarak birçok türevi ortaya çıkmış ve bugün kişisel bilgisayarlardan süper bilgisayarlara kadar birçok bilgisayar için UNIX türevleri yazılmıştır. Ne var ki bu türevlerin çoğunun gelişimi belirli bir noktada durmuş ve yüksek fiyatla satılan ticari yazılımlardır. Linux, Finlandiya Üniversitesinde öğrenci olan Linus Torvalds'ın ve İnternet üzerinde meraklı bir çok yazılımcının katkıları ile geliştirilmiştir. Linux gelişimi açık bir şekilde yapılmaktadır. Bunun anlamı, işletim sisteminin her aşaması açık olarak İnternet üzerinde yayınlanmakta, dünyanın dört bir yanında kullanıcılar tarafından kontrol edilmekte, hataları ve eksiklikleri tespit edilerek düzeltilmekte ve geliştirilmektedir. Zaman zaman bu deneme aşamaları belirli bir noktada durdurulur ve güvenilir bir işletim sistemi sunulup, geliştirme için ayrı bir seriye devam edilir. Geliştirmede yer alan bu açıklık Linux'un en büyük avantajlarından biridir. Gelişimi evrimseldir, hatalar anında kullanıcılar tarafından tespit edilip rapor edilmekte ve birçok kişinin katkısıyla düzeltilmektedir. Bazı işletim sistemi sürümleri saatler içerisinde güncellenebilmektedir. Linux gerçekten son yıllarda hızlı bir gelişme göstermiş, çeşitli ülkelerden birçok kullanıcıya erişmiş ve yazılım desteği günden güne artmıştır. Değişik kuruluşlar Linux sistemi ve uygulama yazılımlarını bir araya getirerek dağıtımlar oluşturmuşlar ve kullanımını yaygınlaştırmışlardır. Linux, WWW, DNS, NFS, NIS, X, BOOTP, SMTP, FTP, LIST, NEWS gibi yaygın TCP/IP servislerinin yanı sıra * NOVELL sunucu (Novell protokolü kullanarak disk ve yazıcı servisi) * SAMBA sunucu (Windows 3.1, Windows95, Windows NT ve WfW için disk ve yazıcı servisi) * APPLETALK sunucu (MacOS kullanan Apple makinalar için disk ve yazıcı servisi) servisleri verebilmektedir. Linux yazılım desteği ile birçok ağ elemanının yerine geçebilecek bir alternatif olarak kullanılabilmektedir. Birden fazla ağın birbirine bağlanması amacıyla bir yönlendirici (router) olarak da yararlanılabilir. Özellikle farklı protokoller arası bir geçiş elemanı olarak üniversitelerde yaygın şekilde Linux'tan faydalanılmaktadır. Ayrıca yönlendirici olarak kullanıldığında kolaylıkla güvenlik duvarı (firewall) olarak da yapılandırılabilir. Buna ek olarak bir ağ üzerinde bulunan iki segment trafiğini birbirinden ayıran bir köprü (bridge) olarak da hizmet verebilir. Yazılım Özellikleri Bir işletim sistemi, mimari dizayn olarak ne kadar mükemmel olursa olsun, uygulama yazılımlarının çokluğu ve kalitesi ile varolabilir. Herhangi bir Linux dağıtımı içerisinde, değişik amaçlara hizmet eden birçok yazılım bulunmaktadır. Ancak her geçen gün bu dağıtımlarda yer almayan yeni yeni yazılımlar çıkmaktadır. UNIX makineler üzerinde yer alan uygulamaların çoğu, değişik platformlar altında bulunduğundan çalıştırılabilir (executable) olarak dağıtılmaz, kaynak kodu şeklinde sunulurlar. Söz konusu yazılımı kullanmak isteyen bir kullanıcı bu kaynak kodunu kendi platformunda derleyerek çalıştırır. Bu yazılımların birçoğu Linux altında kolaylıkla çalıştırılabilmektedir. Bu tür yazılımları İnternet üzerinde çeşitli FTP arşivlerinde bulmak mümkündür. X Window Arabirimi Linux işletim sistemi altında X Window sistemi ile Windows benzeri bir grafik arabirimiyle birlikte çalışabilirsiniz. Windows ile ilgilenen herkes rahatlıkla X Window'a geçiş yapabilir. X ile ekranda aynı anda birden fazla pencere açılabilir, fare yardımıyla birden fazla uygulama aynı anda kontrol edilebilir.

Bilgisayar Destekli Eğitimde Linux Linux'un hemen her alanda olduğu gibi bilgisayar destekli eğitimde de yeri var. Ağ yönetimi gayet gelişkin olan bu sistemde tek makina üzerinde pek çok İnternet sunucusunu çalıştırabilirsiniz. Sıfır maliyetle eğitim kurumlarımızın ihtiyaç duyabileceği yazıcı, disk alanı paylaşımı ile temel her türlü İnternet servisi kolayca verilebilir, bu servisler merkezi bir yönetim altında denetlenebilir. Bilgisayar Destekli Eğitim projesinde belirli bir işletim sistemi ve donanım modeline bağımlı kalmak son derece tehlikelidir. Linux ile bu tehlikeden uzak olarak okullarımızın İnternet erişimi sağlıklı bir biçimde yerine getirilebilir. AR-GE ve akademik kurumlar da geliştirmeye dayalı projelerini Linux'a taşıyabilir, donanım ve yazılım masraflarını büyük oranda kısarak bütçelerini daha verimli kullanabilirler. Bunun yanında bilgisayar mühendisliği eğitiminde, örneğin "İşletim Sistemleri" dersi çerçevesinde, bir işletim sisteminin aygıt sürücüleri konusu anlatılırken Linux'un kaynak koduna referans verilebilir, ya da Linux'un tanıdığı onlarca dosya sisteminden biri üzerinde örnek çalışma yapılabilir. Kaynak kodu erişilebilir olduğundan sistemin çalışma prensibini öğrenmek, geleceğin mühendis adayı için eşi bulunmaz bir fırsattır. Linux'u bir "deney seti" gibi kullanmak sadece akademisyenin olumlu onayına kalmıştır. Bir işletim sistemi ya da yazılımın öğrenci ve akademik çalışanlar için ücretli olması talihsizliktir. Eğitim yaşamı boyunca meraklı bir beyni yönlendirmek ve bilişim alanında yeni teknoloji üretmesini sağlayabilmek için önündeki tüm engellerin kaldırılması gerekir. Bu da ancak ücretsiz ve karşılığını verecek olan her an erişilebilir, kaliteli yazılımla mümkün olacaktır. Serbest Yazılım Gelişen sayısal teknoloji veriyi kopyalamamıza ve daha geniş kitlelerce kullanılabilmesine olanak veriyor. Burada en büyük yardımcımız bilgisayarlar ve bilişimin aydınlatıcı ışığı. Serbest yazılım (SY) da bilişim alanına yeni bir çehre kazandırmaktadır. UNIX kültüründe SY, bilgiyi paylaşmak, sınırsızca dağıtmak ve değiştirmek anlamına geliyor. Kısaca açıklamak gerekirse serbest yazılım, belirli hakları gözetmek şartıyla herkesin özgürce kullanabildiği, kopyalayabildiği, üzerinde değişiklik yapabildiği ve ücretli/ücretsiz tekrar dağıtabildiği yazılımdır. "Bilgi herkesindir, sınırlanamaz" felsefesine uyan yazılımcılar, geliştirdikleri her ürünü karşılık beklemeksizin İnternet'in onayına sunmakla bu ürünün mükemmele koşmasına yardımcı oluyorlar. SY kavramı sadece "beleş sirke" olarak görülmemelidir. Bir başka anlamda, SY, yazılımın ücretsiz olmasını değil, serbestliyi ve bilginin yayılması felsefesini ön plana çıkarır. Yanında verilen kaynak kodu ile yazarının adını koruyarak üzerinde her türlü değişiklik yapmak kullanıcıların elindedir. Böylece sağlam tabanlı bir kaç satır kod, binlerce programcının da yardımıyla hiç beklenmedik bir uygulama yazılımına, kelime işlemciye ya da hesap tablosuna dönüşebilir. İnternet, buna benzer onlarca başarı hikayeleriyle doludur. Yazılan bir programın serbest hale getirilebilmesi için bir seçenek de bu programın GNU lisansı altında dağıtılmasıdır. Bu haliyle dolaşımda bulunan yazılım ``copyleft'' adını alır. Serbest yazılım modelinde aynı ya da yüksek kalitede bir mal aynı fiyata değil, ücretsiz olarak elde edilebilir. Ancak programın sadece çalıştırılabilir hali GNU serbest yazılımı olarak algılanamayacağı gibi satın alınan bir bilgisayara yüklenen ücretsiz ya da cüzi bir ücret karşılığı alınan yazılım da serbest kapsamına girmez. "copyright'' kavramı, ayrıca üretileni satan bir mal sahibi kavramını da akıllara getiriyor. Bir mal sahibinin amacı da çoğu kez yazılımı geliştirmek değil, satmak oluyor. Nadir olmayan ve üzerinde düşünülmesi gereken başka bir durum da yazar ile programı arasında beklenmedik bir bağ oluşması. Yazar bu durumda çoğunluğun gereksinimlerini ve ihtiyaçlarını ikinci planda bırakabilir ya da kendi beğenisini ürüne ekler. Gelişmeyi engelleyen bu durumun ruhen kaygı verdiği de ortadadır. Program yazmak bir başlangıçtır, bu atılımı halkın hizmetine sunmak için onu kaynak koduyla birlikte sunmalısınız. Linux dünyası serbest yazılım felsefesiyle birlikte sadece geliştiricilere değil, İnternet'i işinde, hobisinde ve boş vakitlerinde kullanan tüm bilgisayar severlere açık gelişimin önemini kanıtlarken sanal projeler yardımıyla nasıl daha üretken olunabileceğinin yolunu da gösteriyor. Linux, aynı disk üzerindeki işletim sistemleriyle uyum içinde çalışabilir. Bilgisayarın açılışı esnasında dilediğiniz sistemden başlayabilirsiniz. Linux'un DOS, FAT16, FAT32 dosya sistemi uyumluluğu yanında DOS programlarını çalıştırmak için DOSEMU, Windows programlarını çalıştırmak için VMware, Wabi ve Wine programları vardır. Aşağıda Linux'un temel parçalarını ve bunların özelliklerini göreceğiz. Çekirdek : Linux'un çekirdeği bir bakıma sistemin beyni sayılabilir. Çekirdeğin adı "Linux"tur, ancak pek çok kişi tarafından tüm dağıtıma verilen ismin "Linux" olduğu zannedilir. Dünya üzerindeki dağıtımlar 1999 itibariyle 40'ın üzerindedir. Ancak hepsi aynı çekirdeği kullanır, değişen tek şey dosya ve dizin yapısı, dağıtıma giren belgeler, paketler, dağıtımın fiyatı ve dağıtımın hedeflediği kullanıcılardır. Birden çok kullanıcı desteklemesi : Linux, dizayn aşamasından bu yana hep birden çok kullanıcıyı desteklemek amacıyla yazılmış ve buna göre programlanmıştır. Birden çok görevin aynı anda yapılması : Linux, birden çok görevin aynı anda yapılmasına olanak veren bir sistemdir. Kararlılık : Linux, 1.0 sürümünün Internet sitelerine konulduğu 14 Mart 1994 yılından beri beta denemelerini geçmiş ve kararlı bir yapıya bürünmüştür. Çok işlemcili SMP desteği : Linux'ta Intel ve SPARC platformlarında mevcuttur. Sürüm numarası 2.0 ile başlayan SMP çekirdekler açılırken sistemde kaç tane işlemci olduğunu bulur ve buna göre kendisini ayarlar. Linux ve ağ teknolojileri : Linux, doğrudan doğruya Internet'e hazır olarak bağlanabilmesi için TCP/IP desteği ile gelir. Bu sayede TCP/IP konuşan diğer bilgisayarlarla ve işletim sistemleriyle rahatça anlaşabilir. TCP/IP'nin

yanında NetBEUI, Samba (Windows makinalarının birbirleriyle konuşmak için kullandıkları protokol), Appletalk (Macintosh) gibi protokoller de desteklenir. Güvenlik mekanizması : Linux, 386 ve üstü işlemcilerda korumalı kipte (protected mode) çalışır. Böylece bu kipin özelliklerinden sonuna kadar faydalanır. Grafik arabirimi : X Window (kısaca X) adı verilen ve MIT'te geliştirilen grafik arayüzü, Linux'ta sadece metin ekranda çalışmak istemeyen kullanıcılar için ilginç sayılabilecek bir yazılımdır. X altında farklı ruhlara hitap eden, değişik görüntüler sunan pek çok pencere denetleyici vardır. Donanım Gereksinimleri Linux'un daha önce de belirttiğimiz gibi donanımdan sonuna kadar faydalanması neticesinde son derece düşük donanım maliyeti vardır. Desteklediği kartlar piyasada her an bulunabilir cinstendir. LİNUX KOMUT YAPISI UNIX ve benzeri işletim sitemlerinde kullanıcının komut yazmasını sağlayan, bu komutları yorumlayarak gerekli işlemleri yapan programlara kabuk (shell) adı verilir. UNIX'te bir kullanıcı bir dizi kabuktan istediğini seçebilir. Kabuklar ile ilgili ayrıntılı bilgi ileride verilecektir. Kullandığınız kabuk ne olursa olsun, gerek kabuktan kaynaklanan, gerekse UNIX komutlarının hepsinin uyduğu bazı standartlardan kaynaklanan bazı geleneksel yapılar vardır. Bunları bilmeniz ilk kez duyduğunuz bir komutun kullanımını bile kolayca çıkarabilmenizin yanı sıra, bir dizi genel hatadan kaçınmanızı da sağlayacaktır. UNIX'te (ve Linux'ta) bütün komutlar ve dosya isimlerinde büyük/küçük harf ayrımı önemlidir. Sistem komutlarının ve dosyaların çoğu küçük harfle yazılır. Komut ve dosya adlarında kullanacağınız bazı karakterlerin gerek dosya ve dizin yapısı, gerekse kabuk ve diğer komutlar nedeniyle bazı özel anlamları vardır. Bu karakterlerden yeri geldikçe söz edilecektir. Örneğin, `/' karakteri hiçbir dosya adında bulunamaz (dosya ve dizinler için ayraç olarak kullanıldığından). `-' ile başlayan bir dosya oluşturulabilir olsa da silmeye kalktığında yeni bir UNIX kullanıcısının başına dert açabilir. UNIX'te komutlara seçenek verirken seçenekten önce `-' karakteri kullanılır. Örneğin ls -l UNIX komutları tersi istenmedikçe girdilerini standart girdiden (klavye) alır, çıktılarını standart çıktıya (ekran) yazar. Bu özellik ileride anlatılacak olan yönlendirme ve boru (pipe) operatörleri ile birlikte komut satırından birçok işlemi kolayca yapmanızı sağlar. UNIX kabukları komut satırından verilen komutu çalıştırmadan önce bir dizi karakteri yorumlayarak dosya ad(lar)ına çevirirler. Bu karakterler: * 0 dahil herhangi bir sayıda karakter yerine geçer. Örneğin rm * komutu bütün dosyaları siler, ls - l a* komutu `a' ile başlayan dosyaların listesini verir.? tek bir karakter yerine geçer. Örneğin?? adı iki karakterden oluşan bütün dosyalar anlamına gelir. [] karakterleri arasında yazılan liste içindeki herhangi bir harfe dönüştürülür. Örneğin cp *[abc] /tmp komutu `a', `b' ya da `c' ile biten bütün dosyaları /tmp dizinine kopyalayacaktır. liste içinde aralarına `-' işareti koyarak aralıklar verebilirsiniz. Örneğin, [A-Z]* büyük harfle başlayan bütün dosyalar anlamına gelir. Liste içindeki `^' karakteri sonrasında belirtilen liste dışındaki bütün karakterler anlamına gelir. Örneğin *[^0-9]* adında rakam olmayan herhangi bir dosya anlamına gelecektir. DOSYA VE DİZİN YAPISI UNIX altında bazı karakterlerin özel anlamları vardır. Dizin ve dosya isimlerinin başında nokta olması durumunda bu dosyalar gizli dosya haline gelir ve parametresiz yazılan ls komutuyla görünmez. Dosya ve dizin isimleri 255 karakteri aşamazlar. Sisteme girince önceden tanımlanmış bir dizin altında bulunursunuz. Bu dizin normal kullanıcılar için genellikle /home/ ve ardından gelen kullanıcı dizini ismidir. Bulunduğunuz dizinin ismini görmek için pwd (print working directory) yazın. Temel dosya ve dizin kavramları hakkında detaylı bilgi alabilmek için MS-DOS veya, en iyisi bir UNIX kitabı edinin. $ pwd /home/gorkem $ UNIX komut yapısı DOS'a çok benzer. Dizin değiştirmek için cd, dizin yaratmak için mkdir komutlarını sistemde sıkça kullanılır. $ cd / $ pwd / Hiyerarşik bir sıraya sahip olan UNIX'te en üstte / dizini (kök dizin) yer alır. Sistemdeki tüm diğer dosya ve dizinler bunun altında toplanırlar. ~

işareti, kullanıcının ev dizinini gösterir. Ev dizinine geçin ve mkdir komutu ile benim isimli bir dizin yaratın. Dizini patikasını, bir başka deyişle kök dizininden itibaren ismini vererek de yaratabilirsiniz. $ cd ~ $ pwd /home/gorkem $ mkdir /home/gorkem/benim TEMEL KOMUTLAR Komut ya da kavram adı Açıklaması. Halihazırdaki dizini gösterir... Önceki dizini gösterir. ~ Aktif kullanıcının ev dizini cd.. Önceki (üst) dizine geç. ls.. Önceki (üst) dizinin içeriğini göster. CTRL-C Çalışan bir programı keser (komut satırına düşürür). TAB Komut/dosya ismi tamamlama apropos <kelime> İçinde "kelime" geçen tüm kılavuz sayfalarını tarar. Cat "Dosya"nın içindekileri ekrana basar. Cd "Dizin"e geçer. cd.. Üst dizine geçer. Chsh Kabuk değiştir. cp <dosya1> <dosya2> dosya1'i dosya2'ye kopyala. cp /home/gorkem/mesaj.txt /tmp /home/gorkem/mesaj.txt dosyasını /tmp dizini altına kopyala. echo <karakter dizisi> "Karakter dizisi"ni ekrana bas. PATH Çalıştırılabilir dosyaların yerini gösteren değişken echo $PATH Bir dosya çalıştırılmadan önce nereye bakılacağını gösterir. SHELL Altında çalışılan kabuk. echo $SHELL Çalışan kabuğu gösterir. finger <kullanıcı> "Kullanıcı" hakkında ayrıntılı bilgi verir. Ln İki dosya ya da dizin arasında sembolik bağ kurar. Ls Dosya ve dizinleri göster. ls /etc /etc altındaki dosya ve dizinleri göster. ls l Dosya ve dizinler hakkında geniş bilgi ver. ls al Saklı (. ile başlayan) dosyaları da göster. Mkdir Dizin yarat. mkdir ~/gecici Aktif kullanıcının ev dizini altında "gecici" adında bir dizin yarat. more <dosya> "Dosya"nın içeriğini ekrana yazdırır. Mv Bir dosya ya da dizini taşır. mv re1.gif /tmp re1.gif dosyasını /tmp dizinine taşı. mv linax.txt linux.txt linax.txt dosyasının adını linux.txt olarak değiştir. Passwd Şifreyi değiştirir. Pwd Üzerinde çalışılan dizini gösterir (working directory). Rm Bir dosyayı siler. rm -f <dosya> Dosyayı silmeye "zorlar". rm -rf <dizin> Bir dizini ve içindeki alt dizinleri siler. telnet <makina> telnet bağlantısını açar. Who Sistemde kimlerin bulunduğunu söyler. Xconfigurator X Window grafik ekranını yapılandırır (1) xf86config X Window grafik ekranını yapılandırır (2) LINUX ile UNIX arasında ne fark vardır? UNIX, Unix System Laboratories'in (USL) bir ticari markasıdır. Bu yüzden her bilgisayar firması kendi makinesinde çalışacak UNIX işletim sistemini farklı adlarla (AIX, ULTRIX, HP/UX gibi) yayınlamaktadır. Bunlara UNIX işletim sisteminin 'clone'lari denmektedir. LINUX da bir UNIX clone'udur. Ve POSIX standardını desteklemektedir.

(POSIX=Portable Operating System Interface) LINUX'la herhangi bir UNIX clone'u ile yapabileceğiniz bütün işlemleri yapabilirsiniz. KULLANICILAR VE SİSTEM SORUMLULUGU Root olmak ve sorumlulukları LINUX çok kullanıcılı bir işletim sistemidir. İster evde tek başınıza kullanın, ister internet'e bağlı bir server olarak kullanın her LINUX makinesinde sistemde belirli yetkileri bulunan kullanıcılar bulunur. Root tüm kullanıcıların en yetkilisidir. Diğer kullanıcılar sadece kendilerine izin verilen alanlarda çalışabilirlerken root her yere girebilir, hatta bir başka kullanıcıymış gibi çalışabilir. Sistemin düzenlenmesi ve isletilebilmesi için bu çeşit bir kullanıcının olması zorunludur. Makinenin tek kullanıcısı siz olsanız bile islerinizi root kullanıcısı ile yapmak yerine kendinize bir kullanıcı açmanız yararlı olacaktır. Root ile ilgili aşağıdaki önerileri verebilirim: Eğer LINUX'u yeni yüklemişseniz doğrudan kullanıcınız root olacaktır ve şifresi de bulunmayacaktır. Sistemi yükleme isiniz bitince, root'a bir şifre verin ve kendinize bir kullanıcı açın. Root şifresini iyi saklayın Sistem üzerinde bir değişiklik yapacak olsanız bile, tavsiyem, ilk olarak kullanıcı olarak loginlenmeniz sonra su olmanız. Root kullanıcısını kullanırken enter'a basmadan önce iyi düşünün bazı komutların hiç geri donuşu olmaz (mke2fs /dev/hda1) root kullanıcısı ile mc ve benzeri programları kullanmamaya özen gösterin. Root kullanıcısı çok güçlüdür, bu gücü kötüye kullanmayın. Nasıl kullanıcı ekleyebilirim? Sisteme yeni bir kullanıcı ekleyebilmek için: ilgili kullanıcıya ait /etc/passwd dosyasına bir tanım eklemek şayet network grupları kullanılıyorsa /etc/group dosyasına bir tanım eklemek kullanıcıya ait bir home directory (çalışma dizini) yaratmak kullanıcının bir şifre girmesini sağlamak şayet NIS kullanılıyorsa söz konusu dosyaları, NIS client'larin anlayacağı kopyalar halinde güncellemek. Yukarıda belirtilen işlemlerin bazılarını otomatik olarak yapan programlar vardır (adduser). Ancak tüm bu işlemler elle de yapılabilir. vi /etc/passwd en alt satıra Mehmet::985:900:Mehmet Tazebay:/home/mehmet:/bin/csh Burada 1. bolum:mehmet kullanıcı ismi 2. bolum: sifre, buraya şifre DES olarak şifreli bir şekilde yazılır. 3. bolum:985 kullanıcı numarası, her kullanıcıyı sistemde belirleyen numara. Herkesten farklı bir numara vermeye özen gösterin 4. bolum:900 grup numarası, kullanıcının ait olduğu grubu belirler. İse yaraması için o numarada bir grup tanımlanmış olmalıdır. 5. bolum:mehmet Tazebay Kullanıcının gerçek ismi, bazı servislerde (finger, who vs) kullanıcının gerçek isminin belirlenebilmesini sağlar. 6. bolum:/home/mehmet Kullanıcının çalışma dizini. Kullanıcı sisteme girdiği anda kendisini burada bulacaktır. 7. bolum:/bin/csh Kullanıcının kullanacağı shell. İkinci adim bu kullanıcının çalışma dizinini oluşturmak cd /works mkdir Mehmet chown Mehmet Mehmet Son komut ile Mehmet isimli dizinin sahibini Mehmet isimli kullanıcı olarak değiştir dedik. Son adim ise o kullanıcı olarak login edilmesi ve uygun bir şifrenin passwd ile verilmesidir. Sistem sorumlusu hangi dosyaları takip etmelidir? LINUX'da syslog sistemi işletim sonucu meydana gelen mesajları belirli dosyalara aktarır. Bu dosyaları inceleyerek isleyiş hakkında bilgi sahibi olunmalıdır. Syslog'un hangi aciliyetteki hangi mesajları nereye yazacağı /etc/syslog.conf ile belirlenir. Bir değişiklik yapılmadığı surece

/var/adm/syslog /var/adm/messages /var/adm/debug dosyalarina mesajlar dağıtılır. Eğer söz konusu dosyalar incelenip islenmezlerse çok büyüyebilirler. Sisteme bağlanmış olan kullanıcılar hakkında bilgiyi /var/adm/wtmp dosyası tutar. Bu dosya ASCII olmadığından doğrudan okunamaz, last komutu ile incelenebilir. Buna ek olarak çeşitli paketler çalıştırılıyorsa onların yarattığı log dosyaları da incelenmelidir. Örneğin ftp çalışıyorsa xferlog veya /var/spool/ftpd/xferlog kimin ftp ile hangi dosyaları aktardığını gösterir. Bu dosyalar içerisinde elde edilecek ipuçları ile sistemin çalışma performansı arttırılabilir, kendisini pek belli etmeyen hatalar bulunabilir. LINUX VE İNTERNET Modemle bağlanma deneyi yapılmayacaktır, ancak teori olarak bilinmesi gerekmektedir. Route'lari nasıl ayarlayabilirim? Bilgi paketleri internet üzerinde adreslerini route'lari takip ederek bulurlar. En basite indirgeyecek olursak iki turlu route yöntemi vardır statik route'lar : birebir bağlantılı bilgisayarları ve/veya ağları sabit tanımlamalar ile birbirine bağlar dinamik route'lar: düğüm noktalarında bulunan router'lar birbirlerine sürekli bildikleri route'lar hakkında bilgi verirler. route tanımlamak LAN'lar arası iletişim için gereklidir. Kendi LAN'iniz üzerinde bilgi paketleri doğrudan makinelere ulaşabilirler. Ancak başka adreslere gidecek paketler mutlaka bir router'a yönlendirilirler. Söz konusu router birden fazla LAN'a (veya WAN'a) bağlanmış bir makinedir ve hangi bağlantısına hangi adreslere giden paketleri yönlendireceği bir tablosu vardır. Özel olarak tanımlanmış route'larin yanı sıra bir de default adi verilen, tablosunda özel olarak belirtilmemiş adreslere giden paketlerin yönlendirildiği bir route vardır. LAN üzerinde normal bir LINUX makinenin konfigurasyonunu setup ile yaparken Do you have a gateway? Sorusu ile LAN üzerinde bir router'iniz olup olmadığı sorulacaktır. Böyle bir routeriniz varsa, sonra router'in (gateway) adresini soracak ve makinenin default route'unu statik olarak ayarlayacaktır. LINUX bir makineyi router olarak kullanmak mümkündür. Söz konusu makinenin birden fazla LAN (veya WAN) bağlantısı olması gereklidir. Bu bağlantılar ethernet kartları ve veya modemler olabilir. Kernel IP forwarding/gatewaying secenegi ile derlenmiş olmalıdır. Genel olarak hazır derlenmiş bu çeşit kernel yoktur, Onun için kernel'i derlemeniz gerekecektir. Daha sonra bu makinenin route'larini statik olarak tanımlamak için route komutunu kullanmak gerekir. Dinamik routing için çeşitli paketler vardır. Bunlardan birisinin tercih edilmesi ve konfigure edilmesi gerekir. En çok kullanılan iki paket routed (slackware içerisinde gelir) ve gated dir. Herhangi bir anda mevcut route'lari görebilmek içinse netstat -nr komutu yeterli olacaktır. LINUX üzerinde disk paylaşımı nasıl yapılır? Bilgisayar ağlarının en önemli özelliklerinden biri kaynak paylaşımı sağlamaktır. Bir makine içerisinde yer alan disk alanının bilgisayar ağı üzerinde yer alan diğer makineler tarafından kullanılabilmesine Network File System (NFS) adi verilir. Çok Kullanıcılı diğer işletim sistemlerinde olduğu gibi LINUX NFS desteklemektedir. NFS işlemini rpc.nfsd daemon'u desteklemektedir. /etc/rc.d/rc.inet2 içerisinde ilişkili daemonlarin (nfsd rpc.portmapper vs) çalışması sağlanmalıdır. Yerel disk'in herhangi bir alanını bilgisayar ağı üzerinde yer alan diğer makinelerin kullanımına sunmak için /etc/exports dosyası kullanılır.bu dosya içerisine disk hiyerarşisinin hangi bölümlerinin diğer makineler tarafından kullanılacağı belirtilir: /home/ali /usr/man alice,venus (ro) ( exports dosyası değiştirildikten sonra değişikliklerin yansıması için reboot gereklidir ). Bir başka makine üzerinde yer alan diski kendi hiyerarşinize bağlamak için ise mount komutu kullanılır.

mount -t nfs darkstar:/home/ali /disk2/home/ali ( darkstar makinesinde /home/ali kısmını bu makinede /disk2/home/ali dizini olarak ekle ) Her defasında bu işlemi yapmamak icin /etc/fstab altında hangi NFS ile "mount" edilmesi istenen dizinler belirtilebilir. LINUX üzerinde yazıcı paylaşımı nasıl yapılır? LINUX altında çalışan bir yazıcı kurulduktan sonra bunu diğer makinelere kullandırabilmek için /etc/hosts.lpd dosyası içerisinde erişim hakki bulunan bilgisayarlar tanımlanmalı /etc/exports dosyası içerisinde /var/spool/lpd ( veya daemon'un kullandığı spool dizini ) export edilmiş olmalı Yaziciya erismek isteyen bilgisayar uzerinde printcap dosyasinda lp= rm=bilgisayar_adi rp=bilgisayar_uzerinde_yazicinin_adi tanımlanmalıdır. ÖDEVLER 1) Iptables+firewall+gateway+Masquerading (internet paylaşımı) 2) Samba sunucu 3) Apache Konfigürasyonu 4) Cekirdege Yama ve Cekirdek Derlemesi 5) Linux da Türkçe 6) Bind DNS 7) Sendmail+POP3+IMAP 8) Sendmail üzerinden BASILIX kurulumu 9) Diğer mail serverlar (*QMAIL, POSTFIX vs..) 10) Squid cache 11) DHCP Sunucu 12) PHP+MYSQL web tasarımı 13) ProFTP sunucu 14) NIS 15) Yazıcı 16) Windows programlarını çalıştırma 17) Kabuk Programlama 18) Soket Programlama 19) Farklı Tür Linux Sürümlerini Kurarak Farklarını Analiz Etme ve Kullanım Alanlarını Belirleme DENEY-2 RAPORUNDA BULUNMASI GEREKEN ÇALIŞMALAR 1. Deney süresince kullandığınız Linux terminali komutlarının 10 tanesini anlatınız. 2. Linux da root, kullanıcı, kullanıcı grubu kavramları ne ifade etmektedir?aşağıda istenenleri Ubuntu işletim sisteminiz üzerinde gerçekleştirip, uyguladığınız adımları terminalden ekran görüntüleri vererek anlatınız. -root şifresi değiştirme, kullanıcı ekleme, kullanıcı grubu oluşturma, kullanıcıyı bir kullanıcı grubuna ekleme 3. Linux da grep komutuyla dosya ve dosya içeriği üzerinde arama işlemlerini kendi bilgisayarınız üzerinde yapacağınız en az 4 farklı örnekle açıklayınız. 4. Terminal üzerinden genel ağ ayarlarının(tcp/ip) nasıl yapıldığını anlatınız. Terminal üzerinden ip adresi, alt ağ maskesi ve defaultgatewayadresi atamalarını gerçekleştirip konfigürasyonunuzunekran görüntüsü ekleyiniz.

5. Deney sırasında kullandığınız web sunucusu ve veri tabanı sunucusunun kurulumunu anlatınız. Web sunucusunu terminal üzerinden başlatma/kapatma işlemlerini nasıl gerçekleştirdiniz? 6. Ubuntu işletim sistemi yüklü olan bilgisayarınıza bir FTP sunucu yazılımının kurulumunu, konfigürasyonunu ve bir dosya paylaşımı örneği üzerinden sonucunu anlatınız. 7. Ubuntu işletim sistemini yüklediğiniz bilgisayarlardan birine OpenSSH server, diğerine OpenSSH client kurulumunu yapıp aralarında bir bağlantı gerçekleştiriniz. Client üzerinden eriştiğiniz server da bir metin dosyası oluşturup kaydediniz ve bu işlem adımlarını ekran görüntüleriyle anlatınız. Not-1: Raporlar PDF formatında betulay@firat.edu.tr adresine deney sonunda gonderilecektir. Ars. Gor. Betul AY