Chmod Komutu ve Linux Dosya İzinleri Açıklandı

Chmod Komutu ve Linux Dosya İzinleri Açıklandı

Yani hoşunuza giden bir Linux tadı buldunuz, ama şimdi kafanız karıştı çünkü terminal komutları ve Linux dosya izinleri hakkında en ufak bir ipucunuz yok mu?





Veya bir Linux sunucusunda barındırılan bir web siteniz olabilir ve yalnızca bazı komut satırı sihriyle çözülebilecek bazı dosya izni sorunlarıyla karşılaştınız.





Ne olursa olsun, biri öğrenilmesi gereken en temel Linux komutları adı verilen küçük ama güçlü bir komuttur chmod . Ancak komutun ne yaptığını açıklamadan önce, Linux'un dosya güvenliğini nasıl ele aldığını biraz anlamamız gerekiyor.





Linux Dosya İzinlerinin Temelleri

Linux işletim sistemleri aslında Unix benzeri sistemlerdir ( Linux'u Unix'e karşı anlamak ) ve Unix benzeri sistemler dosya izinlerine şu şekilde yaklaşır:

Her dosyanın bir sahip , dosyanın 'kullanıcı sınıfını' belirler. Ayrıca her dosyanın bir grup , dosyanın 'grup sınıfını' belirler. Sahip olmayan ve aynı gruba ait olmayan herhangi bir sistem kullanıcısı, diğerleri .



Unix benzeri sistemlerdeki tüm dosyalar, her üç sınıfa atanmış izinlere sahiptir ve bunlar, söz konusu sınıflar tarafından verilen dosya için hangi eylemlerin gerçekleştirilebileceğini belirler.

Unix benzeri bir sistemde kullanılabilen üç eylem şunlardır: okuman (dosyanın içeriğini açma ve görüntüleme yeteneği), yazı yazmak (bir dosyanın içeriğini açma ve değiştirme yeteneği) ve uygulamak (dosyayı yürütülebilir bir program olarak çalıştırma yeteneği).





Başka bir deyişle, bir dosyanın izinleri şunları belirler:

  • Sahibi dosyayı okuyabilir, yazabilir ve yürütebilir.
  • Grup dosyayı okuyabilir, yazabilir ve yürütebilir.
  • Başka herhangi biri dosyayı okuyabilir, yazabilir ve yürütebilir.

Linux dosya izinleri iki biçimde görüntülenebilir.





İlk biçim denir sembolik gösterim 10 karakterlik bir dize olan : dosya türünü temsil eden bir karakter, ardından dosyanın okuma (r), yazma (w) ve yürütme (x) izinlerini sahip, grup ve diğerleri sırasına göre temsil eden dokuz karakter. İzin verilmiyorsa, tire sembolü (-) kullanılır.

Örneğin:

-rwxr-xr--

Bu, sahibi için okuma, yazma ve yürütme izinlerine sahip normal bir dosya olduğu anlamına gelir; grup için okuma ve yürütme izinleri; ve yalnızca diğer herkes için izinleri okuyun.

İkinci biçim denir sayısal gösterim , her biri sırasıyla kullanıcı, grup ve diğer izinleri temsil eden üç basamaklı bir dizedir. Her basamak 0 ile 7 arasında olabilir ve her basamağın değeri, sınıfın izinlerinin toplanmasıyla elde edilir:

  • 0, izin verilmediği anlamına gelir.
  • +1, eğer sınıf dosyayı çalıştırabilirse.
  • +2 eğer sınıf dosyaya yazabiliyorsa.
  • +4 eğer sınıf dosyayı okuyabiliyorsa.

Başka bir deyişle, her basamak değerinin anlamı şu şekilde sonuçlanır:

  • 0: İzin yok
  • 1: Yürüt
  • 2: Yaz
  • 3: Yaz ve çalıştır
  • 4: Oku
  • 5: Okuyun ve yürütün
  • 6: Oku ve yaz
  • 7: Oku, yaz ve yürüt

Yani yukarıdaki örnek (

-rwxr-xr--

) sayısal gösterimde 754 olur.

Bu, kısaca Linux dosya izinleridir.

Chmod Nedir?

Unix benzeri sistemlerde, chmod 'mod değiştir' anlamına gelen ve bir dosyanın izin ayarlarını manuel olarak değiştirmenize izin veren sistem düzeyinde bir komuttur.

android için en iyi ücretsiz takvim uygulaması

ile karıştırılmaması gereken yemek 'değiştirme sahibi' anlamına gelen ve bir dosyanın sahipliğini başka bir kullanıcıya atamanıza izin veren Unix benzeri sistemlerde başka bir sistem düzeyinde komut olan , veya chgrp 'değişim grubu' anlamına gelir ve farklı bir gruba bir dosya atar. Bunları bilmek önemlidir, ancak chmod kadar yaygın olarak kullanılmazlar.

Chmod 644 Ne Anlama Geliyor?

