天天看点

软件包的安装方法

 软件包:

  二进制文件

  配置文件 /etc, /usr/local/etc

  库文件 /lib, /usr/lib, /usr/local/lib

  文档(mnan, info, /usr/share/doc) /usr/share/docs, /usr/share/man,

软件包的安装方式:

  1、手动编译安装源代码:  

  2、二进制格式的软件包

     rpm 

     解压直接使用

rpm:

  name-version-release.os.arch.rpm

   Version :版本号

   major:主设备号,表示某一种类的设备

   minor:此设备号,标示同一种类的不同设备

   modify:修正号

   Release: 发行号   

rpm管理软件包:

   安装:h表示以#方式进度 

    rpm -ivh /path/to/rpm_package

    rpm --ivh --nodeps 强行装

  卸载:

    rpm -e name --nodeps 忽略依赖关系

   升级:

    rpm -Uvh /patn/to/rpm_package 

    rpm -Fvh /path/to/rpm_package 

   查询:

    rpm -q name

      -qa 查询所有软件包/

      -qa keyeord (*,?) 支持文件名通配

      -qi name 显示软件包的相关信息

      -ql name 把软件包安装生成的所有文件列出

      -qc name 只显示配置文件

      -qd name 只显示文档

      -q --scripts name 查看一个软件包安装的时候都执行了哪些脚本

      -qf FILENAME查看文件是由哪些软件包安装生成的

      -q --changelog name

      -qpi /path/to/rpm_package 加一个p 在不安装软件包的情况下 查看软件包信息

   校验:

    rpm -V 

       S file Size differs

       M Mode differs (includes permissions and file type)

       5 MD5 sum differs

       D Device major/minor number mismatch

       L readLink(2) path mismatch

       U User ownership differs

       G Group ownership differs

       T mTime differs

rpm重建数据库:

  # rpm --initdb

  # rpm --rebuilddb 

    rpm --import /etc/pki/rpm-gpg

    rpm -K

       --nodigest

       --nosignature

yum及yum源的创建

一、yum是功能强大的、易用的前端安装工具,依赖于rpm,但是yum能自动解决软件包之间的依赖关系,是基于C/S架构的。

(1)、服务器端有yum仓库并包含所以的yum源,并赋予客户端有下载的功能。

(2)、客户端提供给yum一个配置文件,告知用户yum仓库在哪里,启用与否。

yum reopsitory(yum仓库)支持哪些服务?

  ① ftp://   基于ftp服务器的yum仓库

  ②http://   基于http服务器的yum仓库

  ③file:///  基于本地的yum仓库

  三种方式指定yum仓库在哪。

  1、yum 客户端的配置文件由两部分组成:

  (1)/etc/yum.conf

  (2)/etc/yum.repos.d/*.repo 必须以.repo结尾的后缀文件名才有用

     cat /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                  //检查签名

    plugins=1                     //启动插件功能

    除了[main]不能用,其他的[ ]是对应的yum源的识别号,可自定义改变。

    vim /etc/yum.repos.d/log.repo

     [base]

    name=Server

    baseurl=http://172.16.0.1/yum/Server

    gpgcheck=0

    enabled=1

   2、yum list: 可列出yum文件和已安装的repo文件

           选项:{all(所有)|installed(已安装的)|available(可用的未安装包)|updates(可更新的)}

     yum install PACKAGE_NAME1,PACKAGE_NAME2...

          -y :不用提示直接安装。

          事物标示,yum install 只能安装一次,不能重复安装。

     yum remove|erase PACKAG_NAME1,PACKAGE_NAME2... 删除软件包并自动解决软件包之间的依赖关系。

     yum update PACKAGE_NAME 更新软件包

        yum check-update: 用于检查哪些软件包可升级。

     yum info bash: 显示软件包的摘要信息

     yum provides | whatprovides FILENAME: 查询什么软件生成的这个文件

     yum downgrade PACKAGE_NAME : 降级软件包

     yum reinstall PACKAGE_NAME : 重装软件包

     yum repolist :显示yum 源有哪些

           {all(所有)|enabled(默认启用的)|disenabled(禁用的)}

     yum clean :清除缓存

     yum grouplist: 显示所有软件包组的信息

     yum groupinstall "包组名(有空格时要加“”)":安装包组

     yum groupremove ... : 移除包组

     yum groupinfo ...: 查询某个包组的信息

     yum lovalinstall 本地路径: 安装本地的软件包

     默认情况下,yum会自动检测来源合法性与数据完整性,如果不通过,则不执行。

        (1)导入软件包的公钥

        (2)yum --nogpgcheck localinstall 文件名

        yum localupdate PACKAGE_NAME: 通过本地软件包升级

        yum serach keyword :非精确匹配,搜索软件

     二、创建本地yum源

     (1)先安装yum 可以用rpm yum-(yum的软件包名字)

     (2)配置完yum仓库后再创建yum源

         yum install createrepo

      源代码编译安装

      如axel的安装

      axel是一种类似迅雷的下载工具,支持断点续传。

      1、下载axel软件包 ,我们上课用是在ftp://172.16.0.1/pub/Sources/downloader下下载的。

      2、解压 #tar xvf axel-2.4.tar.bz2

      3、切换至解压后的目录

      4、./configure --prefix=/usr/local/axel(指定其安装的默认路径)--i8n=0(不启用国际化)//检查编译环境./configure + Makefile.in --> makefile

      5、make 编译

      6、make install 安装

      安装成功后,若想不用输入完整的路径就下载东西,可以在配置文件中写入路径,并导出。

       /etc/profile:可使全局生效

       /etc/bash_profile:单个用户生效。

       根据需要打开其中一个文件,在一中添加一行:PATH=$PATH:/usr/local/axel/bin

       # export PATH=$PATH:/usr/local/axel/bin,即可。

     一、自定义安装路径时,此软件库文件导出方法:

     1、在/etc/ld.so.conf.d/新建一个.conf结尾的文件,并将此程序的库文件路径添加至此文件中,比如:

     /usr/local/apache/lib

     2、执行ldconfig,让系统重新加载库文件:

     ldconfig -v

     二、可执行程序的导出方法:

    # export PATH=$PATH:/usrlocal/apache/bin

    也可写入配置文件:

   如果想对所有用户生效,写入/etc/profile;

   如果进队某用户生效,写入~/.bash_profile

    三、man文件路径导出方法;

    编辑/etc/man.config文件,新增如下一行;

    MANPATH /usr/local/apache/man

    四、头文件导出方法

    创建连接 

    ln -sv 

继续阅读