用户管理
添加用户
以root用户执行
adduser 或 useradd [new_account]
-u UID -d 指定家目录 -g GID 指定一个基本组ID -G指定一个附加组ID -c 添加附加信息 –s -r 创建系统用户—不能登陆(1-499)
设置密码 -s 指定用户使用的shell
passwd 不带用户名为更改管理员密码
passwd username
--stdin 标准输入
echo 'abc123,./' | passwd --stdin peter > /dev/null
通过管道 输入到指定的用户 只输入输入一次,不提示信息.
检验执行命令是否成功:echo $?
当添加新的用户帐户时默认会执行下列操作:
会创建一个和用户名同样的组(除非给新创建的用户指定了组)
主目录被创建(一般是"/home/用户名",除非特别设置)
一些隐藏文件 如.bash_logout, .bash_profile 以及 .bashrc 会被复制到用户的主目录,会为用户的会话提供环境变量
会为您的账号添加一个邮件池目录。
会创建一个和用户名同样的组(LCTT 译注:除非你给新创建的用户指定了组)。
用户帐户的信息被保存在/etc/passwd文件
修改用户默认值文件
vi /etc/default/useradd
GROUP=100
HOME=/home-----指定hone目录
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash---默认shell
SKEL=/etc/skel-- 复制到指定的home目录
CREATE_MAIL_SPOOL=yes------邮件缓存文件
解析/etc/passwwd和/etc/gshadow 、/etc/group
- 用户信息/etc/passwd:
root : x : 0 : 0 : root: /root: /bin/bash
用户名 密码占位符 UID GID 用户描述 用户家目录 登陆后默认使用的shell
伪用户
通常为不需要登录和用户
bin、sys、adm、uucp、lp、nobody
查看用户登陆信息
who、
列出当前用户所有信息
whoami
id username
查看用户的用户ID用户名 组id组名 用户所属组名和附加组组名
id acer
uid=1000(acer) gid=0(root) 组=0(root),10(wheel)
截取部分id信息 –u g G
finger name
finger acer
Login: acer Name: Acer
Directory: /home/acer Shell: /bin/bash
Last login 二 3月 1 23:30 (CST) on pts/1
No mail.
No Plan.
修改用户账户信息
语法:usermod [options] [username]
usermod
-u [uid]
-g [组id]
-G 修改附加组
-a(append) -G 【将用户添加到附加组】
-c 【修改注释】
-s【修改shell】
-d【修改主目录】
若加-m 选项,当前主目录的内容将会移动到新主目录中,
如果不存在,则创建。
Passwd
更改密码:
设置密码 -s 指定用户使用的shell
passwd 不带用户名为更改管理员密码
passwd username
--stdin 标准输入
echo 'password01!' | passwd --stdin USERNAME > /dev/null
通过管道 输入到指定的用户 只输入输入一次
不提示信息,检验执行命令是否成功
echo $?
--shell
更改系统默认shell,后加新的shell的路径
- chsh
chsh :不加用户名 该自己的shell
chsh username
-l(小写的L)或 -lock 选项来锁定用户的密码。阻止用户登录
-u 或 --unlock 选项来解锁用户的密码
- 在有限时间内授予访问
--expiredate 参数 ,后加YYYY-MM-DD 格式的日期
查看是否生效
chage -l [username]
创建用户时的主用户组,添加到别的组,后跟逗号分隔的组名
usermod -aG或 -append -group
修改默认的用户主目录
-d 或 -home 参数
chfn username
chfn acer
Changing finger information for acer.
名称 [Acer]: acer admin
办公 []: chongqing china
办公电话 []: 02363622345
住宅电话 []: 13507074444
删除组和用户
groupdel [group_name] # 删除组
userdel [user_name] # 删除用户
userdel -r [user_name] # 删除用户,并删除主目录和邮件池
- 找回root密码
选择grub菜单
编辑grub文件
使用按键“e”,找到Linux 16 ro\
替换init路径
将ro 替换为rw init=/sysroot/bin/sh \为换行符
重启
访问系统修改密码
chroot /sysroot
passwd root
touch /.autoreable # 更新系统
退出并重启
exit #退出系统
reboot #重启系统
验证
以前保存的密码,能直接登录,现在不能正常使用;说明通过上述操作更改root密码成功
组管理
Groupadd
-g GID
-r(1--499之间) 创建系统组
存储组信息的/etc/group
groupmod
-g
-n [更改组名]
groupdel group_name
gpasswd group_name【给组添加密码】
/etc/group
root: x: 0: space
组名称 组密码占位符 GID 以此组为其额外组用户的用户列表
newgrp group_name:切换标准组
密码信息/etc/shadow
acer: $6$.Ot5pJ. : 16773: 0: 99999: 7 : : :
- 用户名
- 密码被加密后的密码 !!:禁用
- 最后一次更改密码的日期,从19700101开始计算
- 密码不能更改的天数:0为任意时间
- 密码过期时间
- 更改密码需要提前7天发出警告
- 宽限天数
- 账号过期时间
- 保留
默认加密特点:单向加密:特定定长输出、蝴蝶(雪崩)效应、不可反推,明文一样,结果一致
MD5:128bit
sha1:160bit
salt:随机值
查看用户:id username
id peter
uid=1001(peter) gid=1001(peter) 组=1001(peter)