软件管理
1. 软件包分类
1) 源码包:脚本安装包(大多数都是C语言)
优点:开源
自由选择所需的功能
软件是编译安装,所以更加适合自己的系统,执行效率更高
卸载方便(直接删除安装目录)
缺点:安装过程步骤较多(如LAMP环境搭建)
编辑过程时间较长,安装比二进制安装时间长
因为是编译安装,安装过程中一旦报错就很难解决
2) 二进制源码包(RPM包、系统默认包)
优点:包管理系统简单
安装过程比源码包快
缺点:经过编译,不在可以看到源代码
功能选择不如源码包灵活
依赖性(安装一个软件是会要求安装另一个,必须先安装另一个)
RPM包管理
2015.11.2
1. rpm命令管理
1)rpm包的命名规则
httpd-2.2.15-15.el6.centos.l.i686.rpm
httpd 软件包名
2.2.15 软件版本
15 软件发布的次数
e16。centos 适合的Linux平台(当省略时,适应所有平台)
i686 适合的硬件平台
rpm rpm报道扩展名
2)rpm包的依赖性
树形依赖性 :a->b->c
环形依赖 a->b->c->a
模块依赖 模块依赖查询网站 www.rpmfind.com
1)包全名:操作的包是没有安装的软件包时,使用包全名,而且要注意路径
2)包名:操作已经安装的软件包,使用包名,是搜 索/var/lib/rpm/中的数据库
3)RPM 安装 rpm -ivh 包全名
-i (install) 安装
-v (verbose) 显示详细信息
-h (hash) 显示进度
-nodeps 不检测依赖性(只能在做实验是使用)
4)rpm包升级 rpm -Uvh 包全名
-U (upgrade) 升级
5) rpm卸载 rpm -e 包名
-e (erase) 卸载
-nodeps 不检查依赖性
6) 查询是否安装 rpm -q 包名
-a 所有
7) 查询软件包详细信息
rpm -qi 包名
-i 查询软件信息(information)
-p 查询未安装包信息(package)
8) 查询包中文件安装位置 rpm -ql 包名
-l 列表(list)
-p 查询未安装包信息
9) 查询系统文件属于哪个RPM包 rpm -qf 系统文件名
-f 查询系统文件属于哪个软件包
10)查询软件包的依赖性 rpm -qR 包名
-R 查询软件包的依赖性(requires)
-p 查询未安装包信息(Package)
11)RPM包校验
rpm -V 已安装的包名
-V 校验指定RPM包中的文件
验证内容中的8个信息内容如下
S 文件大小是否改变
M 文件的类型或文件袋的权限(rwx)是否改变
5 文件MD5校验和是否改变(可以看成文件内容是否改变 D 设备的中从代码是否改变
L 文件路径是否改变
U 文件的属主(所有者)是否改变
G 文件的属组是否改变
T 文件的修改时间是否改变
文件类型
c 配置文件(config file)
d 普通文件(document)
g “鬼”文件(glost file),很少见,就是该文件的不应该被这个RPM包包含
l 授权文件(license file)
r 描述文件(read me)
3. RPM包中文件提取
rpm2cpio 包全名 cpio -idv.文件绝对路径
如
rpm2cpio 将rpm包转换为cpio个格式的命令
cpio 是一个标准工具,用于创建软件档案文件和从档案文件中提取文件 cpio -i 还原 (copy-in)
-d 还原时自动新建目录
-v 显示还原过程
2. yum在线管理
2015.11.3
1)IP地址配置和网络yum源
A IP配置
setup 使用setup工具
vi /etc/sysconfig/network-scripts/ifcfg-eth0
把ONBOOT=“no”改为“yes” 启动网卡
service network restart 重启网络服务
ipconfig /all windows下的网络详细信息
可以查看/etc/resolv.conf 进入可查看DNS的设置情况
如:
nameserver 221.228.225.1
nameserver 8.8.8.8
B 网络yum源
vi /etc/yum.repos.d/CentOS-Base.repo 查看yum内容
内容说明
base 容器名称,一定放在[]中
name 容器说明,可以自己随便写
mirrorlist 镜像站点,这个可以注释掉
baseeurl yum源服务器的地址,默认是CentOS官方的yum源服务器,是可以使用的,如果你觉得慢你可以改成你喜欢的yum源服务器
enabled 此容器是否生效,1为生效
gpgback 如果是1是指RPM的数字证书生效,如果是0则无效
gpgkey 数字证书的公钥文件保存位置,不应修改
2)yum命令
查询 yum list 查询所有可用软件包列表
yum serach 关键字 搜索服务器上所有和关键字相关的包
安装 yum -y install 包名
-y 自动回答yes
升级 yum -y update 包名 (慎用)
卸载 yum -y remove 包名 (慎用)
会卸载该包所以依赖的所有包
3) yum软件组管理命令
yum grouplist 列出所有可用的软件组列表
yum groupinstall 软件组名称 安装指定软件组,组名可以由grouplist查询出来
yum groupremove 软件组名 卸载指定软件组
3 光盘yum源
mount /dev/sr0 /mnt/cdrom 挂载光盘
让网络yum原文件失效
修改yum文件名的后缀
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.bak
mv CentOS-Debuginfo.repo CentOS-Debuginfo.repo.bak
mv CentOS-Vault.repo CentOS-Vault.repo.bak
让关盘yum源生效
vim CentOS-Medial.repo
name=CentOS-$releasever-Media
baseurl-file:///mnt/cdrom 光盘挂载的绝对地址
# file:///media/cdrom/
# file:///media/cdromder/
gpgcheck=1
enabled =1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
4.RPM包安装位置
1)rpm安装在默认位置中(不建议修改位置)
/etc/ 配置文件安装目录
/usr/bin/ 可执行命令安装路径
/usr/lib/ 程序所使用的函数库保存位置
/usr/share/doc/ 基本的软件使用手册保存位置
/usr/share/man/ 帮助文件保存位置
2)源码包安装在用户指定的位置
指定位置一般是 /usr/local/软件名/
3) 安装位置不同带来的影响
rpm包安装的服务可以使用系统服务管理命令(server)来管理
如:rpm包安装的apache的启动方法
/etc/rc.d/init.d/httpd.start
server httpd start
2) 安装从语言编辑器(gcc)
下载源码包 http://mirror.bit.edu.cn/apache/httpd/
安装注意事项 源代码保存位置: /usr/local/src/
软件安装位置 /usr/local/
如何确定安装过程报错 安装过程停止
并出现error、warning或no等提示
解压缩下载的源码包 tar -zxvf(或者-xjvf) 下载的压缩的包
进入解压缩目录
./configure 软件配置与启动
定义需要的功能选项
检测系统环境是否符合安装要求
将定义好的功能选项
如: ./configure --prefix=/usr/local/apache2
make && install