软件包管理

认识一下什么是软件包:

软件包直观来讲 就是我们一些软件的安装包 可以说是命令的集合 程序

软件包的分类:

源码包:(脚本安装包) 可以看到源代码 没有经过编译的
二进制包(rpm包 系统默认包) 经过编译了
截图来源于 光盘 的Package 可以看到
在这里插入图片描述
源码包优点:
开源 就是代码是可以看到的
由系统进行编译 更适合系统
可以自由选择功能 因为开源嘛 甚至大佬可以直接添加功能
方便卸载
缺点:
安装的步骤多 时间较长 容易出错 且出错之后 新手不好排查

二进制包 :
优点:
包管理系统简单 ,只需要几个简单的命令 就可以完成包的安装 更新 卸载
安装速度要比源代码包快 (因为已经事先编译过了)
缺点:
看不到源代码 (已经经过编译了)
功能不可选
具有依赖性 (我装软件包A 可能需要先装软件包B 。。。。)

rpm 命令管理:

在这里插入图片描述
在这里插入图片描述
使用光盘内的安装包之前需要挂载
1.创建挂载点 mkdir /mnt/cdrom 挂载目录可以随便命名 不过为了方便记忆用的这个
2.给设备文件进行挂载 mount /dev/sr0 (光盘硬件文件名) /mnt/cdrom
3.切换到 /mnt/cdrom下 cd /mnt/cdrom
4.进入到 Packages 目录下 cd ./Packages
5.使用rpm 命令安装需要的软件包
rpm [-选项] [rpm包名]
-v显示安装信息 -i安装 -h:显示安装过程

在这里插入图片描述
当我要安装 mysql-connector-odbc-5.1 5r1144-7.e16.i686.rpm 的时候 出现了报错: libodbc inst.so.2 is needed by mysql-connector-odbc-5.1 告诉我们要安装mysql这个包 首先得安装 libdbc 这个,但是我们发现这个并不是包(含.so的一般是库模块文件),而是一个库文件,得找到库文件所在的包,安装这个包,才能再安装mysql 这个包。 可以登录 www.rpmfind.net进行查询 对应文件所在的包

Ps:也可以使用yum 安装 这个相当于智能化的安装 无需手动去安装所依赖的包

包全名:操作的包是还没有安装的包,使用包全名,还要注意路径,只能在包所在的路径下或者绝对路径下操作
包名:操作已经安装的包的时候 使用包名就行了

rpm -ivh 包全名 --安装包
-i:安装 -v:显示安装信息 -h:显示安装过程
rpm -Uvh 包全名 – 更新包
rpm -e 包名 – 卸载包

rpm 的一些查询命令:(yum 不具备查询命令)
rpm -q 包名 查询包是否安装
rpm -qa 查询所有已安装的包
rpm -qi 包名 查询软件信息(已经写好了,还没有安装就已经写好的关于软件包的信息)
(如果要查询未安装包的软件信息 rpm -qip 包全名 要注意路径)
rpm -ql 包名 查询包中文件的位置信息 如果要查询未安装包的位置信息 rpm -qlp 包全名)
rpm -qf 系统文件名 查询系统文件属于哪个软件包
rpm -qR 包名 查询这个包要依赖哪些包 (rpm -qRp 包全名 查询未安装的这个包依赖哪些包)

rmp 命令管理 – 校验和文件提取:
有些时候 我们可能因为误删了一个系统文件而导致一些出错,这个时候我们大可不必重装系统,而是通过校验 找到这个文件所处的包 然后从那个包中重新下载即可
语法:
Rpm -v 包名 判断该安装的包 有没有文件被修改 如果没有修改 执行这个命令 不会有返回结果
如果被修改了 则有返回结果:
在这里插入图片描述
前面这些参数 所对应的含义:

.代表没有改变
S代表大小被改变
M 代表文件的类型或者权限被改变
5 文件MD5校验和改变(可以看成文件内容是否被改变)
D 设备
L 文件路径被改变
U 文件属主(所有者)被改变
G 文件所属组被改变
T 文件的修改时间被改变

c 代表是配置文件
d 普通文档
g 鬼文件(该文件不应该被这个RPM包包含)
l 授权文件
r 描述文件

从RPM 包中提取文件语法:
Rpm2cpio 包全名 |( \换行符如果命令太长了)cpio -idv .(这个.代表把文件提取到当前目录)文件的绝对路径

yum 命令管理:

先总的谈谈yum 这个东西吧:
yum 命令的一个优点就是,可以自动从服务器中软件包库来进行安装,不需要你手动的去安装依赖的包,全自动化 很方便。当然也有缺点 等下讲yum命令的时候来说

要想使用yum 首先得介绍一下 yum源 的安装方式:

