yrd. doç. dr. a. burak İnneryapbenzet.kocaeli.edu.tr/wp-content/uploads/linux_ag... · 2018. 4....
TRANSCRIPT
![Page 1: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/1.jpg)
Yrd. Doç. Dr. A. Burak İNNER
Kocaeli Üniversitesi Bilgisayar Mühendisliği
Yapay Zeka ve Benzetim Sistemleri Ar-Ge Lab.
http://yapbenzet.kocaeli.edu.tr
![Page 2: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/2.jpg)
• Sistemdeki her işlem aşağıdakilere sahiptir
• Çıkış cihazı: stdout tarafından tanımlanıdr
• Giriş cihazı:
• Hata cihazı:
stdin tarafından tanımlanır
stderr tarafından tanımlanır
• Burada mesajların nasıl ekrana yansıtıldığını veya klavyeden nasıl giriş okunduğunu anlamamız gerekiyor.
• Ayrıca I/O nun nasıl yönlendirildiği ve pipe’ların nasıl çalıştığını anlamamız gerekiyor.
• Bu bölüm tüm bu konuları içermektedir.
• Bunların tamamını anlayabilmemiz için öncelikle Linux Kernelinin içinde bulunan TTY altsistem konseptini ve bunun nasıl operasyonları nasıl yönettiğini anlamamız gerekiyor.
![Page 3: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/3.jpg)
TARİHİ ARKAPLAN
![Page 4: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/4.jpg)
1869 Delikli Kart
![Page 5: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/5.jpg)
![Page 6: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/6.jpg)
![Page 7: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/7.jpg)
![Page 8: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/8.jpg)
UART Sürücüsü
Hat Disiplini
TTY Sürücüsü
UsUesreAr pAppp Uygulama
TTY Cihazı (/dev/ttyS*)
stdout = /dev/ttyS1 stderr stdin
= /dev/ttyS1 = /dev/ttyS1
Cotrolling TTY: /dev/ttyS1
![Page 9: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/9.jpg)
UART Sürücüsü
Hat Disiplini
TTY Sürücüsü
UsUesreAr pAppp
TTY Cihazı (/dev/ttyS*)
stdout = /dev/ttyS2 stderr stdin
= /dev/ttyS2 = /dev/ttyS2
Uygulama
![Page 10: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/10.jpg)
TTY Sürücüsü
UsUesreAr pAppp
USB Sürücüsü
TTY Cihazı (/dev/ttyUSB*)
stdout = /dev/ttyUSB1 stderr stdin
= /dev/ttyUSB1 = /dev/ttyUSB1
Uygulama
Hat Disiplini
![Page 11: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/11.jpg)
/dev
/tty
S1
/dev
/tty
S2
Uygulama Uygulama
![Page 12: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/12.jpg)
TTY Sürücüsü
UsUesreAr pAppp
TTY Cihazı
VGA Sürücüsü Klavye
Sürücüsü
Uygulama
Hat Disiplini
![Page 13: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/13.jpg)
• TTY, TeleTYpewriter kısaltmasıdır. • TTY makineleri ilk olarak delikli kartlar ve Telex makinelerinde kullanıldı. • Bilgisayarlar tanıtıldığında, Bir bilgisayar büyük bir üniteydi, TTY
makinesi I/O terminali olarak kullanılıyordu ve bilgisayara UART aracılığıyla bağlanıyordu.
• Terminal kontrolü bir modem aracılığı ile gerçekleşiyordu.
• TTY cihazı 3 katmandan oluşur. • Donanım arayüzü için bir sürücü(UART driver, USB driver, VGA/KB drivers, ..) • Alt serviye düzenlemeler için bir iletişim hattı (backspace, erase word, clear
line, …. ) • TTY’nin kullanıcı uygulamalarıyla etkileşimi için driver
• Kullanıcı uygulamaları TTY ile sinyal ve çağrılarla ile haberleşir • Kullanıcı uygulamasının varsayılan I/O cihazı TTY’dir (/dev/tty*) • Bu TTY terminali ayrıca kullanıcı uygulamalarını da yönetir.
![Page 14: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/14.jpg)
• Terminale serial interface ile bağlandığımız zaman bilgisayarda birden fazla terminale sahip olabilir.
• Fakat bilgisayara monitör ve klavyeyi doğrudan bağladığımız ve aynı yapıyı kullanıdımız zaman birden fazla terminale sahip olamayız.
• Birden fazla terminali tek bir fiziksel terminal içinde bulundurabilemiz için yeni bir mimariye ihtiyacımız vardır.
• Bu sayede Linux’te sanal terminal konsepti oluştu.
![Page 15: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/15.jpg)
UsUesreAr pAppp
Klavye sürücüsü
VGA sürücüsü TTY
Sürücüsü
TTY Device (/dev/tty*)
Uygulama
Hat Disiplini
![Page 16: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/16.jpg)
VGA Sürücüsü
Klavye sürücüsü
/dev/tty1
/dev/tty2
/dev/tty3
/dev/ttyN
…….
![Page 17: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/17.jpg)
/dev/tty1
/dev/tty2
/dev/tty3
/dev/ttyN
…….
ALT-F2
VGA Sürücüsü
Klavye sürücüsü
![Page 18: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/18.jpg)
/dev/tty1
/dev/tty2
/dev/tty3
/dev/ttyN
…….
ALT-F3
VGA Sürücüsü
Klavye sürücüsü
![Page 19: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/19.jpg)
• Yeni mimari birden fazla terminali üzerinde barındırma yeteneğine sahipti.(Aynı fiziksel terminal üzerinde)
• Monitör ve klavye artık TTY cihazının birer parçası değildir. Her biri ayrı birer cihaz artık.
• Linux kerneli 63 sanal terminale kadar destekler. (/dev/tty1 up to /dev/tty63)
• Çoğu dağıtım ise yalnızca 7 terminale kadar destekliyor.
(/dev/tty1 - /dev/tty7)
• Her sanal terminalde kullanıcı uygulaması getty başlar.
• (getty=get tty, Terminale yeni bir bağlantı fark ettiğinde kullanıcı adı ve şifre istemek için ‘oturum açma’ programını çalıştırır.)
• Bütün sanal terminaller aktiftir fakat yalnızca biri fiziksel terminale erişebilir.
• Sanal terminaller arasında geçiş yapmak için ALT-Fn kullanılır.
![Page 20: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/20.jpg)
GRAFİK ARAYÜZÜ
![Page 21: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/21.jpg)
• Az önce Text I/O hakkında konuşmuştuk. İhtiyacımız olanlar • Windowing (çoklu pencere, maximize, minimize, ...) • Fontlar, renkler, ikonlar • Fare hareketlerini algılama • Grafik gösterme
• Linux X-Windows sistemi sayesinde tüm bunları gerçekleşetirebilir. • X-Window Sistemi bitmap ekranlar için bir pencereleme sistemidir.
Aşağıdakilerden oluşur: • Sunucu(X-Server):
• Grafik arayüzü algılayıp sürücü ile bağlayacak bir program. • Çoğu Linux dağıtımı Xorg bunun için kullanır.
• Kullanıcı(X-Client) • Kullanıcı kısmında tüm uygulumaların GUI’ye ihtiyacı vardır. • Uygulamalar X-Server’a X Protocol ile bağlanır.
![Page 22: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/22.jpg)
• Daha önce de bahsedildiği gibi, Linux dağıtımları sanal terminal’leri yüklerken getty’yi çalıştırır.
• X-server en az bir sanal terminal üzerinde başlar. Bu X-Session #0 dır.
• Kullanıcı ihtiyacı olurda X-session sayısını arttırıp azaltabilir.
• Alt-Fn’in GUI’de başka bir anlamı olduğu için onun yerine sanal terminal arası geçiş yapmak için CTRL+ALT+Fn kullanılır.
• X-Server’ın çalıştığını varsayarasak ( /dev/tty7 )
• SF#1 için Ctrl-Alt-F1
• GUI’e dönmek için Alt-F7
![Page 23: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/23.jpg)
X-Server
/dev/tty7
Video
sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 24: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/24.jpg)
X-Server FireFox
GIMP
/dev/tty7
Video
sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 25: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/25.jpg)
X-Server
/dev/tty1
GIMP
FireFox
/dev/tty7
Video
sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 26: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/26.jpg)
X-Server
/dev/tty1
FireFox
/dev/tty7
GIMP
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 27: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/27.jpg)
Taklit Terminal Kullanımı
![Page 28: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/28.jpg)
• Bir sonraki adım GUI’de taklit terminal kullanımdır.
• Bir X-app(X-uygulama) ST taklidi yapabilir.
• Bu konsepti desteklemek için, Linux Kernel’i Sözde Terminal konseptini tanıtmıştır.
• X-clients olarak çalışan bazı terminal taklitleri vardır. Örneğin;
• xterm
• Konsole (in KDE)
• gnome-terminal (in GNOME)
Bu kavramı desteklemek için, Linux Çekirdeği, Sözde(pseudo)
Terminaller(PTY=pseudo teletype) kavramını tanıtıyor;
![Page 29: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/29.jpg)
X-Server
/dev/tty1
FireFox
GIMP
/dev/tty7
Video
sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 30: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/30.jpg)
X-Server
/dev/tty1
FireFox
GIMP
/dev/tty7
Xterm
PTY
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 31: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/31.jpg)
X-Server
/dev/tty1
FireFox
GIMP
/dev/tty7
Xterm P
TY M
aster
PTY
Slave
/dev/pts/* Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 32: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/32.jpg)
Kullanım Örnekleri
![Page 33: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/33.jpg)
X-Server
/dev/tty7
Xterm
Shell
PTY
Maste
r
PTY Slave /dev/pts/1
command
TTY/PTY Kontrolü
Varsayılan stdin/stdout/stderr
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 34: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/34.jpg)
X-Server
/dev/tty7
Xterm
Shell
PTY
Maste
r
PTY Slave /dev/pts/1
command
File Video
sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 35: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/35.jpg)
X-Server
/dev/tty7
Xterm
Shell
PTY
Maste
r
/dev/pts/*
PTY Slave
Co
mm
and
-1
Co
mm
and
-2
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 36: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/36.jpg)
$ tty • Eğer bu komut çalıştırılırsa (Physical/Virtual/Emulated),
Bununla ilişkili TTY / PTY cihazını görüntülenir.
![Page 37: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/37.jpg)
Komutlarla Sanal Oturumları Yönetmek
![Page 38: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/38.jpg)
X-Server
/dev/tty7
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 39: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/39.jpg)
Xterm X-Server
/dev/tty7
Shell
/dev/p
ts/1
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 40: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/40.jpg)
/dev/tty7
/dev/p
ts/1
$ command
Xterm X-Server
Shell
com
man
d
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 41: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/41.jpg)
/dev/tty7
com
man
d
/dev/p
ts/1
Xterm X-Server
Shell
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 42: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/42.jpg)
X-Server
/dev/tty7
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 43: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/43.jpg)
X-Server
/dev/tty7
Xterm
Shell
/dev/p
ts/1
screen
term
/dev/pts/2
Shell
$ screen
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 44: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/44.jpg)
X-Server
/dev/tty7
Xterm
Shell
cosmcrmeeannd
/dev/p
ts/1
term
/dev/pts/2
Shell
term
/dev/pts/3
Shell
Ctrl-A c
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 45: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/45.jpg)
X-Server
/dev/tty7
Xterm
Shell
cosmcrmeeannd
/dev/p
ts/1
term
/dev/pts/2
Shell
term
/dev/pts/3
Shell
Ctrl-A d
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 46: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/46.jpg)
X-Server
/dev/tty7
Shell
cosmcrmeeannd
/dev/p
ts/1
term
/dev/pts/2
Shell
term
/dev/pts/3
Shell
Close
Xterm
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 47: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/47.jpg)
X-Server
/dev/tty7
cosmcrmeeannd
term
/dev/pts/2
Shell
term
/dev/pts/3
Shell
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 48: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/48.jpg)
X-Server
/dev/tty7
Xterm
Shell
cosmcrmeeannd
/dev/p
ts/1
term
/dev/pts/2
Shell
term
/dev/pts/3
Shell
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 49: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/49.jpg)
X-Server
/dev/tty7
Xterm
Shell
cosmcrmeeannd
/dev/p
ts/1
term
/dev/pts/2
Shell
term
/dev/pts/3
Shell
$ screen -r
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 50: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/50.jpg)
$ screen
$ screen –r
• Komut ekranı taklit (sanal) oturumun yöneticisidir.
• Kullanıcının birden çok taklit terminal oturumu (Ctrl-A c yeni bir oturum oluşturmak için) oluşturmasını sağlar
• Kullanıcının farklı oturuma gidebileceğini sağlar
(sonraki oturuma gitmek için Ctrl-A n)
• Kullanıcı ekran komutunu kontrolünden çıkarabilir
TTY (Ctrl-A d). • Bu çok kullanışlı bir araçtır, şimdi kontrol terminali ekran altında
çalışan oturumları etkilemeksizin kapanabilir • Ekran oturumlarının kontrolünü tekrar kazanmak için $ screen -r
![Page 51: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/51.jpg)
Kabuk
![Page 52: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/52.jpg)
X-Server
/dev/tty7
Xterm
Shell
PTY
Maste
r
PTY Slave /dev/pts/1
command
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
![Page 53: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/53.jpg)
X-Server
/dev/tty7
/dev/tty1
command
Video sürücüleri
Fare Sürücüsü
Klavye Sürücüsü
Getty shell
![Page 54: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/54.jpg)
• Shell, metin girişi kabul eden bir “user space”programıdır.
• Ayrıştırma ve girişin biraz genişletilmesini gerçekleştirir.
• Metin ayrıştırması için readline kütüphanesini kullanır.
• Bir terminal veya taklit(emulated) terminal programı aracılığıyla erişilir.
• Daha sonra denetimi uygun işlevlere geçirir (Kabuk içinde veya dışında).
• Bir kabuk sistem ve kullanıcıları arasındaki etkileşimi yönetir.
• Bir kabuk bazı yerleşik işlevlerle gelecektir, diğer işlevler ayrı ikili dosyalar tarafından sağlanacaktır
X- Server
Shell
Application
Other Libraries or Interface to Kernel
Kernel
Hardware Resources
User
term
![Page 55: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/55.jpg)
• İlk Kabuk, Bourne kabuğu olarak da bilinen sh kabuğudur. (Şu anda artık kullanılmıyor)
• Bunu takip eden csh kabuğudur(c-benzeri kabuk),
(bu da artık kullanılmıyor)
• tcsh var ama bu da çok popüler değil
• En popüler kabuk (ve kullanacağımız kabuk),
bash shell'dir. GNU projesinin bir parçasıdır
![Page 56: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/56.jpg)
• Desteklenen kabuklar / etc / shells dosyasında listelenir • Kullanıcı için varsayılan kabuk / etc / passwd'da
belirtilecektir. • Farklı bir kabuğa geçmek için kendi ikili dosyasını çağırın, örneğin farklı bir
kabukla çalışıyorsanız ve bash kullanmak istiyorsanız, • $ bash
Ardından, orijinal kabuğa,
$ exit
• Hangi kabuğu kullandığınızı bilmek için,
• $ echo $SHELL
![Page 57: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/57.jpg)
Komutlar aşağıdakilerden biri olabilir
1. Kabuk programı içinde yerleşik komut(‘cd’ gibi)
2. Kabuk programı tarafından çağrılan sistemdeki bir ikili veya çalıştırılabilir. Bu ikili erişilebilir olabilmek için PATH içinde olmalıdır (normalde / usr / bin'de bulunurlar)
3. Başka bir komuta Alias (nasıl yaptığımızı göreceğiz)
4. Yada bir kabuk fonksiyonu olabilir (detaylı olarak bash scripting
konusunda anlatılacak)
![Page 58: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/58.jpg)
$ Yaz <Komut>
<Komut> komut kategorisini tanımlar
• Örnekler:
$ type cd
cd is a shell builtin
$ type rm
rm is /bin/rm
$ type ls
ls is aliased to `ls --color=auto`
![Page 59: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/59.jpg)
• Bunlar kabuk ikili dosyasında uygulanan işlevselliklerdir. • Bunun için ayrı bir ikili yoktur. • Çok sınırlı set ve yalnızca çok basit komutlar içindir.
• Örnekler,
$ cd
$ pwd
Ayrı bir ikili olmadığından, bunu yapamazsınız
$ cd --help
Bunun yerine yerleşik komuta komutunu kullanabilirsiniz
$ help cd
![Page 60: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/60.jpg)
• Bu, Linux dizin yapısında yer alan ayrı bir programdır. • Çoğu komut bu kategoriye aittir.
• Her komutun kendi sürümü vardır.
$ rm --version
• Komut kullanımını almak için
$ rm --help
• Komut için ikili bulmak için
$ which rm
![Page 61: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/61.jpg)
• Aliases başka bir komutun bir kısaltmasıdır (seçenekler / bağımsız değişkenlerle)
• Aliases komutunu yapmak için • $ alias yenikomut=‘uzun komut’
Örneğin
$ alias ll=‘ls -al’
• Bir Aliases komutu kaldırmak için $ unalias <alias command>
Örneğin:
$ unalias ll
• Tüm Aliasesları listelemek için • $ alias
![Page 62: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/62.jpg)
• Yeni komut kullanılmış bir komut ise, yine de çalışacaktır (yeni komut eskisini geçersiz kılacaktır)
$ alias ls= ‘ls --color=auto’
• Bunu yanlışlıkla yapmadığınızdan emin olun, takma ad vermeden önce bir komutun varlığını takma adla kontrol edin
$ type <alias candidate>
(Sana bulamadığını söylemeli)
![Page 63: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/63.jpg)
• Bir komutu girdiğinizde, Linux bunu bir geçmiş dosyasına depolar ~/.bash- history
• Komut geçmişine göz atmak için
$ history
• Şimdi şunları yapabilirsiniz: $ !! (son komutu girmek için)
$ ! <n> (geçmişte # n komutunu girmek için
$ ! abc (‘abc' ile başlayan son komutu girmek için)
$ ^abc ^def (son komutu girin, ancak 'abc' yerine 'def' yazın)
$ command2 !* (command2 yi son komuttan gelen tüm bağımsız değişkenlerle çalıştırın) $ command2 !$ (command2'yi son argümanla son komuttan
çalıştırın $ command2 !^ (command2yi son komuttan yalnızca ilk argümanla çalıştırın)
![Page 64: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/64.jpg)
$ script <file>
Komutları ve çıktılarını bir dosyaya yazmak için
$ script file
$ script -a file (Varolan dosyayı ekle)
$ script -t file (Her komutun önüne zaman damgası koyar)
$ script -f file (Her komutun ardından boşaltın)
![Page 65: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/65.jpg)
• Kabuk iki kategoriye aittir
• Giriş olan kabuğu
• Başlatmadan önce giriş yapmayı gerektiren kabuk
• Giriş olmayan kabuğu
• Giriş yapmayı gerektirmeyen kabuklar
• Giriş kabuklarının girişleridir
• Kabuktan çıkmak için,
• Giriş olan kabuğu için
$ logout
• Giriş olmayan kabuğu için
$ exit
![Page 66: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/66.jpg)
![Page 67: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/67.jpg)
Giriş Kabuğu başlatıldığında, uygun ortamı ayarlamak için bu adımlar geçer
• System Wide Configurations
• Genel yapılandırmalar için / etc / profile’i okuyor (tüm kullanıcılar için)
• User Specific Configurations
• Ardından, kullanıcıya özel olarak aşağıdakilerden birini okur extensions/overrides(ilk dosyadan başlayarak dosyalardan birini bulursa, dosyayı okuyacak ve kalan dosyayı atlayacak)
~/.bash-profile
~/.bash-login
~/.profile
• Bu dosyaların normalde ~ / .bashrc'yi dahili olarak çağırdığını unutmayın
![Page 68: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/68.jpg)
Giriş Olmayan Kabuklar çevreyi aşağıdaki gibi oluşturur;
• İlk önce, çevreyi parent giriş olan kabuklardan
devralırlar.
• Bunun üzerine, aşağıdaki yapılandırma dosyalarını okur;
• Genel ayarlar için dosyaları okurlar:
/etc/.bashrc
/etc/bash.bashrc
• Kullanıcıya özel ayarlar için,
~/.bashrc
![Page 69: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/69.jpg)
• Her kullanıcı kendi ayarlarını ~ / .bashrc içine koyabilir orneğin
• Ortam değişkenlerini ayarlama
• Aliases komut ayarlama
• Kabuk fonksiyonlarını tanımlama
• ~ / .bashrc'deki yeni ayarlar yalnızca kabuk başlangıçta okunduğu için şimdiki kabukta etkili olmayacaktır
• çözüm,
• Yeni bir kabuk başlat
• ~ / .bashrc okumasını manuel olarak ayarla
![Page 70: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/70.jpg)
• Normalde, komut dosyaları komut isteminden çağırarak çalıştırılır
$ <script name>
• ~ / .bashrc komut dosyasını normal komut dosyası gibi çağıramayız ... NİYE ?? • Bir komut dosyası çalıştırıldığında, bir alt kabukta çalışır
• Komut dosyası tamamlandığında alt kabuk kapanır ve denetim orijinal kabuğa geri döner
• komut dosyasında ayarlanan herhangi bir şey alt kabuk için geçerli olacağı anlamına gelir ve kapatıldığında bu ayarlar kaybolur
• Komut dosyasını bir kabuk kabuğunda değil de geçerli kabukta çalıştırmaya zorlamanın yeni bir yoluna ihtiyacımız var, bu nedenle ayarlar geçerli kabuk için geçerli olacak
$ source .bashrc
$ . .bashrc
![Page 71: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/71.jpg)
Shell
PTY Slave /dev/pts/1
![Page 72: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/72.jpg)
Shell
PTY Slave /dev/pts/1
komut
Ortam ayarları kalıtımı
![Page 73: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/73.jpg)
Shell
PTY Slave /dev/pts/1
command
Ortam ayarları kalıtımı
Ortam ayarları değişimi
![Page 74: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/74.jpg)
Shell
PTY Slave /dev/pts/1
![Page 75: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/75.jpg)
PTY Slave /dev/pts/1
komut
Shell
Ortam ayarları kalıtımı
![Page 76: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/76.jpg)
PTY Slave /dev/pts/1
Ortam ayarları değişimi
komut
Shell
![Page 77: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/77.jpg)
PTY Slave /dev/pts/1
komut
Shell
![Page 78: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/78.jpg)
~ / .bashrc'de kullanışlı ayarlar
![Page 79: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/79.jpg)
Ortak Ayarlar
• Aliases ayarları
• Aliases ayarlamak için iyi bir yer ~ / .bashrc içindedir.
• Bu takma adların yalnızca o kullanıcı için geçerli olduğunu unutmayın! Dolayısıyla kök olarak çalıştırırsanız bu takma adları ayarlamazsınız.
• Kullanıcı için Ortam Değişkenlerini Ayarlama
• Kabuk işlevlerini tanımlama
![Page 80: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/80.jpg)
• Bir dosyayı tıkmak, bir dosyanın üzerine yazılması (normalde kasıtsız olarak)
• çıktı yönlendirmesiyle sıklıkla olur
$ echo “Good Morning” > file.txt
• Bunu önlemek için, ~ / .bashrc içindeki noclobber ayarlarını yapalım
örnek:
$ set -o noclobber
$ set +o noclobber
• Not
(dosyaların üzerine yazılmasını önleyecektir)
(koruma kaldırır)
• Dosyalar aşırı yazmaya karşı korunursa, üstüne yazmaya zorlayabilirsiniz
$ echo “Good Morning” >| file.txt
![Page 81: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/81.jpg)
Ahmed ElArabawy, Linux for Embedded Systems for Arabs
![Page 82: Yrd. Doç. Dr. A. Burak İNNERyapbenzet.kocaeli.edu.tr/wp-content/uploads/LINUX_AG... · 2018. 4. 26. · Komutlar aşağıdakilerden biri olabilir 1. Kabuk programı içinde yerleşik](https://reader036.vdocuments.net/reader036/viewer/2022071414/610eb5f5c0e03e10697006d0/html5/thumbnails/82.jpg)
Dersin Sonu
Kocaeli Üniversitesi Bilgisayar Mühendisliği
Yapay Zeka ve Benzetim Sistemleri Ar-Ge Lab.
http://yapbenzet.kocaeli.edu.tr/