Title: Arama islemleri ve Dosya Izinleri
1Arama islemleri ve Dosya Izinleri
BILGISAYAR PROGRAMCILIGI BÖLÜMÜ AÇIK KAYNAK
ISLETIM SISTEMI DERSI
2Dosya ve Dizin arama
- Dosya arama islemleri basta find ve locate olmak
üzere which ve whereis komutlari ile yapilabilir.
3Dosya ve Dizin arama locate
- locate komutunun ardindan aranan dosyanin ismi
verilerek arama yapilabilir - Bu komutun çalisabilmesi için daha önce updatedb
komutunun çalistirilmis olmasi gereklidir.
updatedb komutu dosya sistemini tarayarak bir
veritabani olusturur ve arama isleminin sonucunu
bu veritabanindan getirir. Bu veritabanin son
güncelleme tarihinden sonraki degisiklikler
sonuca yansimayacaktir. Bu veritabaninin her gün
otomatik olarak güncellenmesi için
/etc/updatedb.conf dosyasindaki DAILY_UPDATE
kismi yes yapilmalidir.
4Dosya ve Dizin arama find
- find komutu kullanilarak dosya sisteminde arama
yapilabilir. Bu komut çalistirildigi anda aranan
dizinleri tarayarak sonucu ekrana getirir. Bu
nedenle locate komutuna göre daha yavas ama daha
dogru sonuçlari ekrana getirir.
5Dosya ve Dizin arama find
- find komutunun alabilecegi bazi parametreler
sunlardir - -name Isim ile arama yapmak için kullanilir.
Dosyanin tam ismi verilebilecegi gibi, gibi yer
tutucu karakterlerde kullanilabilir. - -user kullaniciIstenilen kullaniciya ait
dosyalarin bulunmasi için kullanilir - -group grup Belirtilen gruba ait dosyalarin
bulunmasi için kullanilir - -perm izin Belirtilen izine sahip dosyalarin
bulunmasi için kullanilir - -newer dosya1Belirtilen dosyadan daha yeni
dosyalarin bulunmasi için kullanilir - -size/- büyüklük Belirtilen büyüklüge sahip
dosyalarin bulunmasi için kullanilir - -answer dosya1Belirtilen dosya yapilan erisimden
daha sonra erisilmis dosyalari bulmak için
kullanilir - -amin/- süre Süre ile belirtilen dakika önce
erisilen dosyalari bulmak için kullanilir
6Dosya ve Dizin arama find
- -atime /- süre Süre ile belirtilen gün önce
erisilen dosyalari bulmak için kullanilir - -cmin/- süre Süre ile belirtilen dakika önce
statüsü degistirilen dosyalari bulmak için
kullanilir - -ctime /- süre Süre ile belirtilen dakika
önce statüsü degistirilen dosyalari bulmak için
kullanilir - -links/- sayi Sayi ile belirtilen miktarda
hard linke sahip dosyalari bulmak için
kullanilir - -mmin/- süre Süre ile belirtilen dakika önce
degistirilmis dosyalari bulmak için kullanilir - -mtime /- süre Süre ile belirtilen gün önce
degistirilmis dosyalari bulmak için kullanilir - -nouser Hiçbir tanimli kullaniciya ait olmayan
dosyalari bulmak için kullanilir - -nogroup Hiçbir tanimli gruba ait olmayan
dosyalari bulmak için kullanilir
7Dosya ve Dizin arama which
- Komutlarin bulundugu tam yolu veya aliasini
gösterir
8Dosya Sistemlerine Erisim
- whereis komutu aranan kelimenin çalistirilabilir
yolunu, kaynagini ve yardim sayfalarinin yolunu
gösterir - Bazi parametreler sunlardir
- -b sadece çalistirilabilir yolu arar
- -m sadece yardim sayfalarini arar
- -s sadece kaynagini arar
9Dosya/Dizin Izinleri
- Linuxte temel dosya sistemi güvenligi
kullanicilarin dosya ve dizinler üzerindeki
erisim izinlerinin belirlenmesiyle saglanir. Bir
dosya veya dizinlere ait 3 grup izin vardir - Dosya sahibinin izinleri (Dosyanin sahibi u )
- Dosya grubunun izinleri (Kullanici grubu g )
- Sistemdeki diger kullanicilarin izinleri
- (Diger tüm kullanicilar o )
- Dosya ve dizinlerin sahip olduklari izinleri
görmek için ls k(d) yada stat komutlari
kullanilabilir.
10Dosya/Dizin Izinleri
- Okuma (r)
- Dosya içerigini görebilir mi?
- (Klasörler için) dosya listesini alabilir mi?
- Yazma (w)
- (Ayni zamanda) dosyayi silebilir mi?
- (Klasörler için) bu klasör içinde dosya veya
altklasör olusturabilir mi? - Çalistirma (x)
- Dosyayi çalistirabilir mi?
- (Klasörler için) bu klasöre geçebilir mi?
11Dosya/Dizin Izinleri
-rwxrw-r--
Dosya tipinin belirtildigi kisim - Normal
dosya d Dizin c Karakter bazinda islem
yapan aygit sürücüleri b Blok bazinda islem
yapan aygit sürücüleri l Baska bir dosyayi
gösteren link dosyalari
12Dosya/Dizin Izinleri
Izinlerin belirtildigi kisim
Dosyanin sahibi
Grup
Diger kullanicilar
-rwxrw-r--
13Dosya/Dizin Izinleri
- root_at_localhost ls -l toplam 6744 drwxr-xr-x
10 mustafa users 4096 Nov 14 2343 my_dir - .
dgt dizin oldugunu gosteriyorilk üclü gt rwx
(okuma, yazma, calistirma) mustafa isimli
kullanici tüm haklara sahip ikinci uclu gt r-x
user grubuna üye olan kullanicilar okuma ve
çalistirma haklarina sahip ucuncu uclu gt diger
kullanicilar okuma ve çalistirma haklarina
sahip mustafa gt dosya/dizin sahibiusers gt
dosyanin/dizinin grubu
14Izin Degistirme Islemleri
? chmod komutu belirtilen dosya ve
klasörlerin izinlerini degistir -R parametresi
alt klasör ve dosyalardaki izinleri de
degistir X çalistirilabilir dosyalara ve
klasörlere çalistirma izni ver
15Sembolik tanimla Izin Degistirme
- izin eklemek için ,
- izin kaldirmak için
- sahibi u,
- grubu g,
- digerleri o,
- herkes a
- okuma r,
- yazma w,
- çalistirma x
chmod urwx,g-w,o-rwx dosya_adi
16Sembolik tanimla Izin Degistirme
- chmod go-rwx prog1
- Bu durumda grup ve digerlerinden rwx yetkisinin
geri alinacagi ve artik prog1in izinlerinin
sadece rwx------ olacagi anlasiliyor
17Örnekler
18Örnekler
- chmod x dosya
- (herkese çalistirma izni verilir)
19Örnekler
20Örnekler
- chmod urwx dosya
- (dosya sahibine tüm haklar verilir)
21Örnekler
22Örnekler
- chmod g-wx dosya
- (dosya grubundan yazma ve çalistirma iznini
kaldirir)
23Örnekler
- chmod urwx, grx, ox dosya
24Örnekler
- chmod urwx, grx, ox dosya
- (dosya sahibine tüm izinler, gruba okuma ve
çalistirma izni, diger kullanicilara çalistirma
izni verilir)
25Sayisal tanimla izin degistirme
- chmod izin kodu dosya/dizin
26Sayisal tanimla izin degistirme
- Dosya sahibine okuma izni 400
- Dosya sahibine yazma izni 200
- Gruba okuma izni 40
- Digerlerine okuma izni 4
- Toplam
644 - chmod 644 orn.dat
27Örnekler
28Örnekler
- chmod 674 adosya
- -rw-rwxr 1 mustafa users 0 Nov 15 0011 adosya
29Örnekler
30Örnekler
- chmod 700 adosya
- -rwx 1 mustafa users 0 Nov 15 0017 adosya
31Dosya Sahibini Degistirme
- Dosya sahibinin degistirilmesi için chown komutu
kullanilir - chown yeni_sahibinin_ismi dosya/dizin
- Bu komutu çalistirabilmek için kullanicinin dosya
üzerinde gerekli izinlere sahip olmasi gerekiyor.
32Örnek
- Önceki Durum
- -rwxr-xr-x 2 Ahmet users 182 Nov 16 0115 deneme
- chown Mehmet deneme
- Sonraki Durum
- -rwxr-xr-x 2 Mehmet users 182 Nov 16 0119 deneme
33Grubu Degistirme
- Grubun degistirilmesi için chgrp komutu
kullanilir - chgrp yeni_sahibinin_ismi dosya/dizin
- Bu komutu çalistirabilmek için kullanicinin dosya
üzerinde gerekli izinlere sahip olmasi gerekiyor.
34Örnek
- Önceki Durum
- -rwxr-xr-x 2 Mehmet users 182 Nov 16 0123 deneme
- chgrp users2 deneme
- Sonraki Durum
- -rwxr-xr-x 2 Mehmet users2 182 Nov 16 0124 deneme
35Kullanici maskesi
- Linuxta bir dizin veya dosya yaratilirken,
otomatik olarak sistem tarafindan izinleri
ayarlanir. - Dosyalar için rw-rw-rw- 666 seklindedir.
- Dizinler için rwxrwxrwx 777 seklindedir
- Kullanicinin istegine bagli bir maske
olusturularak sistem kabullerini degistirebilir. -
36Kullanici maskesi
- Maskeleme islemi yapmak üzere umask komutu
kullanilir. - umask, kisaca ontanimli olarak yeni yaratilacak
dosya ve dizinlere olan erisim haklarini almak
icin kullanilir. - umask degeri 022 ise gerekli izinler nedir
?dizin haklari icin 777 - 022 750dosya
haklari icin 666 - 022 644
37Kaynaklar
- Ders Notlari Mustafa Sariöz
- Ders Notlari Gulshat Kulzhabayeva