1.别名
别名,给命令进行设置.
一般用于给命令设置一个昵称/爱称.ll= ls -l color=auto
应用场景:
给常用命令设置个快捷方式,使用简单方便.
给危险命令加上的防护措施.
1.1查看系统已有的别名
alias #查看所有别名。
alias ll #查看ll别名对应的命令。
1.2如何输出 提示信息
echo rm is dangerous,pls use mv
1.3设置别名
alias rm='echo rm command is not found'#设置别名
alias 昵称='命令'
alias rm
alias rm='echo rm command is not found'
如果想真的删除文件(临时取消别名):
🅰 使用命令绝对路径 /bin/rm
🅱 使用撬棍(反斜线) \别名
1.4永久生效
一般命令行的操作都是临时,重启或重新登录失效了。
这时候我们要记得让配置永久生效,修改配置文件。
修改配置文件 ~/.bashrc(当前用户生效)
/etc/profile(全局)
#修改/etc/profile
在最后一行写入配置别名的命令。
alias rm='echo rm command is not found'
#让配置文件生效(source目前仅用于profile文件)
source /etc/profile
#检查别名
alias rm
alias rm='echo rm command is not found'
#未来除了rm,cp,mv命令的别名,配置到此为止。
对于rm,cp,mv命令的别名,还要额外配置下,否则不生效。
#注释掉~/.bashrc里面已经配置的别名
修改~/.bashrc 注释#alias rm='rm -i' 这一行
#检查注释结果
[root@oldboy-lnb-king-v3 ~]# grep 'rm' ~/.bashrc
#alias rm='rm -i'
2.用户管理
2.1用户管理概述
1, 概述
各种系统中都有用户,win(administrator),Linux系统中是
有各种类型的用户的.
未来大部分操作使用root实现,进行系统管理的时候都使用root
造成管理混乱.
推荐使用普通用户,提升系统安全.
简单来说:未来Linux系统会有各种的用户,每个用户都有自己
的用途,root最高权限用户,普通用户,虚拟用户。
Linux系统是一个多用户系统.
2. UID,GID
Linux中的用户是有一个标记,类似于身份号码一样的东西,叫做UID和GID. 一般情况下UID和GID要唯一。
UID user id 用户的id号,身份证号码.
GID group id 用户组id号,户口本号码.
3. 用户分类
用户
分类 分类方法(uid)root uid是0
普通用户
uid��1000(C7之后)(原来的系统C5,C6 ��500),手动创建,无法对系统进行更改,只能在当前家目录有权限.
虚拟用户
uid <1000, 也叫傀儡用户, 用于服务,进程运行使用的用户,无法直接使用 .
2.2用户相关的文件
Linux下面每创建1个用户,一般会影响下面几个文件。
用户相关文件 | 说明 |
---|
/etc/passwd | 存放用户信息 |
/etc/shadow | 存放密码信息 |
/etc/group | 用户组信息 |
/etc/gshadow | 用户组密码信息,几乎不会给用户组设置密码。 |
2.3用户管理指令
2.3.1增加
useradd选项 | 说明 |
---|
-u | 指定用户uid |
-s | 指定命令解释器,默认是/bin/bash |
-M | 不创建家目录 |
useradd -u 1314 -s /sbin/nologin -M mysql
[root@oldboy-lnb-king-v3 ~]# grep 'mysql'
/etc/passwd /etc/group /etc/shadow
/etc/passwd:mysql:x:1314:1314��/home/mysql:/sbin
/nologin
/etc/group:mysql:x:1314:
/etc/shadow:mysql:��:19331:0:99999:7���
id mysql
uid=1314(mysql) gid=1314(mysql) 组=1314(mysql)
虚拟用户:命令解释器是/sbin/nologin和不创建家目录
passwd 修改密码
passwd选项 | 说明 |
---|
--stdin | 非交互式设置密码 |
su 切换用户
su - root
#退出当前用户
ctrl + d #相当于logout命令
su switch user 切换用户
2.3.2删除
尽量笔避免使用,通过注释这个用户信息实现.
userdel选项 | |
---|
默认不会删除家目录和相关的文件,比如邮箱 | |
-r | 删除用户及家目录 |
2.3.3修改
usermod 用于修改用户信息.
[root@oldboy-king-v2 ~]# useradd oldboy
[root@oldboy-king-v2 ~]# grep oldboy /etc/passwd
oldboy:x:1000:1000��/home/oldboy:/bin/bash
[root@oldboy-king-v2 ~]# su - oldboy
[oldboy@oldboy-king-v2 ~]$ 登出
[root@oldboy-king-v2 ~]# usermod -s
/sbin/nologin oldboy
[root@oldboy-king-v2 ~]# grep oldboy /etc/passwd
oldboy:x:1000:1000��/home/oldboy:/sbin/nologin
[root@oldboy-king-v2 ~]# su - oldboy
上一次登录:五 7月 22 11:10:59 CST 2022pts/0 上
This account is currently not available.
[root@oldboy-king-v2 ~]# usermod -s /bin/bash
oldboy
[root@oldboy-king-v2 ~]# grep oldboy /etc/passwd
oldboy:x:1000:1000��/home/oldboy:/bin/bash
2.3.4查看
id 查询用户的uid,gid,用户组信息,检查用户是否存在
whoami 查询当前用户的名字
w 查看当前登录的用户的信息
last 用户的登录情况.
lastlog 所有用户最近1次登录情况.
2.4故障案例-命令行-bash-4.2$
原因
命令行:
-bash-4.2$
用户家目录没有,用户家目录下面的配置文件没了 ~/.bashrc
~/.bash_profile
解决
通过/etc/skel/.bash* 复制并解决
/etc/skel 目录所有新用户的家目录的模板.
cp /etc/skel/.bash* ~
重新登录即可.
2.5sudo权限管理
Linux系统开发人员要看日志,如何创建用户与授予权限?
root权限,权限太大.
普通用户,权限太小.
日志平台
这时候可以通过普通用户+sudo权限实现这个目标.授予普通用户以root权限运行,cat,head/tail,more/less,grep
#root授权配置
visudo = 背后修改 vi /etc/sudoers
#普通用户使用
sudo + 命令
#精细化授权,可以给开发人员使用
#root用户授权
visudo = vim /etc/sudoers
第100行后面
oldboy ALL=(ALL) /bin/cat, /bin/head, /bin/tail, /bin/less, /bin/more,
/bin/grep
#过滤检查配置结果
grep oldboy /etc/sudoers
#oldboy使用
sudo head /var/log/secure
[sudo] oldboy 的密码: #输入oldboy密码
#查看普通用户拥有的sudo权限.
sudo -l 查看当前用户有什么sudo权限,关注最后2行即可
3.Linux12位权限管理体系
3.1权限管理概述
Linux通过rwx3种权限控制系统与保护系统,组成9位权限.
Linux权限体系中还有3位特殊权限,组合起来就是12位权限体系.
Linux这简单的rwx控制整个Linux系统的安全,权限与用户共同组成Linux系统的安全防护体系.
3.2Linux权限计算
权限 | 含义 |
---|
r | read 是否可读 |
w | write 是否可写 |
x | execute 是否可执行(一般是命令,脚本) |

