less Aşağı ve yukarı ok tuşlarıyla sayfada ilerlenebilir boşluk veya f bir sayfa sonraya gider b bir sayfa geriye gider / ile arama yapılabilir, n bir sonraki arama sonucuna gider Çıkış için q
tac dosyanın içeriğini sondan başa doğru gösterir
rev dosyanın içeriğini her satırı ters çevirerek gösterir.
head Dosyanın başından belli bir miktar gösterir. –n ile kaç satır göstereceği belirtilebilir.
tail Dosyanın sonundan belli bir miktar gösterir. –n ile kaç satır göstereceği belirtilebilir. –f parametresi ile değişen bir dosyanın sonuna gelen satırlar dinamik olarak görülebilir, log dosyaları incelenirken sıklıkla kullanılır.
Dosya ve Dizin boyutları ls komutu –l parametresi ile çalıştırıldığında dosyaların boyutuna erişilebilir. Bundan ayrı olarak –h parametresi ile bu değer okunabilir formatta yazdırılabilir. Ayrıca du komutu kullanılarak dosyaların veya dizinlerin alt dizinleri ile birlikte kapladığı alan öğrenilebilir -s: toplam boyu bildir -c: genel toplamı bildir -b: boyları bayt cinsinden göster -h: boyları kolay anlaşılır biçimde göster
Dosya ve Dizin arama Dosya arama işlemleri başta find ve locate olmak üzere which ve whereis komutları ile yapılabilir.
locate locate komutunun ardından aranan dosyanın ismi verilerek arama yapılabilir bu komutun çalışabilmesi için daha önce updatedb komutunun çalıştırılmış olması gereklidir. updatedb komutu dosya sistemini tarayarak bir veritabanı oluşturur ve arama işleminin sonucunu bu veritabanından getirir. Bu veritabanın son güncelleme tarihinden sonraki değişiklikler sonuca yansımayacaktır. Bu veritabanının her gün otomatik olarak güncellenmesi için /etc/updatedb.conf dosyasındaki DAILY_UPDATE kısmı yes yapılmalıdır.
find find komutu kullanılarak dosya sisteminde arama yapılabilir. Bu komut çalıştırıldığı anda aranan dizinleri tarayarak sonucu ekrana getirir. Bu nedenle locate komutuna göre daha yavaş ama daha doğru sonuçları ekrana getirir. Kullanım şekli aşağıdaki gibidir.
find find komutunun alabileceği bazı parametreler şunlardır: -name : İsim ile arama yapmak için kullanılır. Dosyanın tam ismi verilebileceği gibi, * ve ? gibi yer tutucu karakterlerde kullanılabilir. -user kullanıcı:İstenilen kullanıcıya ait dosyaların bulunması için kullanılır -group grup Belirtilen gruba ait dosyaların bulunması için kullanılır -perm izin: Belirtilen izine sahip dosyaların bulunması için kullanılır -newer dosya1:Belirtilen dosyadan daha yeni dosyaların bulunması için kullanılır -size[+/-] büyüklük: Belirtilen büyüklüğe sahip dosyaların bulunması için kullanılır -answer dosya1:Belirtilen dosya yapılan erişimden daha sonra erişilmiş dosyaları bulmak için kullanılır -amin[+/-] süre: Süre ile belirtilen dakika önce erişilen dosyaları bulmak için kullanılır -atime [+/-] süre: Süre ile belirtilen gün önce erişilen dosyaları bulmak için kullanılır -cmin[+/-] süre: Süre ile belirtilen dakika önce statüsü değiştirilen dosyaları bulmak için kullanılır -ctime [+/-] süre: Süre ile belirtilen dakika önce statüsü değiştirilen dosyaları bulmak için kullanılır -links[+/-] sayı: Sayı ile belirtilen miktarda hard link’e sahip dosyaları bulmak için kullanılır -mmin[+/-] süre: Süre ile belirtilen dakika önce değiştirilmiş dosyaları bulmak için kullanılır -mtime [+/-] süre: Süre ile belirtilen gün önce değiştirilmiş dosyaları bulmak için kullanılır -nouser: Hiçbir tanımlı kullanıcıya ait olmayan dosyaları bulmak için kullanılır -nogroup: Hiçbir tanımlı gruba ait olmayan dosyaları bulmak için kullanılır
find find program sadece dosya bulmak için kullanılmamaktadır. Bulunan dosyalar üzerinde işlem yapma yeteneğine de sahiptir. Bulunan dosyalar üzerinde yapılabilecek temel işlemler ve arama kriterine eklenmesi gereken parametreler aşağıdaki gibidir: - exec komut; :Bulunan dosya için komut ile belirtilen komutu çalıştırır. Komut ile belirtilen argümanda bulunan {} işareti bulunan dosya ismi ile değiştirilir. - ok komut; :Exec parametresinden tek farkı komut çalıştırılmadan önce kullanıcıdan onay istemesidir. - ls : Dosya ile ilgili belirli özellikleri listeler - fls: ls çıktısını standart çıkış yerine dosyaya aktarılmasını sağlar find komutu ile birlikte ayrıca aşağıdaki mantıksal operatörlerr arama kriterlerini birleştirmek için kullanılabilir: -a : ve -o : veya ! : değil
which Komutların bulunduğu tam yolu veya aliasını gösterir
Dosya Sistemlerine Erişim whereis komutu aranan kelimenin çalıştırılabilir yolunu, kaynağını ve yardım sayfalarının yolunu gösterir Bazı parametreler şunlardır: -b sadece çalıştırılabilir yolu arar -m sadece yardım sayfalarını arar -s sadece kaynağını arar
Dosya Sistemlerine Erişim Değiştirilebilir aygıtlardaki dosyalar erişebilmek için öncelikle bu aygıtların bağlanması gereklidir. Bu aygıtları bağlamak için mount komutu kullanılır. Eğer X pencere sisteminde (5.seviye) bu aygıtlara ulaşmak istenilirse bağlama işlemi otomatik olarak yapılır. Eğer X pencere sistemi çalışmıyorsa bu dizinleri manuel olarak bağlamak gereklidir. mount komutu parametre verilmeden kullanılırsa bağlanmış olan dizinleri listeler mount komutunun temel kullanım şekli aşağıdaki gibidir. mount –t type device dir type alanı bağlanmak istenen dosya sistemi tipi, device bağlanacak aygıtın adresi, dir ise bağlanmak istenen alandır
Dosya Sistemlerine Erişim /etc/fstab dosyasında hangi cihazın hangi dizine bağlanması gerektiği belirtilmiştir. Burada belirtilen bağlama işlemlerinde sadece mount dir komutunu yürüterek bağlama yapılabilir.
Disket Sürücüye Erişim X pencere sisteminde Masaüstünde Computer simgesine tıklayıp, onun içindeki Floppy Drive: floppy simgesine tıklamak disket sürücüsünün bağlamasını sağlayacaktır.
Disket Sürücüye Erişim mount | grep floppy /dev/fd0 on /media/floppy type vfat [rw,nosuid, nodev,_netdev,utf8) Eğer X pencere sistemi çalışmıyorsa disket sürücüyü bağlamak için mount /media/floppy/ Veya mount/dev/fd0 Komutları kullanılabilir. Bağlantıyı koparmak için aşağıdaki komutlar kullanılabilir. umount /media/floppy/ Veya umount/dev/fd0
Cdrom/cdrecorder’a erişim X Pencere sisteminin çalışıyorken cd takılması durumunda Cd otomatik olarak Bağlanır ve masaüstünde kısayol oluşur. Eğer X Pencere sistemi çalışmıyorsa aşağıdaki komutla cdrom/cdrecorder bağlanabilir. mount /media/cdrecorder/ Mount: block device /dev/hda is write-protected, mounting read-only Başka bir CD takılmak istendiğinde öncellikle bu bağlantının koparılması Gereklidir. Bağlantıyı koparmak için aşağıdaki komut kullanılabilir. umount /media/cdrecorder/
USB Cihaza Erişim USB cihazların bağlama noktaları /etc/fstab dosyasında bulunmaz. Genellikle USB Cihazlarının adresi /dev/sda olarak adlandırılır. Ancak Sistemde SCSI disk veya SATA disk varsa cihaz ismi /dev/sdb,/dev/sdc … şeklinde değişebilir. Bu cihazı Bağlamak için kullanılabilir komut aşağıdaki gibidir /mnt/usb dizininden cihaz erişilmek isteniyorsa, mount –t usbfs /dev/sda /mnt/usb Bağlantıyı koparmak için umount /dev/sda
İzinler Linux’te temel dosya sistemi güvenliği kullanıcıların dosya ve dizinler üzerindeki Erişim izinlerinin belirlenmesiyle sağlanır. Bir dosya veya dizinlere ait 3 grup izin vardır: -Dosya sahibinin izinleri -Dosya grubunun izinleri -Sistemdeki diğer kullanıcıların izinleri Dosya ve dizinlerin sahip oldukları izinleri görmek için ls –k(d) yada stat komutları kullanılabilir.
Dosya İzinleri Okuma (r) – Dosya içeriğini görebilir mi? – (Klasörler için) dosya listesini alabilir mi? Yazma (w) – (Aynı zamanda) dosyayı silebilir mi? – (Klasörler için) bu klasör içinde dosya veya altklasör oluşturabilir mi? Çalıştırma (x) – Dosyayı çalıştırabilir mi? – (Klasörler için) bu klasöre geçebilir mi? Dosyanın sahibi (u) Kullanıcı grubu (g) Diğer tüm kullanıcılar (o)
-rwxrw-r-- Dosyanın sahibi Grup Diğer kullanıcılar
İzinler(2) 1 – Dosya tipinin belirtildiği kısım • “-” Normal dosya • “d” Dizin • “c” Karakter bazında işlem yapan aygıt sürücüleri • “b” Blok bazında işlem yapan aygıt sürücüleri • “l” Başka bir dosyayı gösteren link dosyaları
İzin Değiştirme İşlemleri ● chmod: belirtilen dosya ve klasörlerin izinlerini değiştir – önce yeni izinler, sonra değiştirilecek dosya ve klasörler belirtilir – -R: alt klasör ve dosyalardaki izinleri de değiştir ● Yeni izinlerin belirtilmesi: – sahibi: u, grubu: g, diğerleri: o, herkes: a – izin eklemek için +, izin kaldırmak için - – okuma: r, yazma: w, çalıştırma: x – X: çalıştırılabilir dosyalara ve klasörlere çalıştırma izni ver • chmod u+rwx,g-w,o-rwx dosya_ad?
İzin ifadesinin değiştirlmesi chmod izin kodu dosya chmod izin kodu dizin Diğerleri için çalıştırma0001 Diğerleri için yazma0002 Diğerleri için okuma0004 Gruptakiler için çalıştırma0010 Gruptakiler için yazma0020 Gruptakiler için okuma0040 Dosya sahibi için çalıştırma0100 Dosya sahibi için yazma0200 Dosya sahibi için okuma0400 İzin durumuKod Diğerlerio Grupg Dosya sahibiu KullanıcılarSembolik Kod
Dosya sahibine okuma izni 400 Dosya sahibine yazma izni 200 Gruba okuma izni 40 Diğerlerine okuma izni 4 Toplam 644 $chmod 644 muh.dat
Sembolik tanımla yetkinin alınması veya verilmesi $ chmod go-rwx prog1 Bu durumda grup ve diğerlerinden rwx yetkisinin geri alınacağı ve artık prog1’in izinlerinin sadece –rwx olacağı anlaşılıyor
Varsayılan Dosya/Dizin İzinleri Örnekler: chmod + x dosya (herkese çalıştırma izni verilir) chmod u+rwx dosya (dosya sahibine tüm haklar verilir) chmod g-wx dosya (dosya grubundan yazma ve çalıştırma iznini kaldırır) chmod u+rwx, g+rx, o+x dosya (dosya sahibine tüm izinler, gruba okuma ve çalıştırma izni, diğer kullanıcılara çalıştırma izni verilir) # ls -l install.log -rw-rw---- ı root root Feb 24 11:36 install.log # chmod u+rw, g-w, o+r install.log # ls –l install.log -rw-r—r-- l root root Feb 24 11:36 install.log #
Dosya sahibinin değiştirilmesi chown yeni sahibinin ismi dosya veya dizin.... Bu komutu çalıştırabilmek için kullanıcının dosya üzerinde gerekli izinlere sahip olması gerekiyor. Mesela : $ ls – l muh.dat -rwxrwx--- 1 begum muhasebe 5743 Nov 13 12:11 muh.dat $ chown burak muh.dat $chown burak * Grubun değiştirilmesi chgrp yeni sahibinin ismi dosya veya dizin.... $ ls – l muh.dat -rwxrwx--- 1 begum muhasebe 5743 Nov 13 12:11 muh.dat $ chgrp test muh.dat
Kullanıcı maskesi Linux’ta bir dizin veya dosya yaratılırken, otomatik olarak sistem tarafından izinleri ayarlanır. -Dosyalar için rw-rw-rw = 666 şeklindedir. -Dizinler için rwxrwxrwx = 777 şeklindedir Kullanıcının isteğine bağlı bir maske ouşturularak sistem kabullerini değiştirebilir. Maskeleme işlemi yapmak üzere umask komutu kullanılır =22 $umask 0022 $ls –l test -rw-r--r– 1 muh usr 770 Oct 13 2:48 test
Link Dosyaları ve İzinler Link dosyalarının izinlerine bakıldığında herkese, tüm izinlerin olduğu görülür. Ama Bu dosyalar aslında hedef gösterdikleri dosyanın izinlerini kullanırlar. # ls -i /etc/rndc.key Lrwxrwxrwx l root root 30 Feb 24 11:34 /etc/rndc.key -> /var/named/chroot/etc/rndc.key # ls -i /var/named/chroot/etc/rndc.key #