LİNUX - Murat KARA

advertisement
LİNUX
(İşletim Sistemi)
ve Dağıtımları (Pardus)..
Murat KARA
CopyLeft 2014
Linux’tan Önce..
•
•
•
•
•
•
•
İşletim Sistemi Nedir ?
İşletim Sistemleri Nelerdir?
UNIX Nedir?
GNU Nedir?
GPL Nedir?
Linux Nedir, Nasıl Ortaya Çıkmıştır, Kim ?
Dağıtım Nedir?
İşletim Sistemi
• Bilgisayar donanımının doğrudan denetimi ve
yönetiminden, temel sistem işlemlerinden ve
uygulama yazılımlarını çalıştırmaktan sorumlu
olan sistem yazılımıdır.
• İşletim sistemi, bütün diğer yazılımların
belleğe, girdi/çıktı aygıtlarına ve kütük
sistemine erişimini sağlar.
Donanım <-> Çekirdek <-> Kabuk <-> Uygulamalar
İşletim Sistemleri
• Unix - Unix Çeşitleri
– System V, BSD, Solaris, AIX..
• Linux - Linux Dağıtımları
– Pardus, Ubuntu, Fedora, Debian..
• Windows – Windows Sürümleri
– Windows 7, Windows 8, Windows Server 2012
• MacOS – MacOS/IOS Sürümleri
– OS X, IOS
• Android
– 2.3 Gingerbread, 4.0 Ice Cream Sandwich, 4.1 Jelly Bean
Unix
• 1969’da Ken Thompson ve DennisRitchie
katılımı ile AT&T Bell Laboratuvarları’nda
geliştirildi.
• Geliştirme süreci sonunda UNIX adını aldı
• MULTICS’in versiyonu olan PDP-7 mini
bilgisayarı üzerinde UNICS’i yazdı.
• DEC PDP-7’lerde 8K bellekler ile çalıştırıldı.
• İlk olarak Assembly dilinde yazıldı.
Unix
•
•
•
•
•
60’lı yılların sonunda “C” diliyle yazılan bir işletim
sistemidir.
Çok kullanıcılı (multiuser) ve aynı anda birçok işi
yapabilen (multitasking) bir işletim sistemidir.
Komut yorumlayıcı programlar (shell) aracılığı ile
kullanıcı ve bilgisayar sisteminin iletişimi sağlanır.
• Pek çok Unix çeşidi vardır.
– BSD Unix, OpenSolaris, HP-UX, AIX, SCO Unix, Sun OS…
Unix
•
•
•
•
•
•
•
•
•
•
BSD Unix
Solaris
OpenSolaris
Linux
HP-UX
AIX
Minix
SCO Unix
Sun OS
DigitalUnix / Tru64 Unix
Minix
• Helsinki Üniversitesi’nde Dr.Andrew Stuart
"Andy" Tanenbaum, Minix işletim sistemini
geliştirmiştir.
• Öğrencilerine Unix yerine Minix üzerinde
eğitim-uygulama yaptırmıştır.
Minix
Minix
GNU - GPL
• Richard M. Stallman yazılımların
koşullarını kabullenmek istemiyor..
• 1984 GNU projesini başlatıyor..
• GNU = GNU is Not Unix
• 1985'de Free Software Foundation (Özgür
Yazılım Vakfı) kuruluyor..
• 1991'de General Public Licence (Genel Kamu
Lisansı)
• Özgür ve açık kaynak kodlu..
• Kaynak kodlar üzerinde herkes istediği
değişikliği yapabilir, dağıtabilir, satabilir.
• Yapılan değişikliğinde kodları paylaşılmalı..
Linux İşletim Sistemi
• GNU/Linux, Linux çekirdeği kullanan Unix
benzeri işletim sistemlerini çağrıştıran genel
kullanım şeklidir.
• Linux, işletim sisteminin çekirdeğidir.
Linux
• 1970 yılında AT&T şirketi
UNIX işletim sistemini geliştiriyor..
• Unix ~ fiyatı 1300-1850$..
• Minix, küçültülmüş Unix denilebilir ve Andy Tanenbaum
tarafından oluşturulmuş..
• Helsinki Üniversitesi’nde 23 yaşındaki Finlandiyalı
bir öğrenci olan Linus Torvalds Minix’ten
esinlenerek Linux işletim sistemini
oluşturmuştur..
• 5 Ekim 1991 – Linux 0.02 internet
ve haber gruplarında yer alıyor..
• GNU-GPL Lisansı ile dağılıyor..
Linux Çekirdeği
•
•
•
•
•
•
•
•
Multitasking
Virtual Memory
Protected Mode (Korumalı Mod)
Hızlı TCP/IP
Çoklu kullanıcı ortamı
Modüler Yapı
İstenilen şekilde yapılandırma yeteneği
Modern bir işletim sistemi
çekirdeğinden beklenecek pek çok
özellik ve daha da fazlası
GUI – KDE – Gnome
• GUI ; (Graphical User Interface)
• Grafiksel Kullanıcı Arayüzü, bilgisayar ile
etkileşimi görsel mecazlar kullanarak
sağlayan yöntemler bütünüdür.
• KDE ; K Desktop Environment
• Matthias Ettrich adlı bir öğrenci tarafından
1996 yılında Unix’i için daha iyi bir masaüstü
yaratma fikriyle başlatıldı..
• GNU Network Object Modelling Environment
• Xfce XForms Common Enviroment (XFormları Ortak Ortamı)
Düşük hızlardaki makineler için idealdir.
KDE
Gnome
Xfce
Linux Dağıtımı
• Dağıtım, bir GNU/Linux sistemini kurmayı ve
yönetmeyi kolaylaştırmayı amaçlayan yazılımlar
bütünüdür.
•
•
•
•
•
•
•
•
•
Slackware,
Debian,
Gentoo,
Fedora (Red Hat),
openSuSE(Novell),
Mandriva (Mandrake),
Ubuntu,
KNOPPIX,
Pardus...
Dağıtımlar
Debian
Fedora
Gentoo
openSUSE
Slackware
Ubuntu
Puppy
SLAX
Mint
Mandriva
Sabayon
PcLinuxOS
Dağıtımlar
Dağıtımlar
• 2001 yılından beri tüm dağıtımlar ile ilgili
kapsamlı bilgileri barındıran bir sitedir.
• Şu an itibari ile 291 adet dağıtım mevcuttur.
Linux Sunucu Servisleri
• Servisler
– Konsol
– Servis Yönetimi (GUI)
– Kurulum
•
•
•
•
Apache
MySQL
Php
Dns, Ftp, Dhcp
Türkiye’de Linux
•
•
•
•
•
•
•
•
•
Red Hat 5 tabanlı Turkuaz Dağıtımı
Gelecek Linux 1,2,3
Yerelleştirme Çalıştırmaları
Türkçe en yüksek çeviri oranlarından
birine sahip
Linux Kullanıcıları Derneği (LKD)
E-posta listeleri
LinuxNet Dergisi
Turkix gibi Live CD'ler(Çalışan CD’ler)...
Ulusal İşletim Sistemimiz : Pardus
Pardus / Uludağ
• Bir Linux dağıtımıdır.
• Adını Anadolu Pars'ının Latince’sinden
aldı(Panthera pardus tulliana).
• TÜBİTAK – UEKAE tarafından 2003'ten
beri geliştiriliyor..
• ÇOMAR, TASMA, YALI, PİSİ gibi kendi
geliştiricilerimizin elinden çıkmış,
dağıtıma özel araçlar..
• Uludağ; Ulusal Dağıtım
• http://www.pardus.org.tr/
www.pardus.org.tr
Pardus Bileşenleri / Projeleri
• YALI (Yet Another Linux Installer)
Kurulum Yazılımı, Pardus’un, paketlerin kurulumu için..
• ÇOMAR (COnfiguration MAnageR)
Yapılandırma Yöneticisi, Yazılımların birbiri ile uyumlu çalışması için..
• PİSİ
(Packages Installed Successfully as Intended)
Paket Yönetim Sistemi, Paketlerin sisteme kurulması/çıkarılması için..
• Zemberek-Pardus
Türkçe
•
yazım
denetimi
ve
gramer
kontrolü için..
Diğer Projeler (KDE Masaüstü ortamı, OpenOffice.org
çözümü..)
Pardus (2013)
• Pardus Açılış Ekranı
• Masaüstü arayüzleri
Pardus - KDE
Pardus - Gnome
Pardus - Cinnamon
Pardus – Dosya Yöneticisi
(Eski)Konqueror
Dolphin
Linux – Dosya / Dizin Yapısı
Linux – Dosya / Dizin Yapısı
/root (Kök)
/bin: Temel komutları, uygulamaları içerir.
/boot: Çekirdek ve açılışta kullanılan dosyaları içerir.
/dev: Donanım, aygıt dosyalarını içerir.
/etc: Sistem ayarları, yapılandırma bilgisini içerir.
/home: Kullanıcıların verilerini içerir.
/lib: Çekirdek modülleri ve paylaşılan kod kütüphanelerini içerir.
/mnt: Çeşitli dosya sistemi/aygıtlarını içerir.
/proc: Süreçler ve donanım yapılandırmaları için bilgi merkezidir.
/root: Sistem yöneticisinin (yani “root” kullanıcısının) ev dizinidir.
/usr: Tüm kullanıcılarca paylaşılan verileri içeren dizindir.
/tmp: Geçici dosyaları içerir.
/local: Yerel uygulama ve bileşenleri içerir.
/var: Değişken veriler, kuyruk ve log dosyalarını içerir.
Uygulamalar ve Dizinleri
Sürücü – Klasör - Dosya
Sürücü
Klasör
Dosya
Linux Disk Kullanımı İsimlendirmesi
Windows Programların Pardus (Linux)
Karşılıkları
İnternet Uygulamaları
Windows Programların Pardus (Linux)
Karşılıkları
Çoklu ortam (Medya) Uygulamaları
Windows Programların Pardus (Linux)
Karşılıkları
Grafik Uygulamaları
Windows Programların Pardus (Linux)
Karşılıkları
Ofis ve Düzenleyici Uygulamalar
Pardus Ofis Uygulamaları LibreOffice
Windows Programların Pardus (Linux)
Karşılıkları
Diğer Uygulamalar
Linux Boot (Önyükleyici)
• GRUB (Grand Unified Bootloader)
• LILO (Linux Loader)
Linux Konsolu ve Komutları
• Konsol kavramı Linux’a Unix’ten kalan bir
mirastır.
• Komutların yazıldığı metin ekranlı arabirimdir.
• Komut satırı arayüzüdür.
Linux Konsol
Linux Paket Yönetimi
•
•
•
•
Pisi (Pardus)
Rpm (RedHat)
Dpkg (Debian) (apt)
Yum (CentOs)
• http://distrowatch.com/dwres.php?resource=package-management
Linux Konsolu(Konsole)
• Konsole; Komutların yazıldığı metin
ekranlı arabirimdir.
• Terminal olarak da adlandırılır.
• Pek çok şekli ve programı vardır.
• Konsole, xterm, aterm, rxvt, ...
• Konsola geçmek için;
Ctrl + Alt + F2 (F1..F6)
• X-Window(GUI) geçmek için;
Ctrl + Alt + F7
Konsole
• Konsole; program olarak çalıştır
menüsü ile kullanılabilir.
• Alt + F2 (Komut Çalıştır Penceresi);
Konsole (Enter)
• Geçerli kullanıcı oturumu ile konsol
görüntülenir.
Konsol Kullanıcı Yetkileri
• Konsol’a geçildikten sonra kullanıcı
adının sağ tarafında görünen işaret
kullanıcının yetki seviyesini ifade eder.
• $ User hakları olan bir kullanıcı
• # root yetkiye sahip bir kullanıcı
• Root => (Windows’da Administrator)
• Konsol giriş ekranında kullanıcı adı ve
parola bilgisi girilirken parola giriş
sırasında görünmez.
Konsol Komutları
• Linux yapı itibari ile küçük/BÜYÜK
harf ayrımına duyarlıdır.
• Konsol’dan çıkmak için;
exit veya logoff
• Kullanılabilecek tüm komutların bir
listesini görmek ve yardım almak
için;
• help (Enter)
Konsol Komutları ve Windows (DOS)
Karşılıkları
Linux (Pardus)
Windows (DOS)
Komutu
Komutu
help
help dir
dir
dir /p
cls
help
ls --help
ls
ls |more
clear
Genel Amaçlı Komutlar
• Yardım (Help);
Komutlar hakkında bilgi veya
komutun doğru yazımı(syntax)
parametreleri ve kullanımı için
kullanılır.
komut_ismi –help
ls –help (gibi..)
Genel Amaçlı Komutlar
• cd dizin_adi
Dizin değiştirmek, başka dizine veya
alt dizine geçmek için kullanılır.
• cd..
Bir üst dizine geçer.
• /home/kullanıcı_adı =>
Kullanıcının ev dizinidir.
• exit
konsol’dan çıkar.
~
Genel Amaçlı Komutlar
• xinit
Pencere yöneticisi olmayan bir
oturum açar.
• startx
Pencere yöneticili bir oturum açar.
(Dos’ta win komutu gibi.)
Bilgi Edinme Komutları
• hotsname
Makinanın ismini verir.
• whoami
kullanıcı ismini verir.
• pwd
Bulunduğunuz dizinin ismini verir.
• who
O anda sistemde bulunan kullanıcıların
isimlerini verir.
• last
Sisteme en son giriş kullanıcıları listeler.
Bilgi Edinme Komutları
• uptime
Makinanın açık olduğu süreyi verir.
• ps
Komutlar ve süreçlerini verir.
• free
Bellek kullanım durumunu verir.
• df
Disk kullanım/boş alan durumunu
verir
Bilgi Edinme Komutları
• history
Son girilen komutların listesini verir.
•  (Yukarı yön tuşu)
son girilen komutu getirir.
• Tab tuşu
Yazılmakta olunan komutu tamamlar.
Bilgi Edinme Komutları
• time
Sistemin saatini verir ve değiştirmek
için kullanılır.
• date
Sistemin tarihini verir ve değiştirmek
için kullanılır.
Komutun parametrelerini ve kullanımı
ile ilgili ayrıntılı listesi için;
date --help 
time -- help 
Bilgi Edinme Komutları
• ps
Uçbirimde çalışan işlem ve süreçleri
listeler.
• ps –ax|more
Sistemin açılışından beri çalışan bütün
süreçleri listeler.
• uname –a
Sistem hakkında çekirdek sürümü,
işlemci türü bilgilerini verir.
Bilgi Edinme Komutları
• df –h
Disk kullanımı ve boyutlarını verir.
• du dizin_adi
Diskte kapladığı alanı verir. Dizin adı
belirtilmezse bulunduğu dizini verir.
• dmesg |more
Sistem açılışından itibaren çekirdek
tarafından üretilen iletilerin tamponda
bulunan son iletilerini gösterir.
Bilgi Edinme Komutları
• cat /proc/version
Linux çekirdeğinin sürüm bilgileri..
• cat /proc/filesystems
Çekirdekte tanımlı kullanılabilecek dosya
sistemlerinin listesini verir.
• cat /proc/interrupts
Çekirdek tarafından tanımlanmış sistem
kesmelerinin listesi.
• lsmod
Yüklü çekirdek modüllerinin listesi
Dosya Komutları
• cat > dosya_adi
Dosya oluşturur.
ve içeriği yazılır.
bitirmek için Ctrl+D (kaydetmek).
• cat dosya_adi
Dosya içeriğini listeler.
Dosya-Dizin Komutları
• cd dizin_adi
Dizin değiştirme
• mkdir dizin_adi
Dizin oluşturur.
• rmdir dizin_adi
Dizini siler (içi boş ise..)
• rm dosya_adi
Dosya siler..
Dosya Komutları
• find dosya_adi
Dosya arar (*, ? Kullanılabilir.)
• locate dosya_adi
Dosya arar (veritabanına bağlıdır.
Güncel bilgileri bulamayabilir.)
• Touch dosya_adi
Dosyanın tarih/saat bilgilerini
değiştirir.
Dosya Komutları
• cp kaynak dosya/dizin hedef dosya/dizin
Bir yerdeki dosya/dizinleri başka bir yere
Kopyalamak için kullanılır.
• mv kaynak dosya/dizin hedef dosya/dizin
Dosya veya dizin taşır ya da yeniden
adlandırır.
Dosya Komutları
• wc dosya_adi
Dosyanın içerdiği satır, kelime ve bayt
sayılarını verir.
• nl dosya_adi
Dosya içeriği ekranda görüntülenirken satır
başına numara veya bir belirteç ekler.
• file dosya_adi (uzantısı hariç)
Dosyanın tipini belirtir.
• fuser dosya_adi
Dosyanın kim tarafından kullanıldığını verir.
Dosya Yöneticisi - MC
• MC, Master Commander,
Dosya ve dizinlerin yönetimi için geliştirilmiş
bir yardımcı programdır.
• Konsole’da iken mc yazılarak çalıştırılabilir.
veya
Alt + F2 ile program çalıştır penceresinde
mc yazılarak çalıştırılabilir.
Sıkıştırma Komutları
• gzip dosya_adi/dizin_adi
Dosya/dizin sıkıştırır. dosya.gz gibi.
• bzip2 dosya_adi/dizin_adi
Dosya/dizin sıkıştırır. dosya.bz2 gibi.
• tar -zcvf dosya_adi/dizin_adi
Dosya/dizin önce tar dosyası yapar sonra
gzip ile sıkıştırır. dosya.gz gibi.
Açma Komutları
• gunzip dosya.gz
Dosya/dizin açar.
• bunzip2 dosya_adi.bz2
Dosya/dizin açar.
• tar -zxvf dosya_adi.gz dosya_adi.tgz
Dosya/dizin açar.
Kullanıcı Hesapları
• useradd kullanici_adi
Kullanıcı hesabı ekler.
• passwd kullanici_adi
Kullanıcı parolası tanımlanır. (root yetkisi)
• userdel kullanici_adi
Kullanıcı hesabını siler.
Kullanıcı Grupları
• groupadd grup_adi
Yeni grup oluşturur.
• groups kullanici_adi
Kullanıcının ait olduğu grupları listeler.
• gpasswd –a kullanici_adi grup_adi
Bir gruba kullanıcı ekler.
• gpasswd –d kullanici_adi grup_adi
Kullanıcıyı gruptan siler.
Ağ Arayüzü
• ifconfig
Ağ arayüzünü (Ethernet kartı gibi..)
yapılandırır..
• ifconfig eth0 up
Aygıtı başlatır.
• ifconfig eth0 down
Aygıtı durdurur.
Dosya İzinleri
• Tüm dosyalara erişim izni root kullanıcısınındır.
• Temel olarak dosya izin hakları (yetkilendirme) 3
bölüme ayrılır.
• Dosya hakları;
• u Sahibi (user)
• g Grubu (grup)
• o Diğerleri (others)
• a Herkes (all)
Dosya İzin Kaynakları
• Temel 3 kaynak vardır.
• w yazma (write)
• r okuma (read)
• x çalıştırma (execute)
• Bütün dosyalar için erişim yetkilerini
değiştiren komut (change mod)
chmod ‘dur.
• chmod parametreler dosya/dizin
Dosya Hak ve Yetkileri
Diğerleri o
Sahibi u
Grubu g
Okuma r
400
040
004
Yazma w
200
020
002
Çalıştırma x
100
010
001
Toplam
700
070
007
777
Dosya İzin Örnekleri
• chmod 700 deneme.txt
deneme dosyasının sahibine okuma, yazma
ve çalıştırma izni verilmiştir.
• chmod 050 deneme.txt
deneme dosyası grubuna okuma ve
çalıştırma izni verilmiştir.
• chmod 653 deneme.txt
deneme dosyası sahibine okuma, yazma,
grubuna okuma, çalıştırma, ile diğerlerine
yazma ve çalıştırma izinleri verilmiştir.
Dosya İzin Listesi
• Bir örnek;
• ls –l
drwxrw-r-- DeneDizini
-rwxrw-r-- deneme.txt
En baştaki d bir dizin(klasör) olduğunu belirtir.
d | rwx | rwx | rwx
dizin | u | g | o
u sahibi (user), g grubu(grup), o diğer(other)
Dosya İzin Listesi
• rwx | rwx | rwx
u | g | o
u sahibi (user), g grubu(grup), o diğeri(other)
(r read-okuma, w write-yazma, o others-diğerleri)
• u+r sahibine okuma izni ekler.
• g=r grubunun izinlerini siler ve salt okunur.
• o-r diğerlerinden okuma iznini kaldırır.
• + ekler,
- çıkarır,
=değiştirir.
Dosya İzin Örnekleri
• chmod 754 deneme.txt
veya
• chmod u+rwx, go+r, g+x deneme.txt
Her iki yazım şeklinde de dosya Sahibine okuma,
yazma ve çalıştırma,
Grup ve diğerlerine, okuma,
Gruba çalıştırma izini verilmektedir.
• Sonuç olarak aşağıdaki gibi görüntülenir;
ls –l
-rwxr-xr-- deneme.txt
Dosya/Kullanıcı/Grup
• chown komutu dosya/dizin sahipliğini
değiştirmektedir.
• chown kullanici_adi dosya/dizin_adi
• chgrp komutu dosya/dizin ilişkili grubun
sahipliği değiştirir.(dosyanın grubunu değiştirir.)
• chgrp grup_adi dosya/dizin_adi
Kapanış Komutları
• exit
Konsoldan çıkmayı sağlar.
• Shutdown, reboot, Ctrl + Alt + Del
Sistemi kapatmayı veya yeniden
başlatmayı sağlar.
Kaynaklar - Linkler
•
•
•
•
Linux.org
Linux.org.tr
Pardus.org.tr
distrowatch.com
•
•
•
•
Gnu.org
Gnu.org/copyleft/gpl.html
opensource.org/licenses/GPL-3.0
Unix.org
Teşekkür / Sorular / İletişim..
• Dinleme zahmetine katlandığınız için teşekkür
ederim.. 
• Sorularınız..?
• Okutman Murat KARA
• Ç.Ü. Enformatik Bölümü
• mkara@cu.edu.tr
Download