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

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

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

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

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

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

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

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

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar) Öğr.Gör. Dr. Dr. Şirin KARADENİZ

Linux Dosya ve Dizin Yapısı

Linux e Giriş ve Dağıtımlar

Kabuk Programlama (Bash)

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

İŞ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

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

İşletim Sistemleri. Discovering Computers Living in a Digital World

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

Açık Kaynak Kodlu Yazılım

Linux'ta Kabuk ve Kabuk Programlama

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

İşletim Sistemleri (Operating Systems)

Computer Setup Kullanıcı Kılavuzu

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

İşletim Sistemlerine Giriş

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

Pardus ta Komutlarla Çalışmak

MultiBoot Kullanıcı Kılavuzu

Ubuntu Terminal Server Ve Uzak Masaüstü Sunucusu

Harici Aygıtlar. Kullanıcı Kılavuzu

Scan Station Pro 550 Adminstration & Scan Station Service Araçları

CHAPTER 13. X-WINDOW and WINDOW MANAGERS

C Konsol ve Komut Satırı

BİLGİ & İLETİŞİM TEKNOLOJİLERİ

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

Widows un çalışmasında birinci sırada önem taşıyan dosyalardan biriside Registry olarak bilinen kayıt veri tabanıdır.

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

Komut Penceresi ile Çalışmaya Başlamak

MultiBoot Kullanıcı Kılavuzu

BOOT PROCES (SÜRECĐ)

USB 2.0 DAN HDMI A VİDEO ADAPTÖRÜ. Hızlı Kurulum Kılavuzu DA-70851

Apache üzerinden Red Hat 5 yüklenmesi

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

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

Kurtarma Ortamını Oluşturma

16-18 Nisan 2012 Pazartesi-Çarsamba 9:30-12:30. Temel Linux Eğitimi. Süha TUNA.

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

NAVİGASYON KULLANIM KILAVUZU.

2013 Yıl Sonu İşlemleri

ÇANKRI KARATEKİN ÜNİVERSİTESİ

Kurumsal Güvenlik ve Web Filtreleme

DRAYTEK VIGOR 3300V. Login(Oturum Açma)

Bu bölüm V- Ray License Server lisans sunucusu uygulamasının kurulumundan

NA VNC SERVER KULLANIMI. Genel Bilgi NA VNC Server Ayarları

IP Sunucu üzerinden Ağ USB Bağlantı Noktası, 4-USB 2.0 Portlu

2. SCADA PROGRAMI. TEOS' un size sunduğu bir çok hizmet içerisinde en önemlilerini şöyle sıralayabiliriz:

Kurulum ve Başlangıç Kılavuzu. DataPage için

Harici Aygıtlar. Kullanıcı Kılavuzu

Kurumsal Güvenlik ve Web Filtreleme

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

Scream! e gelen veri akışlarından bazılarını diğer bir kurum yada bilgisayarla paylaşmak için kullanılabilir.

NOT: LÜTFEN BU BELGEYİ OKUMADAN YAZILIMI YÜKLEMEYİ DENEMEYİN.

KULLANICI KILAVUZU: UEA FİX KULLANICILARININ SSLVPN ERİŞİMİ İMKB İÇİNDEKİLER

Linux Dosya Yapısı. Eren BAŞTÜRK.

Ekrana gelen diyalog penceresinden Typical radyo düğmesi seçilir ve Next düğmesine basılır.

USB SERİ DÖNÜŞTÜRÜCÜ

MultiBoot Kullanıcı Kılavuzu

WeldEYE. Kurulum Kılavuzu. İçindekiler

$ rm dosya1 dosya2 dosya3 dosya4 dosya5 dosya6 dosya7 dosya8

PRESTIGIO GEOVISION 150/450 KULLANMA KILAVUZU

MultiBoot. Kullanıcı Kılavuzu

Kurulum ve Başlangıç Kılavuzu. DataPage için

Adli Analiz İşlemlerine Başlamak

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-8 Dosya İşlemleri-1. Yrd. Doç. Dr. Ümit ATİLA

PBS Betiği Hazırlama ve PBS Komutları. Feyza Eryol

Bilgisayar Kurulum Kullanıcı Kılavuzu

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.

SUNUCU MİMARİLERİ GİRİŞ LİNUX SİSTEMLERE. Öğr.Gör. Mehmet Can HANAYLI

Flash ile Etkileşimli Öğretim Materyali Hazırlama Semineri

Temel Linux Eğitimi. İçindekiler

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

