一、用户的管理
1、思考:系统中为什么要有用户?
底层的安全设定的一部分,用户有特定的权力。限制权力
组:用来共享权力的
两种: 能决定的叫附加组(不一定都有)
不能改变的组 初始组(所有用户都有)
2、用户存在的形式
用户是以表格的形式存在加上调用的配置文件
3、用户配置文件
/etc/passwd 用户信息文件
用户名称:密码:用户id(用户×××号):组id:用户说明:用户家目录:默认用户使用的shell
/etc/group 用户组信息 组名称:组密码:组id:附加组成员
/home/username 用户家目录
/etc/ske.* 用户骨文件(用户环境配置模版,在用户建立时会自动复制到家目录中)
4、用户的查看 whoami 查看当前用户的名称 id username 查看用户的id信息 -u 查看用户的uid -g 查看用户的初始组的id -G 查看用户所在的组所有的组id
-n 以名称显示信息
5、用户的建立和删除 watch -n 1'tail -n 4 /etc/passwd/ /etc/group;echo ===;ls -1 /home' 每隔一秒查看用户的信息
/etc/login.defs 在此文件中可以设定建立用户的默认信息
useradd username 使用默认规则建立用户(规则参看/etc/login.defs) useradd -u 6666(id) 指定用户的uid useradd -g 6666(初始组id) username 指定用户的初始组id groupadd -g 6666 groupname 创建初始组 groupadd groupname 建立组 group useradd -G 6666 username 指定附加组 useradd -c "test user" username 指定说明文字 useradd -d /mnt/westos username 指定家目录
useradd -s username 指定用户的shell(系统可用shell在/etc/shells中查看)
删除:userdel username 删除用户身份
userdel -r username 删除用户身份和配置文件 区别:只删除用户身份,再次创建时会失败 完全删除创建用户:
man useradd 查看useradd kill -9 强制结束某一个进制 6、用户管理 usermod -l linux(新用户名) teacher(原用户) 改变用户名称 usermod -u id studnet(用户名) 改变用户uid usermod -G 25 student 更改附加组(清除原来所有的附加组,茶创建一个新的组) usermod -G “” student 清除所有的附加组 usermod -aG 36 student 在原有的基础上增加附加组 usermod -c test student 添加说明文字 usermod -c “” student 清除所有的说明文字
usermod -d /home/lee student 改变用户家目录 usermod -md /home/lee student 重命名用户和家目录 usermod -s /bin/ 更改用户的shell 更改前必须先查看用户可以用的shell 其中/sbin/nologin和/usr/sbin/nologin是系统shell,不能提供交互页面作用,即不能登陆和切换 修改shell 7、用户切换 su - username 高级用户切换到低级用户不需要密码 低级用户切换到高级用户或切换到平级用户需要密码 注意: 1)、用户切换后及时退出在切换到下一个用户 2)、su - 表示切换用户身份和用户环境 8、用户的认证信息 /etc/shadow 记录用户的认证信息 用户名称: 密码:md5 sha512 加密 对称加密 passwd username 只有超级用户执行 passwd 普通用户执行 usermod -L 冻结帐号 usermod -U 解锁 passwd -l 冻结帐号 passwd -u 解锁 passwd -d 清空密码 密码最后一次被修改的时间:当此为数字为0时,在登陆系统的时候会被强制更改密码 chage -d 0 student passwd -e student 密码最短有效期:密码多长时间改不了 chage -m 1 student passwd -n 3 student 密码最长有效期:密码多长时间必须被更改 99999 chage -M 30 student passwd -x 40 student 密码过期警告: chage -W 2 student passwd -w 2 studnet 密码非活跃期:密码被冻结后,可以在时间内更改密码 chage -I 2 student passwd -i 0 student 密码到期日: chage -E "2018-11-11" teacher 未设定用户自定义: 9、用户权力下放 1)、配置文件 /etc/sudoers 2)、配置名令 visudo 此命令提供语法检测
用户名称 主机名称=(执行程序身份) 命令 linux11 dns=server.exampl=(root) /usr/sbin/useradd 用sudo username 命令执行 用户名称 主机名称=(执行程序身份)NOPASSWD:命令1, 命令2 执行命令时不需要输入密码 10、修改虚拟机超级用户的密码(在不知道密码的情况下) 1)、重启虚拟机,一直按上下健,直到出现选项 然后选中下面的哪一个,按e 2)、然后出现一个界面,从linux16的末尾开始删除,一直删到ro,把ro改为rw,然后加空格,再加上rd.break ,然后按Ctril+x。 3)然后在代码不再滚动的时候,输入charoot /sysroot/,按回车,然后在输入passwd,页面会让输入新密码,然后输入要修改的密码,重复输入两次密码,然后输入两次exit,然后就可以用修改后的密码登陆了 步骤一 步骤二 步骤三 步骤四