chmod u+xVe sadece arasındaki fark nedir chmod +x? u+xKomut dosyalarını çalıştırılabilir yapmak için kullanılabilecek bir sürü ders gördüm . Ancak, ihmal etmenin ubir etkisi görünmüyor.
chmod u+xVe sadece arasındaki fark nedir chmod +x? u+xKomut dosyalarını çalıştırılabilir yapmak için kullanılabilecek bir sürü ders gördüm . Ancak, ihmal etmenin ubir etkisi görünmüyor.
Yanıtlar:
Bunu adam sayfası chmodkapsar.
Bu, chmod u+x somefileyalnızca bu dosya yürütme izinlerinin sahibine izin verirken chmod +x somefile, aynı olduğu anlamına gelir chmod a+x somefile.
Chmod man sayfasında diyor ki:
Sembolik bir modun formatı
[ugoa...][[+-=][rwxXstugo...]...][,...]. Virgülle ayrılmış olarak birden fazla sembolik işlem yapılabilir.'Ugoa' harflerinin bir kombinasyonu, hangi kullanıcıların dosyaya erişiminin değiştirileceğini kontrol eder: ona sahip olan kullanıcı (u), dosya grubundaki diğer kullanıcılar (g), dosya grubundaki olmayan diğer kullanıcılar (o), veya tüm kullanıcılar (a). Bunlardan hiçbiri verilmezse, etki 'a' verildi gibi görünür, ancak umask'ta belirlenen bitler etkilenmez.
chmod +x filefarklıdır chmod a+x file- ayrıntılar için Ravexina'nın cevabına bakınız.
Sadece yapmak +xonu bütün bayraklara uygulayacak: [u] ser, [g] roup, [o].
Tip man chmodDaha fazla bilgi için.
Öncelikle bu soruları ve aşağıda verilen cevapları okumanızı öneriyorum:
Bilmeniz gereken tüm gerekli parçaları anlamanıza yardımcı olur.
chmod +xeşittir chmod ugo+x( umaskdeğere göre)chmod a+xeşittir chmod ugo+x( umaskdeğer dikkate alınmadan )Bunun sonucu, chmod a+xherkes için çalıştırılabilir biti (Sahip, Grup, Diğerleri) ayarlamak kolay, değil mi?
Bununla birlikte chmod +x, biraz zor olduğu için, umaskdeğer kullandığını ve bu değere dayanarak xizin verilen herkesi eklediğini söylüyor .
Öyleyse umaskbenim ortamımın ise 0002:
$ umask
0002
$ umask -S
u=rwx,g=rwx,o=rx
xKullanıcıya (sahibine), gruba ve diğerlerine ekleyecektir , bu durumda (çoğu sistem için varsayılan durumdur) tam olarak chmod ugo+xaynı veya aynı chmod a+xveya daha ayrıntılı bir biçimde:
chmod u+x,g+x,o+x
İle chmod u+x,g+x,o+xçıkış arasındaki bağlantıyı bulabilir misiniz umask -S?
Şimdi umaskmevcut kabuğun yerini değiştirelim 0003:
$ umask 0003
$ umask
0003
$ umask -S
u=rwx,g=rwx,o=r
Gördüğünüz gibi şimdi sadece sahibi ve grubu çalıştırılabilir biti alacak, diğerleri değil. Bu chmod +xşimdi chmod u+x,g+xveya eşittir demektir chmod ug+x.
Ben çalıştırırsanız ne olur chmod +wayarladıktan sonra bir dosya üzerinde umaskhiç 0003?
Daha önce olduğu gibi aynı, sadece etkiler userve group3 de yazma izni (2) kaldırır çünkü dosyanın.
Gibi biraz kaldırırken aynı etkiye sahiptir chmod -w:
$ mkdir test
$ stat -c %A test
drwxrwxr-x
$ umask
0002
$ chmod +w test
$ stat -c %A test
drwxrwxr-x
$ chmod a+w test
$ stat -c %A test
drwxrwxrwx
$ chmod -w test
chmod: test/: new permissions are r-xr-xrwx, not r-xr-xr-x
$ stat -c %A test
dr-xr-xrwx
chmod u+x dosyayı kullanıcı için çalıştırılabilir hale getirir (grup sahibi ya da "diğer" tarafından zaten çalıştırılabilir olsa da, dosyayı yalnızca kullanıcı için ekleyecektir).
chmod +xveya chmod a+x('all plus çalıştırılabilir bit') dosyayı herkes tarafından çalıştırılabilir yapar.
Bunu bir dizine yaparsanız, dizini aranabilir hale getirir. Yani, + x izniniz olan bir dizinin içeriğini listeleyebilirsiniz.
chmod u+x fileyoksayılırken yürütülebilir dosyaya, dosya sahibine eklemek anlamına gelir umask(Modunuz ayarlanacak, soru yok).
chmod +x filegöz önünde bulundurarak sahibi, grubu ve diğerleri için çalıştırılabilir biraz eklemek anlamına gelir umask(İlk kontrol umasksonra mods uygulamak, bu umask değerini dayalı farklı etkileri olabilir).
iki dosya oluşturalım:
$ touch file1 file2
$ ls -l file1 file2
-rw-rw-rw- 1 ravexina ravexina 0 Aug 5 01:45 file1
-rw-rw-rw- 1 ravexina ravexina 0 Aug 5 01:45 file2
Şimdi ayarlamak umaskiçin "111" çalıştırılabilir parçaları kaldırmak için: umask 111.
$ chmod u+x file1
$ chmod +x file2
$ ls -l file1 file2
-rwxrw-rw- 1 ravexina ravexina 0 Aug 5 01:47 file1
-rw-rw-rw- 1 ravexina ravexina 0 Aug 5 01:47 file2
Gördüğünüz gibi chmodgöz ardı umaskve dosya1 o umask'ı değerini dikkate çünkü ancak ikincisi hiçbir şey yapmadı sahibi için çalıştırılabilir ısırmış.