Linux用户权限相关
对文件/目录的权限包括:
读:read,缩写r,数字代码4
写:write,缩写w,数字代码2
执行:excute,缩写x,数字代码1
1、chmod
chmod可以修改用户/组对文件/目录的权限
命令格式:chmod +/-rwx 文件名/目录名
Linux系统中的root账号通常用于系统的维护和管理,对操作系统的所有资源具有所以访问权限
在大多数版本的Liunx中,都不推荐直接使用root账号登录系统
在Linux安装的过程中,系统会自动创建一个用户账户,而这个默认的用户就称为“标准用户”
su是substitute user的缩写,表示使用另一个用户的身份
sudo命令用来以其他身份来执行命令,预设的身份为root
用户使用sudo时,必须输入密码,之后5分钟的有效期限,超过期限则必须重新输入密码
若其未经授权的用户企图使用sudo,则会发送警告邮件给管理员
2、组管理
提示:创建组/删除组的终端命令都需要通过sudo执行
groupadd 组名:添加组
groupdel 组名:删除组
cat /etc/group:确认组信息
chgrp -R 组名 文件/目录名:递归修改文件/目录的所属组
提示:
组信息保存在/etc/group文件中
/etc目录是专门用来保存系统配置信息的目录
3、用户管理
创建用户/设置密码/删除用户
命令:useradd -m -g 组 新建用户名;作用:添加新用户;说明:-m自动建立用户家目录,-g指定用户所在的组,否则会建立一个和用户同名的组
命令:passwd 用户名;作用:设置用户密码;说明:如果是普通用户,直接用passwd可以修改自己的账户密码
命令:userdel -r 用户名;作用:删除用户;说明:-r选项会自动删除用户家目录
命令:cat /etc/passwd | grep 用户名;作用:确认用户信息
提示:
创建用户时,如果忘记加-m选项指定新用户的家目录,最简单的方法就是删除用户,重新创建
创建用户时,默认会创建一个和用户名同名的组名
用户信息保存在/etc/passwd文件中
3.1查看用户信息
命令:id[用户名];作用;查看用户UID和GID信息
命令:who;作用:查看当前所有登录的用户列表
命令:whoami;作用:查看当前登录用户的账户名
3.2passwd文件
/etc/passwd文件存放的是用户的信息,由6个分号组成的7个信息,分别是
1、用户名
2、密码(x表示加密的密码)
3、UID是用户标识
4、GID是组标识
5、用户全名或本地账号
6、家目录
7、登录使用的shell,就是登录之后使用的终端命令,ubuntu默认是dash
3.3usermod
usermod可以用来设置用户的主组/附加组和登录Shll,命令格式如下:
主组:通常在新建用户时指定,在etc/passwd的第4列GID对应的组
附加组:在etc/group中最后一列表示该组的用户列表,用于指定用户的附加权限
提示:
设置了用户的附加组之后,需要重新登录才能生效
#修改用户的主组(passwd中的GID)
usermod -g 组 用户名
#修改用户的附加组
usermod -G 组 用户名
#修改用户登录shell
usermod -s /bin/shell 用户名
3.4which
提示
/etc/passwd是用于保存用户信息的文件
/usr/bin/passwd是用于修改用户密码的程序
which命令可以查看执行命令所在的位置
bin和sbin
在Linux中,绝大多数可执行文件都保存在/bin、/sbin、/usr/bin、/usr/sbin
/bin(binary)是二进制执行文件目录,主要用于具体应用
/sbin(system binary)是系统管理员专用的二进制代码存放目录,主要用于系统管理
/usr/bin(user commands for applications)后期安装的一些软件
/usr/sbin(super user commands for applications)超级用户的一些管理程序
提示
cd这个终端命令是内置在系统内核中的,没有独立的文件,因此用which无法找到
3.5切换用户
命令:su -用户名;作用:切换用户,并且切换目录;说明:-可以切换到用户家目录,否则保持位置不变
命令:exit;作用:退出当前登录用户
注意:su不接用户名,可以切换到root,但是不推荐使用,因为不安全
3.6修改文件权限
命令:chown;作用:修改拥有者
命令:chgrp;作用:修改组
命令:chmod;作用:修改权限
命令格式如下:
#修改文件|目录的拥有者
chown 用户名 文件名|目录名
#递归修改文件|目录的组
chgrp -R 组名 文件名|目录名
#递归修改文件权限
chmod -R 755 文件名|目录名
chmod在修改文件权限时,可以简单的使用三个数字分别对应拥有者/组和其他用户的权限