למד את הפקודה לינוקס setfacl

כלי השירות Setfacl מגדיר רשימות בקרת גישה (ACL) של קבצים וספריות. בשורת הפקודה , רצף של פקודות ואחריו רצף של קבצים (אשר בתורו יכול להיות ואחריו רצף אחר של פקודות, ...).

האפשרויות -m ו- x מצפות ל- ACL בשורת הפקודה. רשומות ACL מרובות מופרדות באמצעות תווי פסיק (`, '). האפשרויות -M, ו- X - AC לקרוא ACL מקובץ או מתוך קלט רגיל. תבנית כניסת ACL מתוארת בסעיף ACL ENTRIES.

האפשרויות - Set ו- set-file קובעות את רשימת ה- ACL של קובץ או ספריה. ה- ACL הקודם מוחלף. ערכי ACL עבור פעולה זו חייבים לכלול הרשאות.

האפשרויות -m (--modify) ו- M (--modify-file) לשנות את ה- ACL של קובץ או ספריה. ערכי ACL עבור פעולה זו חייבים לכלול הרשאות.

האפשרויות -x (--remove) ו- -X (- הסר-קובץ) מסירות קודי ACL. רק ערכי ACL ללא שדה perms מתקבלים כפרמטרים, אלא אם כן מוגדר POSIXLY_CORRECT.

בעת קריאת קבצים באמצעות -M, ו- X אפשרויות, setfacl מקבל את הפלט getfacl מייצרת. לכל רשומה יש שורה אחת לכל היותר. לאחר סימן פאונד ('#'), הכל עד סוף השורה מטופל כהערה.

אם setfacl משמש במערכת קבצים שאינה תומכת ברשימת בקרת גישה, setfacl פועל על סיביות הרשאות מצב הקובץ. אם ה- ACL אינו מתאים לגמרי לביטורי ההרשאות, setfacl משנה את סיביות הרשאות מצב הקובץ כדי לשקף את ACL באופן הקרוב ביותר, כותב הודעת שגיאה לשגיאה רגילה וחוזר עם סטטוס יציאה גדול מ -0.

תַקצִיר

setfacl [-bkndRLPvh] [{-m | | -x acl_spec] [{-M ... | -XX} קובץ acl_file] ...

setfacl - Restore = קובץ

הרשאות

בעל הקובץ ותהליכים המסוגלים CAP_FOWNER מקבלים את הזכות לשנות רשימות בקרת גישה של קובץ. דבר זה מקביל להרשאות הדרושות לגישה למצב הקובץ. (במערכות Linux הנוכחיות, השורש הוא המשתמש היחיד עם יכולת CAP_FOWNER).

אפשרויות

-b, - הסר הכל

הסר את כל ערכי ה- ACL המורחבים. ערכי הבסיס של ACL של הבעלים, הקבוצה ואחרים נשמרים.

-k, - remove-default

הסר את רשימת בקרת ברירת המחדל. אם לא קיים ACL של ברירת מחדל, לא יפורסמו אזהרות.

-n, - לא-מסכה

אין לחשב מחדש את מסכת הזכויות האפקטיבית. התנהגות ברירת המחדל של setfacl היא לחשב מחדש את ערך מסיכת ה- ACL, אלא אם כן ערך מסכה ניתן במפורש. ערך המסיכה מוגדר לאיגוד של כל ההרשאות של קבוצת הבעלות, וכל שם המשתמש וערכי הקבוצה. (אלה בדיוק את הרשומות מושפע הכניסה מסכה).

--מסכה

האם לחשב מחדש את מסכת הזכויות יעיל, גם אם ערך מסכת ACL היה נתון במפורש. (ראה אפשרות -n .)

-d, - default

כל הפעולות חלות על ברירת המחדל של ACL. רשומות ACL רגילות בקבוצת הקלט מקודמות לרשומות ACL המוגדרות כברירת מחדל. ערכי ברירת המחדל של ACL במערך הקלט נמחקים. (מוצגת אזהרה אם זה יקרה).

- קובץ Restore =

שחזור גיבוי הרשאה שנוצרה על ידי `getfacl -R 'או דומה. כל ההרשאות של מחרוזת ספרייה מלאה משוחזרים באמצעות מנגנון זה. אם קלט מכיל הערות הבעלים או הערות הקבוצה, ו setfacl מופעלת על ידי השורש, הבעלים ואת קבוצת owning של כל הקבצים משוחזרים גם כן. לא ניתן לערבב אפשרות זו עם אפשרויות אחרות, למעט '- test'.

--מִבְחָן

מצב מבחן. במקום לשנות את רשימות בקרת הגישה של קבצים כלשהם, רשימות בקרת הגישה שהתקבלו מפורטות.

-R, - recursive

החל פעולות על כל הקבצים והספריות רקורסיבית. לא ניתן לערבב אפשרות זו עם '- Restore'.

-L, --logical

הליכה לוגית, בצע קישורים סמליים. התנהגות ברירת המחדל היא לעקוב אחר ארגומנטים של קישורים סמליים, ולדלג על קישורים סימבוליים שמתקלים בתיקיות משנה. לא ניתן לערבב אפשרות זו עם '- Restore'.

-P, - פיזי

הליכה פיזית, לדלג על כל הקישורים הסמלי. זה גם מדלג טיעונים הקישור הסמלי. לא ניתן לערבב אפשרות זו עם '- Restore'.

--גִרְסָה

הדפס את הגרסה של setfacl ולצאת.

--עֶזרָה

הדפס עזרה המסבירה את אפשרויות שורת הפקודה.

סוף אפשרויות שורת הפקודה. כל הפרמטרים הנותרים מפורשים כשמות קבצים, גם אם הם מתחילים עם מקף.

אם פרמטר שם הקובץ הוא מקף יחיד, setfacl קורא רשימה של קבצים מתוך קלט רגיל.

ACL ENTRIES

כלי השירות setfacl מזהה את הפורמטים הבאים של ערכי ACL (החסר מוחדר לבהירות):

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

הרשאות של משתמש בעל שם. הרשאות של בעל הקובץ אם הוא ריק.

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

הרשאות של קבוצה בשם. הרשאות של קבוצת הבעלות אם ה- gid ריק.

[d [efault]:] m [ask] [:] [: perms ]

מסכת זכויות אפקטיבית

[d [efault]:] o [תר] [:] [: perms ]

הרשאות של אחרים.

חל איסור על רווח לבן בין תווים מפרידים לבין תווים שאינם מפרידים.

ערכי ACL נאותים, כולל הרשאות משמשים לשינוי ולהגדרת פעולות. (אופציות -m , -M , --set ו- set-file ). רשומות ללא שדה perms משמשים למחיקת רשומות (אפשרויות -x ו- X ).

עבור uid ו- gid ניתן לציין שם או מספר.

השדה perms הוא שילוב של תווים המציינים את ההרשאות: קריאה (r) , לכתוב (w) , לבצע (x) , לבצע רק אם הקובץ הוא ספרייה או כבר יש לבצע הרשאה עבור משתמש כלשהו (X) . לחלופין, שדה פרם יכול להיות ספרה אוקטלית (0-7).

יצורים שנוצרו באופן אוטומטי

בתחילה, קבצים וספריות מכילים רק את שלושת ערכי ACL הבסיס עבור הבעלים, הקבוצה, ואחרים. יש כמה כללים שצריך להיות מרוצים כדי ש- ACL יהיה תקף:

*

לא ניתן להסיר את שלושת ערכי הבסיס. חייב להיות ערך אחד של כל אחד מסוגי הבסיס הבסיסיים.

*

כאשר ACL מכיל שמות משתמש בשם או אובייקטים קבוצתיים, הוא חייב לכלול גם מסכת זכויות יעילה.

*

כאשר ACL מכיל רשומות ברירת מחדל של רשימות בקרת גישה (ACL), שלושת ערכי ברירת המחדל של רשימות בקרת הגישה (ברירת המחדל של הבעלים, קבוצת ברירת המחדל וכברירת המחדל של אחרים) חייבים להיות קיימים.

*

כאשר ACL של ברירת מחדל מכיל שמות משתמש בשם או אובייקטים קבוצתיים, הוא חייב להכיל גם מסכת ברירת מחדל אפקטיבית המוגדרת כברירת מחדל.

כדי לסייע למשתמש להבטיח את הכללים, setfacl יוצר ערכים מערכים קיימים בתנאים הבאים:

*

אם ACL מכיל שם משתמש או בשם ערכי קבוצה, ולא קיים ערך מסכה, נוצר ערך מסכה המכיל את אותן הרשאות כמו ערך הקבוצה. אלא אם כן ניתנת האפשרות n , ההרשאות של כניסת המסיכה מותאמות עוד יותר כדי לכלול את האיחוד של כל ההרשאות המושפעות מכניסת המסיכה. (ראה תיאור -n אופציה).

*

אם נוצר ערך ברירת מחדל של רשימות בקרת גישה (ACL), ו- ACL של ברירת המחדל אינו מכיל קבוצת בעלות, קבוצת בעלות, או ערך אחר, עותק של הבעלים של ACL, קבוצת בעלות, או ערך אחר נוסף ל- ACL של ברירת המחדל.

*

אם ACL של ברירת מחדל מכיל רשומות משתמש בשם או בשם ערכי קבוצה, ולא קיימת ערך מסיכה, ערך מסכה המכיל את אותן הרשאות כמו ערך ברירת המחדל של קבוצת ברירת המחדל של ACL. אלא אם כן ניתנת האפשרות n , ההרשאות של כניסת המסיכה מותאמות עוד יותר לאינקלו דה האיגוד של כל ההרשאות מושפע הכניסה מסכה. (ראה תיאור -n אופציה).

דוגמאות

הענקת גישת קריאה נוספת למשתמש

setfacl -mu: lisa: קובץ r

ביטול גישה לכתיבה מכל הקבוצות וכל המשתמשים ששמותיהם (באמצעות מסכת הזכויות היעילה)

קובץ setfacl-mm :: rx

הסרת ערך קבוצה בשם מתוך רשימת בקרת גישה של קובץ

setfacl -xg: קובץ צוות

מעתיק את קובץ ה- ACL של קובץ אחד לאחר

getfacl file1 | setfacl - set-file = - file2

מעתיק את ACL הגישה לתוך ACL ברירת המחדל

getfacl-dir setfacl -d -M-dir

התאמה ל - POSIX 1003.1e DRAFT STANDARD 17

אם משתנה הסביבה POSIXLY_CORRECT מוגדר, התנהגות ברירת המחדל של setfacl משתנה באופן הבא: כל האפשרויות הלא סטנדרטיות מושבתות. הקידומת `` ברירת המחדל: '' אינה זמינה. האפשרויות X ו- X מקבלות גם שדות הרשאה (ומתעלמות מהן).

ראה גם

umask (1),