Linux下的软件安装
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Linux下的软件安装
一.源码安装
1.解压源码软件
2.进入到软件所在目录
3../configure 执行编译前的准备,参数为默认,若改变参数可用./configure –help查看;
4.make 开始编译;
5.make install 安装软件。
6.若要卸载软件,可执行make uninstall 。
二.RPM安装
1.安装
*这里以foo-1.0-1.i386.rpm 为例说明,先说明一下软件参数:foo 为软件名,1.0 为版本号,1 为发行号,i386 为硬件平台;
*命令格式:
rpm–i【v】【h】【option】file1.rpm… fileN.rpm 可同时安装多个软件包
*【】中的内容为可选项:
i 表示安装;v 表示显示状态;h 表示以# 输出显示进度;*【option】包含的参数有:
--test=-t 只对安装进行测试,并不实际安装
--percent=-p 以百分比的形式输出安装的进度
--replacepkgs 强制重新安装已经安装的软件包
--replacefiles 替换属于其它软件包的文件
--nodeps 不检查依赖性关系
--excludedocs 不安装软件包中的文档文件
--force 忽略软件包及文件的冲突
2.升级
*命令格式:
rpm -【U|F】【v】【h】【option】file1.rpm… fileN.rpm
*说明:
U 表示升级;F 表示更新;
*【option】包含的参数有:
--prefix 将软件包安装到由指定的路径下
--oldpackage 允许"升级"到一个老版本
其它参数和安装选择的参数相同;
3.查询
*命令格式rpm –q 【option】
*【option】包含的参数有:
-a 查询所有已安装的软件包
-all 查询所有已安装的软件包数据
-i 查询软件的信息
-l 查询软件包里的内容
-f 查询属于哪个软件包
-p 查询软件包文件名为。。。的软件包
例:
1)查询一个包是否被安装:rpm –q *
2)查看软件包里的内容:rpm –qpi *
3)查看软件包将会在系统里安装哪些部分:rpm –qpl *
4)快速判定某个文件属于哪个软件包:rpm –qf *
5)列出所有被安装的rpm软件包:rpm –qa
6)查询已安装软件包都安装到何处:rpm –ql
7)查看一下已安装软件所依赖的软件包及文件:rpm -qR 软件名8)查看一下已安装软件的配置文件:rpm -qc 软件名
9)查看一个已经安装软件的文档安装位置:rpm -qd 软件名
*对未安装的软件进行查询:
1)查看一个软件包的用途、版本等信息:rpm -qpi file.rpm
2)查看一件软件包所包含的文件:rpm -qpl file.rpm
3)查看软件包的文档所在的位置:rpm -qpd file.rpm
4)查看一个软件包的配置文件:rpm -qpc file.rpm
5)查看一个软件包的依赖关系:rpm -qpR file.rpm
4.验证
*命令格式:
rpm –V file.rmp
*软件包状态标签:
5 -- MD5 校验和
S -- 文件长度
L -- 符号链接
T -- 文件修改日期
D -- 设备
U -- 用户
G -- 用户组
M -- 模式(包含许可和文件类型)
? -- 不可读文件
5.卸载
*命令格式:rpm –e软件包名
三.YUM安装
& 建立YUM下载源的步骤:
1)将所有RPM文件放入同一个目录中;
2)在该目录中建立YUM下载源数据,执行createrepo + 软件包绝对路径
3)通过本地file、HTTP、FTP分享这个目录
&yum的配置一般有两种方式:
其一是直接配置/etc目录下的yum.conf文件,
& /etc/yum.conf文件说明:
[main]
cachedir=/var/cache/yum #yum下载的RPM包的缓存目录
keepcache=0 #缓存是否保存,1保存,0不保存
debuglevel=2 #调试级别(0-10),默认为2
logfile=/var/log/yum.log #yum的日志文件所在的位置
exactarch=1 #在更新的时候,是否允许更新不同版本的RPM包obsoletes=1 #update参数,允许更新陈旧的RPM包
gpgcheck=1 #是否检查GPG(GNU Private Guard),一种密钥方式签名plugins=1 #是否允许使用插件,默认是0不允许
installonly_limit=3 #允许保留多少个内核包。
exclude=selinux* #屏蔽不想更新的RPM包,多个RPM包之间使用空格分离# This is the default, if you make this bigger yum won't see if the metadata
# is newer on the remote and so you'll "gain" the bandwidth of not having to
# download the new metadata and "pay" for it by yum not having correct
# information.
# It is esp. important, to have correct metadata, for distributions like
# Fedora which don't keep old packages around. If you don't like this checking
# interupting your command line usage, it's much better to have something
# manually check the metadata once an hour (yum-updatesd will do this).
# metadata_expire=90m
# PUT YOUR REPOS HERE or IN separate files named file.repo
# in /etc/yum.repos.d
其二是在/etc/yum.repos.d目录下增加.repo文件。
&/etc/yum.repos.d目录下*.repo文件详解:
[Fedora] #方括号里面的是软件源的名称,将被yum取得并识别