用户、组管理
一、Linuxi下用户管理
用户:指Linux操作系统中用于管理系统或服务的人
Linux下一切皆文件,所以用户管理的是相应的文件
如何管理文件:
-
文件基本管理:如文件的创建、删除、复制查找、打包压缩等
-
文件高级管理:如程序文件的安装、卸载、配置等。最终目的是对外提供稳定的服务
用户的分类:
-
超级用户
超级用户,也称为管理员,root
该用户(root) 具有所有权限,UID=0并且绝对只能是0
-
系统用户
系统用户,又称程序用户;一般都是由程序创建,用于程序或服务运行时候的身份
默认不允许登录系统,1<=UID<=499
注意:CentOS7和RHEL8中,系统用户UID范围:1<=UID<=999
-
普通用户
普通用户一般都是由管理员创建,用于对系统进行有限的管理维护操作
默认可以登录系统,500<=UID<=60000
注意:CentOS7和RHEL8中,系统用户UID范围:1000<=UID<=60000
1、创建用户(useradd)
语法:useradd [选项] 用户名
常用选项:
-
-u #指定用户uid,唯一标识,必须唯一
-
-g #指定用户的默认组(主组)
-
-G #指定用户附加组(一个用户可以加入多个组,但是默认组只有一个)
-
-d #指定用户的家目录(每个用户都有一个自己的家,默认在/home/xxx)
-
-s #指定用户默认shell
2、用户设置密码
命令:
-
passwd 用户 #表示对指定用户修改密码
-
passwd 直接回车 #表示给当前用户修改密码
注意:
-
管理员root可以给任意用户修改密码
-
普通用户可以给自己修改密码,但是密码复杂度要符合规定
echo 123|passwd --stdin stu2(管道符操作可以不要进行交互,直接设置成功)
用户信息保存文件 /etc/passwd
用户密码信息保存文件 /etc/shadow
3、更改用户的账号信息(chage)
语法:chage 选项 用户名
常用选项
-
-d #修改用户最后一次更改密码的时间
-
-m #修改密码的最小存活期
-
-M #修改密码的最大存活期
-
-W #修改密码过期前警告
-
-I #修改允许密码过期几天
-
-E #修改账户过期时间
-
-l #列出账户的信息
4、修改用户信息(usermod)
语法:usermod [选项] 用户名
常用选项:
-
-u #指定用户uid,唯一标识,必须唯一
-
-g #指定用户的默认组(主组)
-
-G #指定用户附加组(一个用户可以加入多个组,但是默认组只有一个)
-
-d #指定用户的家目录(每个用户都有一个自己的家,默认在/home/xxx)
-
-s #指定用户默认shell
-
-m #移动用户家目录,和-d 一起使用
5、删除用户(userdel)
语法:userdel [选项] 用户名
常用选项:
-
-r #删除用户并且移除其家的目录和邮箱
-
-f #强制删除正在登录的用户
注意:
-
创建完用户后,家目录默认在/home/用户名下
-
用户的邮箱在/var/spool/mail/用户名
二、Linux下组管理
1、用户与组的关系
核心:组的目的是为了方便管理用户
-
用户是操作系统上管理维护系统或服务的人
-
组是用户的一个属性信息
-
任何一个用户默认都会有一个主组(默认组)
-
一个用户除了主组也可以有多个其他组(附加组)
用户的主组和附加组没有一点关系
2、创建组(groupadd)
语法:groupadd [选项] 组名
常用选项:-g 指定组的GID(编号),默认唯一
3、删除组(groupdel)
语法:groupdel 组名
4、组成员管理(gpasswd)
语法:gpasswd [选项] 组名
常用选项:
-
-a #添加用户到组
-
-d #从组中删除成员
-
-A #指定管理员
-
-M #指定组成员,可以批量添加用户到组
-
-r #删除密码
gpasswd 组名 #给组设置密码
补充--文件编辑工具(vim)
Linux平台下的文本编辑器:emacs、nano、gedit、vi、vim
vi(visual editor)编辑器通常被简称为vi,它是Linux和unix系统上最基本的文本编辑器
vim是vi的升级版
vim具有程序编辑能力
vim编辑器模式--命令行模式
可以进行一些基本的复制、删除、跳转、移动等操作
命令:
-
yy #复制光标所在行
-
p #光标所在行后面粘贴
-
P #光标所在行前面粘贴
-
gg #光标快速跳到文件首行,并且定位带首字符
-
G #光标快速跳到文件尾行,并且单位到所字符
-
home键 #跳转到行首
-
end键 #跳转到行尾
-
dd #删除光标所在行
-
d^ #从光标位置删至行首,不包括光标位
-
d$ #从光标位置删至行尾,包括光标位,与D作用相同
-
dG #删除光标所在行以及下面所有行
-
dgg #删除光标所在行以及上面所有行
-
x #删除光标所在字符后面一个字符,3x删除3个字符
-
X #删除光标所在字符前面一个字符,3x删除3个字符
-
u #撤销操作
使用vim工具打开文件
用法:vim 文件名 (默认会进入命令行)
vim +数字 文件名(打开指定的文件,并且将光标移动到指定行)
vim +/关键字 文件名 (打开指定文件,并且高尚显示关键字)
vim编辑器模式--编辑模式
功能:编辑文件内容
进入方式:
-
i #在光标所在字符前开始插入
-
I #在光标所在行的行首开始插入,如果行首有空格则在空格之后插入
-
a #在光标所在字符后开始插入
-
-A #在光标所在行的行尾开始插入
-
-o #在光标所在行的下面另起一行开始插入
-
-O #在光标所在行的上面另起一行开始插入
-
-S #删除光标所在行并开始插入
vim编辑器模式--底行模式
如何进入?
-
命令行模式进入底行模式:按冒号 :
-
编辑模式进入底行模式:先按esc退出到命令行模式,再按冒号进入底行模式
相关操作
-
保存文件 :w
-
另存到其他文件 :w 文件名
-
保存退出 :wq
-
强制保存退出 :wq!
-
退出不保存 :q
-
强制退出 :q!
-
命令: :x
在文件没有修改的情况下退出,表示直接退出(:q);
在文件修改的情况下表示保存并退出(:wq)
搜索替换
:/root n往下匹配 N往上匹配
地址定位
-
:1,5 w /tmp/5.txt #保存前5行内容到/tmp/5.txt
-
:r /tmp/5.txt #在光标所在行下面读取/tmp/5.txt文件内容
-
:3r /tmp/5.txt #在当前文本的第3行后读取/tmp/5.txt文件
-
:1,8d #删掉文本的1到8行
-
:nr !command #在第n行下面读取命令所执行的结果
-
:n! command #用命令的执行结果替换第n行内容
: set number #临时设置行号
: set list #查看控制符
三种模式的切换
命令行到底行模式
-
命令行模式(默认) ---> 冒号(:)或斜杠(/) ---> 底行模式
-
底行模式 ---> 按Esc键 --->命令行模式
命令行到编辑模式
-
命令行模式(默认) ---> a或i或o或s ---> 编辑模式
-
编辑模式 ---> 按 Esc键 --->命令行模式
注意:底行模式不能直接到编辑模式
可视化模式
按键:CTRL + v (可视块)或V (可视行),按下上下左右键来选中需要复制的区块,按下y键进行复制,按p键进行粘贴
退出可视化模式按下Esc