首页 > 技术文章 > Linux权限控制

vieta 2019-07-11 19:28 原文

Linux的权限,是指某个用户对某个文件(文件夹)的操作权限。这里涉及用户组的概念。

注意事项:Linux的权限控制仅限于非root用户。

 

1.1        用户组

用户组的作用,就用于标识一种类型的用户,这样可以给一组用户(多个用户)授予权限。

 

 

 

1.1.1        查看用户组

注意:用户组的信息放在/etc/group。使用命令cat /etc/group

 

 

 

1.1.2        创建用户组

使用命令:groupadd [组名]

 

 

 

1.1.3        删除用户组

使用命令:groupdel [组名]

 

 

1.2        用户

1.2.1        添加用户

使用命令useradd [用户名],默认会将用户添加到跟用户名相同的用户组中。

如果要将用户添加到指定的组中,使用useradd -g [组名] [用户名],前提是指定的组必须存在。

 

 

 

1.2.2        查看用户

用户信息在/etc/passwd文件中查看

 

 

 

1.2.3        查看用户属组

使用命令groups [用户名]

 

 

 

1.2.4        修改用户属性

使用命令:usermod [用户名]

修改用户的属组:usermod -g [新组名] [用户名]

 

 

 

1.2.5        修改用户密码

使用命令passwd [用户名]

注意,输入密码的时候,光标不会移动!!!

 

 

 

1.2.6        切换用户

使用命令:su [用户名],退出命令使用exit。

如果使用命令:su - [用户名],表示一并切换用户的环境变量

 

 

 

验证环境变量是否切换

(1)在root用户下,使用export a=aaaa创建一个临时变量(随着用户注销而消失)

 

 

使用set命令,确定变量a添加成功。

 

 

 

(2)使用su hadoop切换到hadoop用户,变量a还存在,则表示没有切换环境变量。

 

 

 

(3)使用su - hadoop切换到hadoop用户,变量a不存在,表示切换了新的环境变量下。

 

 

 

问题:我们在开发中切换用户,到底要不要加”-”?

答:除非有特殊要求,通常需要加”-”

1.2.7        删除用户

使用命令userdel [用户名]

 

 

 

 

1.3        权限管理

Linux权限管理对root用户无效。

权限分为三种:可读(r)、可写(w)、可执行(x)

 

1.3.1        权限划分

使用ll命令,查看文件的详细信息,其中:

 

 

   

第1位:代表该文件的类型,”-”代表文件,”d”代表文件夹,”l”代表链接;

第2~4位:代表文件的拥有者的权限;

第5~7位:代表该文件拥有者的同组用户的权限(也称之为属组用户);

第8~10位:其它所有用户的权限。

 

第一个root:代表该文件的拥有者(默认是该文件的创建者);

第二个root:代表该文件拥有者的属组。

 

1.3.2        修改权限chmod

(1)chmod 【用户】【+、-】【权限】 文件

【用户】 u:表示该文件拥有者   g:文件拥有者属组用户  o:其它用户

【+、-】 +:表示增加权限       -:表示删除权限

【权限】 r:表示可读           w:可写                x:可执行

chmod u+x a.txt   表示给a.txt的拥有者,添加可执行权限。

(2)数字权限 r:4   w:2   x:1    r+w+x的值表示用户的最终权限

chmod 766 a.txt  表示拥有者满权限、属组读写权限、其它用户读写权限。

推荐阅读