在Linux中软件包的安装
Linux操作系统又叫做GNU:Linux是由linux :kernel和GNU:SOURCE code 两部分组成,所以有很多的软件包,所以软件包的安装也非常重要了。
软件包:
二进制文件
配置文件
库文件
文档(
man,info,/usr/share/doc
)
软件包的安装方式:
1
、手动编译安装源代码
2
、使用二进制格式的软件包
rpm
解压直接使用
rmp 命名方式
name-version-Release.os.arch.rpm
Version:
版本号
Release:
发行号
arch
平台
有的带有
os
rpm 不能解决依赖关系
rpm 的
安装:
rmp -i path/to/rpm_package(必须有路径)
rmp -ivh
(
v
显示进度)
--nodeps
忽略依赖关系
--force
也是强制安装
卸载:
rpm -e name
--nodeps
也是强制卸载
rpm 的升级:
rpm -Fvh path/to/rpm_package
-Uvh
path/to/rpm_package
路径也必须有
rpm 的
查询:
rmp -q name
rpm -qa
所有的安装软件包
rpm -qa keyword (* ?)
rpm -qi name
显示软件包的相关介绍
rpm -ql name
详细列表。
rpm -qc
只显示配置文件
rpm -qd name
只显示文档
rpm -q --scripts bash
软件包安装时执行了那些脚本
rpm -qf
用于查询文件是由哪个软件包安装的
rpm -q --changelog name
不安装也可以查询:
在之前的命令中加个
p
rpm 的
校验:
rpm �CV
rpm -ivh kernel
内核不能升级只能安装。
rpm
重建数据库
:
#rpm --initdb
如果损毁则修复
# rpm --rebuilddb
重新生成
签名:
rpm --impot /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
导入公钥
rpm -K
--nodigest
不证
md5
--nosignature
不验证签名的
yum :
能自动解决依赖关系
yum repository:
支持三种服务:
ftp://
http://
file:///
自己创建
yum
仓库
yum
客户端的配置文件由两部分组成:
1 /etc/yum.conf
2 /etc/yum.repos.d/*.repo
在
/etc/yum.conf
中
[main]
配置段
定义了全局属性
cachedir=/var/cache/yum
放在一个缓存目录
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
日志位置
distroverpkg=redhat-release
放行版
tolerant=1
允许出错一个软件包没安装可以允许安装其他软件包的
exactarch=1
精确匹配平台版本
obsoletes=1
是否检查已经废弃的包子配置文件
gpgcheck=1
安装之前是否检查软件的签名等于
1
表示检查
plugins=1
启用插件与否
metadata_expir=1h
原数据的过期时间
在
/etc/yum.repos.d/server.repo
中每个
[]
的表示
yum
源的识别符号
name=
用于指定
yum
源的完整名称
baseurl=
指定
yum
源在什么地方
baseurl=ftp://172.16.0.1/pub/Server
gpgcheck=0
是否检查签名的
0
是不检查
1
是检查
enabled=0
是不是启用这个
yum
源的默认是启用的不启用是
0
yum 的有关的命令:
yum list {all|installed|available|updates}
列出来系统上已经安装的软件包
globbing
通配符
yum install package_name package_naem2
安装
事务
yum remove|erase package_name1 package_name2
删除
yum update package_name1....
升级
yum check-update
用于查询哪些可升级的
yum info
显示摘要信息的
yum provies
查询文件是由哪个软件包生成的
yum downrade package_name1
表示降级软件包。
yum reinstall package_name1
重新安装
yum repolist all
显示所有的
yum
源
{all enabled disabled}
yum clean all
清除本地缓存
[packages|headers|metadata|dbcache|all]
yum grouplist
显示所有有关包组的信息
yum groupinstall "
包组的名称,如果有空格必须用引号引起来
"
安装包组
yum groupremove ""
移除一个包组
包组的名称,如果有空格必须用引号引起来
yum groupinfo
查看一个包组的信息