【Linux篇<Day07>】——用户和组详解
🥬一、用户与组概述
🥒二、添加和删除用户
🍉三、用户密码设置
🥦四、修改用户属性
🍆五、用户初始配置文件
🌶️六、组账号管理
🥬一、用户与组概述
-
账户类别:用户账号和组账号;
识别方式:UID和GID
-
用户账号:超级管理员、系统用户、普通用户
root用户的UID为0(谁的UID为0谁就是超级管理员)
系统用户UID:1~999
普通用户UID:1000~ -
组账号:分为基本组(私有组)和附加组(公共组、从属组)
组账号用来区分权限,不用于登录;
每一个用户被创建时,会先创建一个该用户,然后创建一个与该用户同名的组作为该用户的基本组,然后把该用户加入到里面。 -
用户的账户信息
存放在 /etc/passwd 里面,每个用户记录一行,共七个字段,用六个冒号隔开。七个字段的具体含义如下图所示:
🥒二、添加和删除用户
查看用户信息:id 用户名
添加用户 格式:useradd [选项]… 用户名
冷知识:在添加用户时,系统会新建四种文件,分别为:用户本身、用户基本组、用户家目录、信箱文件(从 /etc/skel 下拷贝至家目录);添加用户时,新用户的UID和GID会随着最近的一个UID和GID加1;如果UID和GID跨度过大,在条件允许的情况下,GID会跟随UID,重新对齐。
常用子选项:
-u
:指定用户UID
-d
:指定用户家目录
-s
:指定登录解释器
-G
:指定附加组
-g
:指定基本组删除用户
- userdel 用户名:只删除用户名和组,保留家目录和信箱文件
- userdel -r 用户名:连同家目录和信箱文件一起删除
🍉三、用户密码设置
交互式
格式:passwd 用户名非交互式(
只有管理员可以
)
格式:echo 密码 | passwd --stdin 用户名解析用户密码文件 用户密码信息存放在:
/etc/shadow
文件中,每个用户记录一行,共九个字段,用冒号隔开,各字段含义如下图所示:
冷知识:如果希望用户首次登录系统时强制修改密码,可以利用vim把/etc/shadow 第三个字段设置为0,然后强制保存并退出!
🥦四、修改用户属性
格式:usermod [选项]… 用户名
常用子选项:
-u
:修改UID
-l
:修改用户名
-d
:修改家目录
注意:即便是修改了家目录,也只是修改了配置文件,但不会新建家目录
-s
:修该登录解释器
-G
:修改附加组(重置附加组)
-g
:修改基本组(不建议修改)如何创建在用户家目录删除的情况下手动创建
用户创建时,系统会以/etc/skel作为模板,复制一份到用户的家目录下
步骤:
cp -r /etc/skel /home/用户名
chmod 用户名:基本组 /home/用户名(家目录)
🍆五、用户初始配置文件
配置文件来源 新建用户时,根据 /etc/skel 模板复制
主要的初始配置文件
- ~/.bash_profile:每次登录时执行
- ~/.bashrc:每次进去新的bash环境时执行
- ~/.bash_logout:每次退出登录时执行
全局配置文件 /etc/bashre /etc/profile
配置后所以的用户都可以使用,并且优先听取全局的配置 举栗子:在普通用户下的.bashrc里面写入alias hn =“hostname”,然后在全局的/etc/bashrc里面写入alias hn =“pwd”,再去普通用户下面执行hn由此可见,hn执行的是pwd,所以
全局优先
。
🌶️六、组账号管理
组的基本信息存放在/etc/group中,
组的成员的信息存放在/etc/gshadow中
添加组
格式:groupadd [-g 组ID] 组名
-g是指定GID添加,不加该子选项默认会在前一个GID上加1管理组成员
gpaswd -a 用户名 组名
:添加组成员到该组- gpasswd -M:重新定义组成员列表
格式:gpasswd -M '用户1,用户2...' 组名
清空组成员:gpasswd -M ‘’ 组名gpaswd -d 用户名 组名
:从该组删除该用户删除组 格式:groupdel 组名
注意:删除组的同时会将组里面的所有成员删除 ;不能删除基本组gpasswd -A :设置组管理员
格式:gpasswd -A 用户名 组名
相关文章
- 软件测试工程师在工作中需要的Linux知识,一篇文章就够了
- linux tar压缩解压缩文件夹、文件命令详解
- linux 【内存】5. 为什么系统的Swap变高了
- Linux 3.10完全无滴嗒特性详解
- Linux free 命令 - 显示系统中空闲和已使用的内存
- 详解 UEFI 模式下安装 Linux
- 在 Kali Linux 中更改 GRUB2 背景的 5 种方式
- Linux有问必答:如何找出Linux中内置模块的信息
- Memcached在Linux环境下的使用详解
- linux中who命令显示的tty、pts和(:0)(:0.0)是什么意思
- Linux命令之ifconfig
- 《嵌入式Linux软硬件开发详解——基于S5PV210处理器》——1.1 硬件系统资源
- 《Linux C编程从入门到精通》一第1章 Linux基础1.1 Linux的起源、发展和分类
- Linux 下编译Android-VLC开源播放器详解(附源码下载)
- Linux之ls命令常见用法详解
- 每天一个linux命令(50):crontab命令
- Linux下安装mysql
- Linux 用户和用户组详解
- Linux echo命令详解
- Linux rm命令详解
- linux下web压力测试工具ab使用及详解
- 【Linux篇<Day05>】——YUM详解
- Linux vmstat命令实战详解
- linux的dd命令
- Linux inode 详解
- Linux信号列表详解