Linux基础 二
一、用户及用户组的概念、
1、用户
##用户是什么?系统中为什么要有用户?
用户:用户是系统中最底层的安全设定的一部分。在一个操作系统中,可以建立多个用户。比如我们现在使用的Linux系统中,可以创建多个用户进行操作,系统会分配给不同的用户以不同的权限(例如Linux中的普通用户只能读取文件,那么超级用户就能够对系统文件进行增删改查等操作)。既然说到安全部分,举个栗子:比如说我们现在系统默认有一个不加密的用户,谁都可以使用,但是如果我们新建一个用户加密,那么就只有知道这个新建用户密码的人才能登陆进去,这样是不是就比之前的要安全一些了。
##用户组的概念
用户组就是一个系统中的一组用户可以共享权利。比如说我们在系统中将一些用户添加到一个用户组中,然后通过更改一些系统文件赋予这一个组的用户某些权限,例如增删改查等,那么我们就说这些用户在一个用户组中共享权利。
用户组分为初始组和附加组。初始组是建立用户时就给这个用户设定好的一些权限,是不能更改的;附加组是建立用户之后再给它赋予某些权限,是可以选择更改的。
2、用户存在的形态
在系统中,用户以文字+表格的形态存在
3、用户配置文件
1> /etc/passwd 用户信息文件
用户名称:密码:用户id:组id:用户说明:用户家目录:用户默认使用的shell
2> /etc/group 用户组信息
组名称:组密码:组id:附加组成员
3>/home/username 用户家目录
4>/etc/skel.* 用户骨文件(用户环境配置模板,在用户建立时自动复制到用户家目录中)
5>/etc/shells 查看系统中的shells
4、用户的查看
1> whoami 查看当前用户名称
2> id username 查看用户的ID信息
3> id -u username 查看用户的uid
-g username 查看用户的gid
-G username 查看用户所在的组ID(附加组)
-n username 以名称显示信息
5、用户的建立及删除
1>用户的建立
useradd username 使用默认规则建立用户
useradd -c “说明文字” username
useradd -u username 指定用户UID
useradd -g username 指定用户初始值
useradd -G username 指定用户的附加组(附加组的ID必须存在)
useradd -c username 指定用户的说明文字
useradd -d username 指定用户的家目录
useradd -s username 指定用户的shell(系统可以用shell 系统可以用shell可在/etc/shells中查看)
2>用户删除
userdel username 删除用户身份,但不删除配置文件
userdel -r username 删除用户身份及配置文件
3>建立组
groupadd groupname 建立组
groupadd -g groupname 指定组的uid
groupadd -G groupname 指定组的gid
groupadd -c groupname 指定组的说明文字
groupadd -d groupname 指定组的家目录
6、用户的管理
1> usermod -l newname oldname 修改用户的名字
2>usermod -u uid
3>usermod -g id 用户名 初始组id
4>usermod -G id 用户名 修改附加组
5>usermod -aG id 增加附加组
6>usermod -c id 更改用户说明
7>usermod -d id 更改用户家目录
8>usermod -md id 更改用户家目录指向和名称
9>usermod -s id 更改用户shell
10>usermod -G "" 用户名 清除所有附加组
7、用户切换
高级用户切换到低级用户时不需要密码,低级用户切换到高级用户或者平级用户时需要后者的密码
用户切换命令:su - username
1>低级用户切换到高级用户
2>低级用户切换到平级用户
3>高级用户切换到低级用户
注意:用户每次切换之前最好退出上一个用户
su -表示切换用户身份及环境
su 表示只切换用户身份
8、用户的认证信息
/etc/shadow 用户的认证信息
用户名:
密码:
passwd username 只有超级用户执行
usermod -l username 冻结账户
usermod -u username 解锁
passwd -l username 冻结账户
passwd -u username 解锁
passwd -d username 清空密码(超级用户的权限)
密码最后一次被修改时间:当被改为0时,用户第一次登陆必须改密码
chage -d 0 用户名
passwd -e 0 用户名
密码最短有效期
chage -m/d 1 用户名
passwd -n 0 用户名
密码最长有效期
chage -M 30 用户名
passwd -x 30 用户名
密码过期警告
chage -W 2 用户名
passwd -w
密码非活跃期
chage -l 2 用户名
passwd -i 0 用户名
账号到期日
chage -E “2018-11-11” 用户名
9、用户权利下放
1>配置文件
/etc/sudoers
2>配置命令
visudo 打开文件编译,有错会退出报错
用户名称 主机名称 = (执行程序身份)命令 当执行命令时需要用户验证
用户名称 主机名称 = (执行命令身份)NOPASSWD:命令1,命令2 当执行命令时不需要用户验证