RHCE学习笔记-RHEL5.4用户,组,权限

发布时间:2020-07-02编辑:脚本学堂
RHCE学习笔记-RHEL5.4 用户 组 权限

本文介绍linux的用户,组,权限相关知识,供大家学习参考。

Linux中的用户
在linux系统中每个用户都被分配一个独特的用户UID号码,用户名是给人来识别的,而UID号码是给计算机来识别的。用户名和UID都被保存在/etc/passwd这个文件当中。默认情况下面,前500个UID被系统占有,root的UID为0,1-499为系统用户。也就是说系统中第一个普通用户的UID应该为500。

可以使用id命令来查看用户的信息
#id  root (用户名)
[root@localhost ~]#
[root@localhost ~]# id root
Uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)
[root@localhost ~]#

Linux中的用户组
在创建每个用户的时候,系统会自动的创建与之同名的组,每个组都被分配一个独特的组ID号码(gid)。组和gid都被保存在/etc/group这个文件当中。每个用户都有它们自己的私有组。组中的所有用户可以共享属于组群的文件。

同样通过id命令来查询组。

Linux中权限的介绍
每个文件都属于一个UID和一个GID
在linux下面我们将访问文件的用户分为三类
1.文件拥有人   (user)
2.文件拥有组   (group)
3.其他人           (other)

关于权限的优先顺序
如果UID匹配,就应用用户(user)权限。
否则。如果GID匹配,就应用组群(group)权限。
如果都不匹配,就应用(other)权限。
User----group----other

关于权限的类型
r:读
w:写
x:执行
-:无权限

关于权限类型对文件和目录的意义
r   文件  读
    目录  列举,不可以进入
w   文件  写
    目录  创建,删除
x   文件  执行程序
    目录  可以进入,不可以列举
-   文件  无权限
    目录  无权限

如何查看文件的权限呢?
#ls  -l   file
[root@localhost ~]#
[root@localhost ~]# ls -l file
-rw-r--r-- 1 root root 0 Feb 28 12:26 file
[root@localhost ~]#

这个文件的权限位上面有十个栏位。
第一个- 代表这是一个文件,如果是d,代表是一个目录。
后面的九位,每隔三位为一段。
rw-   可读可写
r- -  只读
r- -  只读
第一个root代表文件的拥有人是root
第二个root代表文件的拥有组是root
在权限位上面的前三位代表的是user的权限,中间三位代表的是group的权限,后面三位代表的是other的权限。(第一位除外)
在这里例子中就是用户root对这个文件是可读可写的,root组里面的成员对这个文件是只读的,除了用户root和root组里面的成员的其他用户对这个文件的权限也是只读的。

改变文件所有者
改变文件的所属用户
#chown   user1(用户名)    file(文件或者是目录)
Chown   =   change  owner
[root@localhost ~]#
[root@localhost ~]# ls -l file
-rw-r--r-- 1 root root 0 Feb 28 12:26 file
[root@localhost ~]#
[root@localhost ~]# chown user1 file
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# ls -l file
-rw-r--r-- 1 user1 root 0 Feb 28 12:26 file
[root@localhost ~]#
可以看到,原来file这个文件的所有者是root,现在就变成了user1。

改变文件的所属组群
# Chgrp   user1(组名)    file(文件或者是目录)
Chgrp    =  change  group
[root@localhost ~]#
[root@localhost ~]# ls -l file
-rw-r--r-- 1 user1 root 0 Feb 28 12:26 file
[root@localhost ~]#
[root@localhost ~]# chgrp user1 file
[root@localhost ~]#
[root@localhost ~]# ls -l file
-rw-r--r-- 1 user1 user1 0 Feb 28 12:26 file
[root@localhost ~]#

可以看到,文件的所属组也变成了user1。
只有root用户才能够改变文件的所有者。
只有root用户和文件的所有者才能改变文件的组群。
我们可以在改变的时候加上- R的参数,表示递归。这个也只读目录生效。
 
改变文件的权限
符号式方法
# chmod   u-x,g+x,o=rwx file    (文件名)
+   添加某个权限
-   删除每个权限
=  分配权限
[root@localhost ~]#
[root@localhost ~]# ls -l file
-rwxr--r-- 1 user1 user1 0 Feb 28 12:26 file
[root@localhost ~]#
[root@localhost ~]# chmod u-x,g+x,o=rwx file
[root@localhost ~]#
[root@localhost ~]# ls -l file
-rw-r-xrwx 1 user1 user1 0 Feb 28 12:26 file
[root@localhost ~]#
[root@localhost ~]#

可以看到,我们文件的权限就被改正过来了。这个非常灵活。多试试。

数字式方法
#chmod  755  file(文件名)
使用三个数字来代表权限
第一个数字代表所属用户的权限
第二个数字代表所属组的权限
第三个数字代表其他用户的权限
通常吧以下的数值加起来来代表权限
4 代表读取
2 代表写入
1 代表执行
[root@localhost ~]#
[root@localhost ~]# ls -l file
-rw-r-xrwx 1 user1 user1 0 Feb 28 12:26 file
[root@localhost ~]#
[root@localhost ~]# chmod 755 file
[root@localhost ~]#
[root@localhost ~]# ls -l file
-rwxr-xr-x 1 user1 user1 0 Feb 28 12:26 file
[root@localhost ~]#

我们这个文件的权限就变成了755。
同样我们可以在改变的时候加上- R的参数,表示递归。这个也只读目录生效。
 
至此,linux中的用户,组,权限的基本内容就介绍完了,希望对大家有所帮助。