3.3权限与文件目录
权限 | 文件 | 目录 |
---|
r | 是否可以读取文件内容 | 是否可以查看目录内容,需要x权限配合 |
w | 是否可以修改文件内容,一般还需要r权限配合. | 是否可以在目录中创建,删除,重命名文件权限,需要x权配合 |
x | 是否可以执行文件,(命令,脚本),一般还需要r权限 | 是否可以进入目录,是否可以访问目录下文件属性 |
3.4 3个特殊权限
特殊权限之set uid = suid 4 : 运行这个命令的时候相当于是这个命令的所有者的权限. 例子passwd命令.
特殊权限之sticky(粘滞位) 1 : 对于包含sticky权限的目录,每个用户都可以在目录下面创建内容,但是每个用户只能管理自己的文件.
特殊权限之set gid = guid 2 : 运行这个命令的时候相当于是这个命令的用户组的权限.
如何设置
chmod u+s /bin/rm
chmod o+t /tmp/
/bin/rm原始权限755 增加setuid
chmod 4755 /bin/rm
chmod 1777 /tmp/
3.5Linux特殊属性
目的:预防重要文件或命令被修改.
lsattr 查看这种特殊属性
chatrr 修改这种特殊属性
a属性 append 只能追加
i属性 immutable 不朽的,无法被毁灭的.
chattr +a oldboy.txt #-a
chattr +i oldboy.txt #-i