Linux用户和用户
概念说明:
用户=>UID:用来区分不同用户的数字被称为User ID;分为三类
1.根用户=>root用户,UID=0 ;
称为超级用户,root用户拥有系统的完全控制权(可以修改、删除任何文件、运行任何命令)
2.系统用户=>1~499(32位),1~999(64位);
系统保留ID(给系统使用的ID),系统运行时必须有的用户,但并不是真实使用者;
用一些权限去启动一些网络服务或后台服务,
但不想使用root身份去zhan执行这些服务,就可以使用这些系统账号,
这些账号通常不可登录,shell设置为/sbin/nologin
3.普通用户=>500开始(32位), 1000~60000(64位);
用户组=>GID:用来区分不同用户组的数字被称为Group ID
查看当前密码加密方式authconfig --test | grep hashing
账号管理命令操作
useradd
useradd - 创建一个新用户或更新默认新用户信息
使用:
useradd [-u UID] [-g 初始用户组] [-G 附加组] [-mM] [-c 家目录绝对路径] [-s shell ] 使用者账号名
选项:
-u 后面接的是UID,是一组数字,直接指定一个特定的UID给这个账号
-g 后面接的用户组(初始用户组),该用户组的GID会被放到/etc/passwd 的第四字段
-G 后面接的用户组(附加组),这个选项的参数会修改/etc/group文件的内容
-M 强制,不要建立使用者家目录(系统账号默认值)
-m 强制,要建立使用者家目录(普通账号的默认值)
-c 这个就是/etc/passwd的第五字段用户信息说明栏,可以随便设置
-d 指定某个目录为家目录,而不使用默认值,务必使用绝对值
-r 建立一个系统账号
-s 后面接一个shell,若没有默认是/bin/bash,写入/etc/passwd 第七字段
-f 密码失效宽限天数,/etc/shadow 第七字段;0 立刻失效 -1 永远不失效
-e 账号的失效日期,接日期,格式为【YYYY-MM-DD】;写入/etc/shadow第八字段;无指定,不过期
此命令参考的文件
/etc/default/useradd <=> useradd -D 查看命令默认值
/etc/login.defs
/etc/skel/*
useradd 命令使用
usermod
usermod - 修改一个用户账户
使用:
usermod [-cdegGlsuLU] 账号名
选项:
-c, --comment 接账号说明; /etc/passwd 第5字段
-d, --home HOME_DIR 接账号家目录 用户的新主目录;/etc/passwd 第6字段
-m, --move-home 将家目录内容移至新位置 (仅于 -d 一起使用)
-e, --expiredate 接日期,账号失效日期;/etc/shadow 第8字段,格式YYYY-MM-DD
-f, --inactive INACTIVE 接天数, 过期 INACTIVE(不活动的) 天数后,设定密码为失效状态;/etc/shadow 第7字段
-g, --gid GROUP 接初始用户组;/etc/passwd 第4字段
-G, --groups GROUPS 接次要用户组(附加组); /etc/group 第4字段
-a, --append GROUP 将用户追加至上边 -G 中提到的附加组中,并不从其它组中删除此用户
-l, --login LOGIN 接账号名称 ,修改账号名称;/etc/passwd 第1字段
-L, --lock 锁定指名帐户的密码(仅限 root 用户),/etc/shadow 第二字段加!使密码失效
-U, --unlock 解锁指名账户的密码(仅限 root 用户),/etc/shadow 第二字段 !拿掉,使密码账号密码恢复使用
-p, --password PASSWORD 将加密过的密码 (PASSWORD) 设为新密码
-s, --shell SHELL 接shell详细路径, 修该用户登录的shell;/etc/passwd 第7字段
-u, --uid UID 接UID数字,/etc/passwd 第3字段
-Z, --selinux-user SEUSER 用户账户的新 SELinux 用户映射
passwd
passwd - 更新用户密码令牌
使用:
passwd [账号名称] 《=针对所有用户
passwd [-l] [-u] [--stdin] [-S] [-n 天数] [-x 天数] [ -w 天数] [-i 日期] 账号 《=仅限root用户
选项:
--stdin 从标准输入读取令牌(只有根用户才能进行此操作)
-k 保持身份验证令牌不过期
-d 删除已命名帐号的密码(只有根用户才能进行此操作)
-l, --lock 锁定指名帐户的密码(仅限 root 用户),/etc/shadow 第二字段加!使密码失效
-u, --unlock 解锁指名账户的密码(仅限 root 用户)
-e, --expire 终止指名帐户的密码(仅限 root 用户)
-f, --force 强制执行操作
-n, --minimum=DAYS 密码的最短有效时限(密码不可修改的天数),/etc/shadow 第4字段
-x, --maximum=DAYS 密码的最长有效时限(密码重新修改的天数),/etc/shadow 第5字段
-w, --warning=DAYS 在密码过期前多少天开始提醒用户(密码失效前提醒警告天数),/etc/shadow 第6字段
-i, --inactive=DAYS 当密码过期后经过多少天该帐号会被禁用(密码失效宽限天数) ,/etc/shadow 第7字段
-S, --status 报告已命名帐号的密码状态(只有根用户才能进行此操作)
chage
chage - 更改用户密码过期信息
使用 :
chage [-ldEImMW] 账号名
选项:
-l, --list 列出该账号的详细密码参数
-d, --lastday 接日期,密码最近修改日期;/etc/shadow 第3字段,格式YYYY-MM-DD
-m, --mindays 接天数 ,密码不可修改的天数;/etc/shadow 第4字段
-M, --maxdays 接天数 ,密码重新修改的天数;/etc/shadow 第5字段
-W, --warndays 接天数, 密码过期警告天数;/etc/shadow 第6字段
-I, --inactive INACITVE 接天数, 过期 INACTIVE 天数后,设定密码为失效状态;/etc/shadow 第7字段
-E, --expiredate 接日期,账号失效日期;/etc/shadow 第8字段,格式YYYY-MM-DD
userdel
userdel - 删除用户账户和相关文件
使用:
userdel [-r] 账号名
选项:
-f 此选项强制删除用户账户,甚至用户仍然在登录状态。它也强制 userdel 删除用户的主目录和邮箱,
即使其它用户也使用同一个主目录或邮箱不属于指定的用户。
-r 连同使用者的家目录,邮件池也一起删除
-Z, --selinux-user 为用户删除所有的 SELinux 用户映射
用户使用功能
id
id - 显示真实和有效的 UID 和 GID
使用:
id [账号名]
选项:
-a 显示全部
-g, --group 只显示组 ID
-G, --groups 只显示附加组
-u, --user 只 显示 用户 ID
finger
finger — 用户信息查找程序
使用:
finger [-s] 账号名
选项:
-s Finger 显示用户的登录名, 真名, 终端名 以及写 状态(如果写被禁止,在终端名后显示一个``*''),
空闲时间,登录时间,办公地点和电话等。
-l 产生一个多行显示来描述信息 -s 关于用户家目录,家庭电话,登录脚本,邮件状态和文件的内容
chfn
chfn - 改 变 你 的 finger 讯 息
使用:
chfn [-foph] [账号名]
选项:
-f 接真实姓名
-o 接办公室房间号码
-p 接办公室电话号码
-h 接家里电话号码
chsh
chsh - 改变登录 shell
使用:
chsh [ -s shell ] [ -l ] [ 账号名 ]
选项:
-s 指定用户的登录shell
-l 显示 /etc/shells 中的 shell 列表, 然后退出
users
users - 根据文件判断输出当前有谁正登录在系统上
使用:
users
who
who - 显示已经登录的用户
使用:
who [-aHlbmuqdr]
选项:
-a 显示全部
-H 输出头部的标题列
-l 显示系统登录进程
-b 最近一次系统启动时间
-m 当前终端
-u 显示用户登录列表
-q 当前用户数
-d 显示已死的进程
-r 显示当前的运行级别
w
w - 显示已经登录的用户以及他们在做什么
使用:
w - [husfV] [user]
选项:
-h 不显示 首行
user 仅显示 指定用户 的 信息文件 (FILES)
文件:
/etc/utmp 已登录用户 的 信息
/proc 进程 信息