软件包管理简介
总结:Linux 软件安装包分为
源码包安装
优点:可控性高,可以自己查看或修改程序的源代码。安装后软件的执行效率高,比厂商提供的二进制包高5%
缺点:需要自己手动编译源码后才可安装,操作难度高。
二进制包安装
优点:安装速度块,由于使用的是厂商编译过的二进制包,所有省去了自己对源码的手动编译。直接安装即可。
缺点:不可以直接查看程序的源代码。安装后软件的执行效率比自己手动编译的的软件包慢5%。并且安装软件存在依赖性问题
脚本包安装
优点:脚本包安装类似与Windows下的软件安装界面。它是源码包安装和二进制包安装的中和方式。运行脚本后,脚本会帮助你去编译软件的源代码并安装。
缺点:单独编写软件脚本
RPM 包管理(二进制包)
rpm的命名规则
包名或包全名例子
httpd-2.2.15-15.el6.centos.1.i686.rpm
包名 : httpd
包全名 : httpd-2.2.15-15.el6.centos.1.i686.rpm
rpm的依赖性
总结:
rpm包的命名规则:
软件包名-软件版本-软件的发布次数.适合的Linux平台.适合的硬件平台.rpm包扩展名
rpm依赖性:
树形依赖 :如安装软件包a时发现需要安装软件包b,而安装软件包b又需要软件包c.
解决上述的树形依赖问题的方法:先安装软件包c然后依次安装软件包b,软件包a
环形依赖:如安装软件包a时发现需要安装软件包b,而安装软件包b需要安装软件包c,但是安装软件包c却需要软件包a,这样就形成了环形的依赖结构。
环形依赖解决方案:同时安装包a,b,c即可解决此问题。
模块依赖:模块依赖和软件包依赖不同之处在于,模块所依赖的包,有可能不在系统安装包内。
解决方案:进入 www.rpmfind.net 搜索需要的模块包
包全名和包名的使用介绍
rpm安装升级卸载
总结:
什么时候使用包全名或包名
- 包全名,在软件没有安装并需要使用的情况下。如软件的安装或更新
- 包名,在软件已经被安装的情况下。如软件的卸载
rpm实现包安装
在进入安装包目录的情况下
1
rpm -ivh 需要安装的包全名(need install package name)
rpm实现包升级
在进入安装包目录的情况下
1
rpm -Uvh 需要更新的包全名(need update package name)
rpm实现包卸载
1
rpm -e 需要卸载的包名 (need deleter package name)
rpm查询
查询是否安装
安装包的详细信息查询
RPM的安装位置查询
根据文件名查询rpm包
查询安装包的依赖性
总结:
rpm查询
查询是否安装
1
rpm -q 包名 (package name)
系统已经安装的所有安装包
1
rpm -qa
安装包的详细信息查询
1
rpm -qi 包名 (package name)
RPM的安装位置查询
1
rpm -ql 包名 (package name)
获取给定文件名属于哪个RPM
1
rpm -qf 文件名 (file name)
查询RPM的依赖性
1
rpm -qR 包名(package name)
rpm包校验
rpm包提取
总结:
rpm 包校验
rpm 包提取
/usr/bin/ls 文件提取
1 | rpm2cpio /mnt/cdrom/Packages/coreutils-8.22-23.el7.x86_64.rpm | cpio -idv ./usr/bin/ls |
yum在线管理-IP地址配置
使用 red heat 的setup命令
本人使用的是contos7,发现使用setup后没有网络配置项,在网上查他们说需要使用yum去安装setup的一些功能项。(未做测试)
那我是怎么配置使自己的系统可以访问外网的呢?我直接修改改network 的配置文件(/etc/sysconfig/network-scripts/ifcfg-ens33)文件,将ONBOOT 设为 true,然后就可以上网了。
网络yum源
本人安装的contos已经默认安装并配置了yum源,下面是有关yum源的一些配置属性的解释
使用镜像(mirror)
- 下载镜像repo配置文件 http://mirrors.aliyun.com/repo/Centos-7.repo
- 将原repo文件备份为 repo.backup
- 将下载好的Centos-7.repo 移动到/etc/yum.repos.d/下并改名为CentOS-Base.repo
总结:
1.系统上网配置,使用setup 下的网络配置,配置ip 子网掩码 网关 CSDN 保存即可,设置后记得修改network 的网络配置文件,将ONBOOT 设为true, 之后service network restart 重启即可,然后使用ping命令测试系统是否联网
2.yum 配置使用contos默认即可
3.yum mirror设置,上述配置即可
yum命令
查询
安装
注意 当更新时,没有指定包名,yum会更新整个系统中所有软件甚至内核也会被升级。
卸载
yum软件组使用
总结:
系统安装原则:最小化安装,用需要用什么软件,就安装什么软件。最好不要卸载软件。更新软件时要注意指定软件名,不然就会更新整个系统(包括内核)。安装时-y 命令要在安装熟练时使用,一般慎用
yum光盘源搭建
源码包安装管理
源码包和rpm包的区别
安装之前的区别:概念上的区别
安装之后的区别:安装位置不同
由于源码包和rpm 安装包的安装位置不同导致了,应用的启动方式选择面不同
rpm 包安装的软件可以 使用 service 去执行命令,也可以使用 绝对路径 + 命令的方法操作
源码包 只能通过 绝对路径 + 命令的方法操作
service 操作软件
1 | service tomcat start |
绝对路径+命令方式
1 | /usr/bin/tomcat start |
源码包安装过程
源码包安装流程
- 下载源码包文件
- 解压源码包文件到 /usr/local/ 源码文件名 下
- 进入解压目录阅读 INSTALL 文档,查看如何安装。
- 使用make 命令编译源码
- 使用make install 命令安装
INSTALL安装说明文档
README使用说明
make 编译
make install 编译安装
make clean 清空编译
###脚本安装包