Bursa Bilgisayar

Linux İşletim Sistemlerinde Dosya ve Dizin Yapısı

Merhaba arkadaşlar bu makalemizde sizlere linux işletim sistemlerinde dosya ve dizin yapısına dair ayrıntılı bilgiler vermeye çalışacağız. UNIX altında bazı karakterlerin özel anlamları vardır. Dizin ve dosya isimlerinin başında nokta olması durumunda bu dosyalar gizli dosya haline gelir ve parametresiz yazılan ls komutuyla görünmez.

Dosya ve dizin isimleri 255 karakteri aşamazlar.

Sisteme girince önceden tanımlanmış bir dizin altında bulunursunuz. Bu dizin normal kullanıcılar için genellikle /home/ ve ardından gelen kullanıcı dizini ismidir. Bulunduğunuz dizinin ismini görmek için pwd (print working directory) yazın. Temel dosya ve dizin kavramları hakkında detaylı bilgi alabilmek için MS-DOS veya, en iyisi bir UNIX kitabı edinin.

$ pwd
/home/gorkem
$

UNIX komut yapısı DOS’a çok benzer. Dizin değiştirmek için cd , dizin yaratmak için mkdir komutlarını sistemde sıkça kullanılır.

$ cd /
$ pwd
/

Hiyerarşik bir sıraya sahip olan UNIX’te en üstte / dizini (kök dizin) yeralır. Sistemdeki tüm diğer dosya ve dizinler bunun altında toplanırlar.

~

işareti, kullanıcının ev dizinini gösterir. Ev dizinine geçin ve mkdir komutu ile benim isimli bir dizin yaratın. Dizini patikasını, bir başka deyişle kök dizininden itibaren ismini vererek de yaratabilirsiniz.

$ cd ~
$ pwd
/home/gorkem
$ mkdir /home/gorkem/benim

Dosya Listesi ve İçeriklerinin Görüntülenmesi

Dosya ve dizinleri görebilmek için ls komutu kullanılır. Parametresiz yazarak bulunduğunuz dizin hakkında bilgi alın. Linux altında değişik uzantılı dosyalar okunabilirliği artırmak amacıyla farklı renkte görülecektir. /etc/DIR_COLORS dosyası, dosya renklerini ayarlar. Bu dosyayı değiştirerek belirli dosyalar için istenilen renkleri göstermesini sağlayabilirsiniz.

linux:~$ ls
README article.txt mail typescript
adres linux perl

ls komutu -a parametresiyle birlikte kullanılırsa normalde görükmeyen ve nokta karakteriyle başlayan dosya ve dizinler de görükür.

linux:~$ ls -a
. .bashrc .term article.txt typescript
.. .kermrc .xinitrc linux
.Xdefaults .less README mail
.bash_history .lessrc adres perl

-l parametresi de dosyalar hakkında tüm bilgiyi verir. Bunlar, dosyanın sahibi, ne zaman yaratıldığı, sahibi ve grubu gibi bilgilerdir. Dosya izinleri hakkında daha geniş bilgi bir sonraki bölümde verilmiştir.

linux:~$ ls -al
total 91
drwxr-xr-x 6 gorkem users 1024 Feb 13 12:56 .
drwxr-xr-x 4 root root 1024 Jan 7 1980 ..
-rw-r–r– 1 gorkem users 390 Feb 13 12:56 .Xdefaults
-rw-r–r– 1 gorkem ftpadm 230 Feb 13 12:57 .bash_history
-rw-r–r– 1 gorkem users 1 Feb 13 12:57 .bashrc
-rw-r–r– 1 gorkem users 163 Nov 24 1993 .kermrc
-rw-r–r– 1 gorkem users 34 Nov 24 1993 .less
-rw-r–r– 1 gorkem users 114 Nov 24 1993 .lessrc
drwxr-xr-x 2 gorkem users 1024 Jan 7 1980 .term
-rw-r–r– 1 gorkem users 87 Feb 13 12:56 .xinitrc
-rw-r–r– 1 gorkem users 26264 Feb 13 12:53 README
-rw-r–r– 1 gorkem users 2795 Feb 13 12:55 adres
-rw-r–r– 1 gorkem users 47970 Feb 13 12:53 article.txt
drwxr-xr-x 2 gorkem users 1024 Feb 13 12:54 linux
drwxr-xr-x 2 gorkem users 1024 Feb 13 12:54 mail
drwxr-xr-x 2 gorkem users 1024 Feb 13 12:54 perl
-rw-r–r– 1 gorkem users 0 Feb 13 12:57 typescript

