echo komutu
echo $?
ed
awk
strace
sed
tr
hostnamectl
cat /etc/os-release
cat /etc/issue
Klavye dili öğrenmek için
localectl
Ram bilgisi
lsmem
Cpu öğrenme
lscpu
Giriş yapanlar
last
Açık olan kullanıcılar
w
Hangi kullanıcı ve id bilgileri
id
Hangi kullanıcı olduğunu öğrenme
whoami
dosya tipi öğrenme
file dosyaadi
dosya hakkında detaylı bilgi
stat dosyaadi
netstat
ifconfig
iwconfig
ifconfig eth? ip adresi
ifconfig eth netmask netadresi
ifconfig eth brodcast broadresi
ifconfig eth ipadresi x netmask x broadcast x
MTU Adresi
ifconfig eth mtu 1600
Mac Değiştirme
SET
Set komutu, komut dosyalarınızın davranışını belirlemek için Bash’deki belirli bayrakları ve özellikleri kontrol etmenizi sağlar. Bu kontroller, komut dosyalarınızın istenen yolu izlemesini ve Bash’te istediğiniz gibi bir ortam yaratmanızı sağlar.
Basit bir şeyle başlayın. Bash’in dosyaların üzerine yazma şeklindeki varsayılan davranışını devre dışı bırakmak istediğinizi varsayalım, ‘-C’ parametresi bunu engelleyecektir.
set -C
şimdi bir dosya oluşturmaya çalıştığınızda artık hata verecektir
ls -la / >/tmp/list.root
gördüğünüz gibi artık redirect işlemi yapamıyorsunuz.
başka bir parametre olan ‘-f’ ise, shell üzerindeki Globbing özelliğini kapatacaktır. Globbing * dediğimizde tüm dosyalar anlamına gelen özellik.
set ile bash üzerinde çoğunlukla yazmış olduğunuz script’leri sınırlarsınız.
export dışa aktar
ortam değişkenini değiştirmek için kullanılır, yukarıda env komutunu işlerken görmüştük.
HOME
HOME, kullanıcının ev (veya oturum açma) dizinini temsil eden bir ortam değişkenidir. argümansız cd, geçerli çalışma dizinini HOME değerine değiştirir. Yaklaşık karakterinin (~) genellikle $ HOME için bir kısaltma olarak kullanıldığını unutmayın. Bu nedenle, cd $HOME ve cd ~ tamamen eşdeğer ifadelerdir.
$ echo $HOME
bize ev dizinimizin adını verir, her kullanıcının sistem üzerinde biz ev dizini vardır, ev dizini tanımlı olmayan kullanıcılar / kök dizinine düşerler ve kök üzerinde erişim hakları olmadığı için prompt olarak $ ile çalışmak zorunda kalırlar.
SHELL
Ortam değişkeni SHELL, kullanıcının varsayılan komut kabuğunu işaret eder (bir komut penceresinde yazdıklarınızı işleyen program, genellikle bash) ve kabuğun tam yol adını içerir:
$ echo $SHELL
/bin/bash
PATH
PATH, yani YOL çalıştırılacak uygun programı veya betiği bulmak için bir komut verildiğinde taranan sıralı bir dizin listesidir (path). Yoldaki her dizin iki nokta üst üste (:) ile ayrılır. null (boş) bir dizin adı (veya ./) herhangi bir zamanda geçerli dizini gösterir.
yol1: yol2 yol1 :: yol2 Örnekte: yol1:yol2, ilk iki nokta üst üste işaretinden (:) önce boş bir dizin vardır. Benzer şekilde, yol1::yol2 için yol1 ve yol2 arasında boş bir dizin vardır.
Yolunuza özel bir bin dizininin önüne eklemek için:
export PATH=$HOME/bin:$PATH
şimdi yeni path bilgisini tekrar ekrana getirelim,
echo $PATH
PS1
Örnek olarak (PS), Komut istemcisi (shell ekranında yanda yazan kısım) değiştrimeyi deneyelim.
PS1, komut satırı isteminizin neye benzediğini kontrol eden birincil istem değişkenidir. Aşağıdaki özel karakterler PS1’e dahil edilebilir:
\u - Kullanıcı adı
\h - Ana bilgisayar adı
\w - Geçerli çalışma dizini
\! - Bu komutun geçmiş numarası
\d - Tarih
Aşağıdaki örnekte olduğu gibi, kullanıldıklarında tek tırnak içine alınmaları gerekir:
echo $PS1 export PS1='\u@\h:\w$'
Değişiklikleri geri almak için:
export PS1='$'
Daha da iyi bir uygulama, önce eski istemi kaydetmek ve ardından aşağıdaki gibi geri yüklemek olacaktır:
OLD_PS1=$PS1
istemi değiştirin ve sonunda şununla tekrar değiştirin:
PS1=$OLD_PS1
exit - çıkış
exit komutu shell bağlantınızı sonlanrımak için kullanılır.
kullanım şekli.
$ exit [geri-dönüş-değeri]
0 başarılı 1 başarısız
genellikle
$ exit
şeklinde kullanılır. scriptler içersinde kullanırken geri dönüş değerleri önem arz eder, ve istediğiniz sayıyı verebilirsiniz.
örn.
$ exit 999
https://www.redhat.com/en/topics/linux/what-is-selinux
SELinux
Security-Enhanced Linux Linux çekirdeği güvenlik modülüdür. Amerika Birleşik Devletleri Savunma Bakanlığı tarzı zorunlu erişim denetimleri de dahil olmak üzere erişim denetimi güvenlik ilkelerini desteklemek için bir mekanizma sunmaktadır.
SElinux durumu control etmek için.
#getenforce
Oturum süresince pasif hala getirmek için.
#setenforce 0
Aktif hale getirmek için
#setenforce 1
Sürekli kapalı hale getirmek için.
# vi /etc/selinux/selinux.conf
SELINUX=disabled
SElinux kapatıltan sonra system yeniden başlatılmalıdır.
Samba uygulamasında dizinlere izin vermek için.
#chcon -t samba_share_t /home/share1
Booleanlar, SELinux'daki işlevler için açık / kapalı ayarlarıdır. SELinux yeteneklerini açıp kapatabilen yüzlerce ayar vardır ve çoğu önceden tanımlanmıştır. getebool -a komutunu çalıştırarak sisteminizde hangi boole'ların ayarlanmış olduğunu öğrenebilirsiniz.
#getebool -a
#getebool -a | grep samba
TERMİNAL KULLANIMI
Ctrl + C
CTRL + Z
CTRL A
E
U
SİSTEM HAKKINDA BİLGİ ALMAK
echo
echo merhaba
echo $SHELL
echo $PATH
clear
hostname
date tarih
cal takvim
hostnamectl
localectl
systemctl
journalctl
Ifconfig
SYSTEM INFO
hostname
ifconfig
localectl
hostnamectl
env
lsmem
lscpu
free
date
cal
whoami
w
last
uname -i
uname -a
uptime
cat /etc/issue
cat /etc/os-release
type
whatis
Whereis
DOYSA İÇERİĞİNİ FİLTRELEME
cut -d : -f1 /etc/passwd -- 1 numaralı ayracı gösterir
cut -d : -f1-4 /etc/passwd --- 1 ve 4 numaralı ayracı gösterir
cut -d ‘ ‘ -f1 /etc/passwd -- boşluğu keser ve 1 numaralı ayracı gösterir
DOSYA İÇERİĞİ GÖRÜNTÜLEME
Cat dosya1 dosya2 dosya3
Cat –n
Cat -b
Cat –E satır sonlarının dolar sembolü ile işaretlenmesi
Tersten okuma
Tac
less
less /root --> Aşağı doğru arama
less ?root --> Yukarı doğru arama
More terminal penceresine sığmayan metinleri okumanızı sağlar.
Varsayılan olarak 10 satır okunur head dosyanın başını okurken tail ise dosyanın sonunu okumaktadır.
head
head -5
tail
tail –5
Tail –f dosyaları canlı okumamızı sağlar log dosyaları gibi
Dosya ve dizin isimleri arasında boşluklar var ise ‘’ çeltik kullanılmalıdır
nl number lines - satırlara sayı ver
nl dosya1
DOSYALARI SIRALAMA
Sort
Sort –c kontrol etme komutu yani, sırayı bozanları kontrol etmesini söyler
Sort –n numaratik sıralama
sort –r terse sıralama
Sort –k2 isme göre sıralama
Sort –k 2 –r dosya isme göre ters sorgulama
Sort –k 2 –r dosya –o mehmet ile çıktıyı kayıt edebiliriz
Sort –R ile listeyi random yanı karışık bir hale getirebiliriz.
Sort komutu ls veya find güçlü bir komut haline gelmektedir.
Dosyalar HAKKINDA BİLGİ ALMA
ls –l
File türünü öğrenmek için
Stat
WC KOMUTU
wc
wc -l satır sayısı
wc -w kelime sayısı
wc -c bytes sayısı
ls –l / |wc –l komutu ile dizindeki dosya sayısını da öğrenebiliriz.
Set ???
Tr transform
Tr komutu, tek tek karakterleri standart girdiden değiştirir. Kullanım şekli:
Bir grupta (KUME1) değiştirilmesini istediğiniz karakterleri ve ikinci grup (KUME2) olarak değiştirilmesini istediğiniz karakterleri belirtirsiniz. KUME1’deki her karakter, KUME2’deki eşdeğer konumdaki bir karakterle değiştirilir.
tr abc 123 <dosya bu örnekte dosyanın içindeki abc harflari sırasi ile a = 1 b = 2 ve c = 3 e dönüştürülecektir.
Uniq
isminden de anlaşılacağı gibi unique (benzersiz) demektir. Yenilenen satırları kaldırır. Benzer olan satırları eler ve sadece 1 defa gösterir. Sort ile beraber kullanmanız gerekir, böylece önce dosya içeriğini sıralamış olursunuz.
Sort dosya | uniq
cut -d ' ' -f2 sirasiz.txt |sort|uniq
Gördüğünüz gibi sirasiz.txt dosyası içindeki önce cut ile boşluktan sonraki isimleri aldık, sonrasında isim bilgilerini sort ile küçükten büyüğe doğru sıraladık. uniq komutu ile tekrarlanan satırları sildik, böylece dısyamızdaki tekrarlı isimler kalktı ve sadece 7 satır isim ge
Sed
Sed komutu, değiştirilen dosyayı standart çıktıya göndererek doğrudan dosyaların içeriğini değiştirir.
sed ‘s/eskikelime/yenikelime/g’ dosya1
Chage?
Getent
getenforce 0 (selilinux)
Link
Hard Link
ln dosya /home/yenidosya_adi
Soft Link
ln -s /etc/apt/sourcelist /home/mehmet/repo gibi
KOMUT OPERATÖRLERİ
Wildcard Komutu
Komutları yazarken kriter oluşturmamızı sağlayan özel krakterlerdir. Filtreleme işlevi görür
* Bir veya birden fazla karakterlerin yerine geçebilecek bir joker karakterdir.
? Yalnızcabir karakterin yerine geçebilecek bir joker karakteridir.
[] yerine geçeceği karakterleri küme şeklinde belirten wildcard operatörüdür.
Buradaki yıldız içinde dosya/dizin geçen tüm anlamına gelmektedir ve işlerimizi çok kolaylaştırır.
rm dosya*
mv dosya*
cp dosya*
find / -name *.log
find / -name swap*
yum install wireshark*
apt-get remove vim*
*.html dizin içindeki sadece html uzantılı dosyaları gösterecektir.
?
Buradaki ? karakteri herhangi bir karakter anlamına gelir. Her ? bir herhangi karakter anlamına gelir.
Dizin içerisinde 5 adet dosya olduğunu varsayalım. dosya1 dosya2 dosya3 dosya34 dosya35
mv dosya? /root ile taşıma işlemini başlattığımızda dosya1 dosya2 ve dosya3 dosyalarını taşıyacaktır.
yada bir arama gerçekleştireceğiz ama bir tane karakteri hatırlamadığımızı varsayalım bu kısımda da kullanabiliriz.
find / -name sw?p
[] Köşeli parantez
Ls 1[02]*.txt
Yukarıda ki örnekte 10 ve 12 ile başlayan ve uzantısı txt olan her şeyi sıralamış olduk.
Sadece listelemek için değil kopyalama taşıma işlemlerinde de kullanabiliriz.
Köşeli parantezin için yazılan şeyleri veya başına ! koyulduğunda yazılı olanların dışındakilere işlem yapmaktadır.
mv [abc]
mv [!abc]
Bunlar dışında bir aralıkta verilebilir
Mv [91]* /mehmet 9 ve 1 ile başlayan tüm herşeyi mehmet dizinine at demiş olduk.
mv [1-4] veya mv [a-g]
Tüm küçük harfleri listeleme veya kopyalama
ls [[:lower:]]*
Tüm büyük harfleri listeleme veya kopyalama
ls [[:upper:]]*
Diğer bir örnektede rakamlar olabilir
rakamlar ile başlayanları kopyala diyebiliriz.
cp *[[:digit:]]
rakamlar ile bitenleri kopyala diyebiliriz.
cp *[[:digit:]]
Aynı şekilde harfle başlayanları veya bitenleri alpha ile yapabiliriz.
cp *[[:alpha:]] /dizin
Yada rakamla başlayıp harfle biten dosyaları listeleyelim.
ls [[:digit:]]*[[:alpha:]]
Çoklu Komut Çalıştırma
| karakteri
cat /etc/passwd | grep -i root
; karakteri
date; hostname
&& karakteri
date && hostname -- > ilk komut çalışmaz ise diğer komutları çalıştırmaz
|| karakteri
date || hostname --> İlk komut çalışmasa bile diğer komutlar çalışmaya devam eder.
Çıktı Yönlendirme Komutları
> büyüktür sembolu, bir programın veya komutun çıktısını bir dosyaya yazmamızı sağlamaktadır.
> Çıktıyı yönlendirir ve dosyanın üstüne yazar.
Çalıştırılacak komut > komut çıktınısı yazdırılmasını istediğimiz dosyayı yazıyoruz. Dosya var ise üstüne yazılacaktır yani içerisi tamamen silinecektir, yok ise yeniden oluşturulacaktır.
Cat renkler.txt ülkeler.txt > yenidosya
Date > tarih.txt
Cat *.html
Çıktıları dosyaların sonuna yazdırmak için kullanılan yönlendirme operatörü yani >> Çıktıyı yönlendirir ve en alt satıra yazar.
Pipe
Terminal çıktılarını farklı bir programa girdi olarak vermek için kullanılan pipe "|" operatörünün kullanımı anlatılıyor.
Bir dosyanın içeriğini okuyup satır sayısını yazdıralım .
Mevcut tüm paketleri listelemek için aşağıdaki komut kullanılmaktadır.
Apt list | nl
Yum list | nl
Ilk komuttan sonra girdi olarak gönderiyoruz.
Şimdi ise depodan bulunan wireshark ile başlayan paketleri çıkarıp toplam ne kadar uygulama ve bağımlılık olduğuna bakalım.
yum list | grep -v wireshark* | nl
Sunucu üzerinde kurulu bir paketi pipe ile bulalım
Dpkg –l | grep –i nano
Rpm –qa | grep –i nano
Kullanıcılar ve Gruplar
Root kullanıcısı tüm yetkiye ve erişimlere sahiptir. Sistem seviyesinde yetkiler için kullanılır. Ev dizin /root dizinidir. İhtiyaç olmadıkça kullanılmaması önerlilir.
Diğer kullanıcılar ise, kendilerine veya gruplarına tanımlı yetkileri kullanılar. Ev dizinler varsayılan olarak /home/ dizini içerisine oluşmaktadır.
UID = USER ID
Kullanıcılar /Etc/passwd altında tanımlanır ve bu listeyi tüm kullanıcılar okuayabilir. Dosyayı açtığınız zaman aslında bir tablodur ve sütünler halinde ayrıldığını görebilirsiniz. Burada gözüken tüm kullanıcılar oturum açtığı anlamına gelmez. Belirli uygulamaları çalıştırmak için oluşturmuşlardır ve sistemde oturum açamazlar.
Parolalar ise /etc/passwd
GID= Grup ID
Anlamlarını ifade eder.
Bir kullanıcı birden fazla gruba dahil edilebilir.
Grup üyeleri /etc/group altında tanımlanır.
Kullanıcı eklemek, silmek vb işlemler için yönetici haklarına sahip olmanız geremektedir.
Kullanıcı ekleme,
Useradd
Useradd komutundan farklı olarak adduser bize ne yaptığını anlatan bir arayüz gelmektedir.
Kullanıcı ekledikten sonra shadow dosyasına baktığımız zaman kullanıcının parolası olmadığı için ! Işareti olduğunu yani hashinin gelmediğini görüyoruz bunun için parola belirlememiz gerekmektedir.
Passwd komutu parolalar ekrana yazılmaz ama arka planda işlenir.
Kullanıcı silme
userdel
Deluser ise yine bize silme işleminden sonra bize bir özet ekranı verecektir.
Grupları listeleme ve ekleme ve silme
Kullanıcı gruplarını yönetme
Grup işlemleri
Ilk olarak grupları okuyalım
Cat /etc/group
Grup ekleme
Addgroup finans
Addgroup aile
Grup silme
Delgroup aile
!! Eğer kullanıcılar birden fazla gruba üye ise bunu etc/groub altından veya id komutu ile görülebilir.
Kullanıcıları gruplara dahil edelim.
Usermod –a –G grupadi kullanıcıadi
A = add ekleme
G= grup
SAHİPLER VE İZİNLER
SAHİPLER
Sahip olan kullanıcı ve gruplara izinler tanımlanmıştır. O yüzde sahiplik çok önemlidir.
Root kullanıcısının dosya sisteminde en geniş yetkiye sahiptir. Yani dosya üzerinden tüm erişime sahiptir. Sistem üzerindeki dosyaları okuyabilir, çalıştırabilir silebilir anlamına gelmektedir. Yönetici iznine sahip bir kullanıcı dosya izinlerini değiştirebilir. Yani sahip olmadığı bir dosya üzerinde değişiklikler yapabilir.
chown
Sistemde var olan kullanıcıları bilmeni gerekmektedir.
Chow kullanıcı_adi dosya/dizin adı dosyanın kullanıcı sahibini değiştirmiş olduk.
Chgrp grup_adi dosya/dizin adı dosyanın grup sahibini değiştirmiş olduk.
Kullanıcı ve grup sahibini toplu olarak değiştirmek istersek
Chown ahmet:finans dosya/dizin adı ile kullanıcı sahibini ahmet, grup sahibini finasn olarak güncelliyorum. Bu işlemler alt dosya ve dizinler üzerindeki izinleri etkilemeyecektir.
Chown –R yani recursive, bir dizinin sahipliğini değiştirirken içinde bulunan dosya ve dizinlerinde sahipliğini değiştirmeye yarar.
Chgrp –R
Chown –R
Kullanıcılar gruplar ve diğerleri Her bir rakam hepsi sayılır
chmod
r4
w2
x1
777 tüm yetkileri verir
000 tüm izinleri alır
chmod 741 dosya/dizin
Yukarıdaki örnek Kullanıcıya(w,r,x) Grup(r)okuma Diğerlerinede (x)çalıştırma
Alt dizin ve dosyalara izinleri aktarmak için
Chmod –R
Servisler
Linuxte arka planda, gerektiğinde kullanılmak için sürekli çalışan uygulamalara servis deriz. İstenildiği zaman durdurulabilr çalıştırılabilir yönetebilirz.
Sevisleri ekleyebiliriz silebiliriz. Neleri servis olarak olarak örnek verebiliriz. Kullanıcı yönetimi olan loging servisi, kayıt tutma log servisi , web (apache, nginx) ssh, servisi gibi örnekler verebiliriz.
Linuxte sistemdeki servisleri yönetmek için kullandığımız komut systemctl dir.
systemctl list-units --type service komutu ile sistem üzerindeki servis ünitlerini görebiliriz.
Listelediğimiz zaman running çalışan servisler, extended çalışıp duran servileri görebiliyoruz.
Şimdi sadece çalışan servisleri görelim
systemctl list-units --type service –state running
Bir servis hakkında bilgi almak için status komutunu kullanmamız gerekmektedir. Servisin ne zaman çalıştığını, aktif olup olmadığı, sistem açılışında çalışıp çalışmayacağı gibi bir çok bilgi alabiliriz.
Servisin pid, si task ı o anda ne kadar ram kullandığını ve loglarını inceleyebiliriz.
Servislerin nerede çalıştığını görebilir ve bunları okuyabiliriz.
Cat /lib/systemd/Network bu bir servis dosyasıdır.

