日期:2014-05-16  浏览次数:20656 次

Linux学习笔记之——用户、用户组、文件属性权限、目录概念

Linux学习笔记之——用户、用户组、文件权限、目录概念

 

摘要:对一些很重要的概念和目录进行说明、后面笔记中的练习就不再赘述这些概念以及他们之间的关系了。很重要!


一:用户与用户组

      

        Linux是一个多用户操作系统,那么如何保证安全性和隐私性呢?即我拥有的东西我只想让我授权的别的用户看到,而不是谁都可以进我家翻箱倒柜随便来?先了解几个概念之后、就会慢慢了解Linux如何实现。

 

        1、文件拥有者

 

                Linux下所有的东西都是文件、不管是具体文件还是目录。那么当多人同机操作的时候、考虑到每个人的隐式权和个人喜好,文件拥有者就相当重要了,比如A有一个存放情书的文件夹,那A估计不会喜欢谁都能看这些情书,那么A就可以用密码箱锁起来,别人就不能随意翻动了。A就是这个密码箱(可看成文件夹)的拥有者。

 

        2、用户组的概念

 

                用户组主要是针对开发团队来说的、假如在我的主机上面有两个团体,这第一个团体名称为 testgroup 而他的成员是 test1, test2, test3 三个,第二个团体名称为 treatgoup 他的团员为 treat1, treat2, treat3,这两个团体之间是互相有竞争性质的,但是却又要缴交同一份报告,然而每组团员又需要同时可以修改自己的团体内任何人所建立的档案,且不能让非自己团体以外的人看到自己的档案内容!这个时候怎么办?在 Linux 底下可经由简易的档案权限设定,就能限制非自己团队( 亦即是群组 )的其它人不能够阅览内容!而且亦可以让自己的团队成员可以修改我所建立的档案!同时,如果自己还有私人隐密的文件,仍然可以设定成让自己的团队成员也看不到自己档案数据!另外,如果 teacher 这个账号是 testgroup 与 treatgroup 这两个群组的老师,他想要同时观察两者的进度,因此需要两边的群组都能够进去观看,这个时候,您可以设定 teacher 这个账号,同时支持 testgroup 与 treatgroup 这两个群组、也就是说,每个人都可以有多个群组的支持!

        更具体点的例子

        假设有一家人,家里只有三兄弟,分别是王大毛、王二毛与王三毛三个人,而这个家庭是登记在王大毛的名下的!所以,『王大毛家有三个人,分别是王大毛、王二毛与王三毛』,而且这三个人都有自己的房间,并且共同拥有一个客厅!

        由于王家三个人各自拥有自己的房间,所以,王二毛虽然可以进入王三毛的房间,但是二毛不能翻三毛的抽屉喔!因为三毛不想让别人乱翻!因为抽屉里面可能有三毛自己私人的东西,例如情书,日记等,这是『私人的空间』,所以当然不能让二毛拿!

        由于共同拥有客厅,三兄弟都可以使用!因为是一家人! 那个『王大毛家』就是所谓的『群组』,至于三兄弟就是分别为三个『使用者』,而这三个使用者是在同一个群组里面的!而三个使用者虽然在同一群组内,但是我们可以设定『权限』,好让某些使用者个人的信息不被群组的所有人查询,以保有个人『私人的空间』!而设定群组共享,则可让大家共同分享!

 

        3、其他人的概念

 

                那么今天又有个人,叫做张小猪,他是张小猪家的人,与王家没有关系!这个时候,除非王家认识张小猪,然后开门让张小猪进来王家,否则张小猪永远没有办法进入王家,更不要说进到王三毛的房间!不过,如果张小猪透过关系认识了三毛,并且跟王三毛成为好朋友,那么张小猪就可以透过三毛进入王家!那个张小猪就是所谓的『其它人, Others 』!因此,我们就可以知道,在 Linux 里面,任何一个档案都具有『User, Group 及 Others』三个权限!

 

二:Linux文件权限

 

        这部分是我们一定要掌握的东西、Linux所操作的就是文件、如果最基本的都搞不清楚、那么下一步就很难进行了。

 

        1、Linux文件属性

 

                输入命令:ls –al     会有下面显示

               drwxr-xr-x   23 root    root         4096 Feb 16 13:35 ..

               -rw-r--r--    1 root    root         1210 Feb 10 06:03anaconda-ks.cfg

 

                a)    第一栏代表这个档案的属性:

 

                   第一个属性代表这个档案是『目录、档案或连结文件』:

                   当为[ d ]则是目录,例如上表的第 1行;

                   当为[ - ]则是档案,例如上表的第 2行;

                   若是[ l ]则表示为连结档(linkfile);

                   若是[ b ]则表示为装置文件里面的可供储存的接口设备;

                   若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标。

 

                   接下来的属性中,三个为一组,且均为『rwx』的三个参数的组合。其中,[ r ]代表可读、[ w ]代表可写、[ x ]代表可执行:

     &n