Yukarıda her iki parametrenin de birleştirilerek birlikte kullanımı yeralmaktadır. Dosyaların içeriklerini görmek için kullanılan birkaç komuttan en pratiği less’tir. Ok tuşları ile dosya içinde hareket edebilir ve q karakteri ile dosyadan çıkarsınız. Dosyanın içeriği birden fazla sayfadan ibaretse dosya sayfalar halinde ekrana gelir. Tüm dosyayı ekrana basmak için cat kullanın.

$ cat README

Bir dosyanın başından veya sonundan itibaren belirli miktarda satırı ekrana getirmek de mümkündür. Bunun için head ve tail komutları kullanıcının hizmetine sunulmuştur.

linux:~$ head -6 README (dosyanin ilk 6 satirini ekrana basar)
This is the README file for the 28 August 1994 public release of the
Info-ZIP group’s portable UnZip zipfile-extraction program (and related
utilities).

unzip512.zip portable UnZip, version 5.12, source code distribution
unzip512.tar.Z same as above, but compress’d tar format

linux:~$ tail -3 README (dosyanin son 3 satirini ekrana getirir)

— Greg Roelofs (Cave Newt), UnZip maintainer/container/explainer and
developer guy, with inspiration from David Kirschbaum

Dosyaların Kopyalanması

Dosyaları kopyalamak için cp ve bir yerden başka bir dizine almak için mv komutu kullanılır. mv komutu, aynı zamanda dosya isimlerini değiştirmek üzere de işletilebilir.

linux:~$ cp article.txt /tmp
(article.txt isimli dosyayi /tmp dizinine kopyala)
linux:~$ mv article.txt /tmp/article
(article.txt isimli dosyayi /tmp dizini altina ismini article olarak degistirerek koy

Kopyalama işlemi sadece dosyalar üzerinde değil, dizinler üzerinde de yapılabilir. Farklı dosya sistemleri üzerinde olmamak kaydıyla bir dizin ve altındaki herşeyi, başka bir dizine kopyalayabilir veya hareket ettirebilirsiniz. Kopyalarken bu işlem için -R parametresi kullanılır, mv komutu için -r parametresine gerek yoktur.

$ cp -R /home/gorkem/temp /tmp
(/home/gorkem/temp dizinini ve icindeki her dosyayi /tmp altina kopyala)
$ mv article.txt ~/benim
(article.txt isimli dosyayi calisma dizini altindaki benim dizinine kopyala)

Dosyaların Silinmesi

Bir daha kullanılmayacak olan dosyalar, rm komutuyla silinebilir. Dosyaları silerken iki kere düşünün, zira Linux altında silinen bir dosyanın geri dönüşü olmaz. Eğer bu tür hataları çok yapıyorsanız rm komutunu -i parametresi ile birlikte kullanın, bu sayede Linux, dosyayı silmeden önce kullanıcının da onayını alır.

linux:~$ rm -i README
rm: remove `README’? y (sileyim mi ?)
linux:~$

Eğer dosya ismi – karakteri ile başlıyor ise, rm komutunu kullandığınız zaman dosya ismi bir parametre olarak algılanacak ve hata verecektir. Bunun için dosya isminden önce — karakterlerini yerleştirin.

linux:~$ rm — -dosya

Bir dizin, boş iken rmdir komutu ile silinebilir, eğer boş değilse bu komut işe yaramaz. Onun yerine rm komutunu -r parametresiyle kullanın.

linux:~$ rm mail
rm: mail: is a directory
linux:~$ rm -rf linux/ (linux dizinini icindekilerle birlikte silinir)

-f parametresi ile kullanıcının onayını almadan tüm dosyaları tek adımda silmek mümkündür. Bulunduğunuz dizindeki tüm dosyaları silmek için * karakterini kullanın.

$ rm *

Related posts

376 thoughts on “Linux İşletim Sistemlerinde Dosya ve Dizin Yapısı

  1. I like what you guys are up also. Such clever work and reporting! Carry on the excellent works guys I¡¦ve incorporated you guys to my blogroll. I think it will improve the value of my site 🙂

  2. I just wanted to construct a simple remark so as to thank you for those superb steps you are placing at this site. My time intensive internet lookup has at the end of the day been paid with reputable facts and strategies to go over with my guests. I would state that that most of us visitors are definitely fortunate to dwell in a useful place with many lovely people with helpful solutions. I feel rather privileged to have used your entire web pages and look forward to plenty of more thrilling moments reading here. Thanks again for everything.

  3. Hi, I do believe this is a great web site. I stumbledupon it 😉 I may return yet again since i have
    bookmarked it. Money and freedom is the best way to change,
    may you be rich and continue to help other people.

  4. Great information. Lucky me I recently found your site by chance (stumbleupon). I have book marked it for later!

  5. Hi mates, how is everything, and what you desire to say about this piece of writing, in my view its really awesome in favor of me.|

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

 Characters available