Linux源码包和二进制包安装教程
本文讲述怎么安装源码包,二进制软件包和rpm包。
一.源码包安装
源码包的制作可以参考教程:Linux源码包的制作教程
1.下载源码包并解压
1
2
3
4
5
6
7
8
|
#可使用 wget 命令“http:\\”直接下载到主机 或者其他方式上传源码包
#根据源码包的格式去解压
tar -xvf *.tar /tar -xvjf *tar.bz2 /unzip -o *.zip
em:
cd /root
scp root@10.0.8.116:/workspace/upgrade-maintain-patch.tgz /root/
tar -xvf upgrade-maintain-patch.tgz
|
2.进入源码包的目录解后压
1
2
3
4
|
cd 目录
em:
cd upgrade-maintain-patch
|
3.软件配置与软件,环境依赖检查
/configure是源代码安装的第一步,主要的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系,生成makefile文件)
1
2
3
4
5
6
7
8
|
#生成makefile文件
./configure
#或者
.configure
#指定安装根目录
./configure --prefix=/usr/local/
#.--with指的是安装本文件所依赖的库文件。
|
3.2.如果有makefile,就直接make,然后make install
3.3.默认安装目录
1
2
3
4
5
6
|
/usr/local 系统预设软件安装位置
/etc/ 配置文件安装目录
/usr/sbin/ 可执行的命令安装目录
/usr/lib/ 程序使用的函数库保存位置
/usr/share/doc/ 软件使用手册保存位置
/usr/share/man/ 帮助文件保存位置
|
4.安装成功
make 是用来编译 它从Makefile中读取指令,然后编译。编译出错可以用make clean 清除编译过程文件
make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。只有在执行install的时候才会向指定的安装目录写入文件。
5.注意
安装过程报错 :编译配置过程停止并出现error warning no。一般Leaving directory…表示成功 源码包是没有卸载命令,直接执行rm命令卸载即可,没有垃圾残留
二.二进制软件包
二进制软件包的制作可以参考教程:Linux源码包的制作教程
一般情况下自制的软件包都有自定义的安装脚本,如果使用makefile配置的二进制软件包和源码安装步骤一致。
1.获取软件包并解压
1
2
|
#根据源码包的格式去解压
tar -xvf *.tar /tar -xvjf *tar.bz2 /unzip -o *.zip
|
2.执行命令安装
1
2
3
4
5
|
#如果存在configure,则按照软件方说明,进行使用
./configure
#如果存在makefile文件则,直接执行
make && make install
|
三.二进制包-rpm包安装
rpm打包可以参考教程:Linux二进制包(RPM包)制作教程(教程+资料+案例)
1) 安装
1
2
3
4
5
6
7
8
|
-i: 安装
-v: 显示安装过程
-vv: 显示安装详细过程
-h: 显示安装进度
-U: 指定的安装包比已安装的安装包新或者未安装
-F: 指定的包比已安装的包新 --oldpackage 指定的包比已安装过的包旧
-ivh:安装显示安装进度--install--verbose--hash
-Uvh:升级软件包--Update;
|
2) 卸载
1
2
3
4
5
6
7
|
-e:删除包
-e 包名
rpm -e `rpm -q vsftpd`
或
rpm -e vsftpd --allmatches 安装了多个版本的某个rpm可以一次性全部删除
--nodeps 删除时不检查依赖性关系
|
3) 查询
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
-q: 查询包是否安装
-qa: 查询已安装的所有包
-qf: 文件路径 查询指定的文件来源于哪一个rpm包
-ql: 包名 查询该包提供了哪些文件
-qp: rpm包 对未安装的包,指定rpm文件再配合其他查询子选项来进行各项查询操作
-q: --changelog 包名 查看更新日志
-qc: 包名 查看该软件包所提供的配置文件
-qd: 包名 查看该软件包所提供的文档文件
-qi: 包名 查看该软件包的详细信息
-q**: --scripts 查看安装前及安装后的脚本**
-q: --provides 包名 查看一个软件包提供了哪些能力
-qR: 包名 查看一个软件包的运行所依赖的能力
-q: --whatprovides 能力名 查看一个能力由哪个包提供
-q: --whatrequires 能力名 查看一个能力依赖于哪些包
-qpl:列出RPM软件包内的文件信息[Query Package list];
-qpi:列出RPM软件包的描述信息[Query Package install package(s)];
-qf:查找指定文件属于哪个RPM软件包[Query File];
-Va:校验所有的RPM软件包,查找丢失的文件[View Lost];
|
4) 示例
1
2
3
4
5
6
7
|
>#rpm -ivh 软件包全名 //安装软件
>#rpm -q 软件包名(完整) //query查看软件是否有安装
>#rpm -e 软件包名 (完整) //卸载软件
>#rpm -ql 软件包名 (完整) //query all 软件安装目录
>#rpm -qa //query all 查看系统里边全部rpm方式安装的软件
>#rpm -qa | grep ftpd(部分名字) //模糊查找指定软件ftpd是否有安装
软件包全名 = 软件包名+软件版本+支持的系统+支持cpu型号+文件后缀
|