一、用户账号包括(查看已经存在的账号 | 添加用户账号 | 修改用户账号 | 删除用户账号)
查看存在的账号:
more /etc/passwd #或者是 awk -F‘:‘ ‘{ print $1}‘ /etc/passwd
添加用户账号命令:useradd
useradd -d /home/uhome -m ikphp
创建了一个ikphp的用户账号
参数选项:
useradd --help
用法:useradd [选项] 登录
useradd -D
useradd -D [选项]
选项:
-b, --base-dir BASE_DIR 新账户的主目录的基目录
-c, --comment COMMENT 新账户的 GECOS 字段
-d, --home-dir HOME_DIR 新账户的主目录
-D, --defaults 显示或更改默认的 useradd 配置
-e, --expiredate EXPIRE_DATE 新账户的过期日期
-f, --inactive INACTIVE 新账户的密码不活动期
-g, --gid GROUP 新账户主组的名称或 ID
-G, --groups GROUPS 新账户的附加组列表
-h, --help 显示此帮助信息并推出
-k, --skel SKEL_DIR 使用此目录作为骨架目录
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值
-l, --no-log-init 不要将此用户添加到最近登录和登录失败数据库
-m, --create-home 创建用户的主目录
-M, --no-create-home 不创建用户的主目录
-N, --no-user-group 不创建同名的组
-o, --non-unique 允许使用重复的 UID 创建用户
-p, --password PASSWORD 加密后的新账户密码
-r, --system 创建一个系统账户
-R, --root CHROOT_DIR chroot 到的目录
-s, --shell SHELL 新账户的登录 shell
-u, --uid UID 新账户的用户 ID
-U, --user-group 创建与用户同名的组
-Z, --selinux-user SEUSER 为 SELinux 用户映射使用指定 SEUSER
--extrausers Use the extra users database
1、创建后用 more /etc/passwd 查看
daokr:x:1000:1000:daokr,,,:/home/daokr:/bin/bash
sshd:x:121:65534::/var/run/sshd:/usr/sbin/nologin
ikphp:x:1001:1001::/home/uhome:
---------------------------------
用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
2、用more /etc/group 查看下 所有的用户组
daokr:x:1000:
sambashare:x:128:daokr
ikphp:x:1001:
---------------------------------
组名:口令:组标识号:组内用户列表
然后看到上面这些;分别对应的是组名和口令 组的标识符;还有组内用户列表
ikphp是刚才创建的用户 她属于1001的用户组 他的用户表示是1001
3、用more /etc/shadow 命令行查看下用户ikphp的密码文件
usbmux:*:16911:0:99999:7:::
daokr:$6$5WFBWzId$qZF3/lmwl/2qTJgS./dyk7LzIqrZc/MXEeybmzGTv21Co9jTgm6jJZ/BMiUZK0uGFqOF175Umcguo4TJqwCKM/:17617:0:99999:7:
::
sshd:*:17617:0:99999:7:::
ikphp:!:17617:0:99999:7:::
上面全是密码文本:
---------------------------------
登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
登录名:daokr
加密字符串:$6$5WFBWzId$qZF3/lmwl/2qTJgS./dyk7LzIqrZc/MXEeybmzGTv21Co9jTgm6jJZ/BMiUZK0uGFqOF175Umcguo4TJqwCKM/
最后一次修改时间:17617
其他。。。。
- "登录名"是与/etc/passwd文件中的登录名相一致的用户账号
- "口令"字段存放的是加密后的用户口令字,长度为13个字符。如果为空,则对应用户没有口令,登录时不需要口令;如果含有不属于集合 { ./0-9A-Za-z }中的字符,则对应的用户不能登录。
- "最后一次修改时间"表示的是从某个时刻起,到用户最后一次修改口令时的天数。时间起点对不同的系统可能不一样。例如在SCO Linux 中,这个时间起点是1970年1月1日。
- "最小时间间隔"指的是两次修改口令之间所需的最小天数。
- "最大时间间隔"指的是口令保持有效的最大天数。
- "警告时间"字段表示的是从系统开始警告用户到用户密码正式失效之间的天数。
- "不活动时间"表示的是用户没有登录活动但账号仍能保持有效的最大天数。
- "失效时间"字段给出的是一个绝对的天数,如果使用了这个字段,那么就给出相应账号的生存期。期满后,该账号就不再是一个合法的账号,也就不能再用来登录了。
删除账号
删除刚才创建的ikphp账号命令
userdel -r ikphp
如上命令会把 ikph的主目录 /home/uhome 一起删除
或者用
userdel ikphp
只删除账号;不删除目录;然后再 用刚才的more命令看下 passwd 和 /etc/group 和 /etc/shadow 里面 肯定没有了ikphp的资料
修改账号
和添加账号一样的参数
常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。
另外,有些系统可以使用选项:-l 新用户名
这个选项指定一个新的账号,即将原来的用户名改为新的用户名。
例如:
# usermod -s /bin/bash -d /home/IK –g mygroup ikphp
此命令将用户ikphp的登录Shell修改为bash,主目录改为/home/IK,用户组改为mygroup。
下面的命令将把 用户ikphp 添加到用户组 mygroup中 并且知道启动程序的 开始目录是 uhome ;而且启动用的shell是bash
# useradd -d /home/uhome -s /bin/bash -g mygroup ikphp
如果修改就把 useradd 改成 usermod 即可。
#usermod -d /home/uhome -s /bin/bash -g daokr ikphp
修改用户登录密码
[email protected]:/home# passwd ikphp 输入新的 UNIX 密码: 重新输入新的 UNIX 密码: passwd:已成功更新密码
使用passwd指定用户名修改;具体参数如下
- 可使用的选项:
- -l 锁定口令,即禁用账号。
- -u 口令解锁。
- -d 使账号无口令。
- -f 强迫用户下次登录时修改口令。
- 如果默认用户名,则修改当前用户的口令。
二、用户组管理(查看已经存在用户组 | 添加用户组 | 修改用户组 | 删除用户组)
1.添加一个组
groupadd -g 1001 mygroup
可以使用的选项有:
-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
此命令向系统中增加了一个新组mygroup,同时指定新组的组标识号是1001。
2.删除用户组
groupdel mygroup
3.修改用户组
groupmod 选项 用户组
实例1: # groupmod -g 102 group2 此命令将组group2的组标识号修改为102。 实例2: # groupmod –g 10000 -n group3 group2 此命令将组group2的标识号改为10000,组名修改为group3。
修改mygroup 名称为ikphp 新组名称
groupmod -n ikphp mygroup