Doğru Adaptor soket kutuplaması.

MOBIL UYGULAMA GELIŞTIRME

SAB 103 TEMEL BİLGİSAYAR KULLANIMI

C) 19 inçlik CRT ile LCD monitörün görünebilir alanı farklıdır. D) Dijital sinyali, analog sinyale çevirmek için DAC kullanılır.

Bu uygulama saatinde, dinamik sistemlerin simülasyonu (benzetimi) için geliştirilmiş olan, oldukça kullanışlı bir arayüz, Simulink, tanıtılacaktır.

VISUAL BASIC DE İŞLETİM SİSTEMİ DENETİM KOMUTLARI VE FONKSİYONLARI

BİLİŞİM TEKNOLOJİLERİ BİL-109 ÖĞRETİM GÖREVLİSİ SEMİH ÇALIŞKAN

Nova Dental D Ana Makine Kurulum (Windows Server XP Home/Pro)

SAMURAİ FRAMEWORK İLE HACKİNG-1 (FOOTPRINTING)

Doğu Akdeniz Üniversitesi Bilgisayar ve Teknoloji Yüksek Okulu Bilgi teknolojileri ve Programcılığı Bölümü DERS 1 - BİLGİSAYAR VE ÇEVRE ÜNİTELERİ

İŞLETİM SİSTEMLERİ. İŞLETİM SİSTEMİ Kavramı. Klasör ve Dosya Mantığı. Klasör ve Dosya Mantığı

SIMAN KULLANIM KILAVUZU

Ağ Projektörü Çalıştırma Kılavuzu

Fiery Driver Configurator

B-Tree Dosya Sistemi (BTRFS)

V14xx Güncelleme İşlemleri

USB SERİ DÖNÜŞTÜRÜCÜ. Hızlı Kurulum Kılavuzu Windows 7/8/8.1 DA-70159

Kablosuz N USB Adaptör

MCR02-AE Ethernet Temassız Kart Okuyucu

Transkript:

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

Sistemdeki her işlem aşağıdakilere sahiptir Çıkış cihazı: stdout tarafından tanımlanıdr Giriş cihazı: stdin tarafından tanımlanır Hata cihazı: 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.

TARİHİ ARKAPLAN

1869 Delikli Kart

stdout = /dev/ttys1 stderr = /dev/ttys1 stdin = /dev/ttys1 Cotrolling TTY: /dev/ttys1 Uygulama Us U e s r e A r p A p pp TTY Cihazı (/dev/ttys*) UART Hat Disiplini TTY

stdout = /dev/ttys2 stderr = /dev/ttys2 stdin = /dev/ttys2 Uygulama Us U e s r e A r p A p pp TTY Cihazı (/dev/ttys*) UART Hat Disiplini TTY

stdout = /dev/ttyusb1 stderr = /dev/ttyusb1 stdin = /dev/ttyusb1 Uygulama Us U e s r e A r p A p pp TTY Cihazı (/dev/ttyusb*) USB Hat Disiplini TTY

/dev/ttys1 /dev/ttys2 Uygulama Uygulama

Uygulama Us U e s r e A r p A p pp TTY Cihazı VGA Sürüc üsü Klavye Hat Disiplini TTY

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.

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.

Uygulama Us U e s r e A r p A p pp TTY Device (/dev/tty*) VGA sürücüsü Klavye sürücüsü Hat Disiplini TTY

VGA Klavye sürücüsü /dev/tty1 /dev/tty2 /dev/tty3. /dev/ttyn

ALT-F2 VGA Klavye sürücüsü /dev/tty1 /dev/tty2 /dev/tty3. /dev/ttyn

ALT-F3 VGA Klavye sürücüsü /dev/tty1 /dev/tty2 /dev/tty3. /dev/ttyn

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.

GRAFİK ARAYÜZÜ

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.

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

X-Server Video sürücüleri Fare Klavye /dev/tty7

X-Server FireFox GIMP Video sürücüleri Fare Klavye /dev/tty7

X-Server FireFox GIMP Video sürücüleri Fare Klavye /dev/tty7 /dev/tty1

X-Server FireFox GIMP Video sürücüleri Fare Klavye /dev/tty7 /dev/tty1

Taklit Terminal Kullanımı

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;

X-Server FireFox GIMP Video sürücüleri Fare Klavye /dev/tty7 /dev/tty1

X-Server FireFox GIMP Xterm Video sürücüleri Fare Klavye /dev/tty7 PTY /dev/tty1