/etc/init.d/services_adi restart
systemctl restart servis
systemctl enable servis
systemctl disable servis
systemctl status servis
NETWORK
İP
Ifconfig komutu yeni sürümlerde yüklü gelmemektedir, bu durumda ip komutunu kullanmamız gerekmektedir.
Ip addr show
Kısaltması olarak ip a komutunu kullanabiliriz.
Komutu çalıştırdıktan sonra iki adet ethernet gözükmektedir
Lo back yani bilgisayarın kendisini temsil eder ve 127.0.0.1 olarak gözükür.
Diğeri ise internete çıktığımız ethernettir. Bu kısımda ip adresi cihazın mac adresi görmekteyiz. Ethernetin durumunu görebiliriz.
Inet 6 ise ipv6 göstermektedir. Bildiğiniz gibi dünyada ipv4 tükendiği için zamanla ipv6 ya geçişler başlamıştır.
Komut satırına sadece hostname –I yazarak sadece ip adresini görebiliriz.
Ping atarak paketlerin gönderildilip ne kadar saniyede döndüğünü görebiliriz. Her saniyede bir ping gönderir ve dönüş ms lerini bize gösterir. Programdan çıktığı zaman kısa bi açıklama bize verecektir.
Ping 8.8.8.8
Ping –c 3 8.8.8.8
Güvenlik duvarı açık olduğundan eğer gerekli izinler verilmez ise ping atılamaz.
Ağ bağlantısı üzerinde oluşan trafiğin izlemek için tcpdump aracını kullanabiliriz.
Bunu daha görsel olarak izlemek için, iftop programını kullanabiliriz. Bu program yüklü olarak gelmez ve bağlandığımız sunucuları gelen/giden paket istatistiklerini gösterir.
Tabiki ağ trafiğini izlemek için kullanılabilecek en güzel programlardan bir tanesi wiresharktır ve çok popülerdir.
DNS
Domain name system Isimleri, IP adreslerine çevirmek için kullanılan bir sistemdir. En basit örnek ile telefon rehberi . DNS servisler genelde ISP tarafından sağlanır. KUllanıcılar isterse kendi dns hizmetlerini kullanabilir.
DNS sorguları yapmak
Nslookup
Dig
Reverse dns ise ip adresine gidip dns sorgulayabiliriz. Çoğu zaman çalışmamaktadır.
Eğer bir mail sunucusunu öğrenmek istersek
Nslookup –query=mx mynet.com
Şimdi ise isim sunucularını öğrenelim.
Nslookup –query=ns mynet.com
Telnet
Snmp
DİSK İŞLEMLERİ
CLI --> fdisk, cdisk, gdisk
GUI --> gparted
Package Converter
uygulama converter
alien
hdd
gdisk komutu
mbr gpt ye çevirmek için kullanılır.
w enter
PAKET VE GÜNCELLEME İŞLEMLERİ
Paketler, genelde bir yazılımın derlenmiş hali ya da kaynak kodudur. Bir paket içerisinde kaynak kodlar, bağımlılıklar, kurulum dosyaları, dökümantasyonlar oluşmaktadır. Bu kısımda paket yöneticileri devreye girmektedir. Bilgisayarımıza bir paketi kolaylıkla kurmamızı kaldırmamızı ve yapılandırmamızı sağlayan sistemlerdir.
Apt paket yöneticisi, bilgisayarımıza bir paketi kolaylıkla kurmamızı, kaldırmamızı ve yapılandırmamızı sağlayan paket yönetim sistemidir.
Apt update paketlerin listesini günceller, yani bir paketin güncel halini kurmadan listeyi güncellememiz gerekmektedir.
Apt install paketleri yükler.
Apt remove yüklü olan bir paketi kaldırır
Apt upgrade, bilgisayarda kurulu olan paketlere bakarak en güncel hale yükseltir.
Örnek olarak bir vlc kurulumu başlattığınız zaman, vlc nin ihtiyaç duyduğu bağımlılıklar, hepsini yükleyecektir. Zaten en alt kısımıda kaç adet paket kurulacağını söylemektedir. İlk olarak paketi indirip, sonrasında kurup kullanıma hazır hale getirecektir.
Eğer uygulamanın ismini bilmiyorsanız, apt search komutunun yanına aramak istediğiniz paket hakkında bir şeyler yazarak bulmayı kolaylaştırabilirsiniz.
Apt search browser
Paket yükseltme işlemi yapmadan önce, hangi paketlerin yükseltileceğiniz bilmemiz önem arz eder Bunun için öncelikle apt list –upgradable
Buradan güncellemek istediğimiz programı bulalım .
Bulduktan sonra hangi pakete yükseltileceğini görüyoruz.
Yükseltme işlemi yapmak için, paketi tekrar yüklüyormuş gibi yapıyoruz. Bu işlemden sonra zaten paketin yükseltileceği bilgisini veriyor.
Eğer sistem üzerindeki tüm paketleri güncellemek isterseniz,
Apt upgrade komutunu çalıştırmamız yeterlidir.
Paket kaldırma
Bir paketi yüklerken hatırlarsanız, ihtiyaç duyduğu bir çok bağımlıklıkta kurulmaktadır. Paketleri kaldırırken bağımlılıklar kalmaktadır. Ilk olarak paketi kaldıralım.
Apt remove paket_Adi
Bağımlılıkların gereksiz yer kaplamaması için kaldırmak için aşağıdaki komutu çalıştıralım. Bu komutu çalıştırdıktan sonra, ne kadar paket kalkacağı ne kadar yer açılacağı gibi bir çok bilgi verecektir.
Autoremove
Ne olduğunuzu bilmediğiniz, paketleri kaldırmanız sisteme zarar verebilir. Paketleri kaldırdığınız zaman konfigürasyon dosyaları oluşur ve kaldırma işlemi yaptığınız da bu dosyalar kalır. Bu işlem sonrası hem paket hem konfigürasyon dosyaları kaldırılır.
Apt purge wireshark
Purge komutu bağımlılık paketlerini kaldırmaz.
Paket dosyasından paket kurulumu
Debian tabanlı sistemler, dpkg programı kullanılır. Debian paket yönetrimi sisteminin temelini oluşturur. Burada bilmemiz gereken önemli bir nokta vardır. Eğer dpkg ile bir program yüklüyorsanız paketin çalışması için gereken tüm bağımlıkları yüklemeniz gerekir . Apt paket yöneticisinin de amacu zaten budur.
Wget ile bir dosya indiriyorum örnek liefpad
Indirme işlemi bittikten sonra
Dpkg –i paket.deb yazarak kurulumu başlatıyorum.
Dpkg –l ile sistemde yüklü olan tüm paketleri görebiliriz.
Paketi kaldırmak için ise
Dpkg –r leafpad yazarak veya depo da var ise apt remove yarak paketi kaldırabiliriz
SHELL PROGRAMLAMA
Sh unix kabuğu bash ise
Echo türkçede yankı gelen ekrana yazdırmamızı sağlayan bir komuttur. Shell programala demek bunları script haline getirmemizdir.
Shell programlarının ilk satırında hangi shell türü olduğu yazılması gerekmektedir.
Vi sss.sh
#!/bin/sh gibi
Echo “merhaba dünya”
Touch meraba.txt
Echo “ biz dostuz” >> merhaba.txt
Çoğu linux sürümünde sh kabuğu bash e yönlendirilmiştir.
Dash ise bashe göre daha hızlıdır ve az kkaynak tüketir. Hatta yeni sürümlerde sh dash e yönlendirilmiştir.
Bunu anlamak için aşağıdaki komutu çalıştırabiliriz.
file -h /bin/sh
Veya ll /bin/sh
Gördüğünüz gibi sembolik olarak bağlanmıştır.
Bir programı çalıştırmadan da deneyebilirsiniz,
Kabuğu sonrasında dosyayı yazabiliriz.
Bash deneme.sh
Yorumlar bırakara diez işareti koyabiliriz, yani satırların ne işe yaradığını yazmamız faydalı olacaktır.
If döngüsü kullanımı
????
Ekrana tarihi ve takvimi yazdıralım
Yazdığımız shell programları, komutları çalıştırabildiği gibi farklı shell programlarını da çalıştırabilir. Bu derste bir shell programı içinden farklı bir shell programının çağırılması anlatılıyor.
İstersek bittikten sonra başka bir programı çalıştırabiliriz.
En altına
Bash /etc/bash.sh
