Linux从入门到精通3

5vim文本编辑器

5.1 文本编辑器Vim-Vim常用操作

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1命令模式

默认是命令模式
在这里插入图片描述

2插入模式:

在这里插入图片描述
从命令模式进入插入模式:a i o
在这里插入图片描述
我们要在girl后面插入一个字母,按下a
在这里插入图片描述
在这里插入图片描述
按大写的A,无论光标在哪里,都会跳到这行的末尾进行插入
在这里插入图片描述
要想在光标所在字符前 插入,光标移到s,按下i
在这里插入图片描述
大写的I,行首
o光标的下一行
O光标的上一行
注意:以上的所有操作都必须实在命令模式下操作的,按下esc回到命令模式

3定位命令

在这里插入图片描述
在这里插入图片描述
:set nu给文件标上行号
在这里插入图片描述
:set nonu取消行号
在这里插入图片描述
标记行号后按gg到第一行
G到最后一行
在这里插入图片描述
按821G或者:821就821行
在编辑某一行时,就按下$到行首

4删除命令

在这里插入图片描述
在这里插入图片描述

5复制和剪切命令

在这里插入图片描述

6替换和取消命令

在这里插入图片描述

7搜索和搜索替换命令

在这里插入图片描述
在这里插入图片描述
我们想查找与ftp相关的行,用/加上ftp
在这里插入图片描述
n找下一个

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

8保存和退出命令

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
把写权限去掉
在这里插入图片描述
这时候编辑
还还以做更改
在这里插入图片描述
但是保存不了,wq!可以强制保存,但是只针对于root和所有者

总结:
在这里插入图片描述

5.2 文本编辑器Vim-Vim使用技巧

在这里插入图片描述

1导入命令执行结果

在这里插入图片描述
在这里插入图片描述
那么就会将/etc/issue文件里的内容导入到光标所在的位置
在这里插入图片描述
导入时间
在这里插入图片描述
在这里插入图片描述

2定义快捷键

需要在编辑文件或脚本时,配置文件
1 光标移到行首2i跳入插入模式3输入#4回到命令模式 非常麻烦
我们可以用快捷键的形式执行这样的操作
在这里插入图片描述
按enter即刻到了光标所在行的行首

删除这个注释符号
在这里插入图片描述

在这里插入图片描述
这时你就只需要按一个ctrl+h就可以插入邮箱了
在这里插入图片描述

3注释连续行

在这里插入图片描述
在这里插入图片描述

去掉连续行的注释
在这里插入图片描述
在这里插入图片描述
把行首的注释去掉
在这里插入图片描述

有的语言里面使用//当做注释,那么就需要在每个/前面加上转义符
在这里插入图片描述

4替换

在这里插入图片描述
在这里插入图片描述
回车
在这里插入图片描述
但是这样的话重启后就会丢失
在这里插入图片描述
所以需要写入用户的宿主文件中
在这里插入图片描述
这样就会永久有效,打开任何一个文件它就会有上面的这些设置
是在.vimrc这个文件下面
在这里插入图片描述

6软件包管理

在这里插入图片描述

6.1 软件包管理-简介

在这里插入图片描述
源码包:把源代码直接开放的代码包,linux是c语言写的
安装比较慢、容易出错 编译的时间比较慢、需要手动安装
脚本安装包:不需要手动安装,这种包不多
在这里插入图片描述
在这里插入图片描述
二进制包:把源代码经过编译的0101 .rpm包
安装快、但是看不到源代码了
windows中的包都是这种
在这里插入图片描述
在这里插入图片描述

6.2.1 软件包管理-rpm命令管理-包命名与依赖性

在这里插入图片描述
在这里插入图片描述
rpm是给管理员看的
在这里插入图片描述
装软件包a需要你装b,装b需要装c
装的话,顺序c,b,a
删除的话.顺序a,b,c

环形依赖
把a,b,c同时装

模块依赖
在这里插入图片描述
光盘挂载
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
好几千个rpm包

