Linux Komutu setfaclını öğrenin

Setfacl yardımcı programı , dosya ve dizinlerin Erişim Kontrol Listelerini (ACL) ayarlar. Komut satırında , bir dizi komut , bir dizi dosya tarafından takip edilir (sırayla başka bir komut dizisi takip edilebilir).

-m ve -x seçenekleri komut satırında bir ACL bekler. Çoklu ACL girişleri virgül karakterler (`, ') ile ayrılır. -M ve -X seçenekleri bir dosyadan veya standart girişten bir ACL okuyor. ACL giriş formatı, ACL GİRİŞLER bölümünde açıklanmıştır.

--set ve --set dosya seçenekleri bir dosyanın veya dizinin ACL'sini ayarlar. Önceki ACL değiştirildi. Bu işlem için ACL girdileri izinleri içermelidir.

-m (--modify) ve -M (--modify-file) seçenekleri bir dosyanın veya dizinin ACL'sini değiştirir. Bu işlem için ACL girdileri izinleri içermelidir.

-x (--remove) ve -X (--remove dosyası) seçenekleri, ACL girişlerini kaldırır. POSIXLY_CORRECT tanımlanmadığı sürece, perms alanı olmayan sadece ACL girişleri parametre olarak kabul edilir.

-M ve -X seçeneklerini kullanarak dosyadan okurken, setfacl, getfacl çıktısını üretir. Satır başına en fazla bir ACL girişi vardır. Bir Pound işaretinden sonra (`# '), satırın sonuna kadar olan her şey bir yorum olarak ele alınır.

Setfacl, ACL'leri desteklemeyen bir dosya sisteminde kullanılıyorsa, setfacl dosya modu izin bitleri üzerinde çalışır. ACL izin bitlerine tam olarak sığmazsa, setfacl ACL'yi olabildiğince yakından yansıtmak için dosya modu izin bitlerini değiştirir, standart hataya bir hata iletisi yazar ve 0'dan büyük bir çıkış durumuyla döner.

ÖZET

setfacl [-bkndRLPvh] [{-m | -x} acl_spec] [{-M | -X} acl_file] dosya ...

setfacl --restore = dosya

İZİNLER

CAP_FOWNER yeteneğine sahip dosya sahibi ve süreçleri, bir dosyanın ACL'lerini değiştirme hakkına sahiptir. Bu dosya moduna erişmek için gerekli izinlere benzer. (Şu anki Linux sistemlerinde root, CAP_FOWNER özelliğine sahip tek kullanıcıdır.)

SEÇENEKLER

-b, --remove-all

Tüm genişletilmiş ACL girişlerini kaldırın. Sahibin, grubun ve diğerlerinin temel ACL girişleri korunur.

-k, --remove-varsayılan

Varsayılan ACL'yi kaldırın. Varsayılan ACL yoksa, uyarı verilmez.

-n, - maske

Etkili hak maskesini yeniden hesaplamayın. Setfacl'in varsayılan davranışı, bir maske girişi açıkça belirtilmedikçe, ACL maskesi girişini yeniden hesaplamaktır. Maske girişi, sahip olma grubunun tüm izinlerinin birleşimine ve tüm adlandırılmış kullanıcı ve grup girişlerine ayarlanır. (Bunlar maske maskesi tarafından etkilenen girdilerdir).

--mask

Bir ACL maskesi girişi açıkça verilmiş olsa bile, etkili hak maskesini yeniden hesaplayın. ( -n seçeneğine bakın.)

-d, --default

Tüm işlemler Varsayılan ACL'ye uygulanır. Giriş kümesindeki normal ACL girişleri Varsayılan ACL girişlerine yükseltilir. Giriş kümesindeki varsayılan ACL girişleri atılır. (Bu olursa bir uyarı verilir).

--restore = dosya

Getfacl -R 'veya benzeri tarafından oluşturulan bir izin yedeğini geri yükleyin. Tam bir dizin alt ağacının tüm izinleri, bu mekanizma kullanılarak geri yüklenir. Giriş sahibi sahip yorumları veya grup yorumları içeriyorsa ve setfacl root tarafından çalıştırılıyorsa, tüm dosyaların sahibi ve sahibi de geri yüklenir. Bu seçenek '--test' dışındaki diğer seçeneklerle karıştırılamaz.

--Ölçek

Test modu. Herhangi bir dosyanın ACL'lerini değiştirmek yerine, ortaya çıkan ACL'ler listelenir.

-R, - iyimser

Tüm dosya ve dizinlere işlemleri tekrarlı olarak uygulayın. Bu seçenek `-restore 'ile karıştırılamaz.

-L, --olojik

Mantıksal yürüyüş, sembolik linkleri takip edin. Varsayılan davranış, sembolik bağlantı argümanlarını takip etmek ve alt dizinlerde karşılaşılan sembolik bağlantıları atlamaktır. Bu seçenek `-restore 'ile karıştırılamaz.

-P, --physical

Fiziksel yürüyüş, tüm sembolik bağlantıları atla. Bu ayrıca sembolik link argümanlarını atlar. Bu seçenek `-restore 'ile karıştırılamaz.

version

Setfacl sürümünü yazdırın ve çıkın.

--yardım et

Komut satırı seçeneklerini açıklayan yardım yazdır.

Komut satırı seçeneklerinin sonu. Kalan tüm parametreler, bir tire ile başlasalar bile dosya isimleri olarak yorumlanır.

Dosya adı parametresi tek bir tire ise, setfacl standart girişten bir dosya listesi okur.

ACL GİRİŞLERİ

Setfacl yardımcı programı aşağıdaki ACL giriş biçimlerini tanır (açıklık için eklenen boşluklar):

[d [efault]:] [u [ser]:] uid [: perms ]

Adlandırılmış bir kullanıcının izinleri. UID boşsa dosya sahibinin izinleri.

[d [efault]:] g [roup]: gid [: perms ]

Bir adlandırılmış grubun izinleri. Gid boşsa sahip olma grubunun izinleri.

[d [efault]:] m [sor] [:] [: perms ]

Etkin haklar maskesi

[d [efault]:] o [ther] [:] [: perms ]

Başkalarının izinleri.

Sınırlayıcı karakterler ile sınırlayıcı olmayan karakterler arasındaki boşluk dikkate alınmaz.

İzinleri içeren uygun ACL girişleri, değişiklik ve ayar işlemlerinde kullanılır. (seçenekler -m , -M , --set ve --set dosyası ). Perms alanı olmayan girişler girişlerin silinmesi için kullanılır (seçenekler -x ve -X ).

UID ve gid için bir isim ya da bir sayı belirtebilirsiniz.

Perms alanı, izinleri gösteren karakterlerin birleşimidir: read (r) , write (w) , execute (x) , sadece dosya bir dizinse veya bazı kullanıcı (X) için yürütme iznine sahipse çalıştır. Alternatif olarak, perms alanı bir sekizlik basamak olabilir (0-7).

OTOMATİK OLARAK OLUŞTURULAN GİRİŞLER

Başlangıçta, dosyalar ve dizinler, sahip, grup ve diğerleri için yalnızca üç temel ACL girdisini içerir. Bir ACL'nin geçerli olması için tatmin edilmesi gereken bazı kurallar vardır:

*

Üç temel giriş kaldırılamaz. Bu temel giriş türlerinin her birinin tam bir girişi olmalıdır.

*

Bir ACL, adlandırılmış kullanıcı girdileri veya adlandırılmış grup nesneleri içerdiğinde, aynı zamanda etkili bir hak maskesi içermelidir.

*

Bir ACL herhangi bir Varsayılan ACL girişi içerdiğinde, üç Varsayılan ACL baz girişi (varsayılan sahip, varsayılan grup ve varsayılan diğerleri) de mevcut olmalıdır.

*

Varsayılan bir ACL, adlandırılmış kullanıcı girişleri veya adlandırılmış grup nesneleri içerdiğinde, varsayılan bir etkin hak maskesi de içermelidir.

Kullanıcının bu kuralları sağlamasına yardımcı olmak için, setfacl aşağıdaki koşullar altında mevcut girişlerden girişler oluşturur:

*

Bir ACL adlandırılmış kullanıcı veya adlandırılmış grup girdileri içeriyorsa ve herhangi bir maske girişi yoksa, grup girişi ile aynı izinleri içeren bir maske girişi oluşturulur. -n seçeneği belirtilmedikçe, maske girdisi izinleri, maske girişinden etkilenen tüm izinlerin birleşimini de içerecek şekilde ayarlanır. ( -n seçeneği açıklamasına bakın).

*

Varsayılan bir ACL girişi oluşturulduysa ve Varsayılan ACL sahip, sahip grup veya başka bir giriş içermiyorsa, ACL sahibinin, sahip olan grubun veya başkalarının girişinin bir kopyası Varsayılan ACL'ye eklenir.

*

Varsayılan bir ACL adlandırılmış kullanıcı girdileri veya adlandırılmış grup girdileri içeriyorsa ve herhangi bir maske girişi yoksa, varsayılan Varsayılan ACL'nin grup girişi ile aynı izinleri içeren bir maske girişi eklenir. -n seçeneği belirtilmedikçe, maske girişinin izinleri, maske girişinden etkilenen tüm izinlerin birliği de dahil olmak üzere daha da ayarlanabilir. ( -n seçeneği açıklamasına bakın).

ÖRNEKLER

Ek bir kullanıcı okuma erişimi vermek

setfacl -mu: lisa: r dosya

Tüm gruplardan ve tüm adlandırılmış kullanıcılardan (etkin haklar maskesini kullanarak) yazma erişimini iptal etme

setfacl -mm :: rx dosyası

Bir dosyanın ACL'sinden adlandırılmış bir grup girdisini kaldırma

setfacl -xg: personel dosyası

Bir dosyanın ACL'sini diğerine kopyalama

getfacl dosyası1 | setfacl --set dosyası = - dosya2

ACL erişiminin varsayılan ACL'ye kopyalanması

getfacl -a dir | setfacl -d -M- dir

POSIX 1003.1e TASLAK STANDARDINA YAPILANDIRMA 17

POSIXLY_CORRECT ortam değişkeni tanımlanmışsa, setfacl varsayılan davranışı aşağıdaki gibi değişir: Tüm standart olmayan seçenekler devre dışı bırakılmıştır. `` Default: '' öneki devre dışı bırakıldı. -x ve -X seçenekleri de izin alanlarını kabul eder (ve bunları göz ardı eder).

AYRICA BAKINIZ

umask (1),