X-Server FireFox GIMP Xterm Video sürücüleri /dev/pts/* Fare Klavye /dev/tty7 PTY Master PTY Slave /dev/tty1

Kullanım Örnekleri

X-Server Xterm Varsayılan stdin/stdout/stderr Shell command TTY/PTY Kontrolü Video sürücüleri Fare Klavye /dev/tty7 PTY Master PTY Slave /dev/pts/1

X-Server Xterm Shell command Video sürücüleri File Fare Klavye /dev/tty7 PTY Master PTY Slave /dev/pts/1

X-Server Xterm Shell Command-1 Command-2 Video sürücüleri /dev/pts/* Fare Klavye /dev/tty7 PTY Master PTY Slave

$ tty Eğer bu komut çalıştırılırsa (Physical/Virtual/Emulated), Bununla ilişkili TTY / PTY cihazını görüntülenir.

Komutlarla Sanal Oturumları Yönetmek

X-Server Video sürücüleri Fare Klavye /dev/tty7

X-Server Xterm Shell Video sürücüleri Fare Klavye /dev/tty7 /dev/pts/1

X-Server Xterm Shell command Video sürücüleri Fare Klavye /dev/tty7 /dev/pts/1 $ command

X-Server Xterm Shell command Video sürücüleri Fare Klavye /dev/tty7 /dev/pts/1

X-Server Video sürücüleri Fare Klavye /dev/tty7

X-Server Xterm Shell screen term Shell Video sürücüleri /dev/pts/2 Fare Klavye /dev/tty7 /dev/pts/1 $ screen

X-Server Xterm Shell cosmcrmeeand term Shell term Shell Video sürücüleri /dev/pts/2 /dev/pts/3 Fare Klavye /dev/tty7 /dev/pts/1 Ctrl-A c

X-Server Xterm Shell cosmcrmeeand term Shell term Shell Video sürücüleri /dev/pts/2 /dev/pts/3 Fare Klavye /dev/tty7 /dev/pts/1 Ctrl-A d

Close X-Server Xterm Shell cosmcrmeeand term Shell term Shell Video sürücüleri /dev/pts/2 /dev/pts/3 Fare Klavye /dev/tty7 /dev/pts/1

X-Server cosmcrmeeand term Shell term Shell Video sürücüleri /dev/pts/2 /dev/pts/3 Fare Klavye /dev/tty7

X-Server Xterm Shell cosmcrmeeand term Shell term Shell Video sürücüleri /dev/pts/2 /dev/pts/3 Fare Klavye /dev/tty7 /dev/pts/1

X-Server Xterm Shell cosmcrmeeand term Shell term Shell Video sürücüleri /dev/pts/2 /dev/pts/3 Fare Klavye /dev/tty7 /dev/pts/1 $ screen -r

$ 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

Kabuk

X-Server Xterm Shell command Video sürücüleri Fare Klavye /dev/tty7 PTY Master PTY Slave /dev/pts/1

X-Server Getty shell command Video sürücüleri Fare Klavye /dev/tty7 /dev/tty1

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 Application X- Server Shell Other Libraries or Interface to Kernel Kernel User Hardware Resources term

İ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

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

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)

$ 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`

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

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

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

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)

Bir komutu girdiğinizde, Linux bunu bir geçmiş dosyasına depolar ~/.bashhistory 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)

$ 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)

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

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

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

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

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

Shell PTY Slave /dev/pts/1

Ortam ayarları kalıtımı Shell komut PTY Slave /dev/pts/1

Ortam ayarları kalıtımı Shell command Ortam ayarları değişimi PTY Slave /dev/pts/1

Shell PTY Slave /dev/pts/1

Ortam ayarları kalıtımı komut Shell PTY Slave /dev/pts/1

Ortam ayarları değişimi komut Shell PTY Slave /dev/pts/1

komut Shell PTY Slave /dev/pts/1

~ /.bashrc'de kullanışlı ayarlar

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

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 (dosyaların üzerine yazılmasını önleyecektir) $ set +o noclobber (koruma kaldırır) Not Dosyalar aşırı yazmaya karşı korunursa, üstüne yazmaya zorlayabilirsiniz $ echo Good Morning > file.txt

Ahmed ElArabawy, Linux for Embedded Systems for Arabs

Dersin Sonu Kocaeli Üniversitesi Bilgisayar Mühendisliği Yapay Zeka ve Benzetim Sistemleri Ar-Ge Lab. http://yapbenzet.kocaeli.edu.tr/