用户权限管理

Posted yifengs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用户权限管理相关的知识,希望对你有一定的参考价值。

用户是Unix/Linux系统工作中重要的一环,用户管理包括用户与组账号的管理。

在Unix/Linux系统中,不论是由本机或是远程登录系统,每个系统都必须拥有一个账号,并且对于不同的系统资源拥有不同的使用权限。

Unix/Linux系统中的root账号通常用于系统的维护和管理,它对Unix/Linux操作系统的所有部分具有不受限制的访问权限。

在Unix/Linux安装的过程中,系统会自动创建许多用户账号,而这些默认的用户就称为“标准用户”。

在大多数版本的Unix/Linux中,都不推荐直接使用root账号登录系统。

1) 查看当前用户:whoami

whoami该命令用户查看当前系统当前账号的用户名。可通过cat /etc/passwd查看系统用户信息。

由于系统管理员通常需要使用多种身份登录系统,例如通常使用普通用户登录系统,然后再以su命令切换到root身份对传统进行管理。这时候就可以使用whoami来查看当前用户的身份。

技术图片

2) 查看登录用户:who

who命令用于查看当前所有登录系统的用户信息。

技术图片

 

 

 

3) 查看登录用户:w

w命令也可以查看登录当前系统的用户信息。与who命令相比,w命令的功能更强大,它不但可以显示当前有哪些用户登录到系统,还可以显示这些用户正在进行的操作,并给出更加详细和科学的统计数据。

w命令的格式如下:
w [选项] [用户名]

如果w命令携带用户名,则只显示指定用户的信息,否则显示当前所有登录用户的信息。

技术图片

4) 退出登录账户: exit

如果是图形界面,退出当前终端;

如果是使用ssh远程登录,退出登陆账户;

如果是切换后的登陆用户,退出则返回上一个登陆账号。

5) 切换用户:su

可以通过su命令切换用户,su后面可以加“-”。su和su –命令不同之处在于,su -切换到对应的用户时会将当前的工作目录自动转换到切换后的用户主目录:

技术图片

注意:如果是ubuntu平台,需要在命令前加“sudo”,如果在某些操作需要管理员才能操作,ubuntu无需切换到root用户即可操作,只需加“sudo”即可。sudo是ubuntu平台下允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,减少了root 用户的登陆和管理时间,提高了安全性。

技术图片

6) 添加、删除组账号:groupadd、groupdel

groupadd [组名]  //新建组账号  

groupdel  [组名]  //组账号

cat /etc/group 查看用户组

技术图片

7) 修改用户所在组:usermod

使用方法:usermod -g 用户组 用户名 例如:

usermod -g test abc //把用户abc添加到组test中

技术图片

8) 添加用户账号:useradd

在Unix/Linux中添加用户账号可以使用adduser或useradd命令,因为adduser命令是指向useradd命令的一个链接,因此,这两个命令的使用格式完全一样。

useradd命令的使用格式如下:
useradd [参数] [用户名]   //新建用户账号

技术图片

 

 

 

相关说明:

Linux每个用户都要有一个主目录,主目录就是第一次登陆系统,用户的默认当前目录(/home/用户);

每一个用户必须有一个主目录,所以用useradd创建用户的时候,一定给用户指定一个主目录;

用户的主目录一般要放到根目录的home目录下,用户的主目录和用户名是相同的;

如果创建用户的时候,不指定组名,那么系统会自动创建一个和用户名一样的组名。

技术图片

9) 设置用户密码:passwd

在Unix/Linux中,超级用户可以使用passwd命令为普通用户设置或修改用户口令。用户也可以直接使用该命令来修改自己的口令,而无需在命令后面使用用户名。

技术图片

10) 删除用户:userdel

技术图片

11) 查询用户登录情况:last

不管是哪位用户从哪里登录,管理员都可以通过last命令查出,以及是否有人非法登录。

12) 修改文件权限:chmod

chmod 修改文件权限有两种使用格式:字母法与数字法。

字母法:chmod u/g/o/a  +/-/=  rwx  文件

技术图片

 

 

chmod o+w file 给文件file的其它用户增加写权限:

技术图片

chmod u-r file 给文件file的拥有者减去读的权限:

技术图片

chmod g=x file设置文件file的同组用户的权限为可执行,同时去除读、写权限:

技术图片

数字法:“rwx” 这些权限也可以用数字来代替

r 读取权限,数字代号为 "4"
w 写入权限,数字代号为 "2"
x 执行权限,数字代号为 "1"
- 不具任何权限,数字代号为 "0"

如执行:chmod u=rwx,g=rx,o=r filename

就等同于:chmod u=7,g=5,o=4 filename

chmod 751 file

文件所有者:读、写、执行权限

同组用户:读、执行的权限

其它用户:执行的权限

技术图片

chmod 777 file:所有用户拥有读、写、执行权限

技术图片

注意:如果想递归所有目录加上相同权限,需要加上参数“ -R ”。

如:chmod 777 test/ -R 递归 test 目录下所有文件加 777 权限。

13) 修改文件所有者:chown

使用方法:chown  用户名  文件或目录名

技术图片

14) 修改文件所属组:chgrp

使用方法:chgrp  用户组名  文件或目录名

技术图片

 

以上是关于用户权限管理的主要内容,如果未能解决你的问题,请参考以下文章

gitlab 权限说明

JS+JavaBean判断管理员增删改的操作权限

教程4 - 验证和权限

Django REST框架--认证和权限

Flask 编写http接口api及接口自动化测试

如何修复“代码应明确检查权限是不是可用”错误