ǰÑÔ :
ÔÚÉÏһƪ²©¿ÍÖÐÎҺʹó¼Ò½²½âÁË£¬ÎļþµÄÃüÃû¹æÔò¡¢Ä¿Â¼½á¹¹¡¢Îļþ¹ÜÀí¡¢È¨ÏÞ¹ÜÀí¡¢ÎļþËÑË÷¡£
1. ÎļþµÄĬÈÏÊôÐÔ
ÎļþÓÐĬÈÏÊôÐÔ·ÖΪÆßÀ¸£¬ÆäÒâÒå·ÖÁíΪ£º
µÚÒ»À¸: ´ú±íÕâ¸öÎļþµÄÀàÐÍÓëȨÏÞ(permission)
ÎļþÀàÐÍ£º
-£ºÆÕͨÎļþ (f)
d: Ŀ¼Îļþ
b: ¿éÉ豸Îļþ (block)
c: ×Ö·ûÉ豸Îļþ (character)
l: ·ûºÅÁ´½ÓÎļþ(symbolic link file)
p: ÃüÁî¹ÜµÀÎļþ(pipe)
s: Ì×½Ó×ÖÎļþ(socket)
ÎļþȨÏÞ: 9λ£¬Ã¿3λһ×飬ÿһ×飺rwx(¶Á£¬Ð´£¬Ö´ÐÐ), r--
µÚÒ»×éΪ: ÎļþÓµÓÐÕßµÄȨÏÞ£¬ ¸ÃÎļþµÄÓµÓÐÕß¿ÉÒÔ¶Áд£¬µ«²»¿ÉÖ´ÐУ»
µÚ¶þ×éΪ: ͬȺ×éµÄȨÏÞ
µÚÈý×éΪ: ÆäËû·Ç±¾Èº×éµÄȨÏÞ
µÚ¶þÀ¸: ÎļþÓ²Á´½ÓµÄ´ÎÊý (ÎÒ»áÔÚ´ÅÅ̹ÜÀíʱÏêϸ˵Ã÷)
µÚÈýÀ¸: ±íʾÕâ¸öÎļþ(»òĿ¼)µÄÓµÓÐÕß(owner)
µÚËÄÀ¸: ±íʾÕâ¸öÎļþµÄËùÊôȺ×é(group)
µÚÎåÀ¸: ΪÕâ¸öÎļþµÄÈÝÁ¿´óС£¬Ä¬Èϵ¥Î»Îªbytes
µÚÁùÀ¸: ΪÕâ¸öÎļþµÄ½¨µµÈÕÆÚ»òÕßÊÇ×î½üµÄÐÞ¸ÄÈÕÆÚ
·ÃÎÊ:access
ÐÞ¸Ä:modify£¬ÎļþÄÚÈÝ·¢ÉúÁ˸ıä
¸Ä±ä:change£¬metadata£¬ÔªÊý¾Ý
µÚÆßÀ¸: ΪÕâ¸öÎļþµÄÎļþÃû
2. ÎļþÓëĿ¼µÄĬÈÏȨÏÞ
´ÓÉÏÃæµÄ½²½âÖÐÎÒÃÇ¿ÉÒÔ¿´µ½£¬Ò»¸öÎļþÓÐÈô¸É¸öÊôÐÔ£¬°üÀ¨¶ÁдÔËÐÐ(r, w, x)µÈ»ù±¾È¨ÏÞ£¬¼°ÊÇ·ñΪĿ¼ (d) ¡¢Îļþ (-) µÈµÈµÄÊôÐÔ£¡ ÒªÐÞ¸ÄÊôÐԵķ½·¨ÔÚÎÒÔÚÇ°ÃæµÄ²©¿ÍÖÐÒ²½²¹ý (chgrp, chown, chmod) ¡£ÄÇôÏÖÔÚÎÒÃÇÖªµÀÈçºÎ´´½¨»òÕßÊǸıäÒ»¸öĿ¼»òÎļþµÄÊôÐÔÁË£¬²»¹ý£¬ ÄãÖªµÀµ±Äã´´½¨Ò»¸öеÄÎļþ»òĿ¼ʱ£¬ËûµÄĬÈÏȨÏÞ»áÊÇʲôÂ𣿺ٺ٣¡ÄǾÍÓë umask Õâ¸öÍæÒâ¶ùÓйØÁË£¡ÄÇô umask ÊÇÔÚ×öÊ²Ã´ÄØ£¿»ù±¾ÉÏ,umask ¾ÍÊÇÖ¸¶¨ ĿǰʹÓÃÕßÔÚ´´½¨Îļþ»òĿ¼ʱºòµÄȨÏÞĬÈÏÖµ£¬ ÄÇôÈçºÎµÃÖª»òÅäÖÃumask ÄØ£¿
3. umask(ÕÚÕÖÂë)ÃüÁî
1). ²é¿´·½Ê½ÓÐÁ½ÖÖ£¬Ò»ÖÖ¿ÉÒÔÖ±½ÓÊäÈë umask £¬¾Í¿ÉÒÔ¿´µ½Êý×ÖÐÍ̬µÄȨÏÞÅäÖ÷ÖÊý£¬ Ò»ÖÖÔòÊǼÓÈë -S (Symbolic) Õâ¸öÑ¡Ï¾Í»áÒÔ·ûºÅÀàÐ͵ķ½Ê½À´ÏÔʾ³öȨÏÞÁË£¡´ÓµÚÒ»ÖÖ·½Ê½£¬ÎÒÃÇ¿´µ½ÁËËÄ×éÊý×Ö£¬Ææ¹Ö²»Ó¦¸ÃÊÇÈý×éÂð£¿ÆäʵµÚÒ»×éÊÇÌØÊâȨÏÞÓõģ¬ÎÒÃÇÔÝʱ²»ÓÃÈ¥¹ÜËü£¬ÔÚºóÃæµÄ²©¿ÍÖÐÎÒ»áÏêϸ½²½â£¬ÏÈÂô¸ö¹Ø×Ó!ÔÚĬÈÏȨÏÞµÄÊôÐÔÉÏ£¬Ä¿Â¼ÓëÎļþÊDz»Ò»ÑùµÄ¡£ÎÒÃÇÖªµÀ x ȨÏÞ¶ÔÓÚĿ¼ÊǷdz£ÖØÒªµÄ£¨²»Àí½âµÄÅóÓÑ¿ÉÒÔ¿´ÏÂÃæ£¬Ä¿Â¼ÓëÎļþµÄȨÏÞÒâÒ壩£¡µ«ÊÇÒ»°ãÎļþµÄ´´½¨Ôò²»Ó¦¸ÃÓÐÔËÐеÄȨÏÞ£¬ÒòΪһ°ãÎļþͨ³£ÊÇÓÃÔÚÓÚÊý¾ÝµÄ¼Ç¼Âµ±È»²»ÐèÒªÔËÐеÄȨÏÞÁË¡£Òò´Ë£¬Ä¬ÈϵÄÇé¿öÈçÏ£º
ÈôʹÓÃÕß´´½¨Îª¡±Îļþ¡°ÔòĬÈÏ¡°Ã»ÓпÉÔËÐÐ( x )ȨÏÞ¡±£¬Ò༴ֻÓÐ rw ÕâÁ½¸öÏîÄ¿£¬Ò²¾ÍÊÇ×î´óΪ 666 £¬Ä¬ÈÏȨÏÞÈçÏ£º
-rw-rw-rw-
ÈôʹÓÃÕß´´½¨Îª¡±Ä¿Â¼¡°£¬ÔòÓÉÓÚ x ÓëÊÇ·ñ¿ÉÒÔ½øÈë´ËĿ¼Óйأ¬Òò´ËĬÈÏΪËùÓÐȨÏÞ¾ù¿ª·Å£¬Ò༴Ϊ 777 £¬Ä¬ÈÏȨÏÞÈçÏ£º
drwxrwxrwx
2). ҪעÒâµÄÊÇ£¬umask µÄÖµÖ¸µÄÊÇ¡°¸ÃĬÈÏÖµÐèÒª¼õµôµÄȨÏÞ£¡¡±ÒòΪ r¡¢w¡¢x ·Ö±ðÊÇ 4¡¢2¡¢1 £¬ËùÒÔ£¡Ò²¾ÍÊÇ˵£¬µ±ÒªÄõôÄÜдµÄȨÏÞ£¬¾ÍÊǼõÈ¥2 £¬¶øÈç¹ûÒªÄõôÄܶÁµÄȨÏÞ£¬Ò²¾ÍÊǼõÈ¥4 £¬ÄÇôҪÄõô¶ÁÓëдµÄȨÏÞ£¬Ò²¾ÍÊǼõÈ¥ 6 £¬¶øÒªÄõôÔËÐÐÓëдÈëµÄȨÏÞ£¬Ò²¾ÍÊǼõÈ¥ 3 £¬ÕâÑùÁ˽âÂð£¿ÇëÎÊÄ㣬 5 ÊÇʲô£¿ºÇºÇ£¡ ¾ÍÊǶÁÓëÔËÐеÄȨÏÞÀ²£¡
Èç¹ûÒÔÉÏÃæµÄÀý×ÓÀ´ËµÃ÷µÄ»°£¬ÒòΪ umask Ϊ022 £¬ËùÒÔ user ²¢Ã»Óб»ÄõôÈκÎȨÏÞ£¬²»¹ý group Óë others µÄȨÏÞ±»ÄõôÁË 2 (Ò²¾ÍÊÇ w Õâ¸öȨÏÞ)£¬ÄÇôµ±Ê¹ÓÃÕߣº
´´½¨Îļþʱ£º(-rw-rw-rw-) - (-----w--w-) ==> -rw-r--r-- (666-umask)
´´½¨Ä¿Â¼Ê±£º(drwxrwxrwx) - (d----w--w-) ==> drwxr-xr-x (777-umask)
ÒÔÉϾÍÊÇumask×÷Óã¬Äã¶®ÁËÂ𣿶ÔÓÚr¡¢w¡¢x ·Ö±ð´ú±í 4¡¢2¡¢1 ÏÂÃæ»áÏêϸ½²½â£¨Êý×ÖȨÏÞ£©£¡
4. Ŀ¼ÓëÎļþµÄȨÏÞµÄÖØÒªÐÔ
1). ȨÏÞ¶ÔÎļþµÄÖØÒªÐÔ
ÎļþÊÇʵ¼Êº¬ÓÐÊý¾ÝµÄµØ·½£¬°üÀ¨Ò»°ãÎı¾Îļþ¡¢Êý¾Ý¿âÄÚÈÝÎļþ¡¢¶þ½øÖÆ¿ÉÖ´ÐÐÎļþ(binary program)µÈµÈ¡£ Òò´Ë£¬È¨ÏÞ¶ÔÓÚÎļþÀ´Ëµ£¬ËûµÄÒâÒåÊÇÕâÑùµÄ£º
r (read)£º¿É¶ÁÈ¡´ËÒ»ÎļþµÄʵ¼ÊÄÚÈÝ£¬Èç¶ÁÈ¡Îı¾ÎļþµÄÎÄ×ÖÄÚÈݵÈ
w (write)£º¿ÉÒԱ༡¢ÐÂÔö»òÕßÊÇÐ޸ĸÃÎļþµÄÄÚÈÝ(µ«²»º¬É¾³ý¸ÃÎļþ)
x (execute)£º¸ÃÎļþ¾ßÓпÉÒÔ±»ÏµÍ³Ö´ÐеÄȨÏÞ
ÄǸö¿É¶Á(r)´ú±í¶ÁÈ¡ÎļþÄÚÈÝÊÇ»¹ºÃÁ˽⣬ÄÇô¿ÉÖ´ÐÐ(x)ÄØ£¿ÕâÀïÄã¾Í±ØÐëҪСÐÄÀ²£¡ ÒòΪÔÚWindowsµ×ÏÂÒ»¸öÎļþÊÇ·ñ¾ßÓÐÖ´ÐеÄÄÜÁ¦ÊÇÓÉÀ©Õ¹ÃûÀ´Åжϵģ¬ ÀýÈ磺.exe, .batµÈµÈ£¬µ«ÊÇÔÚLinuxµ×Ï£¬ÎÒÃǵÄÎļþÊÇ·ñÄܱ»Ö´ÐУ¬ÔòÊǽåÓÉÊÇ·ñ¾ßÓÐxÕâ¸öȨÏÞÀ´¾ö¶¨µÄ£¡¸úÀ©Õ¹ÃûÊÇûÓоø¶ÔµÄ¹ØÏµµÄ£¡ÖÁÓÚ×îºóÒ»¸öwÕâ¸öȨÏÞÄØ£¿µ±Äã¶ÔÒ»¸öÎļþ¾ßÓÐwȨÏÞʱ£¬Äã¿ÉÒÔ¾ßÓÐдÈë/±à¼/ÐÂÔö/ÐÞ¸ÄÎļþµÄÄÚÈݵÄȨÏÞ£¬µ«²¢²»¾ß±¸ÓÐɾ³ý¸ÃÎļþ±¾ÉíµÄȨÏÞ£¡¶ÔÓÚÎļþµÄrwxÀ´Ëµ£¬Ö÷Òª¶¼ÊÇÕë¶ÔÎļþµÄÄÚÈݶøÑÔ£¬ÓëÎļþÃûµÄ´æÔÚÓë·ñûÓйØÏµà¸£¡ÒòΪÎļþ¼Ç¼µÄÊÇʵ¼ÊµÄÊý¾ÝÂ
2). ȨÏÞ¶ÔĿ¼µÄÖØÒªÐÔ
ÎļþÊÇ´æ·Åʵ¼ÊÊý¾ÝµÄËùÔÚ£¬ÄÇôĿ¼Ö÷ÒªÊÇ´¢´æÉ¶ÍæÒâ°¡£¿Ä¿Â¼Ö÷ÒªµÄÄÚÈÝÊÇÔڼǼÎļþÃûµÄÁÐ±í£¬ÎļþÃûÓëĿ¼ÓÐÇ¿ÁҵĹØÁªÐÔ£¡ ËùÒÔÈç¹ûÊÇÕë¶ÔĿ¼ʱ£¬ÄǸö r, w, x ¶ÔĿ¼ÊÇʲôÒâÒåÄØ£¿
r (read contents in directory)£º
±íʾ¾ßÓжÁȡĿ¼½á¹¹ÁбíµÄȨÏÞ£¬ËùÒÔµ±Äã¾ßÓжÁÈ¡(r)Ò»¸öĿ¼µÄȨÏÞʱ£¬±íʾÄã¿ÉÒÔ²éѯ¸ÃĿ¼ÏµÄÎļþÃûÊý¾Ý¡£ ËùÒÔÄã¾Í¿ÉÒÔÀûÓà ls Õâ¸öÖ¸Á¸ÃĿ¼µÄÄÚÈÝÁбíÏÔʾ³öÀ´£¡
w (modify contents of directory)£º
Õâ¸ö¿ÉдÈëµÄȨÏÞ¶ÔĿ¼À´Ëµ£¬ÊǺÜÁ˲»ÆðµÄ£¡ ÒòΪËû±íʾÄã¾ßÓÐÒ춯¸ÃĿ¼½á¹¹ÁбíµÄȨÏÞ£¬Ò²¾ÍÊǵ×ÏÂÕâЩȨÏÞ£º
½¨Á¢ÐµÄÎļþÓëĿ¼
ɾ³ýÒѾ´æÔÚµÄÎļþÓëĿ¼(²»ÂÛ¸ÃÎļþµÄȨÏÞΪºÎ£¡)
½«ÒÑ´æÔÚµÄÎļþ»òĿ¼½øÐиüÃû
°áÒÆ¸ÃĿ¼ÄÚµÄÎļþ¡¢Ä¿Â¼Î»ÖÃ
×ÜÖ®£¬Ä¿Â¼µÄwȨÏÞ¾ÍÓë¸ÃĿ¼µ×ϵÄÎļþÃûÒ춯ÓйؾͶÔÁËÀ²£¡
x (access directory)£º
Ŀ¼µÄÖ´ÐÐȨÏÞÓÐɶÓÃ;°¡£¿Ä¿Â¼Ö»ÊǼǼÎļþÃû¶øÒÑ£¬×ܲ»ÄÜÄÃÀ´Ö´Ðаɣ¿Ã»´í£¡Ä¿Â¼²»¿ÉÒÔ±»Ö´ÐУ¬Ä¿Â¼µÄx´ú±íµÄÊÇÓû§ÄÜ·ñ½øÈë¸ÃĿ¼³ÉΪ¹¤×÷Ŀ¼µÄÓÃ;£¡ËùνµÄ¹¤×÷Ŀ¼(work directory)¾ÍÊÇÄãĿǰËùÔÚµÄĿ¼À²£¡¾ÙÀýÀ´Ëµ£¬µ±ÄãµÇÈëLinuxʱ£¬ ÄãËùÔڵļÒĿ¼¾ÍÊÇÄãµ±ÏµĹ¤×÷Ŀ¼¡£¶ø±ä»»Ä¿Â¼µÄÖ¸ÁîÊÇcd(change directory)£¬ÄãÄÜ·ñ¸Ä±äĿ¼£¬¾ÍµÃ¿´xȨÏÞÀ²£¬ºÙºÙ£¡
5. Êý×ÖȨÏÞ
Êý×ÖÀàÐÍÓëÎļþȨÏÞ
LinuxÎļþµÄ»ù±¾È¨ÏÞ¾ÍÓоŸö£¬·Ö±ðÊÇowner/group/othersÈýÖÖÉí·Ý¸÷ÓÐ×Ô¼ºµÄread/write/executeȨÏÞ£¬ Ïȸ´Ï°Ò»Ï¸ոÕÉÏÃæÌáµ½µÄÊý¾Ý£ºÎļþµÄȨÏÞ×Ö·ûΪ£º-rwxrwxrwx£¬ Õâ¾Å¸öȨÏÞÊÇÈý¸öÈý¸öÒ»×éµÄ£¡ÆäÖУ¬ÎÒÃÇ¿ÉÒÔʹÓÃÊý×ÖÀ´´ú±í¸÷¸öȨÏÞ£¬¸÷ȨÏ޵ķÖÊý¶ÔÕÕ±íÈçÏ£º
r:4
w:2
x:1
ÿÖÖÉí·Ý(owner/group/others)¸÷×ÔµÄÈý¸öȨÏÞ(r/w/x)·ÖÊýÊÇÐèÒªÀۼӵģ¬ÀýÈ統ȨÏÞΪ£º[-rwxrwx---] ·ÖÊýÔòÊÇ£º
owner = rwx = 4+2+1 = 7
group = rwx = 4+2+1 = 7
others= --- = 0+0+0 = 0
ËùÒÔµÈÒ»ÏÂÎÒÃÇÉ趨ȨÏ޵ıä¸üʱ£¬¸ÃÎļþµÄȨÏÞÊý×Ö¾ÍÊÇ770À²£¡ÊDz»ÊǺܼòµ¥°¡£¡ÔÚÕâÆª²©¿ÍÖÐÎÒÃǶà´ÎÌáµ½£¬Óû§(owner)¡¢×é(group)¡¢ÆäËûÓû§(others)¡£
À´Ô´£ºLinuxÉçÇø