每个文件和进程,都需要对应一个用户和用户组。
linux系统是通过UID和GID来是识别用户和组的。
其中用户名等同于人名(人类识别),UID和GID等同于身份证号(系统识别)。
linux管理员:root
一对一,一对多,多对一,多对多
超级用户:UID=0 root
普通用户:UID>=500 由超级用户或者具有超级用户权限的用户创建的用户
虚拟用户:UID={1,499}存在满足文件或者服务启动的需要,一般不能登录。
每个文件和进程,都需要对应一个用户和用户组。
/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow.
useeradd 添加用户
userdel 删除用户
passwd 设置或修改密码 更改/etc/shadow
chage 修改用户密码属性 管理/etc/shadow
usermod 修改用户信息
id 查看用户信息
su 用户角色切换工具
sudo 普通用户不需要root密码就可以执行只有root才能执行相应的命令或具备的目录权限
visudo 配置sudo权限的编辑命令,可以直接vi来编辑/etc/sudoers实现。推荐使用,可以自动检查语法。
groupadd 添加组
groupdel 删除组
groups 查看组信息
whoami 查看当前用户
/etc/skel 目录是用来存放新用户环境变量的目录,当我们添加新用户时,这个目录下的所有文件会自动被复制到新添加的用户家目录下(cp -a /etc/skel/* /home/新用户名/),默认情况下,/etc/skel 目录下的所有文件都是隐藏文件,通过修改添加、删除/etc/skel 目录下的文件,我们可为新用户提供统一的、标准的、初始化用户环境。
/etc/skel 的企业场景作用:
1、可以把通知内容放到skel,让登录人员看
2、统一初始化新用户的环境变量
3、面试题:出现“-bash-4.1$”问题原因及解决方法
原因:家目录环境变量文件丢失。
解决方法:
su - a(a为前面出现问题的用户)
-bash-4.1$ cp /etc/skel/.bash* .
-bash-4.1$ logout
su -
su - a(a为前面出现问题的用户)
/etc/login.defs文件是用来定义创建用户时需要的一些用户的配置信息。例如创建用户时,是否需要家目录,UID和GID的范围,用户及密码的有效期限每个文件和进程,都需要对应一个用户和用户组。
linux系统是通过UID和GID来是识
每个文件和进程,都需要对应一个用户和用户组。
linux系统是通过UID和GID来是识别用户和组的。
其中用户名等同于人名(人类识别),UID和GID等同于身份证号(系统识别)。
linux管理员:root
一对一,一对多,多对一,多对多
超级用户:UID=0 root
普通用户:UID>=500 由超级用户或者具有超级用户权限的用户创建的用户
虚拟用户:UID={1,499}存在满足文件或者服务启动的需要,一般不能登录。
每个文件和进程,都需要对应一个用户和用户组。
/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow.
useeradd 添加用户
userdel 删除用户
passwd 设置或修改密码 更改/etc/shadow
chage 修改用户密码属性 管理/etc/shadow
usermod 修改用户信息
id 查看用户信息
su 用户角色切换工具
sudo 普通用户不需要root密码就可以执行只有root才能执行相应的命令或具备的目录权限
visudo 配置sudo权限的编辑命令,可以直接vi来编辑/etc/sudoers实现。推荐使用,可以自动检查语法。
groupadd 添加组
groupdel 删除组
groups 查看组信息
whoami 查看当前用户
/etc/skel 目录是用来存放新用户环境变量的目录,当我们添加新用户时,这个目录下的所有文件会自动被复制到新添加的用户家目录下(cp -a /etc/skel/* /home/新用户名/),默认情况下,/etc/skel 目录下的所有文件都是隐藏文件,通过修改添加、删除/etc/skel 目录下的文件,我们可为新用户提供统一的、标准的、初始化用户环境。
/etc/skel 的企业场景作用:
1、可以把通知内容放到skel,让登录人员看
2、统一初始化新用户的环境变量
3、面试题:出现“-bash-4.1$”问题原因及解决方法
原因:家目录环境变量文件丢失。
解决方法:
su - a(a为前面出现问题的用户)
-bash-4.1$ cp /etc/skel/.bash* .
-bash-4.1$ logout
su -
su - a(a为前面出现问题的用户)
/etc/login.defs文件是用来定义创建用户时需要的一些用户的配置信息。例如创建用户时,是否需要家目录,UID和GID的范围,用户及密码的有效期限等等。
/etc/default/useradd文件是在使用useradd添加用户时的一个需要调用的默认配置文件,可以使用 user -D 参数 这样的命令格式来修改文件里面的内容。可以通过vi 命令直接编辑。
用户密码管理
1、密码要复杂8位以上(字母数字特殊字符)
2、大的企业用户和密码统一管理(相当于活动目录,openldap)
3、动态密码:动态口令,第三方提供,或自己开发
用户删除管理
一般不能确认用户相关目录有没有重要数据,就不能用-r。
1、vi /etc/passwd然后注释掉用户,观察一个月,这样出问题可以还原,相当于操作前备份。
2、把登录shell改成/sbin/nologin。
3、openldap(类似活动目录)账号统一管理的,ldap库里干掉用户,所有服务器全部都没了。
提示:修改删除必须小心谨慎!
-c comenment 新账号passwd的说明栏
-d home_dir 新账号每次登入是所使用的home_dir。预设值为default_home内login名称,并当成登入时目录名称。
-e expire_date 账号终止日期。日期格式为MM/DD/YY。重点
-f inactive_days账号过期几日后永久停止权限。当值为0时账号则被立即停用。当值为-1时则关闭此功能。
-g initial_group group名称或以数字来做为用户登入起始用户组。用户组名须为系统现有存在的名称。用户组数字也须为系统现有存在的名称。用户组数字也须为系统现有存在的用户组。预设数字为1.
-G group,[...] 定义此用户为不同groups的成员。每个用户组使用“,”分隔。用户组名同-g选项的限制。默认值为用户的起始用户组。重点
-m 用户目录如不存在则自动建立。如使用-k选项,skeleton——dir内的档案将复制至用户目录下,然而在/etc/skel目录下的档案也会复制过去取代。任何在skeleton_dir /etc/skel的目录也相同会在用户目录下意义建立。The-k 同-m不建立目录以及不复制任何档案为预设值。
-M 不建立用户家目录,优先于/etc/login.defs文件的设定。一般创建虚拟用户时不建立家目录,部署服务时需要创建虚拟用户。重点
-n 默认情况用户的用户组与用户的名称会相同。如果命令加了-n参数,就不会生成和用户同名的用户组了。
-r 此参数是用来建立系统账号。系统账号的UID会比定义在系统档上/etc/login.defs.的UID_MIN来的小。注意useradd此用法所建立的账号不会建立用户家目录,也不会在乎记录在/etc/login,defs.的定义值。如果你想要拥有用户家目录须额外指定-m参数来建立系统账号。这是Red HAT额外增设的选项。
-s shell 用户登入后使用的shell名称。默认值为不填写,这样系统会帮你指定预设的登入shell。
-u uid 用户的ID值。这个值必须是唯一的,除非用-o选项。数字不可为负值。
-f , --force force operation