在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 –V
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 查看一个包组的信息