Bir dosyanın izinlerini 644'e ayarlamak, onu yalnızca sahibinin dosyaya istediği gibi erişip değiştirebilmesini sağlarken, diğer herkes yalnızca değişiklik yapmadan erişebilir ve hiç kimse dosyayı çalıştıramaz --- sahibi bile. Bu, esnekliği güvenlikle dengelediği için herkesin erişebileceği dosyalar için ideal ayardır.

2019 güncellemesinden sonra Windows 10 yavaşlıyor

Chmod 755 Ne Anlama Geliyor?

Bir dosyanın izinlerini 755 olarak ayarlamak, herkesin yürütme izinlerine sahip olması dışında temelde 644 ile aynı şeydir. Bu, genel olarak erişilebilir dizinler için kullanılır, çünkü bir dizine geçmek için yürütme iznine ihtiyaç vardır.

Chmod 555 Ne Anlama Geliyor?

Bir dosyanın izinlerini 555'e ayarlamak, dosyanın sistemin süper kullanıcısı dışında hiç kimse tarafından değiştirilemeyecek şekilde ayarlanmasını sağlar (Linux süper kullanıcısı hakkında daha fazla bilgi edinin). Bu, 644 kadar yaygın olarak kullanılmaz, ancak salt okunur ayarı yanlışlıkla değişiklikleri ve/veya kurcalamayı önlediğinden bilmek yine de önemlidir.

Chmod 777 Ne Anlama Geliyor?

Bir dosyanın izinlerini 777 olarak ayarlamak, herkesin dosyayla istediği her şeyi yapabilmesini sağlar. Bu, özellikle web sunucularında çok büyük bir güvenlik riskidir! Kelimenin tam anlamıyla herkes dosyaya erişebilir, istediği gibi değiştirebilir ve sistemde çalıştırabilir. Hileli bir kullanıcının eline geçerse olası hasarı hayal edebilirsiniz.

Linux'ta Chmod Nasıl Kullanılır

chmod komutunun basit bir biçimi vardır:

chmod [permissions] [file]

İzinler, tüm sınıflar için belirli izinler atamak istediğinizde kullanabileceğiniz en iyi biçim olan sayısal gösterimde verilebilir:

chmod 644 example.txt

İzinler, yalnızca belirli bir sınıfın izinlerini değiştirmek istediğinizde yararlı olan sembolik gösterimde de verilebilir. Örneğin:

chmod u=rwx example.txt
chmod g=rw example.txt
chmod o=rw example.txt

Sahibini okuma/yazma/yürütme, ancak grup ve diğerlerinin okuma/yürütme işlemlerini ayarlayan bu örnekte olduğu gibi, birden çok sınıf için izinleri değiştirebilirsiniz:

chmod u=rwx,g=rw,o=rw example.txt

Aynı izinleri birden çok sınıfa atarken, bunları birleştirebilirsiniz:

chmod u=rwx,go=rw example.txt

Ancak, yalnızca belirli bir sınıf için belirli bir eylem için izin eklemek veya kaldırmak istediğinizde sembolik gösterim kullanmanın güzelliği parlar.

Örneğin, bu ekler dosyanın sahibi için yürütme izni:

chmod u+x example.txt

Ve bu kaldırır diğer kullanıcılar için yazma ve yürütme izinleri:

chmod o-wx example.txt

Son olarak, belirli bir dizindeki tüm dosya ve klasörlere belirli bir dizi izin uygulamak istiyorsanız (yani özyinelemeli bir chmod), -R seçeneğini kullanın ve bir dizini hedefleyin:

chmod -R 755 example_directory

chmod komutu ilk bakışta biraz çılgınca görünse de aslında oldukça basit ve tamamen mantıklı. Yukarıdakileri anlıyorsanız, temel olarak chmod'da ustalaştınız!

Linux'ta Uzmanlaşma Hakkında Daha Fazla Bilgi Edinin

chmod, chown ve chgrp gibi komutlar Linux buzdağının sadece görünen kısmıdır. İşletim sisteminde yeniyseniz, Linux'a yeni başlayanlar için bu güzel hilelere ve asla çalıştırmamanız gereken Linux komutlarına göz atmanızı öneririz.

Ama en önemlisi, şuraya göz atarak en iyisini yaparsınız: Ubuntu ve Linux için kapsamlı başlangıç ​​kılavuzu Başlamak için bilmeniz gereken her şeyi size öğretecek ve kendinizi rahat hissedecek kadar aşina olacaksınız.

Paylaş Paylaş Cıvıldamak E-posta VirtualBox Linux Makinelerinizi Güçlendirmek için 5 İpucu

Sanal makinelerin sunduğu düşük performanstan bıktınız mı? İşte VirtualBox performansınızı artırmak için yapmanız gerekenler.

Sonrakini Oku
İlgili konular
  • Linux
  • Linux Komutları
Yazar hakkında Joel Lee(1524 Makale Yayınlandı)

Joel Lee, 2018'den beri MakeUseOf'un Genel Yayın Yönetmenidir. Bilgisayar Bilimleri alanında ve dokuz yılı aşkın profesyonel yazma ve düzenleme deneyimi.

Joel Lee'dan Daha Fazla

Haber bültenimize abone ol

Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!

Abone olmak için buraya tıklayın