1.软件管理简介
安装、查看、卸载软件
1.1windows安装/卸载
软件的安装:
方法1:双击exe的安装包,就可以点击下一步进行安装
用exe安装的软件会被记录到注册表中
在注册表中会记录软的的安装位置、软件的名称....
方法2:用绿色方式进行安装
绿色方式安装不会写注册表,因此无法再开始菜单中查看和卸载软件
软件的卸载
方法1:用exe安装的软件,可以在开始菜单中查看到,而且可以进行卸载
在进行卸载软件的时候都是会去通过读取注册表中的记录,将软件的安装位置下的文件都删除,
这样就是实现了软件的卸载
方法2:直接删除原文件就可以卸载
1.2 linux的软件安装卸载
方法1:rpm包安装 - 类似windows中exe安装
方法2:yum安装 - yum也是安装rpm包
方法3:源码编译安装
6.2 rpm安装软件
1.2.1 rpm简介
rpm软件包 - rpm包
rpm:Redhat Package Management
rpm类似于windows的注册表,用于记录软件的安装过程中生成的文件的位置,因此借助于rpm可
以实现软件的卸载
1.2.2 rpm包的来源
包的来源有两种
本地rpm包:
安装系统的光盘镜像中
线上rpm:
阿里:
https://mirrors.aliyun.com/
华为:
https://mirrors.huaweicloud.com/
网易:
https://mirrors.163.com/
清华:
https://mirrors.tuna.tsinghua.edu.cn/
中科大:
https://mirrors.ustc.edu.cn/
软件的类别
官方提供的rpm包
centos官方提供的rpm包
第三方提供的rpm包
epel的rpm包
补充:软件包名解释
metis-5.1.0-12.el7.x86_64.rpm
软件名:metis
软件版本:5.1.0-12
适用的系统类型:el7,这个表示在centos7可用
适用的cpu架构:x86_64
后缀:rpm
1.2.3 rpm管理软件
命令格式
rpm [选项] 软件包/软件名
查看软件是否安装、卸载已经安装的软件,用的软件名
安装安装,用的是软件包名
选择
-i:安装软件
-v:显示安装过程的信息
-h:用#表示安装进度,一个#表示2%
-ivh:安装软件,显示安装过程信息
-e:卸载软件
-q:查看软件是否安装
-ql:查看安装软件生成的文件列表
-qc:查看安装软件生成配置文件
-qf:查看某个文件是哪个软件安装过程中生成的
--nodeps:强制忽略依赖关系
--replacepkgs:覆盖安装
使用系统光盘镜像中的软件包
第一步:将光盘加载到虚拟机
第二步:挂载光盘
linux中使用外部设备,必须进行挂载
linux中 /dev/cdrom 就是光盘,也就是我们加载到虚拟机中的系统镜像文件,也就是哪个iso文
件
设备文件无法直接使用,必须将设备文关联到一个目录才能使用【关联就是挂载】
1)找一个空目录【一般找/mnt 或者 /media】
ls /mnt
此时这个目录是空的
2)将/dev/cdrom 挂载到 /mnt
mount /dev/cdrom /mnt
第三步:查看rpm包
ls /mnt/Packages/
案例
1)检查zsh这个软件是否安装了[zsh-5.0.2-34.el7_8.2.x86_64.rpm]
[root@localhost ~]# rpm -q zsh
package zsh is not installed
2)安装zsh
[root@localhost ~]# cd /mnt/Packages/
[root@localhost Packages]# rpm -ivh zsh-5.0.2-34.el7_8.2.x86_64.rpm
[root@localhost Packages]# rpm -q zsh
zsh-5.0.2-34.el7_8.2.x86_64
3)卸载zsh
[root@localhost Packages]# rpm -e zsh
[root@localhost Packages]# rpm -q zsh
package zsh is not installed
4)安装zsh,查看安装后生成了哪些文件
[root@localhost ~]# cd /mnt/Packages/
[root@localhost Packages]# rpm -ivh zsh-5.0.2-34.el7_8.2.x86_64.rpm
[root@localhost Packages]# rpm -ql zsh
5)检查/etc/passwd这个文件是哪个软件生成的
[root@localhost Packages]# rpm -qf /etc/passwd
setup-2.8.71-11.el7.noarch
软件的依赖关系
例如:安装gcc
[root@localhost ~]# cd /mnt/Packages/
[root@localhost Packages]# ls gcc-4.8.5-44.el7.x86_64.rpm
gcc-4.8.5-44.el7.x86_64.rpm
1)找到gcc
2)安装
安装过程中出现依赖关系
6.3 yum安装软件
1.3.1 yum简介
yum:Yellowdog Update Manager
yum:解决rpm包的依赖关系
通过使用yum可以自动判断软件包依赖哪些其他的包,并且将依赖的软件包依次按照顺序进行安装
yum安装软件的基本流程
第一步:去找到yum源
第二步:去下载仓库中的元数据
第三步:通过元数据分析目标仓库是否有要安装的软件包,并且获取软件包的依赖关系信息
第四步:根据元数据的分析结果在yum源中去下载rpm包到本地
第五步:根据元数据的分析结果依次按照顺序安装rpm包
元数据
1)仓库中的全部软件名
2)仓库中每个软件的版本号
3)仓库中每个软件的依赖信息
yum源/yum仓库
第一种:自己创建yum仓库
第二种:使用现有的yum仓库【本地/远程】
1.3.2 配置本地yum源
创建本地yum源有两种方法
方法1:直接使用光盘作为yum源
方法2:自己创建一个目录,在目录中准备rpm包和源数据
使用光盘作为yum源
第一步:挂载光盘
mkdir /test/testyum -p
mount /dev/cdrom /test/testyum/
检查挂载点
ls /test/testyum/
第二步:修改yum的配置文件,指向我们创建的yum源:/test/testyum/
yum的配置文件包括主配置文件和子配置文件
主配置文件:/etc/yum.conf
子配置文件:/etc/yum.repos.d下,配置文件名称无所谓,但是后缀必须是.repo
1)切换路径
[root@localhost ~]# cd /etc/yum.repos.d/
2)备份/删除原来的配置文件
[root@localhost yum.repos.d]# mkdir bak
[root@localhost yum.repos.d]# mv *.repo bak
3)新建一个配置文件,指向我们的yum仓库
[root@localhost yum.repos.d]# vi local.repo
[myrepo] # 指定yum仓库的id,这行不能有空格
name=my repo # 指定yum仓库的名称,可以随便写
enabled=1 # 指定yum仓库是否激活,0表示不激活;1表示激活可用
gpgcheck=0 # 指定是否检查rpm包的来源合法性,0表示不检查;1表示检查,如果要检
查的话
baseurl=file:///test/testyum/ # 指定yum仓库的位置
第三步:检查配置是否成功
[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum repolist
第四步:安装软件
[root@localhost yum.repos.d]# yum install gcc 1
注意:
无论用rpm安装还是用yum安装,都可以用rpm -q 来检查
另一种:配置本地yum源
自己创建元数据,并且准备好rpm包
第一步:准备一个目录
[root@localhost /]# mkdir -p /newrpm/renrepo/
第二步:准备rpm包
本案例中,將光盘中的a开头的软件包复制到目录中
本案例中,光盘挂载点在/test/testyum/
[root@localhost /]# cp -a /test/testyum/Packages/a*.rpm /newrpm/renrepo/
第三步:准备元数据
此时,在目录中,会发现多了一个目录:repodata
# 安装createrepo,这个软件是生成元数据用的
[root@localhost /]# yum install createrepo
# 进入目录,生成元数据
[root@localhost /]# cd /newrpm/renrepo/
[root@localhost renrepo]# createrepo ./
第四步:修改yum配置文件,指向这个源
可以保留前面做的那个源
[root@localhost renrepo]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
bak local.repo
[root@localhost yum.repos.d]# vim my.rep
[mycreaterepo]
name=my create new repo
baseurl=file:///newrpm/renrepo/
enabled=1
gpgcheck=0
第五步:检查是否成功
[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum repolist
1.3.3 使用网络yum源
网络源
阿里:https://mirrors.aliyun.com/
华为:https://mirrors.huaweicloud.com/
网易:https://mirrors.163.com/
清华:https://mirrors.tuna.tsinghua.edu.cn/
中科大:https://mirrors.ustc.edu.cn/
清华的centos的源
https://mirrors.tuna.tsinghua.edu.cn/centos/7.9.2009/os/x86_64/
配置linux网络
第一步:给虚拟机添加网卡
新网卡的网络类型设置为NAT - 只要物理机能上网,虚拟就可以正常上网
第二步:重启网络
systemctl restart network
第三步:检查新网卡是否有IP
ip addr
第四步:检查网络是否正常
ping www.qq.com
配置清华的centos源
第一步:创建yum源配置文件
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# vim ali-centos.repo
[alicentos]
name=ali centos
enabled=1
gpgcheck=0
baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos/7.9.2009/os/x86_64/
第二步:检查是否成功
[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum repolist
配置清华的epel源
第一步:创建yum配置文件
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# vim qinghua-epel.repo
[qinghuaepel]
name=qinghua epel
enabled=1
gpgcheck=0
baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7Server/x86_64/
第二步:检查是否成功
[root@localhost yum.repos.d]# yum repolist
1.3.4 使用yum
安装软件
卸载软件
清除缓存
生成缓存
清除缓存
元数据
rpm包
yum clean all
生成缓存
yum repoilist
安装软件
yum remove 软件名
卸载软件
localinstall
补充:
先有源码包还是先有rpm包?
程序员写的是源码:c java
计算机需要将源码转换为01代码【机器码】 - 转换过程就是编译
计算机能运行的编译后的程序
安装源码包的过程
第一步:解压源码包
第二步:进入解压目录
第三步:安装依赖
第四步:执行./configure
执行这个命令有两个作用
1:检查当前系统环境是否满足后续操作
2:指定软件的安装路径
第五步:执行make
进行编译
第六步:执行make install
将编译好的程序进行安装
安装nginx
上传nginx的安装包
安装组件:lrzsz
yum install lrzsz -y
注意:只有在xshell中才能用lrzsz进行拖拽文件
第一步:解压源码包
[root@localhost ~]# tar xvf nginx-1.22.1.tar.gz
会得到一个压缩吧同名目录 nginx-1.22.1
第二步:进入解压目录
[root@localhost ~]# cd nginx-1.22.1
第三步:安装依赖
nginx的依赖:gcc gcc-c++ ncurses ncurses-devel pcre pcre-devel zlib-devel openssl-devel
[root@localhost ~]# yum install gcc gcc-c++ pcre-devel zlib-devel openssl-devel
ncurses-devel -y
第四步:执行./configure
[root@localhost nginx-1.22.1]# ./configure --prefix=/usr/local/nginx
注意:
--prefix=/usr/local/nginx 指定软件的安装位置是 /usr/local/nginx
第五步:执行make
[root@localhost nginx-1.22.1]# make
第六步:执行make install
[root@localhost nginx-1.22.1]# make install
思考;
编译的安装的软件,用rpm是否可以查看
编译的安装的软件,用yum是否可以卸载
否
rpm或者yum,只能查看/控制rpm包安装的软件