主要分为:
网络 yum 源(就是从网络服务器来请求资源)
本地 yum 源 (直接用光盘上的软件包来进行安装)
网络 yum 安装方式 :
1.首先得保证能访问互联网
Redhat 系列配置网络 可以用setup命令 图形化 来配置 需要配置IP 子网掩码 网关 DNS
配置完之后 记得使用 service network restart 重启一下
2.linux 系统默认下 网卡是没打开的 所以需要手动打开
在这里插入图片描述
改完之后记得 service network restart (重启一下服务 使得服务生效)
1.配置网络yum源
进入到 /etc/yum.repos.d 目录下 可以看到存放的一些yum源
第一个 CentOS-Base.repo 就是我们需要配置的 网络yum源:我们可以进去进行配置一下
在这里插入图片描述
在这里插入图片描述
下图是对上图参数的一个解释
从下图可以看到 其实最主要的参数就是 baseurl :这里需要填获取yum 的服务器地址
再就是一个 enabled =1 才是生效的 不写也可以生效。
把baseurl 前面的url 去掉 就可以生效了 网络yum源就处理好了
在这里插入图片描述
接下来说说 本地光盘yum 源的安装
首先因为要用到光盘 所以需要先挂载:
1.mkdir /mnt/cdrom :创建挂载目录 mount /dev/sr0 /mnt/cdrom 挂载硬件文件
2.让网络yum源失效 才能配置本地yum 源 所以进入到 /etc/yum.repos.d 目录下
在这里插入图片描述
让文件失效的一个方法就是改后缀名 让系统不能识别
改名的方法 可以直接用在本目录剪切的方式 :
在这里插入图片描述
1.跟配置网络 yum 源的时候一样 需要配置一下文件,本地yum源对应的文件是
CentOS-Media.repo 用vim 进去之后是这样滴
在这里插入图片描述
在这里插入图片描述
这个跟网络yum源大同小异
比较可知 这两个yum 源配置方法其实大同小异 一般会选择本地安装吧,因为比较适应系统,本地安装的话也比较快

yum 命令:
yum list 查询所有可用软件包
yum search 关键字 搜索所有和关键字有关包
yum -y install 包名 (这里不再区分包全名的概念,加上-y 就可以默认输入yes,不用你自己输入了 因为会联系到很多依赖包的安装)
yum -y update 包名 更新包 千万别不输包名 这样会崩溃的!
yum -y remove 包名 卸载包
yum grouplist 列出所有的软件包组
yum groupinstall 软件组名 安装
yum groupremove 软件组名 卸载
尽量避免使用yum 命令来卸载 因为你卸载的那些包很可能也是别的软件包所依赖的包,有时会直接导致系统崩溃

源码包管理:

源码包与RPM 包的区别:

概念上前面已经大致说了
现在谈谈它们安装位置的区别:
在这里插入图片描述
源码包安装在指定的位置之中 一般是 /usr/local/软件名

安装位置带来的影响:
比如 想启动apche 服务 (在已经安装了apache服务的情况之下)
可以输入命令:
/etc/rc.d/init.d/httpd start 或者 service httpd start
可以通过 service 命令来执行 系统安装的一些服务 (因为这些服务是安装在rpm包默认路径下的)
源码包安装的服务 就不能直接用service 这样的命令来实现

接下来谈谈 源码包的安装过程:
需要安装C语言编译器 (便于后期安装过程中将源代码翻译成机器语言)//gcc 就是编译器

需要下载源码包到linux系统上

1.对源码包 进行解压缩 tar -xvfh 命令
2.进入到解压缩的目录
进入到源码包里面 查看源码包里面的文件 我们可以看到INSTALL 这个文件
在这里插入图片描述
这个文件是一个安装说明 在安装之前 我们可以看一下 用vim 打开是这样的:
在这里插入图片描述
其实就是看前四行告诉的一些信息 :告诉你应该怎么安装
这就是过程
./configure --prefix=安装路径
在这里插入图片描述
执行完 configure 命令之后会在当前目录下生成 Makefile 文件
make:编译
make install 安装
安装路径/bin/apachectl start 执行命令
下面是图示:
在这里插入图片描述
这里指定安装 在/usr/local/apache2 下面 这个apache2 名字是由我们自己定的

然后 make 命令 会看到一大串编译信息(只是把编译信息显示在屏幕上面了,还没有把数据写到硬盘上面)
在这里插入图片描述
然后 make install 命令 就安装完成了
然后使用 安装路径/bin/apachectl start 就可以执行服务了
源码包的卸载:
在这里插入图片描述

脚本安装包 :

在这里插入图片描述
这里介绍一种 脚本安装包的安装过程 --webmin
在这里插入图片描述

安装过程:
在这里插入图片描述
脚本安装包实际上还是一个源码安装包
图示:
解压缩
在这里插入图片描述
进入到解压缩目录下 cd webmin-1.610
在这里插入图片描述

然后 ./setup.sh 执行这个脚本(这个步骤就把脚本包的精髓体现出来了,直接运行这个setup.sh 执行文件就好了,开发者把安装命令全都写好了放在这个文件里面 实现脚本自动安装)
在这里插入图片描述
然后这个软件就安装好了
使用测试: 通过IP地址进去
在这里插入图片描述
进去之后是这样滴:图形化管理linux 的一些服务
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值