İlan

Yani sen Beğendiğiniz bir Linux lezzeti buldum, ancak şimdi kafa karıştırıyorsunuz çünkü terminal komutları ve Linux dosya izinleri hakkında en ufak bir ipucuna sahip değil misiniz?

Veya bir Linux sunucusunda barındırılan bir web siteniz var ve yalnızca bazı komut satırı sihirleriyle çözülebilecek bazı dosya izni sorunları ile karşılaşıyorsunuz.

Ne olursa olsun, biri öğrenmek için en temel Linux komutları Linux A-Z - Bilmeniz Gereken 40 Temel KomutLinux, Windows ve Mac için göz ardı edilen üçüncü tekerlektir. Evet, son on yılda, açık kaynak kodlu işletim sistemi çok fazla çekiş kazandı, ancak hala dikkate alınmaktan çok uzak ... Daha fazla oku küçük ama güçlü bir komut chmod. Ancak komutun ne yaptığını açıklamadan önce, Linux'un dosya güvenliğini nasıl ele aldığı hakkında biraz bilgi sahibi olmalıyız.

Linux Dosya İzinlerinin Temelleri

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

Her dosyanın bir

instagram viewer
sahipdosyanın "kullanıcı sınıfını" belirler. Her dosyanın ayrıca bir grupdosyanın "grup sınıfını" belirler. Aynı gruba ait olmayan ve aynı gruba ait olmayan tüm sistem kullanıcılarının diğerleri.

Unix benzeri sistemlerde bulunan tüm dosyaların üç sınıfa da atanmış izinleri vardır ve bunlar belirtilen dosya için söz konusu sınıflar tarafından hangi eylemlerin gerçekleştirilebileceğini belirler.

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

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

  • Dosya sahibi dosyayı okuyabilir, yazabilir ve yürütebilir.
  • Grup dosyayı okuyabilir, yazabilir ve yürütebilir.
  • Başka herkes dosyayı okuyabilir, yazabilir ve yürütebilir.

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

İlk format denir sembolik gösterim, 10 karakterlik bir dize: dosya türünü temsil eden bir karakter, ardından dokuz karakter dosyanın okuma (r), yazma (w) ve yürütme (x) izinlerini sahip, grup ve diğerleri. İzin verilmezse, tire işareti (-) kullanılır.

Örneğin:

-rwxr-xr--

Bu, sahibinin 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 herkes için okuma izinleri.

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

  • 0 izinlere izin verilmediği anlamına gelir.
  • Sınıf dosyayı yürütebiliyorsa +1.
  • Sınıf dosyaya yazabilirse +2.
  • Sınıf dosyayı okuyabilirse +4.

Diğer bir deyişle, her basamak değerinin anlamı şu şekildedir:

  • 0: İzin yok
  • 1: Yürüt
  • 2: Yaz
  • 3: Yazma ve yürütme
  • 4: Oku
  • 5: Okuma ve yürütme
  • 6: Okuma ve yazma
  • 7: Okuma, yazma ve yürütme

Yukarıdaki örnek (-rwxr-xr--) sayısal gösterimde 754 olur.

Kısacası Linux dosya izinleri.

Chmod Nedir?

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

Karıştırmamak chownUnix benzeri sistemlerde “sahibini değiştir” anlamına gelen ve bir dosyanın sahipliğini başka bir kullanıcıya atamanıza izin veren başka bir sistem düzeyi komutudur veya chgrp"grubu değiştir" anlamına gelir ve farklı bir gruba bir dosya atar. Bunları bilmek önemlidir, ancak chmod kadar yaygın olarak kullanılmaz.

Chmod 644 anlamı ne?

Bir dosyanın izinlerini 644 olarak ayarlamak, dosyayı yalnızca sahibi dosyaya erişebilir ve değiştirebilir. herkes yalnızca değiştirmeden erişebilir ve hiç kimse dosyayı çalıştıramaz; sahip. Bu, esnekliği güvenlikle dengelediğinden herkesin erişebildiği dosyalar için ideal ayardır.