我们来安装一个包,需要依赖包libodbcinst.so.2
在这里插入图片描述
在这里插入图片描述
但是没有补全,以数字结尾,说明这个是一个库文件,我们需要把包含这个库文件的软件给安上
去www.rpmfind,net上找
在这里插入图片描述

6.2.2 软件包管理-rpm命令管理-安装升级与卸载

在这里插入图片描述
安装、更新
查询、卸载
在这里插入图片描述

所有的rpm包都在光盘当中,首先我们确定一下光盘是否挂载
在这里插入图片描述
在这里插入图片描述
进到package中
然后ls
在这里插入图片描述
接下来我们安装apache
在这里插入图片描述
我们不记得版本之类的,只要按下tab键
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
依赖库文件,去网站上找到
在这里插入图片描述
如果忘了还有什么依赖的包,那么就再装一下apche看一下还有什么要依赖的包
在这里插入图片描述
这样apache主包就装好了
接下来安装副包
在这里插入图片描述
在这里插入图片描述
依赖的包实现太多了!!到此为止,这就是手动安装的坏处
在这里插入图片描述
与安装差不多,把-i换成-U
在这里插入图片描述
这里跟的是报名
-e
在这里插入图片描述
卸载apache,即a

6.2.3 软件包管理-rpm命令管理-查询

查询是很常用的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
会列出与apache相关的包
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以查询未安装包的信息
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

6.2.4 软件包管理-rpm命令管理-校验和文件提取

在这里插入图片描述
是否做了修改
在这里插入图片描述
没有做修改
我们修改试试
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
做一些修改 index.php
在这里插入图片描述
这个包中的这个文件做了修改
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
做了误操作后,不需要把这个文件系统都给安装一遍,所以可以提取出那个包然后修复
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.3.1 软件包管理-RPM包管理-yum在线管理-IP地址配置和网络yum源

rpm命令安装的缺点:依赖性
yum在线安装是你要安装什么,它就会去网址上直接下载同时把它的依赖包也下载好
yum不是必须上网,也可以本地光盘。
在这里插入图片描述
虽然之前远程登录时,我们也配了ip地址
在这里插入图片描述
这种方式不是永久的,是临时生效,一旦重启LINUX,这个ip就消失了
而且这种方式只能配置ip地址和子网掩码,如果我想上公网,还需要网关和DNS,虽然内容只需要ip和子网掩码。
如何可以真正的配置ip。
利用setup,是窗口模式的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
按空格把星号去掉
在这里插入图片描述
要想让它生效,就需要重启网络服务或者重启Linux,还需要手动打开网卡命令。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
国外地址比较慢,在国内找镜像
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.3.2 RPM包管理-yum在线管理-yum命令

在这里插入图片描述
yum里面只用包名
在这里插入图片描述
在这里插入图片描述
例:安装gcc,gcc是c语言编译器
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果你更新时没写包名,就会升级所有的包,包括内核。更新后要在本地配置才能使用。
在这里插入图片描述
a->b->c
卸载c.b.a
用yum卸载就把它所依赖的所有的包给卸载掉,尽量不卸载。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
远程工具上是中文,但是linux上是英文的

6.3.3 RPM包管理-yum在线管理-光盘yum源

网络做yum源是默认的,而光盘是要设置的
在这里插入图片描述
打开虚拟机,放入光盘
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
已经挂载过了
在这里插入图片描述
不让这些配置源生效,可以进去把这四个的enable改为0或者改名就会失效
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
改动三项
在这里插入图片描述
在这里插入图片描述
上节课容器名称是base,现在是c6_media,即连接上了本地光盘

6.4.1 软件包管理-源码包管理-源码包与RPM包的区别

在这里插入图片描述
RPM包:默认安装路径
源码包:手动指定位置
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
两种启动方法
绝对路径+服务名称
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
方式二:简化了
红帽专有命令
在这里插入图片描述
service去自动去路径下找这些相关服务,但是service不能管理源码包
在这里插入图片描述

6.4.2 软件包管理-源码包管理-源码包安装过程

