目录
软件包分类
源码包
优点
直接是打包的源码,可以看见,修改源代码
可以自由选择需要安装功能
软件是编译安装,软件执行效率高。(比二进制包安装执行快百分之五)
卸载方便(直接把安装目录删除,不遗留任何文件)
缺点
- 安装过程步骤较多,尤其安装较大的软件
集合时(如LAMP环境搭建),容易出现
拼写错误等 - 编译过程时间较长,安装比二进制安装时
间长(几个g大小的包大概花费三天) - 因为是编译安装,安装过程中一旦报错新
手很难解决(需要更改源代码)
二进制包(rpm)
优点
包管理系统简单,只通过几个命令就可以
实现包的安装、升级、查询和卸载安装速度比源码包安装快的多
缺点
- 经过编译,不再可以看到源代码(不符合linux开源精神)
- 功能选择不如源码包灵活(无法选择自己想安装的功能)
- 依赖性(各个包之间相互依赖,几乎所有rpm包都有依赖性)
RPM包管理
命名规则
apache 包的命名: httpd-2.2.15-15.el6.centos.1.i686.rpm(包全名)
- httpd 软件包名(包名)
- 2.2.15 软件版本
- 15 软件发布的次数
- el6.centos 适合的Linux平台
- i686 适合的硬件平台
- rpm rpm包扩展名
RPM 依赖性
- 树形依赖: a>b>c
- 环形依赖: a>b>c>a
- 模块依赖: 模块依赖查询网站:
www.rpmfind.net
rpm命令管理
rpm 安装
通过rpm命令 安装会有一大堆的依赖性问题,需要先安装所依赖包,才能安装目标包。所以推荐后面主流的yum在线管理安装
语法: rpm -ivh 包全名
rpm 升级
语法: rpm -Uvh 包全名
rpm 卸载
语法: rpm -e 包名
rpm 查询
语法: rpm -q 包名
rpm 查询已安装包详细信息
语法: rpm -qi 包名
rpm 查询未安装包详细信息
语法: rpm -qip 包全名
rpm 查询已安装包安装位置信息
语法: rpm -ql 包名
rpm 查询未安装包安装位置信息
语法: rpm -qlp 包名
rpm 包校验
语法: rpm -V 包名
没有显示表示包没有做修改,就是原始状态。
rpm 包提取
把coreutils包里面的ls提取到/bin/ls
rpm2cpio /mnt/cdrom/Packages/coreutils-
8.4-19.el6.i686.rpm | cpio -idv ./bin/ls
yum 在线管理
yum在线管理和rpm是一样的,只不过rpm是手动安装。yum是自动安装,并不需要考虑包依赖性的问题
yum查询命令
查询yum源可安装的包
- yum list
搜索关键字相关的包
- yum search 关键字
安装包
y选项是yes的意思
- yum -y install 包名
升级包
- yum -y update 包名
注意:update必须加包名,不加包名表示升级所有软件包,包括linux内核,linux更新后需要在本地做一些配置,系统才能使用。所以升级后会导致系统崩溃,远程无法连接。
卸载包
- yum -y remove 包名
注意:会卸载所有和包有依赖性的包,尽管其他包也依赖这个包。所以应采用安装时最小化安装,尽量不卸载的原则。
yum组安装
列出可用的软件组列表 - yum grouplist 安装指定软件组 - yum groupinstall 软件组名 删除指定软件组 - yum groupremove 软件组名启动rpm包安装的服务
启动apache服务 - /etc/rc.d/init.d/httpd start 或者 - service httpd start启动源码包安装的服务
启动apache服务 - /usr/local/apache2/bin/apachectl sta脚本安装包
介绍
- 脚本安装包并不是独立的软件包类型,常见
安装的是源码包。 - 是人为把安装过程写成了自动安装的脚本,
只要执行脚本,定义简单的参数,就可以完
成安装。 - 非常类似于Windows下软件的安装方式。
安装webmin脚本
webmin 介绍
Webmin 是一个基于 Web 的 Linux 系统管
理界面。您就可以通过图形化的方式设置
用户帐号、Apache、DNS、文件共享等服
务。
Webmin安装过程
- 下载软件http://sourceforge.net/projects/webadmin/files/
webmin/ - 用winsp上传到远程linux系统
- 解压缩,并进入加压缩目录
- 执行安装脚本