查看:id 用户名 #whoami 查看我现在所使用的账户 uid=0(root) gid=0(root) 组=0(root) 主属组 附属组 #id user1 查看user1这个账户的id信息 #cat /etc/passwd 账户的基本信息都在这个文件内 用户名:代表密码:uid:gid:账户的描述信息:家目录:登录shell
uid:大于1000的是普通账户 小于一千的是系统账户
uid从0开始,默认500(rhel7发生变化1000)以内的是系统账户,1000(包括1000本身)以上是普通户,最大到60000
gid从0开始,默认1000以内的是系统组,1000(包括1000本身)以上是普通组,最大到60000
60000是系统默认能给的最大值(手动指定不受此限制)
shell是用户登录后运行的第一个程序
/usr/sbin/poweroff
/usr/sbin/reboot
创建用户 #useradd [参数] ... 用户名称 在新建账户的同时会产生一个同名的组,会在home下创建一个跟用户同名的家目录 -d 指定家目录 -u 指定uid -o 当Uid不唯一的时候使用 -g 指定主属组 -c 指定描述字段 -s 指定登录shell 查看系统现在所支持的shell # cat /etc/shells /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/tcsh /bin/csh # useradd -s /sbin/nologin user7 -M 不创建家目录
纯手动创建账户过程 创建jim账户 1.在passwd文件添加一个行jim账户信息 在shadow文件添加一个行jim账户信息 2.创建家目录 #cp -r /etc/skel /home/jim 3.在group文件添加一行jim组信息 在gshadow文件添加一行jim组信息 4.修改权限 #chown jim.jim /home/jim #chmod 700 /home/jim 5.创建个人邮箱 #mkdir /var/spool/mail/jim #chown jim.mail /var/spool/mail/jim #chmod 660 /var/spool/mail/jim
修改账户 1)修改passwd文件,这个文件里面除了密码字段能删除不能直接修改之外 ,其他字段全部都能直接修改 2)usermod 修改用户名称 -l # usermod -l user9 user8 # id user8 id: user8:无此用户 修改uid -u -o 当指定的Uid不唯一的时候使用
修改gid -g
修改描述 -c
修改家目录 -d
修改登录shell -s
锁定帐号 -L
解锁帐号 -U
修改用户附属组 -G
# usermod -G grp3 user11
要去的组 用户
追加用户附属组(-aG一起用)
-a
#usermod -aG 组名 用户
锁定密码
#passwd -l 账户名称
解锁密码 #passwd -u 账户名称
查看密码状态 #passwd -S 账户名称
密码信息 /etc/shadow 又称他为影子文件
修改密码信息: 1)shadow所有字段都可以手动修改。 2)#chage 普通账户不能查看shadow文件 密码信息(不需要死背) /etc/shadow 又称他为影子文件 #man 5 shadow 用户名 加密密码 最后一次修改密码的时间(用天数来表示,从1970.1.1到最后一次修改密码的天数) 密码生存周期(两次密码修改之间的最小间隔) 密码的有效期(用天数来表示,从1970.1.1开始计算到密码过期有多少天) 警告时间(密码过期之前的警告时间) 密码有效期 帐号的有效期 预留字段 删除账户 #userdel -r 用户名称 -r 连带个人信息(家目录,个人邮箱)一起删除
切换账户 #su - 账户 - 环境变量 一起切换 #su -l 账户 在当前shell使用后名指定的账户执行命令: #su - 账户 -c "命令"
组管理
创建组
#groupadd 组名
#groupadd -g gid 组名
#groupadd -g gid -o 组名
查看组 #cat /etc/group 组名:代表组密码:gid:组员
查看一个用户的所属组
#groups 用户名称
修改组 #groupmod 参数 组名 -g gid -n 改名 -o 存在冲突用 #groupmod -g 2000 grp1 #groupmod -n grp3 grp1
给组设置密码(用的少) #gpasswd 参数 组名 #gpasswd grp2
给组添加账户 # gpasswd -a user10 grp2 Adding user user10 to group grp2
同时添加多个用户到组: [root@wing /]# gpasswd -M jim,tom,wing 组名
从组删除账户 # gpasswd -d user10 grp2
指定组管理员 # gpasswd -A user12 grp2
组密码文件 # cat /etc/gshadow 组名:密码:组管理员:组员
删除组 # groupdel 组名 用户的主属组不能删除