ºìÁªLinuxÃÅ»§
Linux°ïÖú

½â¶ÁLinuxÎļþȨÏÞµÄÉèÖ÷½·¨

·¢²¼Ê±¼ä:2005-09-07 14:35:04À´Ô´:ºìÁª×÷Õß:reing
WindowsϵͳÆäʵºÍLinuxϵͳÓÐÏàËƵĵط½£¬WindowsϵͳÎļþ¡¢Ä¿Â¼µÄÊôÐÔÓÐÖ»¶Á¡¢Òþ²Ø£¬¶øLinuxÒ²Ò»Ñù¡£

LinuxÖУ¬Ã¿Ò»¸öÎļþ¶¼¾ßÓÐÌض¨µÄÊôÐÔ¡£Ö÷Òª°üÀ¨ÎļþÀàÐͺÍÎļþȨÏÞÁ½¸ö·½Ãæ¡£¿ÉÒÔ·ÖΪ5ÖÖ²»Í¬µÄÀàÐÍ£ºÆÕͨÎļþ¡¢Ä¿Â¼Îļþ¡¢Á´½ÓÎļþ¡¢É豸ÎļþºÍ¹ÜµÀÎļþ¡£

ËùνµÄÎļþȨÏÞ£¬ÊÇÖ¸¶ÔÎļþµÄ·ÃÎÊȨÏÞ£¬°üÀ¨¶ÔÎļþµÄ¶Á¡¢Ð´¡¢É¾³ý¡¢Ö´ÐС£Linux ÊÇÒ»¸ö¶àÓû§²Ù×÷ϵͳ£¬ËüÔÊÐí¶à¸öÓû§Í¬Ê±µÇ¼ºÍ¹¤×÷¡£Òò´ËLinux½«Ò»¸öÎļþ»òĿ¼ÓëÒ»¸öÓû§»ò×éÁªÏµÆðÀ´¡£

·ÃÎÊ¿ØÖÆÁбí(ACL£ºAccess Control List)Ϊ¼ÆËã»úÌṩ¸üºÃµÄ·ÃÎÊ¿ØÖÆ£¬ËüµÄ×÷ÓÃÊÇÏÞÖÆ°üÀ¨rootÓû§ÔÚÄÚµÄËùÓÐÓû§¶ÔÎļþ¡¢×ÊÔ´»òÕßÌ×½Ó×ֵķÃÎÊ¡£ÏÂÃæ¾ÍÀ´½Ì´ó¼Ò¼òµ¥µÄÉèÖ÷½·¨¡£

²½Öè1 ¼ì²éϵͳºËÐÄ

Ê×Ïȼì²éÄãµÄLinuxϵͳµÄºËÐÄÊÇ·ñÓÐÖ§³ÖACLµÄ¹¦ÄÜ¡£ÒòΪLinuxϵͳ²¢²»ÊÇÿһ¸ö°æ±¾µÄºËÐĶ¼ÓÐÖ§³ÖACLµÄ¹¦ÄÜ£¬¶ø×î¼òµ¥µÄ·½·¨¾ÍÊǼì²éϵͳĿǰµÄºËÐÄÄÜ·ñÖ§³Ö£º


[root@mail /]# cat /boot
/config-kernel-version | grep -i ext3
¡¡¡¡CONFIG_EXT3_FS=m
¡¡¡¡CONFIG_EXT3_IDEX=y
¡¡¡¡CONFIG_EXT3_FS_XATTR_SHARING=y
¡¡¡¡CONFIG_EXT3_FS_XATTR_USER=y
¡¡¡¡CONFIG_EXT3_FS_XATTR_TRUSTED=y
¡¡¡¡CONFIG_EXT3_FS_ACL=y




´ËʱÈç¹ûÄÜ¿´µ½ÉÏÃæµÄ¼¸ÏîÔò±íʾÒѾ­±àÒëµ½ºËÐÄÖÐ,ext3ÎļþϵͳÒÑÖ§³ÖACL¹¦ÄÜ£¬ÕâЩ¹¦ÄÜÔÚ±àÒëºËÐÄÑ¡ÏîÖж¼¿ÉÒÔÕÒµ½¡£Èç¹û±àÒëʱÕÒ²»µ½£¬¿ÉÒÔµ½ACLµÄ¹Ù·½ÍøÕ¾À´°²×°Kernel£¨http://acl.bestbits.at/£©¡£

²½Öè2 ¹ÒÔØ·ÖÇø

Äã¿ÉÒÔÓÃÏÂÁеķ½Ê½¹ÒÔØ·ÖÇø²¢ÆôÓÃACL£º


#mount -t ext3 -o acl /dev/sda1 /fs1




ÄãÒ²¿ÉÒÔÖ±½ÓдÔÚ/etc/fstabÎļþÖÐ,ÕâÑù¾Í¿ÉÒÔÔÚ¿ª»úºóÖ§³ÖACL¹¦ÄÜ£º


#vi /etc/fstab




²½Öè3 ÉèÖÃACLȨÏÞ

ACL³£³£Õë¶Ô¸ö±ðÓû§À´½øÐÐÉèÖã¬ÏÂÃæÊǶà¸ö²»Í¬µÄÀý×Ó£º

