מדריך זה תרגם ושדרג את המדריך הנמצא ב:
http://www.usalug.org/phpBB2/viewtopic.php?t=109

כדי לראות בשורת הפקודה את הבעלויות וההרשאות, יש לרשום את הפקודה ls -l

חשוב להסביר, שלכל קובץ וספריה יש משתמש שהוא הבעלים ויש קבוצה של משתמשים שלהם הקובץ/ספריה שייכים. הפקודה chown, מאפשרת להחליף את הבעלות על קבצים ומחיצות. כך, הפקודה אשר תשנה את הבעלות על הקובץ filename, ותיתן את הבעלות למשתמש dotan היא:

chown dotan filename

אם היינו רוצים להחליף גם את הבעלות של הקבוצה ל users, אז במקום dotan היינו רושמים dotan:users. עכשיו, אם רוצים לשנות את הבעלות באופן גורף לכל הקבצים בספריה files, כך שהבעלות תהיה של המשתמש dotan ושל הקבוצה users, היינו משתמשים בפקודה הבאה:

chown dotan:user files/ -R *

ועכשיו, להרשאות עצמן. ההרשאות מופרדות זו מזו, כך שלמשתמש שהקובץ רשום בבעלותו יש הרשאות נפרדות, גם לקבוצה של המשתמש, וגם לכל שאר המשתמשים.

הפקודה המשמשת לשינוי ההרשאות בתוך שורת הפקודה, היא chmod.

r = Readable

w = writable

x = executable

- = no permission

משתמשקבוצת המשתמש
אחריםהפקודה שיש לרשום
 rwx rwx rwxchmod 777 filename
 rwx rwx r-xchmod 775 filename
 rwx r-x r-xchmod 755 filename
rw-
rw-
r--
chmod 664 filename
rw-
r--
r--
chmod 644 filename

כדי לא להצטרך לזכור את המספרים, ובשביל לשנות רק תכונה אחת, ניתן להשתמש באותיות. הפקודה הבאה, למשל, תוסיף (+) הרשאות של קריאה (r) לכל הקבוצות (a). כדי להסיר הרשאות, משתמשים בסימן החיסור (-):

chmod a+r filename 

u = User

g = Group

o = Everyone Else(others)

a = all the people in the world 

ויש עוד דרך להסתכל על זה. להלן ההרשאות ומשמעותן, רק יש לזכור, שהמשמעות של 0 היא שאין הרשאות לכלום:

400 = read by owner

040 = read by group

004 = read by anybody (other)

200 = write by owner

020 = write by group

002 = write by anybody

100 = execute by owner

010 = execute by group

001 = execute by anybody

ולמעשה, קובץ אשר עושים לו chmod של 7 לאחת התכונות, המשמעות היא שמוסיפים את כל שלושת התכונות, וזאת כי: r=4 w=2 x=1 (4+2+1)=7

כך, קובץ שההרשאות שלו הן rwx rwx rwx יקבל את המספר 777.

--

דותן מזור, מדריך למערכת ההרשאות במערכות גנו/לינוקס, שינוי ההרשאות והתאמה. הסבר.

www.dotanmazor.com