Linux是一个多用户, 多任务多进程的服务器操作系统
用户角色:超级用户(管理员),普通用户,程序用户
用户账号管理
用户账号概述
用户:使用者在计算机内部的身份标识
用户账号的常见分类:
超级用户: root uid=0 gid=0权限最大(使用需要严谨)。宿主目录 /root
普通用户: 1000<=uid<=60000 受到权限限制,一般在宿主目录下有完整权限,宿主目录/home/用户名
程序用户: 1=<uid<=999 应用程序运行时需要通过用户身份获取相应的系统资源,通常不能用于登录系统或管理系统。
用户账号文件:
/etc/passwd,作用:保存用户名称,宿主目录,登录shell等基本信息,每一行对应一个用户的账号记录
etc/shadow:存放用户密码信息,账号有效期等,(影子文件
/etc/group:存放组帐户信息
/home/用户名:用户的宿主目录
/etc/skel:用户配置文件的模版目录
/etc/passwd文件中7个字段的详细解释
root: x:0:0:root:/root:/bin/bash
用户名:x :用户id:组id:用户备注信息(用户全名):宿主目录:登录时分配到的shell解释器,(若shell类型为/sbin/nologin,则不能登录)
密码占位符x(保存到了影子文件)
/etc/shadow文件中的9个字段的详细解释
第一字段:用户账号名
第二字段:加密的密码,!!表示密码被锁定
第三字段:上次修改密码的时间, 距1970-01-01过去多少天
第四字段:密码最短有效期(距上次密码修改起多少天内不能再次修改密码)单位天"。"0"表示随时可修改密码。
第五字段:密码最长有效期(在修改密码后的多少天必须重新修改密码。99999表示永久可以使用。)
第六字段:提前多少天警告用户口令将过期(7表示在密码过期前7天开始警告)
第七字段:在密码过期之后多少天禁用此用户
第八字段:密码过期日期,若设置则显示为过期日期距1970年1月1日多少天。
第九字段:保留字段(未使用)
创建用户:useradd
格式:useradd [选项]…用户名
-u: 指定UID标记号
-d: 指定宿主目录,默认为/home/用户名
-e:指定账号失效时间 useradd -d /IT -e “2020-02-28” jishu
-M: 不为用户建立初始化宿主目录
-s: 指定用户登录shell /sbin/nologin不可登录的shell
-g:指定用户的基本组名(gid号)私有组
-G: 指定用户的附加组名(gid号)
-c:添加备注,显示在/etc/passwd第五字段
/bin/false是最严格的禁止login选项,一切服务都不能用。
/sbin/nologin只是不允许login系统
用户账号的初始配置文件
文件来源:新建用户账号时,用户宿主目录内容从etc/skel/目录中复制而来
主要的用户初始配置文件–>脚本(只对当前用户生效) :
~/.bash_profile:用户每次登录时执行
~/.bashrc:每次进入新的Bash环境时执行
~/.bash_logout:用户每次退出登陆时执行
~/.bash_history:用户登录时从该文件加载历史命令记录
清除历史命令
history -c
删除~/.bash_history文件内容
历史命令引用
!序号
!命令开头
全局初始配置文件,对所有用户生效
/etc/ba