在这里插入图片描述
有了gcc编译器,才能用源码包下载
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
安装过程就是整个源代码编译的过程
在这里插入图片描述
把下载的安装包,传到linux中
需要使用远程传输工具
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
1
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.5 软件包管理-脚本安装包

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
ls进入
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
不推荐通过图形界面来管理linux

7用户管理

在这里插入图片描述

7.1.1 用户和用户组管理-用户配置文件-用户信息文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
用户名、密码标志、UID、GID、用户说明、家目录、shell
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.1.2 用户和用户组管理-用户配置文件-影子文件

在这里插入图片描述
passwd里面只有一位密码位x,而shawdow里面是保存用户真正的密码
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
9个字段
用户名、加密后的密码、最后一次修改日期、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
加个!临时禁用用户
在这里插入图片描述
复杂性、时效性、易记性
如果把密码有效期改为90则90天必须修改密码
在这里插入图片描述
到83天时会提示你改密码
在这里插入图片描述
在这里插入图片描述
到了95天你还没改密码则会失效
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.1.3 用户和用户组管理-用户配置文件-组信息文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
每添加一个用户就会生成与这个用户相同名称的用户组
在这里插入图片描述
在这里插入图片描述
组密码用的并不多,只有root可以把用户添加到各个组。但是如果root太忙,就会选组长。

7.2 用户和用户组管理-用户管理相关文件

在这里插入图片描述
普通用户初始登录位置就是家,添加用户的时候自动生成家目录
在这里插入图片描述
超级用户初始登录后就是root
在这里插入图片描述
把普通用户改为超级用户,即把它的uid变为0。它的家目录并不会改变,只是它的权限改变了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
每个用户都默认会在在这个位置创建一个邮箱
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这时添加一个用户,它就会有警告文件。这是因为创建用户时是从模板文件中复制过来的。

7.3.1 用户和用户组管理-用户管理命令-useradd

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在useradd添加一个用户后,干了这么多的事情。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.3.2 用户和用户组管理-用户管理命令-passwd

在这里插入图片描述
在这里插入图片描述

普通用户就不能在passwd后面跟用户名了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
密码修改时间、修改间隔、失效时间、警告时间、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
它是怎么锁定的呢?
在这里插入图片描述
在这里插入图片描述
多了双感叹号,相当于把用户给失效。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.3.3 用户和用户组管理-用户管理命令-usermod和chage

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
shadow
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
cat /etc/shadow
在这里插入图片描述
在这里插入图片描述
则lamp用户刚登陆就会启动修改密码的操作

7.3.4 用户和用户组管理-用户管理命令-userdel和su

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
家目录也消失了
在这里插入图片描述
skel
只要逐一修改这7个文件就可以了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
删除user1这行
在这里插入图片描述
在这里插入图片描述
删除user1这行
在这里插入图片描述
在这里插入图片描述
删除user1这行
在这里插入图片描述
在这里插入图片描述
删除user1这行
在这里插入图片描述
在这里插入图片描述
这次可以添加成功了,说明删除成功了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

用user1登陆,要切换成root
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
但是怎么识别出来是user1在登录呢?
su中间的-选项一定不能省
在这里插入图片描述
env
在这里插入图片描述
在这里插入图片描述
普通用户切换成超级用户需要密码、超级用户切换成普通用户不需要密码

在这里插入图片描述
其实还是user1用户,只是用root命令执行了一次操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
前提条件就是你得知道root的密码

7.4 用户和用户组管理-用户组管理命令

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果组中有用户。
有初始用户不能删除
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
没有lamp这个组,但是有lamp1这个组
在这里插入图片描述
有附加用户可以删除
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
上面是创建用户的时候把它填到某个组,现在若要把两个已经存在的用户填到某个组

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
手动修改可以么?可以
在这里插入图片描述
作为附加用户加入的

8权限管理

在这里插入图片描述

8.1.1 权限管理-ACL权限-简介与开启

在这里插入图片描述
分配目录。
所有者:读写执行
所属组:读写执行
770
试听:只给他读和执行的条件。
这样该如何分配这个试听人员的组?
加一个试听组,但是任何一个目录都只能有一个所属组。
可以放到其他人?也不行。
身份不够用,用ACL。

