软件包的安装:
Debian: 编译成二进制,管理工具,软件包管理器

vim bash mount/umount
封装成一中特定的格式!

rpm:Redhat Package Manager
  RPM Package Manager
RPM
缺点是依赖关系:

前段工具:依赖rpm ,deb

rpm:yum
deb:apt-get

软件包仓库,yum源

软件包:
 二进制文件 (bin目录下)
 配置文件 (etc目录下)
 库文件 (lib目录下)
 文档(man,info,/usr/share/doc)
 
源代码:
软件包的安装方式:
  1、手动编译安装源代码;gcc
  2、二进制格式的软件包
     rpm(制作繁琐)
 
  类似解压软件,解压直接使用的
  x86 ,x86_64 ,power ,
 
使用RPM格式管理安装软件包:
  name - version(主版本.次版本.修订号) - release(发行号) - os.arch(平台).rpm
 
 RPM:
 
  -i  安装:
    rpm -ivh --nodeps  /path/to/rpm_package
  -e  卸载:
    rpm -e name 直接卸载
 rpm -e --nodeps 忽略依赖关系,卸载
  -U / -F 升级:
    rpm -Uvh /path/to/rpm_package
   后面接的软件即使没有安装过,则系统将予以直接安装; 若后面接的软件有安装过旧版,则系统自劢更新至新版;
 rpm -Fvh /patn/to/rpm_package
   如果后面接的软件幵未安装到你的 Linux 系统上,则该软件丌会被安装;亦即只有已安装至你 Linux 系统内的软件会被『升级』!
  -q 查询:
    rpm -q name
 rpm -qa 查询所有安装的rpm包
 rpm -qa *keyword* 查询有关keyword字符的软件包
 rpm -qi name 显示软件包的相关信息
 rpm -ql name 显示软件包安装之后生成了什么文件
 rpm -qc name 只显示生成的配置文件
 rpm -qd name 只显示生成的文档
 rpm -q --scripts 显示rpm需要执行的脚本文件
 rpm -qf +生成的文件名 显示文件时由哪个rpm包生成的
 eg:
 [root@localhost ~]# rpm -qf /etc/passwd
setup-2.5.58-7.el5
  -V 校验
       S file Size differs 文件大小改变
       M Mode differs (includes permissions and file type) 权限改变
       5 MD5 sum differs MD5 改变
       D Device major/minor number mismatch
       L readLink(2) path mismatch
       U User ownership differs 文件属主改变
       G Group ownership differs 文件属组改变
       T mTime differs 文件修改时间改变
  --nodeps  忽略依赖关系
  --force  强制安装

RPM数据库为: /usr/lib/rpm
RPM重建数据库;
  rpm --initdb 若没有则重建
  rpm --rebuilddb 不管有没有都会重建或者覆盖

身份验证

导入公钥信息:
[root@localhost media]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

验证是否合法: rpm -k

yum(前端):
安装的是rpm 格式的软件包,可以自动解决依赖关系。

yum源:
  ftp://
  http://
  file:/// 最后一个斜线是指本地的根目录


redhat镜像中默认的四个rpm源:Server  VT  Cluster ClusterStorage
 
yum客户端的配置文件由两部分组成:
 1、/etc/yum.conf
 2、/etc/yum.repos.d/*.repo
 
server.repo源组成:
[Server](id)
name=server
baseurl=ftp://172.16.0.1/pub/server
gpgcheck=0
enabled=1(启用yum源)
 
     eg:
      
         [Server]
         name=Server
         baseurl=ftp://172.16.0.1/pub/Server
         gpgcheck=0
         enabled=1

         [VT]
         name=VT
         baseurl=ftp://172.16.0.1/pub/VT
         gpgcheck=0
         enabled=1

         [Cluster]
         name=Cluster
         baseurl=ftp://172.16.0.1/pub/Cluster
         gpgcheck=0
         enabled=1

         [ClusterStorage]
         name=ClusterStorage
         baseurl=ftp://172.16.0.1/pub/ClusterStorage
         gpgcheck=0
         enabled=1
 
 
yum list {all|installed|updates|avaiable}

yum -y install package_name1 ...
    -y 自动回答yes

 
yum remove | erase 删除
 
yum update package_name1...  更新rpm包

yum check-update 用于检查哪些软件包可用于升级
 
yum info + 文件名 查看帮助信息 
 
yum provides +文件名 查询文件是由哪个安装包生成的 
   eg:yum provides /etc/passwd  
 
yum downgrade package_name  降级软件包 
 
yum reinstall package_name  重装rpm包

yum repolist {all| enabled |disabled}

yum clean all 清除yum缓存

yum grouplist  可以安装的rpm包组

yum groupinstall ” development tools“  安装包组软件 若这个包组名中间有空格,需要用引号引起来!!

yum groupinfo ” development tools“
  显示包组信息


yum localinstall /path/to/rpm_file 直接安装下载到本地后的rpm,解决其网络上的依赖关系 
   --nogpgcheck 忽略公钥信息检查
  
eg; yum --nogpgcheck localinstall /path/to/rpm_file

yum search keywords 从yum源中查看有关keywords关键字的rpm