Линуксийн командын setfacl сурах

Setfacl нь файлууд болон сангуудын Хандалтын Хяналтын Жагсаалтууд (ACLs) өгдөг . Тушаалын мөрөнд тушаалын дараалал нь файлуудын дарааллаас (өөрөөр хэлбэл өөр дарааллаар тушаалуудыг дагаж болно ...).

-m сонголтууд, -x нь тушаалын мөрөөс ACL-г хүлээж байдаг. Олон ACL оруулгууд таслалаар тусгаарлагддаг (`, '). Хувилбарууд -M, ба -X нь ACL-ыг файл эсвэл стандарт оролтоос уншина. ACL-ийн оролтын хэлбэрийг Хэсэг ACL ENTRIES хэсэгт тайлбарласан байгаа.

--set ба --set-файлын тохируулгууд нь ACL файлын эсвэл санг тохируулна. Өмнөх ACL-г солино. Энэ үйл ажиллагааны ACL оруултад зөвшөөрөл авах шаардлагатай.

-m (--modify) болон -M (--modify-file) сонголтууд нь файл эсвэл директорын ACL -ийг өөрчлөх болно. Энэ үйл ажиллагааны ACL оруултад зөвшөөрөл авах шаардлагатай.

-x (--remove) болон -X (--remove-file) сонголтууд ACL элементүүдийг устгана. POSIXLY_CORRECT тодорхойлогдохгүй л бол патентийн талбаргүйгээр ACL оруулгууд нь параметрийн хувьд хүлээн зөвшөөрөгддөг.

Файлаас -M, болон -X сонголтуудыг ашиглан уншихад setfacl getfacl гаралт үүсгэдэг. Хамгийн ихдээ нэг ACL оруулга байдаг. Pound sign (`# ') тэмдгийн дараа бүх төгсгөлд хүртэл бүх зүйл нь тайлбар байдлаар явагдана.

Хэрэв setfacl нь ACL-үүдийг дэмждэггүй файлын систем дээр ашиглагдвал setfacl файлын горимын зөвшөөрлийн бит дээр ажилладаг. Хэрэв ACL нь зөвшөөрлийн битүүдэд бүрэн багтахгүй бол setfacl нь ACL-ийг аль болох ойрхон байлгахын тулд файлын горимд зөвшөөрөгдсөн битүүдийг өөрчилж стандарт алдаатай алдааны мэдэгдэлийг бичиж, 0 -с ихээс гарах гарах статус бүхий өгөгдлийг буцаана.

Синнассис

setfacl [-bkndRLPvh] [{-m | -x} acl_spec] [{-M | -X} acl_file] файл ...

setfacl --restore = файл

ЗӨВШӨӨРӨЛ

CAP_FOWNER файлын эзэмшигч болон процессууд нь ACLs файлыг өөрчлөх эрхийг олгодог. Энэ нь файлын горимд хандах шаардлагатай зөвшөөрлүүдтэй төстэй юм. (Одоогийн Линукс систем дээр root нь CAP_FOWNER боломжоороо хэрэглэгч юм.)

OPTIONS

-b, - бүгдийг

Бүх өргөтгөсөн ACL оруулгуудыг устгана уу. Эзэмшигч, бүлэг, бусад хүмүүсийн үндсэн ACL бүртгэлийг үлдээнэ.

-k, --remove-default

Үндсэн ACL устгах. Хэрэв анхдагч ACL байхгүй бол ямар ч анхааруулга гарахгүй.

-n, - бус-маск

Үр дүнтэй эрхийн массыг дахин тооцоолох хэрэггүй. Setfacl-ийн анхдагч төлөв байдал нь маск оруулга шууд илэрхийлэгдээгүй бол ACL маск оруулгыг дахин тооцоолох явдал юм. Маск оруулга нь өөрийн эзэмшлийн группийн бүх зөвшөөрлөөр тохируулагдсан бөгөөд бүх нэртэй хэрэглэгч ба бүлгийн оруулгууд. (Эдгээр нь маск оруулгад нөлөөлсөн оролтууд юм).

- муу

ACL маскын бүртгэл тодорхой байсан ч үр дүнтэй эрхийн маскыг дахин тооцоолох хэрэгтэй. ( -n сонголтыг үз.)

-d, --default

Бүх үйлдэл Default ACL-д хамаарна. Оролтын багц дахь тогтмол ACL оруулгууд нь Default ACL оруулгуудад өргөжсөн байдаг. Оролтын багц дахь үндсэн ACL оруулгууд устгагдана. (Хэрэв тийм бол анхааруулга өгдөг).

--restore = файл

'Getfacl -R' эсвэл үүнтэй төстэй бүтээсэн зөвшөөрлийн нөөцийг сэргээх. Бүрэн хэмжээний лавлах дэд модны бүх зөвшөөрлийг энэ механизм ашиглан сэргээнэ. Хэрэв оролт нь эзэмшигчийн сэтгэгдэл эсвэл бүлгийн тайлбар агуулдаг бол setfacl нь root эрхээр ажилладаг бол эзэмшигч болон эзэмшдэг бүх файлын бүлэг нь сэргээгддэг. Энэ сонголтыг `--ест '-с бусад сонголтуудтай хольж болохгүй.

- Тест

Туршилтын горим. Ямар ч файлуудын ACLs-г өөрчлөхийн оронд ACL-үүдүүд нь жагсаагдсан байна.

-R, - рекурсив

Үйлдлийн системийг бүх файлууд болон сангууд руу рекурсээр ажиллуулаарай. Энэ сонголтыг `--restore 'гэж хольж болохгүй.

-L, --logical

Логик алхалт, симболын холбоосуудыг дага. Анхдагч зан төлөв нь симболын холбоосын аргументуудыг дагаж, дэд сангуудад илрүүлсэн симболын холбоосуудыг алгасах болно. Энэ сонголтыг `--restore 'гэж хольж болохгүй.

-P, - физик

Физик алхалт, бүх тэмдэглэгээний холбоосыг алгасах. Энэ нь симболын холбоосын аргументуудыг алгасах болно. Энэ сонголтыг `--restore 'гэж хольж болохгүй.

- хувилбар

Setfacl болон гарах хувилбарыг хэвлэ.

--Туслаач

Тушаалын мөрний тохируулгуудыг тайлбарлаж хэвлэ.

Тушаалын төгсгөлийн төгсгөл. Үлдсэн параметрүүдийг файлын нэрүүд гэж нэрлэнэ.

Файлын нэрийн параметр нь нэг зураастай бол стандарт оролтоос файлуудын жагсаалтыг setfacl уншдаг.

ACL ENTRIES

Setfacl хэрэгсэл дараах ACL оролтын хэлбэршилтүүдийг (тодорхой харагдахаар оруулсан зай) хүлээн зөвшөөрч байна:

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

Нэртэй хэрэглэгчийн зөвшөөрөл. Хэрвээ хоосон байгаа бол файлын эзэмшигч зөвшөөрөл.

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

Нэртэй бүлгийн зөвшөөрөл. Хэрвээ хоосон байвал хувийн группын зөвшөөрөл.

[d [efault]:] m [асуух] [:] [: perms ]

Үр нөлөөтэй эрх баг

[d [efault]:] o [тэнд] [:] [: perms ]

Бусдын зөвшөөрөл.

Хязгаарлалтын тэмдэгт болон хязгаарлалтын бус тэмдэгтүүдийн хоорондох зай нь үл тоомсорлодог.

АКЛ-ийн оруулгуудыг зөв оруулаад зөвшөөрөгдсөн үйлдлүүдийг өөрчлөх, өөрчлөх боломжтой. (сонголтууд -m , -M , --set болон --set-файл ). Портын талбаргүй оруулгууд нь бүртгэлийг устгахад ашигладаг (options -x and -X ).

Uid ба gid-ийн хувьд та нэр эсвэл дугаарыг зааж өгч болно.

Perms талбар нь зөвшөөрлүүдийг илэрхийлсэн тэмдэгтүүдийн хослол юм (r) , бичих (w) , гүйцэтгэх (x) , хэрэв зөвхөн файлын сан юм уу эсвэл зарим хэрэглэгч (X) -д аль хэдийн ажиллуулах зөвшөөрөл байгаа бол гүйцэтгэх боломжтой. Өөрөөр, perms талбар нь octal (0-7) байж болно.

АРГА ХЭМЖЭЭ БОЛОМЖ

Эхнийх нь, файлууд болон сангууд нь эзэмшигч, бүлэг, бусад хүмүүст зөвхөн ACL үндсэн гурван бүртгэлийг агуулсан байна. ACL хүчинтэй байх ёстой зарим дүрмүүд байдаг:

*

Гурван үндсэн бичилтийг устгаж болохгүй. Эдгээр үндсэн оролтын төрөл тус бүрээс яг нэг оруулга байх ёстой.

*

ACL-г нэртэй хэрэглэгчийн бүртгэл эсвэл нэрлэсэн бүлгийн обьектууд агуулж байвал, энэ нь мөн үр дүнтэй эрхийн маск агуулсан байх ёстой.

*

ACL нь анхдагч ACL оруулгуудыг агуулсан хэдий ч үндсэн ACL үндсэн гурван бүртгэл (анхдагч эзэн, анхдагч бүлэг, бусдын анхдагч бүлэг) бас байх ёстой.

*

Анхны ACL нэртэй хэрэглэгчийн оруулгууд эсвэл нэрлэсэн бүлгийн обьектуудыг агуулдаг бол энэ нь үндсэн үйлдлийн эрхийн баг агуулдаг.

Хэрэглэгчдэд эдгээр дүрмийг баталгаажуулахад туслахын тулд setfacl нь дараах нөхцлүүдэд байгаа оруулгуудын оруулгуудыг үүсгэдэг:

*

Хэрэв ACL нэртэй хэрэглэгч эсвэл нэртэй бүлгийн оруулгуудыг агуулж байгаа бөгөөд баг оруулаагүй бол бүлгийн оруулга үүсгэхтэй адил зөвшөөрлүүд агуулсан баганын оруулга. Хэрэв -n тохируулга өгөгдөөгүй л бол маск оруулгын зөвшөөрлүүд нь маск оруулгад нөлөөлсөн бүх зөвшөөрлүүдийн холбоосыг оруулахаар тохируулагдсан байдаг. ( -n сонголтыг харна уу).

*

Хэрэв анхдагч ACL бүртгэл үүсгэгдсэн бөгөөд Default ACL нь эзэн байхгүй, бүлэг эзэмшдэг, эсвэл бусад оруулганд агуулагдаагүй бол ACL эзэмшигчийн хувь, бүлэг эзэмшдэг эсвэл бусад оруулгатай өгөгдлийн ID нь Default ACL-д нэмэгдсэн.

*

Хэрэв анхдагч ACL нэртэй хэрэглэгчийн оруулгууд эсвэл бүлгийн нэрс оруулагдсан байгаа бөгөөд ямар ч маск оруулга байхгүй байгаа бол анхдагчаар ижил зөвшөөрөл агуулсан баганын оруулга Default ACL бүлгийн оруулга нэмдэг. Хэрэв -n тохируулга өгөгдөөгүй л бол маск оруулгын зөвшөөрлүүд нь маск оруулгад нөлөөлсөн бүх зөвшөөрлүүдийн холбоонд нэмэлт өөрчлөлт хийдэг. ( -n сонголтыг харна уу).

Жишээ нь

Нэмэлт хэрэглэгчийг унших эрхийг өгөх

setfacl -mu: lisa: r файл

Бүх бүлгүүд болон бүх нэртэй хэрэглэгчээс бичих эрхийг хүчингүй болгох (үр дүнтэй эрхийн маск ашиглан)

setfacl -mm :: rx файл

Файлын ACL-аас нэрлэгдсэн бүлгийн бүртгэлийг устгах

setfacl -xg: staff файл

ACL-ийг нэг файлаас нөгөө файл уруу хуулна

getfacl file1 | setfacl --set - file = - file2

ACL руу Default ACL руу хандах нь

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

POSIX 1003.1e DRAFT STANDARD-д нэвтрүүлэх

Хэрэв орчны хувьсагч POSIXLY_CORRECT тодорхойлогддог бол setfacl-ийн анхдагч төлөв байдал дараах байдлаар өөрчлөгдсөн: Бүх стандарт бус тохиргоог идэвхгүй болгодог. "Default: '' угтварыг идэвхгүй болгосон байна. -x болон -X сонголтууд зөвшөөрлийн талбаруудыг (мөн тэдгээрийг үл хайхаар) зөвшөөрдөг.

БҮЛЭГ

umask (1),