不再考虑身份,直接给相应的权限。

在这里插入图片描述
用户操作文件的权限。ka

8.1.2 权限管理-ACL权限-查看与设定

8.1.3 权限管理-ACL权限-最大有效权限与删除

8.1.4 权限管理-ACL权限-默认与递归ACL权限

8.2.1 权限管理-文件特殊权限-SetUID

8.2.2 权限管理-文件特殊权限-SetGID

8.2.3 权限管理-文件特殊权限-Sticky BIT

8.3 权限管理-chattr权限

8.4 权限管理-sudo权限

9文件系统

9.1 文件系统管理-回顾分区和文件系统

9.2.1 文件系统管理-文件系统常用命令-df、du、fsck、dumpe2fs

9.2.2 文件系统管理-文件系统常用命令-挂载命令

9.2.3 文件系统管理-文件系统常用命令-挂载光盘与U盘

9.2.4 文件系统管理-文件系统常用命令-支持NTFS文件系统

9.3.1 文件系统管理-fdisk分区-分区过程

9.3.2 文件系统管理-fdisk分区-自动挂载与fstab文件修复

10shell基础编程1

10.1 Shell基础-概述

10.2 Shell基础-脚本执行方式

10.3.1 Shell基础-Bash基本功能-历史命令与补全

10.3.2 Shell基础-Bash基本功能-别名与快捷键

10.3.3 Shell基础-Bash基本功能-输入输出重定向

10.3.4 Shell基础-Bash基本功能-多命令顺序执行与管道符

10.3.5 Shell基础-Bash基本功能-通配符和其他特殊符号

10.4.1 Shell基础-Bash变量-用户自定义变量

10.4.2 Shell基础-Bash变量-环境变量

10.4.3 Shell基础-Bash变量-位置参数变量

10.4.4 Shell基础-Bash变量-预定义变量

10.5.1 Shell基础-Bash变量-数值运算与运算符

10.5.2 Shell基础-Bash变量-变量测试与内容替换

10.6.1 Shell基础-环境变量配置文件-简介

10.6.2 Shell基础-环境变量配置文件-作用

10.6.3 Shell基础-环境变量配置文件-其他配置文件和登录信息

11shell基础编程2

11.1 Shell编程-正则表达式

11.2.1 Shell编程-字符截取命令-cut命令

11.2.2 Shell编程-字符截取命令-printf命令

11.2.3 Shell编程-字符截取命令-awk命令

11.2.4 Shell编程-字符截取命令-sed命令

11.3 Shell编程-字符处理命令

11.4 Shell编程-条件判断

11.5.1 Shell编程-流程控制-if语句

11.5.2 Shell编程-流程控制-case语句

11.5.3 Shell编程-流程控制-for循环

11.5.4 Shell编程-流程控制-while循环与until循环

12Linux服务管理

12.1 Linux服务管理-服务分类

12.2.1 Linux服务管理-RPM服务的管理-独立服务管理

12.2.2 Linux服务管理-RPM服务的管理-基于xinetd服务管理

12.3 Linux服务管理-源码包服务的管理

12.4 Linux服务管理-服务管理总结

13Linux系统管理

13.1.1 Linux系统管理-进程管理-进程查看

13.1.2 Linux系统管理-进程管理-终止进程

13.2 Linux系统管理-工作管理

13.3 Linux系统管理-系统资源查看

13.4 Linux系统管理-系统定时任务

14Linux日志管理

14.1 日志管理-简介

14.2 日志管理-rsyslogd服务

14.3 日志管理-日志轮替

15Linux启动管理

15.1.1 启动管理-启动流程-运行级别

15.1.2 启动管理-启动流程-启动过程

15.2.1 启动管理-启动引导程序-Grub配置文件

16备份与恢复

16.1 备份与恢复-概述

16.2 备份与恢复-备份命令

猜你喜欢

转载自blog.csdn.net/AthlenaA/article/details/83277212