SlideShare a Scribd company logo
Linux 101
MetaRoc , Türkiye’nin çok farklı cografi konumlarında bulunan ve
Caner KÖROGLU önderliginde bir araya gelebilen altı kisilik bir ekiptir.
Bir araya gelme amaçlarımızdan biri, kendimizi Siber Güvenlik
alanında gelistirebilmek ve mümkün oldugunca ögrendiklerimizi,
basarabildiklerimizi sizlerle paylasmak.
“Bilgi paylastıkça çogalır.” düsüncesiyle hareket eden bir ekip,
MetaRoc
Günümüzde riskler, sadece dısarıda degil. Evimizde, odamızda
masamızın üstünde,cebimizde.. Ekip olarak öncelikli hedefimiz ülkemiz
ve insanlarımız için ‘Siber Güvenlik Farkındalıgı’ olusturabilmek.
Zamanla, kendimize ve size faydalı olabilecek projelerde tekrar
bulusmak dilegiyle.
Metaroc
selam!Murat Arslan
İYTE Bilgisayar Mühendisligi
Linux | Siber Güvenlik | Network | Pyhton
@marslan0535 | muratarslan0535@gmail.com
rootmarslan.blogspot.com.tr
Neler ögrenecegiz?
*GNU/LINUX
*TEMEL TERMINAL KOMUTLARI
*PAKET YÖNETIMI
*TEXT EDITÖRLERI
*KULLANICI ISLEMLERI
*IZINLER
*PROCESS
*DOSYA SISTEMLERI
*ÇEVRE DEGISKENLERI
*SERVISLER
...
1.
GNU/LINUX
GNU, LİNUX NEDİR?
GNU
(GNU IS NOT UNIX)
Linux terminali nedir???
**kernel(çekirdek) ** shell(kabuk)
Komutlar vererek islemleri yaptıgımız yerdir.
Shell programı sayesinde komutlarımız yorumlanır
Islemler gerçeklesir.
echo(ekrana yazdırmak için kullanılır)
echo $SHELL dersek kabuk programımızı ögrenebilir.
Linus torwalds
linux çekirdeGini
geliStirmiStir.
richard stallman
gnu yu
GELISTIRMISTIR.
2.
TEMEL TERMINAL
KOMUTLARI
Lınux cekirdekli
isletim
sistemlerinde
klasörlere “dizin”
denir!!!
Full Path
Full path kavramı komuta en
üst dizinden baslayarak
gidecegi yolu gösterir.
Baslangıcı en üst dizin yani /
(kök dizin)kabul eder.
/etc/passwd
/home/murat/Müzikler/pop
Full path / relatıve path
Relatıve Path
Baslangıcı suan bulundugu
dizin kabul eder. Eger
/home/murat
dizinindeysek
/Müzikler/pop yazarak
soldaki islemle aynı yere
gelmis oluruz.
PWD(PRINT WORKING DIRECTORY)
Kullanıcıya hangi dizinde bulundugunu full path ile
gösterir.
Linux
dosya
sistemı
genel
yapısı
Dizin degıstırmek ıcın kullanılır.
$ cd . (bulunulan dizin)
$ cd .. (bir üst dizin)
$ cd ~ (ev dizini)
$ cd - (bir önceki dizin)
Cd (change dırectory)
Place your screenshot here
Ls
(list directories)
Istenilen dizindeki
dizin,dosya vb alayını
listeler :)
ls -a (all) gizli dosyalarıda
gösterir.
ls -l ayrıntılı listeler
ls -h listelenenlerin
boyutlarını daha anlasılır
yapar.
Isminin Basında “ . ”
olan dosya ve
dizinler gizlidir
touch
Eger dosya önceden var
ise dosyanın islem tarihini
günceller.
Eger dosya önceden yok
ise belirtilen dizine dosya
olusturur.
*Dizin belirtilmezse
bulunulan dizine olusturur.
FILE
Istenilen dosya,dizin vb.
hakkında özet bilgiler
verir.
File / stat
STAT
Istenilen dosya,dizin vb.
hakkında file komutuna
göre daha genis bilgiler
verir. Uid,güncellenme vs.
Çalısılan terminali nasıl temizleriz????
$ clearCTRL+L
cat
Dosyanın icerigini
gösterir.
Yönelendirme
isaretleri ile dosya
da olusturulabilir.
Yine yönlendirme
isaretleri ile
dosyanın sonuna
ekleme yapılabilir.
Less more historyTerminale sıgmayan
büyük veya uzun
metinlerde,metini
Terminal boyutu
kadar ekrana
yazdırır. Okurnurluk
kazandırır. Büyük
dosyaları okumada
kullanıslıdır.
**-g -G parametleri
Less komutunda
içerik içinde ileri-geri
hareketler
yapılabilir. Ama
more komutunda
sadece ileri yönlü
hareket yapılır. Less
tüm içerigi bellege
almadıgı için daha
kullanıslıdır.
Terminale girilen
önceki komutları
gösterirkullanıcın
home dizinindeki
.bash_history
dosyasında history
limiti bulunur.
Terminalde kopyalama yapıstırma
ctrl+shift+c
ctrl+shift+v
cp(copy)
Dosya kopyalamamızı saglar.
$ cp /-/kaynak/-/hedef
Dizinleri kopyalamak için -r parametresi kullanılır.
Eger kopyalanacak yerde dizin yoksa önce dizin
olustururlur sonra kopyalama yapılır.
-i parametresi ise bizi dosyanın üzerine yazma
durumlarında uyarır.
mv(move)
Tasıma islemlerinde kullanılır.
$ mv kaynak/-/hedef
Cp deki -i parametresi burada da kullanılır.
Isim degistirmek için kullanılır.
$ mv eski isim/-/yeni isim
Yardım komutları
MAN(MANUEL)
man komut seklinde çalısır.
Komutun kılavuzudur.
Komut hakkında kapsamlı
bilgileri verir.
Q ile çıkıs yapılır.
HELP
Komut --help seklinde
çalısır.
Komut hakkında özet ve
önemli bilgileri verir.
dmidecode uname uptimeSistem ile ilgili
bilgileri verir.
Dmicode --type bios
Bios hakkındaki
bilgileri verir. --type
Parametresi ile
kullanılır.
Kullanılan kernel
hakkında bilgileri
verir.
-i parametresi
versiyonu
-a parametresi
bütün bilgileri verir.
Acaba sistem ne
zamandır açık???
mkdir(make directory)
Dizin olusturmak için kullanılır.
-p parametresi ile dizinin içine dizin olusturulur.
$ mkdir dizin{1..7} ne yapar???
$ mkdir dizin{4..8}/{1..3} ne yapar???
rm(remove)
rm
rm dosya dosyayı
siler
Bu ne ki???
$ rm -rf /*
rm -r
Dizinleri silmek için
kullanılır. Recursive
yolla silinir.
rmdir directory de
kullanılabilir.
rm -f
Silinecekleri zor
kullanarak siler.
Silmeye zorlar
Find komutu dizin,dosya vb aramamızı saglar.
find Aranacak yerler/-/özellikleri
-type parametresi ile dizin,dosya,karakter dosyası vb
-name dosyanın ismi
$ find /home -type d -name ödevlerim
find
Deneyelim ögrenelim :)
whatis
$ whatis cat
Çıktı sence ne??
exit
Yoksa
bulunduğun
kullanıcıdan mı
çıktı ???
ctrl+d
exit komutunun
kısayolu mu ;))
Ctrl+c (cut)
Bir process
islerken bunu
yapmalısın!!
Tab kullan!!!!
Tab tusu terminaldeki en iyi yardımcımızdır.
Bütün kelimeyi komutu yazmadan tab ile
tamamlayabiliriz veya komut satırında
hızlıca saga sola gitme islemlerini yapabilir
Daha neler nelerr….
alias
Alias kullanarak bir komutu bir kısayola atayabiliriz.
Mesela ~ isareti bir aliastır ~ = /home/murat demektir.
$ alias kas=’ls -la’ dersek kas yazdıgımızda ls -la komutunun
çıktısını alırız.
unalias kas yazarak bu kısayolu kaldırabiliriz.
Kanallar
Standart ın
(stdın)
(0)
Standart
out
(stdout)
(1)
Standarterror(stderr)
(2)
process
Yönlendirme isaretleri
DENEYELIM!!!
$ echo merhaba
$ echo merhaba > dosya.txt
$ echo dünya >> dosya.txt
$ Cat < dosya.txt > dosya2.txt
$ ls /olmayan/dizin > error.txt
$ ls /olmayan/dizin 2> error.txt
yönlendirmeler
<
İNPUT(GIRDI) ALIR.
Sagındakı dosya
solundakıne gırdı
olur.
> & >>
output(çıktı)alır.
Soldakinin çıktısı
sagdakine girdi olur.
$ Hello > dosya.txt
>> ise yine
yönlendirmedir fakat
dosyanın altına
ekleme yapar.
2> & 2<
Stderr kanalının
numarası 2 oldugu
için 2 kullandık. Eger
stderr da kanal
belirtmezsek hata
mesajı verir. Çünkü
hata oldugunu
bilmiyor,stdın veya
stdout sanar.
Pipe ( | ) and tee
pipe(|) bir çıktıyı diger
komutun girdisi yapar.
$ ls -la /etc | less
Bu komut ls -la çıktısını less
komutuna verir ve less
komutu sayfa sayfa çıktı
almamızı sağlar.
$ ls | tee dosya.txt
Dersek ls komutunun
çıktısını dosya.txt içine
yazar. Buradaki tee ise
dosya içine yazılanları
ekrana yazmasını saglar
Bunlar ne
demeeek???
1)dosy*
2)*zik
3)bil??say?r
Head
tail
$ head /var/log/syslog
Head komutu ile uzun
dosyaların sadece
istedigimiz kadarını
dosyanın basından
görebiliriz.
-n 20 dersek basından ilk
20 satırı görebiliriz.
$ tail /var/log/syslog
Head komutu ile uzun
dosyaların sadece
istedigimiz kadarını
dosyanın sonundan
görebiliriz.
Expand / unexpand
Uygulamada cat ile aynı gibi görünen bu komut dosyadaki
sekmeleri bosluk karakterine cevirir. Bu nedenle
expand dosya.txt dedikten sonra cat dosya.txt çalısmaz.
Öncesinde unexpand dosya.txt demeliyiz.
*** wc dosya adı ne ise yarar???
Join cut sort
Birden çok dosyayı
bir alanda
göstermek için
kullanılır.
$ join file1.txt file2.txt
metin dosyalarının
belirli bölümlerini
görüntüleme, bu
bölümleri ekleme
ve çıkarma gibi bir
çok islemi
yapmamıza
olanak saglayan
bir komuttur.
Belirli
parametlerle
dosyada
sıralama
yapmamızı
saglar.
grep
Grep komutu dosyanın içinde arama yapar,find komutu ise
dosyalar arasında aram yapıyordu.
$ grep --color kurt dosya.txt
Bu komut dosya.txt içerisindeki kurt karakterlerini boyar ve
yazdırır.
$ env | grep -i User
Env çıktısını grep girdi alır. Ve user karakterleri var mı bakar.
$ cut -f 1,3 --d “ “ dosyadadı
-f sütunları -d de neye göre ayırılacagın belirtir.
meta
Bilginin Bilgisi :)))
Aslında datanın bilgisi bir nevi etiketi:)
3.
Isler karısıyor
:((
Text Editörleri
regex
(Regular
expressıons)
regex genel kurallar
ıcın tıkla
Vim terminalde en çok kullanılan text editörlerindendir.
Büyük çaplı dosyaları okumak için gelistirilmistir. Ögrenmesi
zahmetli fakat oldukça kullanıslıdır.
Vi de iki mod vardır. Komut ve yazma modu
Komut modu : Dosyanın içerigine etki etmez,dosyayı
kaydetme,mod degistirme,açma ,kapama vb. Islemleri yapar.
Yazı modu: Dosyanın içerigini degistirdigimiz moddur.
vim(vı)
vim(vi)
Esc tusu ile komut moduna “i” veya “a”tusu ile yazı moduna
Kaydedip çıkmak için esc ile komut moduna geçilir. Sonra
:wq komutu ile kaydedip çıkabilir.
:q! Dersek kaydetmeden çıkarız.
“h” ”j” ”k” ”l” tuslarını yönlendirmede kullanabiliriz.
X seçilen karakteri keser aynı zamanda silerde ;)
dd bulunulan bütün satırı siler.
y secilen yeri kopyalar
yy bulunulan bütün satırı kopyalar.
vım(vı)
p bulunulan yere kopyalı metni yapıstırır.
u son islemi geri alır.
v yapılan islemi kaydeder.
ZZ == :wq aynı islevi görürler.
Vim editörü hakkında daha kapsamlı komutları ögrenmek
için tıklanıyınız ;)
***Bu komutları sadece komut modunda kullanabiliriz.***
Dıger text edıtorlerı
Nano:
Kullanımı oldukça
kolay olan bu editör
ile birçok dosyanızı
düzenleyip
degistirebilirsiniz.
Daha fazla bilgi için
tıklayınız.
Emacs:
Bir diger çok
kullanılan text
editörü olup daha
fazla bilgi edinmek
için tıklayınız.
Linux cekirdekli
isletim
sistemlerinde
dosya uzantısı
yoktur!!!
4. Kullanıcı islemleri
Linux isletim sistemlerinde birden fazla kullanıcı olabilir.
Fakat bu kullanıcıların en yetkilisi ROOT kulllanıcıdır.
Kullanıcılar birleserek grupları olusturur.
Dosya sahibi kullanıcının grubun ve digerlerinin ayrı ayrı izin
hakları vardır.
Peki bu kullanıcıların ve grupların bilgisi parolaları nerede
tutulur???
User, group bilgisi
etc/passwd
Kullanıcılara ait genel bilgilerin tutuldugu dosyadır. Peki bu
bilgiler nelerdir???
isim:sifre:uid:gid:yorum:evdizini:kabuk
/etc/shadow
Kullanıcılara ait parolaların belirli sifreleme algoritmalarıyla
saklandıgı dosyadır. Peki nasıl sifreleniyor ki ???
/etc/group
Gruplara ait bilgilerin tutuldugu dosyadır.
/etc/passwd
/etc/shadow
/etc/group
Dosyalarında sadece
root kullanıcı
degısıklık yapabilir!!!
Peki yeni kullanıcı nasıl eklenir???
adduser
$ adduser murat
Komutu ile yeni kullanıcı
olusturulur. Parola ve
genel bilgiler olusum
sırasında sorulacaktır.
deluser
$ deluser murat komutu
ile de olusturulan
kullanıcıyı silebiliriz. Aynı
zamanda kullanıcının
grubunu da silecektir.
HMMM???
Adduser ve useradd komutlarını
kullanmadan bir kullanıcı ekleyelim.
Sonra grubunu olusturalım ve tabiki
kullanıcı parolası da lazım. Son olarak
bu kullanıcın ev dizini de olmalı tabi ;)
5.
IZINLER
dOSYA IZINLERI
Dosya izinler read(r),write(w),execute(x) olmak üzere 3 çesittir.
Her dosya için user,group,other izinleri ayrı ayrıdır.
r: readable(4) w: writable(2) x: executable(1) -: empty
Dosya izinleri degistırme
(r)4+(w)2+(x)1 = 7
$ chmod 761 dosya.txt
$ chmod 440 müzikler
$ chmod 142 /home/murat
$ chmod 700 /var/bin
$ chmod 000 /etc/passwd
$ chmod u+xw dosya.txt
$ chmod a+w dosya5.txt
$ chmod g-xw ödevler
$ chmod o+xr dolu.txt
Peki dosya ilk
olusturuldugunda ilk
izinlerini kim veriyor ki ???
Dosya sahipligini degistirme
chown
$ sudo chown murat dosya.txt
Dosya.txt dosyasının yeni sahini
murat oldu ;)
$ chown useradı:grupadı dosya.txt
Chgrp
$ sudo chgrp grupadı dosya.txt
Dosya.txt
Bu ne peki???
$ passwd komutu ile kullanıcı parolasını degistirebiliyorduk.
Peki kullanıcı parolaları nerede tutuluyordu? Bu dosyada
degisiklik için root olmak gerekmiyor muydu? Eee biz bu
dosyanın içerigini nasıl degistirdik ki???
suıd(set user ıd) / sgıd(set group ıd)
suıd/sgıd
Bir programı çalıstıran kullanıcılarınprogram çalıstıgı sürece
program dosyasının sahibinin yetkilerine sahip olmalarını
saglar. Yani sistemde bir programı kullanması gereken fakat o
programı kullanmasına normal sartlarda yetkisi olmayan bir
kullanıcının geçici olarak programı kullanabilmesi de diyebiliriz.
$ sudo chmod g+s myfile (SGID)
$ sudo chmod 2555 myfile
$ sudo chmod u+s myfile (SUID)
$ sudo chmod 4574 myfile
Sticky bit
Aynı klasör üzerinde erisme,yazma hakkı
olan kullanıcıların,klasörü ve alt dosyalarını
silmelerini engellemek için kullanılır.
Yani ortak bir klasörü herkes kullanabilecek
(yazma ,çalıstırma) ama klasörü sadece
klasörün sahibi ve root silebilecek.
$ sudo chmod +t mydir
$ sudo chmod 1755 mydir
t= sticky bit(1)
s= suıd(4)
g= sgıd(2)
6.
processes(süreçler)
Top & ps aux
Process
Process sonlandırma
$ kill -9 “PID “
$ kill “PID”
Process durumları:
R: çalısıyor, çalısabilir
S: uykuda uyanabilir
T: durdurulmus
D: kesintisiz uykuda
Z: zombi ;))
acaba???
Aynı anda bırden fazla program açıkken
bütün açık programlar cpu da aynı anda mı
çalısıyor???(niceness)
7.
Paket yönetimi
Paket nedir?
Derlenmis ve paket yönetim sistemiyle kuruluma hazır
dosyalara “paket” denir.
PEKI LINUX DAGITIMLARINDA PROGRAM NASIL KURULUR???
1)KAYNAK KOD
2)PAKET YÖNETIM SISTEMI
3)REPOSİTORY
redhat/centOs .rpm rpm yum
Debian/ubuntu .deb dpkg apt
/etc/apt/sources.list ====> dosyayı inceleyelim bu içerik ne
olabilir ki???
SS KOY SOURCES LİST
Dagıtım || paket || man. Paket yön. || Oto. paket yön.
Program kurma
Linux'ta program kurmak için :
Programı kaynak koddan derleyerek
kullandıgımız dagıtıma uygun olan program kurulum
Paketlerinden paket yönetim sistemi yardımıyla manuel
kurulum
Repository denen dagıtımın kullandıgı depolardan otomatik
kurulum yapmaktır.
$ dpkg -i <paket adı>
$ apt-get install <paket adı>
Neler oluyor neler...
Apt komutu çalısırken ilk olarak sources.list
dosyasına gider bakar. Eger istenen program
o repolarda var ise indirir fakat yok ise(büyük
ihtimalözgür yazılım degildir; )) bizim
repolara eklememiz gerekir.
$ apt-cache search <program_adı>
$ apt-get remove
$ apt-get purge
$ apt-get update
$ apt-get upgrade
$ apt-get dist-upgrade
$ apt-get autoremove
$ apt-get -f install(3.parti program;))
Kaynak kodlarından program kurmak
Konsoldan programı açtıgımız klasöre gelip
$ ./configüre diyoruz.
$ make yazıp programı yüklemeye hazır hale getiriyoruz.
Eger derlemeyi yapacak paket kurulu degilse öncelikle
$ sudo aptitude install build-essential yaparak bu paketi
kurmalıyız.
$ make install ile programı yüklüyoruz. $ make uninstall ile
programı kaldırıyoruz.
$ gzip + (-1..-9) <dosya adı>
$ bzip + (-1..-9) <dosya adı>
$ gzip -k + <dosya adı>
$ gzip -d + <dosya adı>
$ bzip -d + <dosya adı>
Sıkıstırma islemleri
-1 parametresi en hızlı
-9 parametresi en küçük boyuta
-d (decompress)
-k (keep)
Arsıvleme islemleri
Arsivleme islemleri için tar
kullanılır.
$ tar -cvzf kiraz.tar.gz kiraz
$ tar -xzfC kiraz.tar.gz /home/
$ tar -cvf arsivim.tar dosyalar
-c (create) arsivler
-C (change directory)
-f (file) islem dosyası
-t (list) icerigi listeler
-x (exract) arsivi açar
-v(verbose) islemleri gösterir
-z(gzip) gzip ile de sıkıstıırır
-j(bzip) bzip ile sıkıstırır.
8.
Dosya sistemleri
/ (root) : isletim sistemimizin baslangıç noktasıdır. Diger
bütün dizinler rootun altında bulunur. Bilgisayar baslarken
ilk bakılan dizindir. Eger burası olmazsa sistem baslamaz.
“/” ve “/root” birbirinden farklıdır.
/root ise root kullanıcısının ev dizinidir. Yani /root dizini
/ dizininin altındaki dizinlerden sadece biridir.
Dosya sistem hiyerarsisi
Sistemde bulunması gerekli komut dosyalarını içerir.
Sistem boot edildiginde ilk olarak /bin dizini çalısır hale
getirilir.
/bin altındaki komutlar ne olursa olsun çalısır. Çalısmazsa
zaten komutlar da çalısmaz.
/bin
Isletim sistemine dair bütün yapılandırma dosyalarını içerir.
Sistem ayarlarını barındırır.
Passwd ,shadow,group gibi dosyaları içinde barındırır.
/etc
/home
Home klasörü kullanıcının kalesidir ; )
Her kullanıcı için kendine özeldir.
Rootun home dizini ise /root dizinidir.
/dev
Linux’ta herseyde oldugu gibi donanım aygıtları da bir dosyadır.
USB girisleri,paralel portlar,cd-romlar gibi bütün aygıtlar /dev
dizinin altında tutlan dosyalardan ibarettir.
/dev/psaux : PS/2 girisi; fare ve klavyeler içindir.
/dev/lp0 : Paralel port (LPT 1); yazıcı, tarayıcı vs...
/dev/dsp : Birincil ses aygıtı
/dev/usb : USB aygıtları
Log dosyaları, e-mail ve printer kuyrukları gibi degisken
sistem bilgilerini barındırır.
Sisteminize dair tutulan log'ları buradan görebiliriz.
Güvenlik durumunu buradan kontrol edebiliriz.
/var
/boot : baslangıç için gerekli dosyalar bulunur.
/lib: kütüphane dosyaları ve kernel modülleri bulunur.
/media: çıkarilabilir aygıtların(USB,CD-Rom...) sisteme
eklendigi dizindir.
/mnt:bir dosya sistemini geçici olarak eklemek için kullanılır.
/opt:ekstra programların kurulması içindir.
/srv:sistemin sundugu hizmetlerle alakalıdır.
/tmp:gecici dosyaların tutuldugu dizindir.
/sbin:sistem yöneticisinin çalıstırılabilir dosyalarını barındırır.
Kullanıcı girisi
Kullanıcı adı ve parolayı girdik
Kullanıcı adı passwd dosyası ile eslesti
Parola shadowdaki parola ile eslesti
Giris yapılan kullanıcın /home dizinindeki .bashrc dosyası
okundu
.bashrc dosyasına göre ayarlamalar yapıldı(env,alias vb)
Kullanıcı girisi yapıldı
Ext4:linux dosya sisteminin standart tercihidir.
NTFS/FAT : windows dosya sistemidir. Fakat bu dosyalara
linux dagıtımlarından da ulasılabilirsiniz.
HFS+ : macintosh dosya sistemidir.
XFS : yüksek performanslı dosya sistemidir. Büyük
dosyarların medya serverlarında kullanılır.
$df -T komutu ile makinemizin dosya sistemini kontrol
edebiliriz.
Dosya sistemi tipleri
$ sudo parted komutuyla parted tooluna gireriz.
Print komutuyla bölüm tablosunu yazdırır.
Mkpart komutu ile disk bölümlendirme baslar.
?????????
DISK BÖLÜMLEME
Ss koy
mount/unmount
Bir disk üzerindeki bir bölümü bir klasöre baglayarak içerigini
görmeye,dizini kullanma vb. islere yarar.
$mkfs ext4 /dev/sda3 komutu ile yeni bir dosya sistemi olustur
$ mount -t ext4 /dev/sda3 /yedekler
/dev/sda3 ü yedekler dizinine mount ettik.
-t parametresi dosya tipini belirtir.
$unmount /yedekler komutuyla mountu iptal edebiliriz.
$ blkid komutuyla sistemimizdeki block deviceları görebilir.
/dev/sda1: UUID="130b882f-7d79-436d-a096-1e594c92bb76" TYPE="ext4"
/dev/sda5: UUID="22c3d34b-467e-467c-b44d-f03803c2c526" TYPE="swap"
Peki bunlar nedir???
$ sudo mount
UUID=130b882f-7d79-436d-a096-1e594c92bb76 /mydrive
mount/unmount
$shutdown
$ halt $ poweroff
Bunların farkı ne????
UUID :device kimligidir.
Mount point: mount edilecek dizin
Eger mount isleminin kalıcı olmasını istiyorsak bu
dosyaya belirtilen
sekilde yazmalıyız.
/etc/fstab
Swap nedir?
Number Start End Size Type File system Flags
5 6861MB 7380MB 519MB logical linux-swap(v1)
inode ögrenelim
BU KOMUTLAR NE ISE YARAR Kı???
$ sudo fsck /dev/sda
$ df -h
$du -h
$df -T
$ rm -rf /*
$ ls -li
$ df -i
hardlink
Iki farklı dosyanın bir inodu olursa hardlink yapılmıs olur.
Dosyaların birinde yapılan bir degisiklik digerini de etkiler.
$ ln somefile somelink
A.txt B.txt
İNODE
HARDDİSK VERİ
YAZMA
Windows kısayollarına benzer.
$ ln -s /tmp /home/debian/gecici
dersek gecici bizim softlinkimizdir tmp ye baglanmıstır.
Sembolik baglılarda dosya tipi yazan yerde “l” yazar.
Ve dosyalar aynı inode numarası kullanmazlar.
sOFT LINKs/symlinks
Bilgisayar nasıl
açılır?
Bilgisayar nasıl boot olur? sistem nasıl
hazırlanır? llk hangi bölümle uyandırılır?
Power tusuna bastıktan sonrası ...
BIOS(BASIC INPUT OUTPUT SYSTEM)
MBR(MASTER BOOT RECORD)
GRUB(GNU GRUB (short for GNU GRand Unified Bootloader))
BOOTLOADER(MBR&GRUB)
KERNEL
INIT
DRIVER
DEVICE
/etc/inittab dosyasını düzenleyerek konfigüre edebiliriz.
init 0 halt
init1 single user mode (sadece root kullanıcısı var)
init2 multiuser (internet kullanıılamaz)
init3 full(network) multiuser (internet kullanılabilir)
init4 kullanılmıyor
init5 arayüz(x11)+multiuser (normalde kullanılan)
init6 reboot
INIT
9.
servisler
servisler
Servisler processleri yönetmek için kullanılır.
$ systemctl status <servisadı>
komutuyla servisin bilgisini verir.
$systemctl stop/start/restart <servisadı>
dersek servisi aç,kapa,yeniden baslatma yapabiliriz.
Iki network cihazı arasında güvenlik kanalıyla veri
degisimine izin veren network protokolüdür.
Sifreleme ve dogrulama algoritmaları kulllanır.
Lokal bilgisayardan uzak bilgisayara dosya kopyalanabilir.
Otomatik olarak uzaktan server kontrolü ve yönetimi
saglanabilir.
Ssh nedir?
Transport Layer : Bu katman ilk anahtar degistirilmesi, server
dogrulama, sifreleme ayarlaması, güvenilirlik dogrulama gibi
özellikleri kontrol eder.
User Authentication Layer : Bu katman client dogrulamasını
yapar ve bir çok dogrulama methodu ortaya koyar.
Connection Layer : Bu katman kanalların konseptlerini ve
kanal isteklerini SSH servislerini kullanarak tanımlar. Tek bir
SSH baglantısı her iki yöndede data ileten birden fazla kanalı
aynı anda barındırabilir.
Iç mimarisi
Ssh kullanımı
$ ssh -l kullanıcı_adı@<ıp adresi>
Karsı bilgisayardan kendimize kopyalıyacaksak:
$ scp kullanıcı_adı@host_ismi:kopyalacak_dosyanın_adi
kopyalanacagı_yer
Kendi bilgisayarımızdan karsı bilgisayara
kopyalayacaksak:
$ scp kopyalacak_dosyanın_adi
kullanıcı_adı@host_ismi:kopyalanacagı_yer
$ sudo shutdown -h now
$ sudo shutdown -r now <r(restart)> ;))
$ sudo reboot
$ sudo shutdown -h +2
Crontab zamanlanmıs görev vermemiz için kullanılır.
$crontab -e komutu görevi düzenlememizi saglar.
● dakika(0-59)
● saat(0-23)
● gün(1-31)
● ay(1-12)
● Haftanın günü(0-7)(7 pazar günüdür.)
30 08 10 06 * ./home/ramesh/change_wallpaper
Bu görevde her 6. Ayın 10. Gününde saat 8:30 da
masaüstünü degistirmesini söylüyor.
crontab
Biraz örnek
00 11,16 * * * ./home/murat/bin/incremental-backup
Her gün her ay saat 11 ve 16:00 da uygulatır.
00 09-18 * * * ./home/murat/bin/check-db-status
Her gün her ay saat 9 ve 18 arası her saatte.
00 09-18 * * 1-5 ./home/root/bin/check-db-status
30 08 10 06 * ./home/nazlı/full-backup
ctrl +alt+f1
Noldu?
Burası neresi?
9.
CEVRE degıskenleri
(envıronmental
variables)
Islemlerin okuyabildigi bir anahtar degeridir.
Ortam degiskenleri bulundukları ortama göre degisebilirler.
Burada yapılan bir degisiklik diger ortamlarda çalısmaz.
Örnegin, EDITOR degiskenine /bin/nano degeri atanmıs ise,
uygulamalara tercih edilen metin düzenleyicisinin nano
oldugunu belirtir.
$DEGISKEN seklinde gösterilir.
$ printenv komutu ile çevre degiskenlerini yazdırabiliriz.
nedir?
$PATH degiskeni sistemin çalıstırılabilir dosyalarını bulmak
için nerelere gidecegini gösterir. Bunun için çok önemlidir ve
dogru olması gerekir.
$path
Ortam degiskeni ayarlama
Ortam degiskenleri kullanıcıya özgüdür.
1)Oturum:Sadece geçerli,açık olan terminalde kullanılır.
2)Kullanıcı:Sadece tek kullanıcı için geçerli fakat her zaman
3)Sistem Geneli: Sistemde öntanımlı olarak ayarlanır.
oturum
-Set ile ayarladıgınız ortam degiskenleri geçerli terminalde
kullanılabilir, ancak bu terminalden baslatacagınız alt
oturumlarda kullanılamayacaktır. Yani set yalnızca verildigi
terminali etkiler.
– Export ile ayarladıgınız degisken ise alt terminalleri de
etkileyecektir. Yani export, oturum bazında da olsa set’den
daha globaldir.
**Peki bu komutlar çalıstırılabilir bir program
mı ?????**
Kullanıcıya özel ortam degiskenlerini tutabileceginiz en iyi
yer .bashrc dosyasıdır.
Bir kullanıcı oturum açtıgı zaman bu kullanıcının .bashrc
dosyası otomatik olarak okunur (eger bash kabugunu
kullanıyorsa).
export DEGISKENADI="fr"
kullanıcı
SISTEM GENELI
Bir ortam degiskenini tüm sistemde ayarlamak için
sistemde her oturum açıldıgında okunan bir dosyada
saklanması gerekmektedir. Mesela /etc/profile ;))
Bu kod nedir???
#!/bin/bash
while read satir
do
ls $satir
done < $1
Tesekkür
Ederim
muratarslan0535@gmail.com
Murat Arslan
rootmarslan.blogspot.com.tr
Murat ARSLAN
Murat ARSLAN
Muratarslan0535
@marslan0535

More Related Content

What's hot

Web uygulama açıklıklarından faydalanarak sistem ele geçirme
Web uygulama açıklıklarından faydalanarak sistem ele geçirmeWeb uygulama açıklıklarından faydalanarak sistem ele geçirme
Web uygulama açıklıklarından faydalanarak sistem ele geçirme
BTRisk Bilgi Güvenliği ve BT Yönetişim Hizmetleri
 
Beyaz Şapkalı Hacker CEH Eğitimi - Post Exploit Aşaması
Beyaz Şapkalı Hacker CEH Eğitimi - Post Exploit AşamasıBeyaz Şapkalı Hacker CEH Eğitimi - Post Exploit Aşaması
Beyaz Şapkalı Hacker CEH Eğitimi - Post Exploit Aşaması
PRISMA CSI
 
GÜVENLİ YAZILIM GELİŞTİRME EĞİTİMİ İÇERİĞİ
GÜVENLİ YAZILIM GELİŞTİRME EĞİTİMİ İÇERİĞİGÜVENLİ YAZILIM GELİŞTİRME EĞİTİMİ İÇERİĞİ
GÜVENLİ YAZILIM GELİŞTİRME EĞİTİMİ İÇERİĞİ
BGA Cyber Security
 
BGA CTF Ethical Hacking Yarışması Çözümleri
BGA CTF Ethical Hacking Yarışması ÇözümleriBGA CTF Ethical Hacking Yarışması Çözümleri
BGA CTF Ethical Hacking Yarışması Çözümleri
BGA Cyber Security
 
Derinlemesine Paket İnceleme (Deep Packet Inspection)
Derinlemesine Paket İnceleme (Deep Packet Inspection)Derinlemesine Paket İnceleme (Deep Packet Inspection)
Derinlemesine Paket İnceleme (Deep Packet Inspection)BGA Cyber Security
 
Siber Güvenlik ve Etik Hacking Sunu - 4
Siber Güvenlik ve Etik Hacking Sunu - 4Siber Güvenlik ve Etik Hacking Sunu - 4
Siber Güvenlik ve Etik Hacking Sunu - 4
Murat KARA
 
Linux Kullanım Rehberi
Linux Kullanım RehberiLinux Kullanım Rehberi
Linux Kullanım Rehberi
Mert Can ALICI
 
Yazılım Güvenliği Temelleri
Yazılım Güvenliği TemelleriYazılım Güvenliği Temelleri
Yazılım Güvenliği TemelleriBGA Cyber Security
 
Siber Güvenlik ve Etik Hacking Sunu - 9
Siber Güvenlik ve Etik Hacking Sunu - 9Siber Güvenlik ve Etik Hacking Sunu - 9
Siber Güvenlik ve Etik Hacking Sunu - 9
Murat KARA
 
Nmap101 Eğitim Sunumu - Nmap Kullanım Kılavuzu
Nmap101 Eğitim Sunumu - Nmap Kullanım KılavuzuNmap101 Eğitim Sunumu - Nmap Kullanım Kılavuzu
Nmap101 Eğitim Sunumu - Nmap Kullanım Kılavuzu
Mehmet Caner Köroğlu
 
Hacking'in Mavi Tarafı -2
Hacking'in Mavi Tarafı -2Hacking'in Mavi Tarafı -2
Hacking'in Mavi Tarafı -2
Turkhackteam Blue Team
 
Siber Güvenlik ve Etik Hacking Sunu - 10
Siber Güvenlik ve Etik Hacking Sunu - 10Siber Güvenlik ve Etik Hacking Sunu - 10
Siber Güvenlik ve Etik Hacking Sunu - 10
Murat KARA
 
Siber Güvenlik ve Etik Hacking Sunu - 1
Siber Güvenlik ve Etik Hacking Sunu - 1Siber Güvenlik ve Etik Hacking Sunu - 1
Siber Güvenlik ve Etik Hacking Sunu - 1
Murat KARA
 
Hacking'in Mavi Tarafı -1
Hacking'in Mavi Tarafı  -1Hacking'in Mavi Tarafı  -1
Hacking'in Mavi Tarafı -1
Turkhackteam Blue Team
 
Web Uygulama Güvenliği Ve Güvenli Kod Geliştirme Eğitim Notlarım
Web Uygulama Güvenliği Ve Güvenli Kod Geliştirme Eğitim NotlarımWeb Uygulama Güvenliği Ve Güvenli Kod Geliştirme Eğitim Notlarım
Web Uygulama Güvenliği Ve Güvenli Kod Geliştirme Eğitim Notlarım
Nur Yesilyurt
 
Siber Guvenlik ve Etik Hhacking -2-
Siber Guvenlik ve Etik Hhacking -2-Siber Guvenlik ve Etik Hhacking -2-
Siber Guvenlik ve Etik Hhacking -2-
Murat KARA
 
Tcpdump ile Trafik Analizi(Sniffing)
Tcpdump ile Trafik Analizi(Sniffing)Tcpdump ile Trafik Analizi(Sniffing)
Tcpdump ile Trafik Analizi(Sniffing)
BGA Cyber Security
 
Siber Güvenlik ve Etik Hacking Sunu - 12
Siber Güvenlik ve Etik Hacking Sunu - 12Siber Güvenlik ve Etik Hacking Sunu - 12
Siber Güvenlik ve Etik Hacking Sunu - 12
Murat KARA
 
Siber Guvenlik ve Etik Hacking -1-
Siber Guvenlik ve Etik Hacking -1-Siber Guvenlik ve Etik Hacking -1-
Siber Guvenlik ve Etik Hacking -1-
Murat KARA
 
Kesif ve Zafiyet Tarama
Kesif ve Zafiyet TaramaKesif ve Zafiyet Tarama
Kesif ve Zafiyet Tarama
Ferhat Ozgur Catak
 

What's hot (20)

Web uygulama açıklıklarından faydalanarak sistem ele geçirme
Web uygulama açıklıklarından faydalanarak sistem ele geçirmeWeb uygulama açıklıklarından faydalanarak sistem ele geçirme
Web uygulama açıklıklarından faydalanarak sistem ele geçirme
 
Beyaz Şapkalı Hacker CEH Eğitimi - Post Exploit Aşaması
Beyaz Şapkalı Hacker CEH Eğitimi - Post Exploit AşamasıBeyaz Şapkalı Hacker CEH Eğitimi - Post Exploit Aşaması
Beyaz Şapkalı Hacker CEH Eğitimi - Post Exploit Aşaması
 
GÜVENLİ YAZILIM GELİŞTİRME EĞİTİMİ İÇERİĞİ
GÜVENLİ YAZILIM GELİŞTİRME EĞİTİMİ İÇERİĞİGÜVENLİ YAZILIM GELİŞTİRME EĞİTİMİ İÇERİĞİ
GÜVENLİ YAZILIM GELİŞTİRME EĞİTİMİ İÇERİĞİ
 
BGA CTF Ethical Hacking Yarışması Çözümleri
BGA CTF Ethical Hacking Yarışması ÇözümleriBGA CTF Ethical Hacking Yarışması Çözümleri
BGA CTF Ethical Hacking Yarışması Çözümleri
 
Derinlemesine Paket İnceleme (Deep Packet Inspection)
Derinlemesine Paket İnceleme (Deep Packet Inspection)Derinlemesine Paket İnceleme (Deep Packet Inspection)
Derinlemesine Paket İnceleme (Deep Packet Inspection)
 
Siber Güvenlik ve Etik Hacking Sunu - 4
Siber Güvenlik ve Etik Hacking Sunu - 4Siber Güvenlik ve Etik Hacking Sunu - 4
Siber Güvenlik ve Etik Hacking Sunu - 4
 
Linux Kullanım Rehberi
Linux Kullanım RehberiLinux Kullanım Rehberi
Linux Kullanım Rehberi
 
Yazılım Güvenliği Temelleri
Yazılım Güvenliği TemelleriYazılım Güvenliği Temelleri
Yazılım Güvenliği Temelleri
 
Siber Güvenlik ve Etik Hacking Sunu - 9
Siber Güvenlik ve Etik Hacking Sunu - 9Siber Güvenlik ve Etik Hacking Sunu - 9
Siber Güvenlik ve Etik Hacking Sunu - 9
 
Nmap101 Eğitim Sunumu - Nmap Kullanım Kılavuzu
Nmap101 Eğitim Sunumu - Nmap Kullanım KılavuzuNmap101 Eğitim Sunumu - Nmap Kullanım Kılavuzu
Nmap101 Eğitim Sunumu - Nmap Kullanım Kılavuzu
 
Hacking'in Mavi Tarafı -2
Hacking'in Mavi Tarafı -2Hacking'in Mavi Tarafı -2
Hacking'in Mavi Tarafı -2
 
Siber Güvenlik ve Etik Hacking Sunu - 10
Siber Güvenlik ve Etik Hacking Sunu - 10Siber Güvenlik ve Etik Hacking Sunu - 10
Siber Güvenlik ve Etik Hacking Sunu - 10
 
Siber Güvenlik ve Etik Hacking Sunu - 1
Siber Güvenlik ve Etik Hacking Sunu - 1Siber Güvenlik ve Etik Hacking Sunu - 1
Siber Güvenlik ve Etik Hacking Sunu - 1
 
Hacking'in Mavi Tarafı -1
Hacking'in Mavi Tarafı  -1Hacking'in Mavi Tarafı  -1
Hacking'in Mavi Tarafı -1
 
Web Uygulama Güvenliği Ve Güvenli Kod Geliştirme Eğitim Notlarım
Web Uygulama Güvenliği Ve Güvenli Kod Geliştirme Eğitim NotlarımWeb Uygulama Güvenliği Ve Güvenli Kod Geliştirme Eğitim Notlarım
Web Uygulama Güvenliği Ve Güvenli Kod Geliştirme Eğitim Notlarım
 
Siber Guvenlik ve Etik Hhacking -2-
Siber Guvenlik ve Etik Hhacking -2-Siber Guvenlik ve Etik Hhacking -2-
Siber Guvenlik ve Etik Hhacking -2-
 
Tcpdump ile Trafik Analizi(Sniffing)
Tcpdump ile Trafik Analizi(Sniffing)Tcpdump ile Trafik Analizi(Sniffing)
Tcpdump ile Trafik Analizi(Sniffing)
 
Siber Güvenlik ve Etik Hacking Sunu - 12
Siber Güvenlik ve Etik Hacking Sunu - 12Siber Güvenlik ve Etik Hacking Sunu - 12
Siber Güvenlik ve Etik Hacking Sunu - 12
 
Siber Guvenlik ve Etik Hacking -1-
Siber Guvenlik ve Etik Hacking -1-Siber Guvenlik ve Etik Hacking -1-
Siber Guvenlik ve Etik Hacking -1-
 
Kesif ve Zafiyet Tarama
Kesif ve Zafiyet TaramaKesif ve Zafiyet Tarama
Kesif ve Zafiyet Tarama
 

Viewers also liked

Network101 murat arslan
Network101 murat arslanNetwork101 murat arslan
Network101 murat arslan
MURAT ARSLAN
 
Her yönüyle linux sistem ve network güvenliği
Her yönüyle linux sistem ve network güvenliğiHer yönüyle linux sistem ve network güvenliği
Her yönüyle linux sistem ve network güvenliği
Ahmet Han
 
Temel ağ bilgisi
Temel ağ bilgisiTemel ağ bilgisi
Temel ağ bilgisi
Begüm Erol
 
Sızma Testi ve Güvenlik Denetlemeleri - Temel Linux Bilgisi
Sızma Testi ve Güvenlik Denetlemeleri - Temel Linux BilgisiSızma Testi ve Güvenlik Denetlemeleri - Temel Linux Bilgisi
Sızma Testi ve Güvenlik Denetlemeleri - Temel Linux Bilgisi
Ferhat Ozgur Catak
 
Kali Linux Hakkında Herşey
Kali Linux Hakkında HerşeyKali Linux Hakkında Herşey
Siber Güvenlik Eğitiminde Uluslararası CTF Yarışmaları
Siber Güvenlik Eğitiminde Uluslararası CTF YarışmalarıSiber Güvenlik Eğitiminde Uluslararası CTF Yarışmaları
Siber Güvenlik Eğitiminde Uluslararası CTF Yarışmaları
Dr. Emin İslam Tatlı
 
Donanım ve yazılım bilişim dersi
Donanım ve yazılım bilişim dersiDonanım ve yazılım bilişim dersi
Donanım ve yazılım bilişim dersi
Mali Yılmaz
 
OWASP kaynak kod analizi metodolojisi
OWASP kaynak kod analizi metodolojisiOWASP kaynak kod analizi metodolojisi
OWASP kaynak kod analizi metodolojisi
Alper Başaran
 
Li̇nux-101
Li̇nux-101Li̇nux-101
Li̇nux-101
Begüm Erol
 
Güvenli Yazılım Geliştirmede Dosya Yükleme
Güvenli Yazılım Geliştirmede Dosya YüklemeGüvenli Yazılım Geliştirmede Dosya Yükleme
Güvenli Yazılım Geliştirmede Dosya Yükleme
BGA Cyber Security
 
Bilgi Guvenligi Temel Kavramlar
Bilgi Guvenligi Temel Kavramlar Bilgi Guvenligi Temel Kavramlar
Bilgi Guvenligi Temel Kavramlar Fatih Ozavci
 
Linux'a Giris ve VirtualBox a Ubuntu Kurulumu
Linux'a Giris ve VirtualBox a Ubuntu KurulumuLinux'a Giris ve VirtualBox a Ubuntu Kurulumu
Linux'a Giris ve VirtualBox a Ubuntu Kurulumu
Ahmet Gürel
 
Siber Savunma Ürünlerinde Profesyonel Arka Kapılar
Siber Savunma Ürünlerinde Profesyonel Arka KapılarSiber Savunma Ürünlerinde Profesyonel Arka Kapılar
Siber Savunma Ürünlerinde Profesyonel Arka Kapılar
BGA Cyber Security
 
BTRisk Yazılım Güvenliği Yönetimi Eğitimi
BTRisk Yazılım Güvenliği Yönetimi EğitimiBTRisk Yazılım Güvenliği Yönetimi Eğitimi
BTRisk Yazılım Güvenliği Yönetimi Eğitimi
BTRisk Bilgi Güvenliği ve BT Yönetişim Hizmetleri
 
Android Uygulamaların Tersine Mühendislik Yöntemi ile İncelenmesi
Android Uygulamaların Tersine Mühendislik Yöntemi ile İncelenmesiAndroid Uygulamaların Tersine Mühendislik Yöntemi ile İncelenmesi
Android Uygulamaların Tersine Mühendislik Yöntemi ile İncelenmesi
BTRisk Bilgi Güvenliği ve BT Yönetişim Hizmetleri
 
BTRisk Android Uygulamalara Malware Yerleştirme Sunumu
BTRisk Android Uygulamalara Malware Yerleştirme SunumuBTRisk Android Uygulamalara Malware Yerleştirme Sunumu
BTRisk Android Uygulamalara Malware Yerleştirme Sunumu
BTRisk Bilgi Güvenliği ve BT Yönetişim Hizmetleri
 

Viewers also liked (20)

Network101 murat arslan
Network101 murat arslanNetwork101 murat arslan
Network101 murat arslan
 
Her yönüyle linux sistem ve network güvenliği
Her yönüyle linux sistem ve network güvenliğiHer yönüyle linux sistem ve network güvenliği
Her yönüyle linux sistem ve network güvenliği
 
Temel ağ bilgisi
Temel ağ bilgisiTemel ağ bilgisi
Temel ağ bilgisi
 
Sızma Testi ve Güvenlik Denetlemeleri - Temel Linux Bilgisi
Sızma Testi ve Güvenlik Denetlemeleri - Temel Linux BilgisiSızma Testi ve Güvenlik Denetlemeleri - Temel Linux Bilgisi
Sızma Testi ve Güvenlik Denetlemeleri - Temel Linux Bilgisi
 
Kali Linux Hakkında Herşey
Kali Linux Hakkında HerşeyKali Linux Hakkında Herşey
Kali Linux Hakkında Herşey
 
Network Dersleri3
Network Dersleri3Network Dersleri3
Network Dersleri3
 
Temel bilgisayar
Temel bilgisayarTemel bilgisayar
Temel bilgisayar
 
Siber Güvenlik Eğitiminde Uluslararası CTF Yarışmaları
Siber Güvenlik Eğitiminde Uluslararası CTF YarışmalarıSiber Güvenlik Eğitiminde Uluslararası CTF Yarışmaları
Siber Güvenlik Eğitiminde Uluslararası CTF Yarışmaları
 
Donanım ve yazılım bilişim dersi
Donanım ve yazılım bilişim dersiDonanım ve yazılım bilişim dersi
Donanım ve yazılım bilişim dersi
 
OWASP kaynak kod analizi metodolojisi
OWASP kaynak kod analizi metodolojisiOWASP kaynak kod analizi metodolojisi
OWASP kaynak kod analizi metodolojisi
 
Li̇nux-101
Li̇nux-101Li̇nux-101
Li̇nux-101
 
Güvenli Yazılım Geliştirmede Dosya Yükleme
Güvenli Yazılım Geliştirmede Dosya YüklemeGüvenli Yazılım Geliştirmede Dosya Yükleme
Güvenli Yazılım Geliştirmede Dosya Yükleme
 
Network Dersleri2
Network Dersleri2Network Dersleri2
Network Dersleri2
 
Network Dersleri1
Network Dersleri1Network Dersleri1
Network Dersleri1
 
Bilgi Guvenligi Temel Kavramlar
Bilgi Guvenligi Temel Kavramlar Bilgi Guvenligi Temel Kavramlar
Bilgi Guvenligi Temel Kavramlar
 
Linux'a Giris ve VirtualBox a Ubuntu Kurulumu
Linux'a Giris ve VirtualBox a Ubuntu KurulumuLinux'a Giris ve VirtualBox a Ubuntu Kurulumu
Linux'a Giris ve VirtualBox a Ubuntu Kurulumu
 
Siber Savunma Ürünlerinde Profesyonel Arka Kapılar
Siber Savunma Ürünlerinde Profesyonel Arka KapılarSiber Savunma Ürünlerinde Profesyonel Arka Kapılar
Siber Savunma Ürünlerinde Profesyonel Arka Kapılar
 
BTRisk Yazılım Güvenliği Yönetimi Eğitimi
BTRisk Yazılım Güvenliği Yönetimi EğitimiBTRisk Yazılım Güvenliği Yönetimi Eğitimi
BTRisk Yazılım Güvenliği Yönetimi Eğitimi
 
Android Uygulamaların Tersine Mühendislik Yöntemi ile İncelenmesi
Android Uygulamaların Tersine Mühendislik Yöntemi ile İncelenmesiAndroid Uygulamaların Tersine Mühendislik Yöntemi ile İncelenmesi
Android Uygulamaların Tersine Mühendislik Yöntemi ile İncelenmesi
 
BTRisk Android Uygulamalara Malware Yerleştirme Sunumu
BTRisk Android Uygulamalara Malware Yerleştirme SunumuBTRisk Android Uygulamalara Malware Yerleştirme Sunumu
BTRisk Android Uygulamalara Malware Yerleştirme Sunumu
 

Similar to Linux101

Pwnlydays - Linux 101
Pwnlydays - Linux 101Pwnlydays - Linux 101
Pwnlydays - Linux 101
canyoupwn.me
 
Unix Denetim Dokümanı
Unix Denetim DokümanıUnix Denetim Dokümanı
Linux101 Temel Komutlar-Dizin Yapısı
Linux101 Temel Komutlar-Dizin YapısıLinux101 Temel Komutlar-Dizin Yapısı
Linux101 Temel Komutlar-Dizin Yapısı
SDU CYBERLAB
 
Linux Yaz Kampı 2017 GNU/Linux Eğitim Dökümanı
Linux Yaz Kampı 2017 GNU/Linux Eğitim DökümanıLinux Yaz Kampı 2017 GNU/Linux Eğitim Dökümanı
Linux Yaz Kampı 2017 GNU/Linux Eğitim Dökümanı
İbrahim UÇAR
 
Python Programlama Dili Eğitimi
Python Programlama Dili EğitimiPython Programlama Dili Eğitimi
Python Programlama Dili Eğitimi
Enes Ateş
 
Oracle Golden Gate
Oracle Golden GateOracle Golden Gate
Oracle Golden GateAnar Godjaev
 
Roket Yazılımı Eğitimi Hafta 1
Roket Yazılımı Eğitimi Hafta 1Roket Yazılımı Eğitimi Hafta 1
Roket Yazılımı Eğitimi Hafta 1
Uğurkan Ateş
 
Introduction to BASH and Terminal
Introduction to BASH and TerminalIntroduction to BASH and Terminal
Introduction to BASH and Terminal
furkan mataraci
 
C dosya-isleme
C dosya-islemeC dosya-isleme
C dosya-isleme
Türkü Dinle
 
İleri Seviye Programlama 2
İleri Seviye Programlama 2İleri Seviye Programlama 2
İleri Seviye Programlama 2Caner Bovatekin
 
Puppet ile Linux Sistem Yönetimi Otomasyonu
Puppet ile Linux Sistem Yönetimi OtomasyonuPuppet ile Linux Sistem Yönetimi Otomasyonu
Puppet ile Linux Sistem Yönetimi Otomasyonu
BilgiO A.S / Linux Akademi
 
Temel linux
Temel linuxTemel linux
Temel linux
emreberber07
 
Git Sunumu
Git SunumuGit Sunumu
Git Sunumu
Zafer Gürel
 
BTT Modul 11 Isletim Sistemlerinin Temelleri
BTT Modul 11 Isletim Sistemlerinin TemelleriBTT Modul 11 Isletim Sistemlerinin Temelleri
BTT Modul 11 Isletim Sistemlerinin Temelleri
deniz armutlu
 
SNİFFİNG VE SERVİS DIŞI BIRAKMA SALDIRILARI
SNİFFİNG VE SERVİS DIŞI BIRAKMA SALDIRILARISNİFFİNG VE SERVİS DIŞI BIRAKMA SALDIRILARI
SNİFFİNG VE SERVİS DIŞI BIRAKMA SALDIRILARI
MehmetEminDOAN1
 

Similar to Linux101 (20)

Linux komutlari
Linux komutlariLinux komutlari
Linux komutlari
 
Pwnlydays - Linux 101
Pwnlydays - Linux 101Pwnlydays - Linux 101
Pwnlydays - Linux 101
 
Unix Denetim Dokümanı
Unix Denetim DokümanıUnix Denetim Dokümanı
Unix Denetim Dokümanı
 
Linux101 Temel Komutlar-Dizin Yapısı
Linux101 Temel Komutlar-Dizin YapısıLinux101 Temel Komutlar-Dizin Yapısı
Linux101 Temel Komutlar-Dizin Yapısı
 
Linux Yaz Kampı 2017 GNU/Linux Eğitim Dökümanı
Linux Yaz Kampı 2017 GNU/Linux Eğitim DökümanıLinux Yaz Kampı 2017 GNU/Linux Eğitim Dökümanı
Linux Yaz Kampı 2017 GNU/Linux Eğitim Dökümanı
 
Python Programlama Dili Eğitimi
Python Programlama Dili EğitimiPython Programlama Dili Eğitimi
Python Programlama Dili Eğitimi
 
Oracle Golden Gate
Oracle Golden GateOracle Golden Gate
Oracle Golden Gate
 
Roket Yazılımı Eğitimi Hafta 1
Roket Yazılımı Eğitimi Hafta 1Roket Yazılımı Eğitimi Hafta 1
Roket Yazılımı Eğitimi Hafta 1
 
Introduction to BASH and Terminal
Introduction to BASH and TerminalIntroduction to BASH and Terminal
Introduction to BASH and Terminal
 
2010 07
2010 072010 07
2010 07
 
C dosya-isleme
C dosya-islemeC dosya-isleme
C dosya-isleme
 
İleri Seviye Programlama 2
İleri Seviye Programlama 2İleri Seviye Programlama 2
İleri Seviye Programlama 2
 
Holynix v1
Holynix v1Holynix v1
Holynix v1
 
Puppet ile Linux Sistem Yönetimi Otomasyonu
Puppet ile Linux Sistem Yönetimi OtomasyonuPuppet ile Linux Sistem Yönetimi Otomasyonu
Puppet ile Linux Sistem Yönetimi Otomasyonu
 
Temel linux
Temel linuxTemel linux
Temel linux
 
Php1
Php1Php1
Php1
 
Git Sunumu
Git SunumuGit Sunumu
Git Sunumu
 
BTT Modul 11 Isletim Sistemlerinin Temelleri
BTT Modul 11 Isletim Sistemlerinin TemelleriBTT Modul 11 Isletim Sistemlerinin Temelleri
BTT Modul 11 Isletim Sistemlerinin Temelleri
 
SNİFFİNG VE SERVİS DIŞI BIRAKMA SALDIRILARI
SNİFFİNG VE SERVİS DIŞI BIRAKMA SALDIRILARISNİFFİNG VE SERVİS DIŞI BIRAKMA SALDIRILARI
SNİFFİNG VE SERVİS DIŞI BIRAKMA SALDIRILARI
 
pc bilgisayar
pc bilgisayarpc bilgisayar
pc bilgisayar
 

Linux101

  • 2. MetaRoc , Türkiye’nin çok farklı cografi konumlarında bulunan ve Caner KÖROGLU önderliginde bir araya gelebilen altı kisilik bir ekiptir. Bir araya gelme amaçlarımızdan biri, kendimizi Siber Güvenlik alanında gelistirebilmek ve mümkün oldugunca ögrendiklerimizi, basarabildiklerimizi sizlerle paylasmak. “Bilgi paylastıkça çogalır.” düsüncesiyle hareket eden bir ekip, MetaRoc Günümüzde riskler, sadece dısarıda degil. Evimizde, odamızda masamızın üstünde,cebimizde.. Ekip olarak öncelikli hedefimiz ülkemiz ve insanlarımız için ‘Siber Güvenlik Farkındalıgı’ olusturabilmek. Zamanla, kendimize ve size faydalı olabilecek projelerde tekrar bulusmak dilegiyle. Metaroc
  • 3. selam!Murat Arslan İYTE Bilgisayar Mühendisligi Linux | Siber Güvenlik | Network | Pyhton @marslan0535 | muratarslan0535@gmail.com rootmarslan.blogspot.com.tr
  • 4. Neler ögrenecegiz? *GNU/LINUX *TEMEL TERMINAL KOMUTLARI *PAKET YÖNETIMI *TEXT EDITÖRLERI *KULLANICI ISLEMLERI *IZINLER *PROCESS *DOSYA SISTEMLERI *ÇEVRE DEGISKENLERI *SERVISLER ...
  • 7. Linux terminali nedir??? **kernel(çekirdek) ** shell(kabuk) Komutlar vererek islemleri yaptıgımız yerdir. Shell programı sayesinde komutlarımız yorumlanır Islemler gerçeklesir. echo(ekrana yazdırmak için kullanılır) echo $SHELL dersek kabuk programımızı ögrenebilir.
  • 11. Full Path Full path kavramı komuta en üst dizinden baslayarak gidecegi yolu gösterir. Baslangıcı en üst dizin yani / (kök dizin)kabul eder. /etc/passwd /home/murat/Müzikler/pop Full path / relatıve path Relatıve Path Baslangıcı suan bulundugu dizin kabul eder. Eger /home/murat dizinindeysek /Müzikler/pop yazarak soldaki islemle aynı yere gelmis oluruz.
  • 12. PWD(PRINT WORKING DIRECTORY) Kullanıcıya hangi dizinde bulundugunu full path ile gösterir.
  • 14. Dizin degıstırmek ıcın kullanılır. $ cd . (bulunulan dizin) $ cd .. (bir üst dizin) $ cd ~ (ev dizini) $ cd - (bir önceki dizin) Cd (change dırectory)
  • 15. Place your screenshot here Ls (list directories) Istenilen dizindeki dizin,dosya vb alayını listeler :) ls -a (all) gizli dosyalarıda gösterir. ls -l ayrıntılı listeler ls -h listelenenlerin boyutlarını daha anlasılır yapar.
  • 16. Isminin Basında “ . ” olan dosya ve dizinler gizlidir
  • 17. touch Eger dosya önceden var ise dosyanın islem tarihini günceller. Eger dosya önceden yok ise belirtilen dizine dosya olusturur. *Dizin belirtilmezse bulunulan dizine olusturur.
  • 18. FILE Istenilen dosya,dizin vb. hakkında özet bilgiler verir. File / stat STAT Istenilen dosya,dizin vb. hakkında file komutuna göre daha genis bilgiler verir. Uid,güncellenme vs.
  • 19. Çalısılan terminali nasıl temizleriz???? $ clearCTRL+L
  • 20. cat Dosyanın icerigini gösterir. Yönelendirme isaretleri ile dosya da olusturulabilir. Yine yönlendirme isaretleri ile dosyanın sonuna ekleme yapılabilir.
  • 21. Less more historyTerminale sıgmayan büyük veya uzun metinlerde,metini Terminal boyutu kadar ekrana yazdırır. Okurnurluk kazandırır. Büyük dosyaları okumada kullanıslıdır. **-g -G parametleri Less komutunda içerik içinde ileri-geri hareketler yapılabilir. Ama more komutunda sadece ileri yönlü hareket yapılır. Less tüm içerigi bellege almadıgı için daha kullanıslıdır. Terminale girilen önceki komutları gösterirkullanıcın home dizinindeki .bash_history dosyasında history limiti bulunur.
  • 23. cp(copy) Dosya kopyalamamızı saglar. $ cp /-/kaynak/-/hedef Dizinleri kopyalamak için -r parametresi kullanılır. Eger kopyalanacak yerde dizin yoksa önce dizin olustururlur sonra kopyalama yapılır. -i parametresi ise bizi dosyanın üzerine yazma durumlarında uyarır.
  • 24. mv(move) Tasıma islemlerinde kullanılır. $ mv kaynak/-/hedef Cp deki -i parametresi burada da kullanılır. Isim degistirmek için kullanılır. $ mv eski isim/-/yeni isim
  • 25. Yardım komutları MAN(MANUEL) man komut seklinde çalısır. Komutun kılavuzudur. Komut hakkında kapsamlı bilgileri verir. Q ile çıkıs yapılır. HELP Komut --help seklinde çalısır. Komut hakkında özet ve önemli bilgileri verir.
  • 26. dmidecode uname uptimeSistem ile ilgili bilgileri verir. Dmicode --type bios Bios hakkındaki bilgileri verir. --type Parametresi ile kullanılır. Kullanılan kernel hakkında bilgileri verir. -i parametresi versiyonu -a parametresi bütün bilgileri verir. Acaba sistem ne zamandır açık???
  • 27. mkdir(make directory) Dizin olusturmak için kullanılır. -p parametresi ile dizinin içine dizin olusturulur. $ mkdir dizin{1..7} ne yapar??? $ mkdir dizin{4..8}/{1..3} ne yapar???
  • 28. rm(remove) rm rm dosya dosyayı siler Bu ne ki??? $ rm -rf /* rm -r Dizinleri silmek için kullanılır. Recursive yolla silinir. rmdir directory de kullanılabilir. rm -f Silinecekleri zor kullanarak siler. Silmeye zorlar
  • 29. Find komutu dizin,dosya vb aramamızı saglar. find Aranacak yerler/-/özellikleri -type parametresi ile dizin,dosya,karakter dosyası vb -name dosyanın ismi $ find /home -type d -name ödevlerim find
  • 30. Deneyelim ögrenelim :) whatis $ whatis cat Çıktı sence ne?? exit Yoksa bulunduğun kullanıcıdan mı çıktı ??? ctrl+d exit komutunun kısayolu mu ;)) Ctrl+c (cut) Bir process islerken bunu yapmalısın!!
  • 31. Tab kullan!!!! Tab tusu terminaldeki en iyi yardımcımızdır. Bütün kelimeyi komutu yazmadan tab ile tamamlayabiliriz veya komut satırında hızlıca saga sola gitme islemlerini yapabilir Daha neler nelerr….
  • 32. alias Alias kullanarak bir komutu bir kısayola atayabiliriz. Mesela ~ isareti bir aliastır ~ = /home/murat demektir. $ alias kas=’ls -la’ dersek kas yazdıgımızda ls -la komutunun çıktısını alırız. unalias kas yazarak bu kısayolu kaldırabiliriz.
  • 34. Yönlendirme isaretleri DENEYELIM!!! $ echo merhaba $ echo merhaba > dosya.txt $ echo dünya >> dosya.txt $ Cat < dosya.txt > dosya2.txt $ ls /olmayan/dizin > error.txt $ ls /olmayan/dizin 2> error.txt
  • 35. yönlendirmeler < İNPUT(GIRDI) ALIR. Sagındakı dosya solundakıne gırdı olur. > & >> output(çıktı)alır. Soldakinin çıktısı sagdakine girdi olur. $ Hello > dosya.txt >> ise yine yönlendirmedir fakat dosyanın altına ekleme yapar. 2> & 2< Stderr kanalının numarası 2 oldugu için 2 kullandık. Eger stderr da kanal belirtmezsek hata mesajı verir. Çünkü hata oldugunu bilmiyor,stdın veya stdout sanar.
  • 36. Pipe ( | ) and tee pipe(|) bir çıktıyı diger komutun girdisi yapar. $ ls -la /etc | less Bu komut ls -la çıktısını less komutuna verir ve less komutu sayfa sayfa çıktı almamızı sağlar. $ ls | tee dosya.txt Dersek ls komutunun çıktısını dosya.txt içine yazar. Buradaki tee ise dosya içine yazılanları ekrana yazmasını saglar
  • 38. Head tail $ head /var/log/syslog Head komutu ile uzun dosyaların sadece istedigimiz kadarını dosyanın basından görebiliriz. -n 20 dersek basından ilk 20 satırı görebiliriz. $ tail /var/log/syslog Head komutu ile uzun dosyaların sadece istedigimiz kadarını dosyanın sonundan görebiliriz.
  • 39. Expand / unexpand Uygulamada cat ile aynı gibi görünen bu komut dosyadaki sekmeleri bosluk karakterine cevirir. Bu nedenle expand dosya.txt dedikten sonra cat dosya.txt çalısmaz. Öncesinde unexpand dosya.txt demeliyiz. *** wc dosya adı ne ise yarar???
  • 40. Join cut sort Birden çok dosyayı bir alanda göstermek için kullanılır. $ join file1.txt file2.txt metin dosyalarının belirli bölümlerini görüntüleme, bu bölümleri ekleme ve çıkarma gibi bir çok islemi yapmamıza olanak saglayan bir komuttur. Belirli parametlerle dosyada sıralama yapmamızı saglar.
  • 41. grep Grep komutu dosyanın içinde arama yapar,find komutu ise dosyalar arasında aram yapıyordu. $ grep --color kurt dosya.txt Bu komut dosya.txt içerisindeki kurt karakterlerini boyar ve yazdırır. $ env | grep -i User Env çıktısını grep girdi alır. Ve user karakterleri var mı bakar. $ cut -f 1,3 --d “ “ dosyadadı -f sütunları -d de neye göre ayırılacagın belirtir.
  • 42.
  • 43. meta Bilginin Bilgisi :))) Aslında datanın bilgisi bir nevi etiketi:)
  • 46. Vim terminalde en çok kullanılan text editörlerindendir. Büyük çaplı dosyaları okumak için gelistirilmistir. Ögrenmesi zahmetli fakat oldukça kullanıslıdır. Vi de iki mod vardır. Komut ve yazma modu Komut modu : Dosyanın içerigine etki etmez,dosyayı kaydetme,mod degistirme,açma ,kapama vb. Islemleri yapar. Yazı modu: Dosyanın içerigini degistirdigimiz moddur. vim(vı)
  • 47. vim(vi) Esc tusu ile komut moduna “i” veya “a”tusu ile yazı moduna Kaydedip çıkmak için esc ile komut moduna geçilir. Sonra :wq komutu ile kaydedip çıkabilir. :q! Dersek kaydetmeden çıkarız. “h” ”j” ”k” ”l” tuslarını yönlendirmede kullanabiliriz. X seçilen karakteri keser aynı zamanda silerde ;) dd bulunulan bütün satırı siler. y secilen yeri kopyalar yy bulunulan bütün satırı kopyalar.
  • 48. vım(vı) p bulunulan yere kopyalı metni yapıstırır. u son islemi geri alır. v yapılan islemi kaydeder. ZZ == :wq aynı islevi görürler. Vim editörü hakkında daha kapsamlı komutları ögrenmek için tıklanıyınız ;) ***Bu komutları sadece komut modunda kullanabiliriz.***
  • 49. Dıger text edıtorlerı Nano: Kullanımı oldukça kolay olan bu editör ile birçok dosyanızı düzenleyip degistirebilirsiniz. Daha fazla bilgi için tıklayınız. Emacs: Bir diger çok kullanılan text editörü olup daha fazla bilgi edinmek için tıklayınız.
  • 52. Linux isletim sistemlerinde birden fazla kullanıcı olabilir. Fakat bu kullanıcıların en yetkilisi ROOT kulllanıcıdır. Kullanıcılar birleserek grupları olusturur. Dosya sahibi kullanıcının grubun ve digerlerinin ayrı ayrı izin hakları vardır. Peki bu kullanıcıların ve grupların bilgisi parolaları nerede tutulur??? User, group bilgisi
  • 53. etc/passwd Kullanıcılara ait genel bilgilerin tutuldugu dosyadır. Peki bu bilgiler nelerdir??? isim:sifre:uid:gid:yorum:evdizini:kabuk
  • 54. /etc/shadow Kullanıcılara ait parolaların belirli sifreleme algoritmalarıyla saklandıgı dosyadır. Peki nasıl sifreleniyor ki ???
  • 55. /etc/group Gruplara ait bilgilerin tutuldugu dosyadır.
  • 57. Peki yeni kullanıcı nasıl eklenir??? adduser $ adduser murat Komutu ile yeni kullanıcı olusturulur. Parola ve genel bilgiler olusum sırasında sorulacaktır. deluser $ deluser murat komutu ile de olusturulan kullanıcıyı silebiliriz. Aynı zamanda kullanıcının grubunu da silecektir.
  • 58. HMMM??? Adduser ve useradd komutlarını kullanmadan bir kullanıcı ekleyelim. Sonra grubunu olusturalım ve tabiki kullanıcı parolası da lazım. Son olarak bu kullanıcın ev dizini de olmalı tabi ;)
  • 60. dOSYA IZINLERI Dosya izinler read(r),write(w),execute(x) olmak üzere 3 çesittir. Her dosya için user,group,other izinleri ayrı ayrıdır. r: readable(4) w: writable(2) x: executable(1) -: empty
  • 61. Dosya izinleri degistırme (r)4+(w)2+(x)1 = 7 $ chmod 761 dosya.txt $ chmod 440 müzikler $ chmod 142 /home/murat $ chmod 700 /var/bin $ chmod 000 /etc/passwd $ chmod u+xw dosya.txt $ chmod a+w dosya5.txt $ chmod g-xw ödevler $ chmod o+xr dolu.txt
  • 62. Peki dosya ilk olusturuldugunda ilk izinlerini kim veriyor ki ???
  • 63. Dosya sahipligini degistirme chown $ sudo chown murat dosya.txt Dosya.txt dosyasının yeni sahini murat oldu ;) $ chown useradı:grupadı dosya.txt Chgrp $ sudo chgrp grupadı dosya.txt Dosya.txt Bu ne peki???
  • 64. $ passwd komutu ile kullanıcı parolasını degistirebiliyorduk. Peki kullanıcı parolaları nerede tutuluyordu? Bu dosyada degisiklik için root olmak gerekmiyor muydu? Eee biz bu dosyanın içerigini nasıl degistirdik ki??? suıd(set user ıd) / sgıd(set group ıd)
  • 65. suıd/sgıd Bir programı çalıstıran kullanıcılarınprogram çalıstıgı sürece program dosyasının sahibinin yetkilerine sahip olmalarını saglar. Yani sistemde bir programı kullanması gereken fakat o programı kullanmasına normal sartlarda yetkisi olmayan bir kullanıcının geçici olarak programı kullanabilmesi de diyebiliriz. $ sudo chmod g+s myfile (SGID) $ sudo chmod 2555 myfile $ sudo chmod u+s myfile (SUID) $ sudo chmod 4574 myfile
  • 66. Sticky bit Aynı klasör üzerinde erisme,yazma hakkı olan kullanıcıların,klasörü ve alt dosyalarını silmelerini engellemek için kullanılır. Yani ortak bir klasörü herkes kullanabilecek (yazma ,çalıstırma) ama klasörü sadece klasörün sahibi ve root silebilecek. $ sudo chmod +t mydir $ sudo chmod 1755 mydir t= sticky bit(1) s= suıd(4) g= sgıd(2)
  • 68. Top & ps aux
  • 69. Process Process sonlandırma $ kill -9 “PID “ $ kill “PID” Process durumları: R: çalısıyor, çalısabilir S: uykuda uyanabilir T: durdurulmus D: kesintisiz uykuda Z: zombi ;))
  • 70. acaba??? Aynı anda bırden fazla program açıkken bütün açık programlar cpu da aynı anda mı çalısıyor???(niceness)
  • 72.
  • 73. Paket nedir? Derlenmis ve paket yönetim sistemiyle kuruluma hazır dosyalara “paket” denir. PEKI LINUX DAGITIMLARINDA PROGRAM NASIL KURULUR??? 1)KAYNAK KOD 2)PAKET YÖNETIM SISTEMI 3)REPOSİTORY
  • 74. redhat/centOs .rpm rpm yum Debian/ubuntu .deb dpkg apt /etc/apt/sources.list ====> dosyayı inceleyelim bu içerik ne olabilir ki??? SS KOY SOURCES LİST Dagıtım || paket || man. Paket yön. || Oto. paket yön.
  • 75. Program kurma Linux'ta program kurmak için : Programı kaynak koddan derleyerek kullandıgımız dagıtıma uygun olan program kurulum Paketlerinden paket yönetim sistemi yardımıyla manuel kurulum Repository denen dagıtımın kullandıgı depolardan otomatik kurulum yapmaktır. $ dpkg -i <paket adı> $ apt-get install <paket adı>
  • 76. Neler oluyor neler... Apt komutu çalısırken ilk olarak sources.list dosyasına gider bakar. Eger istenen program o repolarda var ise indirir fakat yok ise(büyük ihtimalözgür yazılım degildir; )) bizim repolara eklememiz gerekir.
  • 77. $ apt-cache search <program_adı> $ apt-get remove $ apt-get purge $ apt-get update $ apt-get upgrade $ apt-get dist-upgrade $ apt-get autoremove $ apt-get -f install(3.parti program;))
  • 78. Kaynak kodlarından program kurmak Konsoldan programı açtıgımız klasöre gelip $ ./configüre diyoruz. $ make yazıp programı yüklemeye hazır hale getiriyoruz. Eger derlemeyi yapacak paket kurulu degilse öncelikle $ sudo aptitude install build-essential yaparak bu paketi kurmalıyız. $ make install ile programı yüklüyoruz. $ make uninstall ile programı kaldırıyoruz.
  • 79. $ gzip + (-1..-9) <dosya adı> $ bzip + (-1..-9) <dosya adı> $ gzip -k + <dosya adı> $ gzip -d + <dosya adı> $ bzip -d + <dosya adı> Sıkıstırma islemleri -1 parametresi en hızlı -9 parametresi en küçük boyuta -d (decompress) -k (keep)
  • 80. Arsıvleme islemleri Arsivleme islemleri için tar kullanılır. $ tar -cvzf kiraz.tar.gz kiraz $ tar -xzfC kiraz.tar.gz /home/ $ tar -cvf arsivim.tar dosyalar -c (create) arsivler -C (change directory) -f (file) islem dosyası -t (list) icerigi listeler -x (exract) arsivi açar -v(verbose) islemleri gösterir -z(gzip) gzip ile de sıkıstıırır -j(bzip) bzip ile sıkıstırır.
  • 82. / (root) : isletim sistemimizin baslangıç noktasıdır. Diger bütün dizinler rootun altında bulunur. Bilgisayar baslarken ilk bakılan dizindir. Eger burası olmazsa sistem baslamaz. “/” ve “/root” birbirinden farklıdır. /root ise root kullanıcısının ev dizinidir. Yani /root dizini / dizininin altındaki dizinlerden sadece biridir. Dosya sistem hiyerarsisi
  • 83. Sistemde bulunması gerekli komut dosyalarını içerir. Sistem boot edildiginde ilk olarak /bin dizini çalısır hale getirilir. /bin altındaki komutlar ne olursa olsun çalısır. Çalısmazsa zaten komutlar da çalısmaz. /bin
  • 84. Isletim sistemine dair bütün yapılandırma dosyalarını içerir. Sistem ayarlarını barındırır. Passwd ,shadow,group gibi dosyaları içinde barındırır. /etc
  • 85. /home Home klasörü kullanıcının kalesidir ; ) Her kullanıcı için kendine özeldir. Rootun home dizini ise /root dizinidir.
  • 86. /dev Linux’ta herseyde oldugu gibi donanım aygıtları da bir dosyadır. USB girisleri,paralel portlar,cd-romlar gibi bütün aygıtlar /dev dizinin altında tutlan dosyalardan ibarettir. /dev/psaux : PS/2 girisi; fare ve klavyeler içindir. /dev/lp0 : Paralel port (LPT 1); yazıcı, tarayıcı vs... /dev/dsp : Birincil ses aygıtı /dev/usb : USB aygıtları
  • 87. Log dosyaları, e-mail ve printer kuyrukları gibi degisken sistem bilgilerini barındırır. Sisteminize dair tutulan log'ları buradan görebiliriz. Güvenlik durumunu buradan kontrol edebiliriz. /var
  • 88. /boot : baslangıç için gerekli dosyalar bulunur. /lib: kütüphane dosyaları ve kernel modülleri bulunur. /media: çıkarilabilir aygıtların(USB,CD-Rom...) sisteme eklendigi dizindir. /mnt:bir dosya sistemini geçici olarak eklemek için kullanılır. /opt:ekstra programların kurulması içindir. /srv:sistemin sundugu hizmetlerle alakalıdır. /tmp:gecici dosyaların tutuldugu dizindir. /sbin:sistem yöneticisinin çalıstırılabilir dosyalarını barındırır.
  • 89. Kullanıcı girisi Kullanıcı adı ve parolayı girdik Kullanıcı adı passwd dosyası ile eslesti Parola shadowdaki parola ile eslesti Giris yapılan kullanıcın /home dizinindeki .bashrc dosyası okundu .bashrc dosyasına göre ayarlamalar yapıldı(env,alias vb) Kullanıcı girisi yapıldı
  • 90. Ext4:linux dosya sisteminin standart tercihidir. NTFS/FAT : windows dosya sistemidir. Fakat bu dosyalara linux dagıtımlarından da ulasılabilirsiniz. HFS+ : macintosh dosya sistemidir. XFS : yüksek performanslı dosya sistemidir. Büyük dosyarların medya serverlarında kullanılır. $df -T komutu ile makinemizin dosya sistemini kontrol edebiliriz. Dosya sistemi tipleri
  • 91. $ sudo parted komutuyla parted tooluna gireriz. Print komutuyla bölüm tablosunu yazdırır. Mkpart komutu ile disk bölümlendirme baslar. ????????? DISK BÖLÜMLEME
  • 93. mount/unmount Bir disk üzerindeki bir bölümü bir klasöre baglayarak içerigini görmeye,dizini kullanma vb. islere yarar. $mkfs ext4 /dev/sda3 komutu ile yeni bir dosya sistemi olustur $ mount -t ext4 /dev/sda3 /yedekler /dev/sda3 ü yedekler dizinine mount ettik. -t parametresi dosya tipini belirtir. $unmount /yedekler komutuyla mountu iptal edebiliriz.
  • 94. $ blkid komutuyla sistemimizdeki block deviceları görebilir. /dev/sda1: UUID="130b882f-7d79-436d-a096-1e594c92bb76" TYPE="ext4" /dev/sda5: UUID="22c3d34b-467e-467c-b44d-f03803c2c526" TYPE="swap" Peki bunlar nedir??? $ sudo mount UUID=130b882f-7d79-436d-a096-1e594c92bb76 /mydrive mount/unmount
  • 95. $shutdown $ halt $ poweroff Bunların farkı ne????
  • 96. UUID :device kimligidir. Mount point: mount edilecek dizin Eger mount isleminin kalıcı olmasını istiyorsak bu dosyaya belirtilen sekilde yazmalıyız. /etc/fstab
  • 97. Swap nedir? Number Start End Size Type File system Flags 5 6861MB 7380MB 519MB logical linux-swap(v1) inode ögrenelim
  • 98. BU KOMUTLAR NE ISE YARAR Kı??? $ sudo fsck /dev/sda $ df -h $du -h $df -T $ rm -rf /* $ ls -li $ df -i
  • 99. hardlink Iki farklı dosyanın bir inodu olursa hardlink yapılmıs olur. Dosyaların birinde yapılan bir degisiklik digerini de etkiler. $ ln somefile somelink A.txt B.txt İNODE HARDDİSK VERİ YAZMA
  • 100. Windows kısayollarına benzer. $ ln -s /tmp /home/debian/gecici dersek gecici bizim softlinkimizdir tmp ye baglanmıstır. Sembolik baglılarda dosya tipi yazan yerde “l” yazar. Ve dosyalar aynı inode numarası kullanmazlar. sOFT LINKs/symlinks
  • 101. Bilgisayar nasıl açılır? Bilgisayar nasıl boot olur? sistem nasıl hazırlanır? llk hangi bölümle uyandırılır? Power tusuna bastıktan sonrası ...
  • 102. BIOS(BASIC INPUT OUTPUT SYSTEM) MBR(MASTER BOOT RECORD) GRUB(GNU GRUB (short for GNU GRand Unified Bootloader)) BOOTLOADER(MBR&GRUB) KERNEL INIT DRIVER DEVICE
  • 103. /etc/inittab dosyasını düzenleyerek konfigüre edebiliriz. init 0 halt init1 single user mode (sadece root kullanıcısı var) init2 multiuser (internet kullanıılamaz) init3 full(network) multiuser (internet kullanılabilir) init4 kullanılmıyor init5 arayüz(x11)+multiuser (normalde kullanılan) init6 reboot INIT
  • 105. servisler Servisler processleri yönetmek için kullanılır. $ systemctl status <servisadı> komutuyla servisin bilgisini verir. $systemctl stop/start/restart <servisadı> dersek servisi aç,kapa,yeniden baslatma yapabiliriz.
  • 106.
  • 107. Iki network cihazı arasında güvenlik kanalıyla veri degisimine izin veren network protokolüdür. Sifreleme ve dogrulama algoritmaları kulllanır. Lokal bilgisayardan uzak bilgisayara dosya kopyalanabilir. Otomatik olarak uzaktan server kontrolü ve yönetimi saglanabilir. Ssh nedir?
  • 108. Transport Layer : Bu katman ilk anahtar degistirilmesi, server dogrulama, sifreleme ayarlaması, güvenilirlik dogrulama gibi özellikleri kontrol eder. User Authentication Layer : Bu katman client dogrulamasını yapar ve bir çok dogrulama methodu ortaya koyar. Connection Layer : Bu katman kanalların konseptlerini ve kanal isteklerini SSH servislerini kullanarak tanımlar. Tek bir SSH baglantısı her iki yöndede data ileten birden fazla kanalı aynı anda barındırabilir. Iç mimarisi
  • 109. Ssh kullanımı $ ssh -l kullanıcı_adı@<ıp adresi> Karsı bilgisayardan kendimize kopyalıyacaksak: $ scp kullanıcı_adı@host_ismi:kopyalacak_dosyanın_adi kopyalanacagı_yer Kendi bilgisayarımızdan karsı bilgisayara kopyalayacaksak: $ scp kopyalacak_dosyanın_adi kullanıcı_adı@host_ismi:kopyalanacagı_yer
  • 110.
  • 111. $ sudo shutdown -h now $ sudo shutdown -r now <r(restart)> ;)) $ sudo reboot $ sudo shutdown -h +2
  • 112. Crontab zamanlanmıs görev vermemiz için kullanılır. $crontab -e komutu görevi düzenlememizi saglar. ● dakika(0-59) ● saat(0-23) ● gün(1-31) ● ay(1-12) ● Haftanın günü(0-7)(7 pazar günüdür.) 30 08 10 06 * ./home/ramesh/change_wallpaper Bu görevde her 6. Ayın 10. Gününde saat 8:30 da masaüstünü degistirmesini söylüyor. crontab
  • 113. Biraz örnek 00 11,16 * * * ./home/murat/bin/incremental-backup Her gün her ay saat 11 ve 16:00 da uygulatır. 00 09-18 * * * ./home/murat/bin/check-db-status Her gün her ay saat 9 ve 18 arası her saatte. 00 09-18 * * 1-5 ./home/root/bin/check-db-status 30 08 10 06 * ./home/nazlı/full-backup
  • 116. Islemlerin okuyabildigi bir anahtar degeridir. Ortam degiskenleri bulundukları ortama göre degisebilirler. Burada yapılan bir degisiklik diger ortamlarda çalısmaz. Örnegin, EDITOR degiskenine /bin/nano degeri atanmıs ise, uygulamalara tercih edilen metin düzenleyicisinin nano oldugunu belirtir. $DEGISKEN seklinde gösterilir. $ printenv komutu ile çevre degiskenlerini yazdırabiliriz. nedir?
  • 117. $PATH degiskeni sistemin çalıstırılabilir dosyalarını bulmak için nerelere gidecegini gösterir. Bunun için çok önemlidir ve dogru olması gerekir. $path
  • 118. Ortam degiskeni ayarlama Ortam degiskenleri kullanıcıya özgüdür. 1)Oturum:Sadece geçerli,açık olan terminalde kullanılır. 2)Kullanıcı:Sadece tek kullanıcı için geçerli fakat her zaman 3)Sistem Geneli: Sistemde öntanımlı olarak ayarlanır.
  • 119. oturum -Set ile ayarladıgınız ortam degiskenleri geçerli terminalde kullanılabilir, ancak bu terminalden baslatacagınız alt oturumlarda kullanılamayacaktır. Yani set yalnızca verildigi terminali etkiler. – Export ile ayarladıgınız degisken ise alt terminalleri de etkileyecektir. Yani export, oturum bazında da olsa set’den daha globaldir. **Peki bu komutlar çalıstırılabilir bir program mı ?????**
  • 120. Kullanıcıya özel ortam degiskenlerini tutabileceginiz en iyi yer .bashrc dosyasıdır. Bir kullanıcı oturum açtıgı zaman bu kullanıcının .bashrc dosyası otomatik olarak okunur (eger bash kabugunu kullanıyorsa). export DEGISKENADI="fr" kullanıcı
  • 121. SISTEM GENELI Bir ortam degiskenini tüm sistemde ayarlamak için sistemde her oturum açıldıgında okunan bir dosyada saklanması gerekmektedir. Mesela /etc/profile ;))
  • 122. Bu kod nedir??? #!/bin/bash while read satir do ls $satir done < $1