Chmod 755 anlamı ne?

Bir dosyanın izinlerini 755 olarak ayarlamak, temel olarak 644 ile aynı şeydir, ancak herkesin yürütme izinleri de vardır. Bu genellikle genel kullanıma açık dizinler için kullanılır, çünkü bir dizine geçmek için yürütme iznine ihtiyaç vardır.

Chmod 555 anlamı ne?

Bir dosyanın izinlerini 555 olarak ayarlamak, dosyayı sistemin süper kullanıcısı dışında hiç kimse tarafından değiştirilemez hale getirir (Linux süper kullanıcısı hakkında daha fazla bilgi edinin SU Nedir ve Linux'u Etkili Kullanmak Neden Önemlidir?Linux SU veya kök kullanıcı hesabı, doğru kullanıldığında yardımcı olabilecek veya dikkatsizce kullanıldığında yıkıcı olabilecek güçlü bir araçtır. SU kullanırken neden sorumlu olmanız gerektiğine bakalım. Daha fazla oku ). Bu, 644 kadar yaygın olarak kullanılmaz, ancak bilmek önemlidir, çünkü salt okunur ayar yanlışlıkla yapılan değişiklikleri ve / veya kurcalamayı önler.

Chmod 777 anlamı ne?

Bir dosyanın izinlerini 777 olarak ayarlamak, dosyanın herkesle istediği her şeyi yapmasını sağlar. Bu, özellikle web sunucularında büyük bir güvenlik riskidir! Kelimenin tam anlamıyla herkes dosyaya erişebilir, istediği gibi değiştirebilir ve sistemde yürütebilir. Sahte bir kullanıcı ellerini ele geçirirse, olası hasarı hayal edebilirsiniz.

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

Chmod komutunun basit bir biçimi vardır:

chmod [izinler] [dosya]

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

chmod 644 example.txt

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

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

Bu örnek gibi, sahibini okuma / yazma / yürütme, ancak grup ve diğerleri okuma / yürütme ayarlayan bu örnek gibi birden çok sınıf için izinleri değiştirebilirsiniz:

chmod u = rwx, g = rw, o = rw örnek.txt

Birden çok sınıfa aynı izinleri atarken bunları birleştirebilirsiniz:

chmod u = rwx, git = rw örnek.txt

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

Örneğin, bu emailleri 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 (yani özyinelemeli bir chmod) belirli bir izin kümesi uygulamak istiyorsanız, -R seçeneğini kullanın ve bir dizini hedefleyin:

chmod -R 755 örnek_dizini

Chmod komutu ilk bakışta biraz deli gibi görünse de, aslında oldukça basit ve tamamen mantıklı. Yukarıdakileri anlarsanız, temelde chmod'da ustalaştınız!

Linux Mastering 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, bunlara göz atmanızı öneririz Linux yeni başlayanlar için temiz hileler bunların yanı sıra Asla çalıştırmamanız gereken Linux komutları.

Ama en önemlisi, en iyi şekilde, Ubuntu ve Linux için kapsamlı başlangıç ​​kılavuzu Ubuntu: Başlangıç ​​KılavuzuUbuntu'yu merak mı ediyorsunuz, ama nereden başlayacağınızdan emin değil misiniz? Ubuntu'nun en son sürümüne başlamak için ihtiyaç duyabileceğiniz her şey burada, anlaşılması kolay, basit İngilizce olarak yazılmıştır. Daha fazla oku rahat hissetmek için yeterince tanıdık olmak için bilmeniz gereken her şeyi size öğretir.

Joel Lee'nin bir B.S. Bilgisayar Bilimi ve altı yılı aşkın profesyonel yazma deneyimi. MakeUseOf'un Genel Yayın Yönetmeni.