ʹÓÃLinux ACL¾ÙÐÐϸ»¯È¨ÏÞÖÎÀí
ÔõÑùʹÓÃLinux ACLʵÏÖϸÄåµÄȨÏÞ¿ØÖÆ
ÔÚLinuxϵͳÖУ¬ACL£¨Access Control List£¬»á¼û¿ØÖÆÁÐ±í£©ÊÇÒ»ÖÖÓÃÓÚʵÏÖϸÄåȨÏÞ¿ØÖƵĻúÖÆ¡£Ïà½ÏÓڹŰåµÄȨÏÞ¿ØÖÆ·½·¨£¨»ùÓÚÓû§×éºÍȨÏÞ룩£¬ACL¿ÉÒÔ¸üÏ꾡µØ¿ØÖÆÎļþ»òĿ¼µÄ»á¼ûȨÏÞ£¬ÔÊÐíÖÎÀíÔ±Õë¶ÔÌض¨Óû§»ò×éÉèÖÃÌض¨µÄȨÏÞ¡£±¾ÎĽ«ÏÈÈÝÔõÑùÔÚLinuxϵͳÖÐʹÓÃACLʵÏÖϸÄåµÄȨÏÞ¿ØÖÆ£¬²¢ÌṩÏêϸµÄ´úÂëʾÀý¡£
1. ¼ì²éACLÖ§³Ö
ÔÚ×îÏÈʹÓÃACL֮ǰ£¬ÎÒÃÇÊ×ÏÈÐèҪȷÈÏϵͳÊÇ·ñÖ§³ÖACL¡£¿ÉÒÔͨ¹ýÒÔÏÂÏÂÁî¼ì²é£º
$ mount | grep acl
µÇ¼ºó¸´ÖÆ
ÈôÊÇÊä³öÖаüÀ¨”acl”×ÖÑù£¬ÌåÏÖϵͳÒѾ֧³ÖACL¡£ÈôÊÇδ¿´µ½Êä³ö£¬ÔòÐèÒªÔÚÎļþϵͳÖÐÆôÓÃACL¹¦Ð§¡£
2. ÆôÓÃACL¹¦Ð§
ÒªÔÚÎļþϵͳÖÐÆôÓÃACL¹¦Ð§£¬¿ÉÒÔʹÓÃÒÔÏ°취¡£ÒÔext4ÎļþϵͳΪÀý£º
£¨1£©Í¨¹ýµ÷½â/etc/fstabÎļþʵÏÖÓÀÊÀÆôÓÃACL
ÔÚ/etc/fstabÎļþÖУ¬ÕÒµ½¶ÔÓ¦µÄ·ÖÇøÐУ¬Ìí¼Ó”acl”Ñ¡Ï
/dev/sda1 /mnt/data ext4 defaults,acl 0 0
µÇ¼ºó¸´ÖÆ
£¨2£©ÖØйÒÔØÎļþϵͳ
$ mount -o remount /mnt/data
µÇ¼ºó¸´ÖÆ
3. ÉèÖÃACLȨÏÞ
£¨1£©»ù±¾¿´·¨
ACLȨÏÞ¿ØÖÆ°üÀ¨ÈýÖÖÖ÷ҪȨÏÞÀàÐÍ£º
ÓµÓÐÕßȨÏÞ£¨user£©
ËùÊô×éȨÏÞ£¨group£©
ÆäËûÓû§È¨ÏÞ£¨other£©
£¨2£©ACLÏÂÁî
ÉèÖÃACLȨÏ޵ij£ÓÃÏÂÁî°üÀ¨£º
setfacl: ÉèÖÃACLȨÏÞ
getfacl: »ñÈ¡ACLȨÏÞ
£¨3£©Ê¾Àý
ÒÔÏÂÊÇÒ»¸ö¼òÆÓµÄʾÀý£¬¼ÙÉèÎÒÃÇÒª¶Ô/mnt/dataĿ¼ÏµÄÎļþfile.txtÉèÖÃACLȨÏÞ£º
$ touch /mnt/data/file.txt $ setfacl -m u:testuser:rw- /mnt/data/file.txt $ getfacl /mnt/data/file.txt
µÇ¼ºó¸´ÖÆ
ÔÚÕâ¸öʾÀýÖУ¬ÎÒÃÇÏòtestuserÓû§¸¶ÓëÁ˶ÁдȨÏÞ¡£
4. ACLȨÏÞÑÚÂë
ACLȨÏÞÑÚÂ루mask£©ÓÃÓÚÏÞÖÆACLȨÏÞµÄ×î´óÖµ£¬±ÜÃâ¶ÔACLȨÏÞÉèÖùý¸ßȨÏÞ¡£µ±Ä³¸öÓû§¶ÔÎļþÉèÖÃÁ˽ϸߵÄȨÏÞ£¬È¨ÏÞÑÚÂë»áÈ·±£²»»áÁè¼ÝACLȨÏÞ¹æÄ£¡£
£¨1£©ÉèÖÃACLȨÏÞÑÚÂë
$ setfacl -m m::rw- /mnt/data/file.txt
µÇ¼ºó¸´ÖÆ
£¨2£©Éó²éACLȨÏÞÑÚÂë
$ getfacl /mnt/data/file.txt
µÇ¼ºó¸´ÖÆ
5. ¼ÌÐøACLȨÏÞ
ÔÚLinuxϵͳÖУ¬×ÓĿ¼ºÍÎļþ¿ÉÒÔ¼ÌÐøÉϼ¶Ä¿Â¼µÄACLȨÏÞ¡£
£¨1£©ÉèÖÃĬÈÏACLȨÏÞ
$ setfacl -d -m u::rwx,g::r-x,o::r-x /mnt/data
µÇ¼ºó¸´ÖÆ
£¨2£©Éó²éĬÈÏACLȨÏÞ
$ getfacl /mnt/data
µÇ¼ºó¸´ÖÆ
½áÓï
ͨ¹ýʹÓÃLinux ACLʵÏÖϸÄåµÄȨÏÞ¿ØÖÆ£¬ÖÎÀíÔ±¿ÉÒÔÔÚÎļþ»òĿ¼¼¶±ð¶ÔÓû§µÄ»á¼û¾ÙÐÐÔ½·¢Ï꾡µÄ¿ØÖÆ¡£ÔÚÏÖʵÉú²úÇéÐÎÖУ¬ºÏÀíʹÓÃACL¿ÉÒÔÓÐÓÃÌáÉýϵͳÇå¾²ÐÔºÍÖÎÀíЧÂÊ¡£Ï£Íû±¾ÎĶÔÄúÃ÷È·ACLȨÏÞ¿ØÖÆÌṩÁËһЩ×ÊÖú£¬½Ó´ý¼ÌÐøÉîÈëѧϰºÍÓ¦Óá£
²Î¿¼×ÊÁÏ
Linux manpage: acl
Red Hat Documentation: Using Access Control Lists
ÒÔÉÏÊǹØÓÚÔõÑùʹÓÃLinux ACLʵÏÖϸÄåµÄȨÏÞ¿ØÖƵÄÎÄÕÂÄÚÈÝ£¬Ï£Íû¶ÔÄúÓÐËù×ÊÖú¡£
ÒÔÉϾÍÊÇʹÓÃLinux ACL¾ÙÐÐϸ»¯È¨ÏÞÖÎÀíµÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