Linux_基础_用户管理
用户关联账号文件
/etc/passwd # 用户账号配置文件 含义: 用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell /etc/shadow # 用户口令配置文件 含义: 登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志 /etc/group # 用户组配置文件 含义: 组名:口令:组标识号:组内用户列表
用户
useradd:添加用户
语法: useradd <选项> <参数> 选项: -c<备注> # 加上备注文字。备注文字会保存在passwd的备注栏位中 -d<登入目录> # 指定用户登入时的启始目录 -D # 变更预设值 -e<有效期限> # 指定账号的失效日期,日期格式为MM/DD/YY,例如06/30/12。缺省表示永久有效 -f<缓冲天数> # 指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1 -g<群组> # 指定用户所属的群组。值可以使组名也可以是GID。用户组必须已经存在的,期默认值为100,即users -G<群组> # 指定用户所属的附加群组 -m # 自动建立用户的登入目录 -M # 不要自动建立用户的登入目录 -n # 取消建立以用户名称为名的群组 -r # 建立系统帐号 -s<shell> # 指定用户登入后所使用的shell。默认值为/bin/bash -u<uid> # 指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499 参数: 用户名 # 指定新账号的登录名 实例: useradd tom # 建立新用户 useradd -u 544 -d /usr/tom -g users -m tom # 建立新用户tom,设置UID为544,主目录为/usr/tom,属于users组
userdel:删除用户
语法: userdel <选项> <参数> 选项: -f # 强制删除用户,即使用户当前已登录 -r # 删除用户的同时,删除与用户相关的所有文件 参数: 用户名 # 要删除的用户名 实例: userdel tom # 删除用户,保留用户主目录 userdel -r tom # 删除用户以及用户主目录(一般不使用一并删除用户主目录方式)
usermod:修改用户
语法: usermod <选项> <参数> 选项: -c<备注> # 修改用户帐号的备注文字 -d<登入目录> # 修改用户登入时的目录 -e<有效期限> # 修改帐号的有效期限 -f<缓冲天数> # 修改在密码过期后多少天即关闭该帐号 -g<群组> # 修改用户所属的群组 -G<群组> # 修改用户所属的附加群组 -l<帐号名称> # 修改用户帐号名称 -L # 锁定用户密码,使密码无效 -s<shell> # 修改用户登入后所使用的shell -u<uid> # 修改用户ID -U # 解除密码锁定 参数: 用户名 # 要修改的用户名 实例: usermod -l jerry tom # 修改tom用户名为jerry
id:显示用户信息
语法: id <选项> <参数> 选项: -g或--group # 显示用户所属群组的ID -G或--groups # 显示用户所属附加群组的ID -n或--name # 显示用户,所属群组或附加群组的名称 -r或--real # 显示实际ID -u或--user # 显示用户ID 参数: 用户名 # 要查看的用户 实例: id # 显示当前用户信息 id -u tom # 显示tom用户UID
passwd:指定/修改用户密码
语法: passwd <选项> <参数> 选项: -d # 使账号无口令(系统管理者) -f # 强迫用户下次登录时修改口令 -k # 设置只有在密码过期失效后,方能更新 -l # 锁定用户口令 -S # 显示密码信息(系统管理者) -u # 解锁用户口令 -x # 设置密码的有效期 -i # 过期后停止用户账号 -g # 修改群组口令 参数: 用户名 # 需要设置密码的用户名 实例: passwd tom # 更改或创建tom用户密码 passwd -l tom # 锁定用户不能更改密码
su:切换用户
语法: su <选项> <参数> 选项: -c<指令>或--command=<指令> # 执行完指定的指令后,即恢复原来的身份 -f或--fast # 适用于csh与tsch,使shell不用去读取启动文件 -l或--login # 改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,logname。此外,也会变更PATH变量 -m,-p或--preserve-environment # 变更身份时,不要变更环境变量 -s<shell>或--shell=<shell> # 指定要执行的shell 参数: 用户名 # 指定要切换身份的目标用户 实例: su tom # 切换用户 su - tom # 切换用户,改变环境变量(whoami显示当前用户, exit退出当前用户)
用户组
groupadd:添加用户组
语法: groupadd <选项> <参数> 选项: -g<群组> # 指定GID,默认使用当前最大的GID加1 -r # 创建系统工作组,系统工作组GID小于500 -K # 覆盖配置文件"/ect/login.defs" -o # 允许设置相同GID的群组 参数: 组名 # 指定新建工作组的组名 实例: groupadd group1 # 添加用户组group1 groupadd -g 101 group2 # 添加用户组group2并设置组GID
groupdel:删除用户组
语法: groupdel <参数> 参数: 组名 # 要删除的工作组名 实例: groupdel group1 # 删除用户组group1
groupmod:修改用户组
语法: groupmod <选项> <参数> 选项: -g<群组识别码> # 设置欲使用的群组识别码 -o # 重复使用群组识别码 -n<新群组名称> # 设置欲使用的群组名称 参数: 组名 # 指定要修改的工作组名 实例: groupmod -n group2 group1 # 修改group1组名为group2
newgrp:切换用户组
语法: newgrp <参数> 参数: 组名 # 指定要切换的用户组 实例: newgrp group2 # 切换到group2组