ÀýÈçÐèÒª´´½¨test1¡¢test2¡¢test3Èý¸öÓû§£¬¿ÉÒÔÏÈÓÃrootÉí·ÝµÇ¼ϵͳ£¬È»ºóÖ´ÐÐÒÔÏÂÃüÁî·Ö±ð´´½¨Èý¸öÓû§ÃûºÍÃÜÂ룺


[root@mail root]#adduser test1
[root@mail root]#adduser test2
[root@mail root]#adduser test3
[root@mail root]#passwd test1
[root@mail root]#passwd test2
[root@mail root]#passwd test3




È»ºómountÒ»¸öext3Îļþµ½Ä¿Â¼/fs1£º


[root@mail root]#mount -t
ext3 -o acl /dev/sda1 /fs1




ÔÙ½«test1 ½¨Á¢µÄÎļþÉèÖöÁдµÄȨÏÞ¸øtest2 £º


[root@mail root]#chmod -R 777 /fs1




ÈÃËùÓеÄÓû§¶¼ÄÜÔö¼ÓÎļþµ½Ä¿Â¼µÄȨÏÞ£º

ÏÈÓÃtest1µÇ¼ϵͳ£¬Ö´ÐÐÃüÁ


[test1@mail test1]# cd /fs1
¡¡¡¡[test1@mail fs1]
# echo "Create by test1" > test1.txt
¡¡¡¡[test1@mail fs1]
# chmod go-r test1.txt
¡¡¡¡[test1@mail fs1]
# ll test1.txt
-rw------- 1 test1 test1 17
Jul 14 22:11 test1.txt




¶øÈçϲÙ×÷Ôò¿ÉÒÔÈóýÁËtest1ÓжÁдµÄȨÏÞÍâÆäËûÈËûÓжÁдtest1.txtµÄȨÏÞ£¨root³ýÍ⣩£¬ÏÈÓÃtest2 µÇ¼ϵͳºóÖ´ÐÐÒÔÏÂÃüÁ


[test2@mail test2]# cd /fs1
[test2@mail fs1]# cat test1.txt
cat : test1.txt Permission denied




½Ó×ÅÓÃtest1µÇ¼ϵͳ£¬Ö´ÐÐÈçÏÂÃüÁ


[test1@mail fs1]# setfacl -m u:
test2:rw test1.txt




ÕâÑù¾ÍÐÞ¸ÄȨÏÞÔÊÐítest2 ÓÐÕâ¸öÎļþµÄ¶ÁдȨÏÞ¡£ÔÙ¿´Ò»ÏÂËüµÄÎļþÊôÐԵı仯£º


[test1@mail fs1]# ll
-rw-rw-r--+ 1 test1 test1 10
Feb 16 13:52 test1.txt




»á¿´µ½ºóÃæ¶àÁËÒ»¸ö¡°+¡±£¬±íʾÕâ¸öÎļþʹÓÃACLµÄÊôÐÔÉèÖã¬ÔÙÓÃÃüÁîgetfaclÀ´¿´ACLµÄÎļþÊôÐÔÉèÖãº


[test1@mail fs1]
# getfacl test1.txt
¡¡¡¡# file: test1.txt
¡¡¡¡# owner: test1
¡¡¡¡# group: test1
¡¡¡¡user::rw-
¡¡¡¡user:test2:rw-
¡¡¡¡group::rw-
¡¡¡¡mask::rw-
¡¡¡¡other::r--




¿ÉÒÔ¿´µ½test2ÓÐȨÏÞ¶ÁдÕâ¸öÎļþ¡£ÎÒÃÇÔÙÓÃtest2µÇ¼ϵͳִÐÐÒÔÏÂÃüÁ¿´¿´·¢ÉúÁËʲô£¿


[test2@mail test2]
# cd /fs1
¡¡¡¡[test2@mail fs1]
# cat test1.txt
¡¡¡¡Create by test1




Ô­À´test2¿ÉÒÔ¶ÁÈ¡test1.txtÎļþÁË¡£


[test2@mail fs1]
# echo "Modify by test2" >> test1.txt
¡¡¡¡[test2@mail fs1]
# cat test1.txt
¡¡¡¡Create by test1
¡¡¡¡Modify by test2




ÏÖÔÚtest2Ò²¿ÉÒÔÐÞ¸Ätest1.txtÎļþÁË¡£

½Ó×ÅÓÃtest3 µÇ¼ϵͳ£º


[test3@mail test3]
# cd /fs1
[test3@mail fs1]
# cat test1.txt
¡¡¡¡cat : test1.txt Permission denied




³ýÁËtest1¡¢test2ÍâûÓÐÆäËûÓû§ÓжÁдtest1.txtµÄȨÏÞ£¨root ³ýÍ⣩¡£

¿´×ÅËäÈ»ÓеãÔΣ¬ÆäʵÃüÁî¾ÍÊÇÕâôһÁ½Ìõ£¬Ö÷ÒªÊǰѸ÷ÖÖÇé¿ö¸ø´ó¼Ò½²Çå³þ£¬ÕâÑù£¬´ó¼ÒÔÚʹÓÃLinuxÖвŻᷢÏÖ£¬±ÈÆð´àÈõµÄWindowsµÄȨÏÞ·À»¤£¬LinuxʵÔÚÊÇ×öµÃÏ൱²»´í£¡
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 1 ÌõÆÀÂÛ

  1. frog ÓÚ 2005-09-08 08:53:18·¢±í:

    ºÇºÇ£¬²»´í£¬²»¹ýдµÃÓе㸴ÔÓ¡£