Linux 安装和管理程序

目录

一、Linux应用程序基础

1.1.应用程序与系统命令的关系

1.2.典型应用程序的目录结构

1.3.常见的软件包封装类型

二、RPM 

2.1.RPM包管理工具

2.2.RPM命令的格式

2.3.查询RPM软件包信息

2.3.1.查询已安装的rpm软件信息

2.3.2.查询未安装的RPM 软件包文件中信息

2.4.安装、升级、卸载 RPM 软件包

2.5.维护RPM数据库

2.6.解决软件包依赖关系方法

三、Yum安装

3.1.配置本地yum源仓库

创建本地源

3.2.yum常用的操作命令

四、源代码编译安装

4.1.源代码编译概述

4.2、编译安装过程

(一)tar解包

(二)./configure配置

(三)make编译与安装

(四)测试、应用、维护软件

五、总结


一、Linux应用程序基础

1.1.应用程序与系统命令的关系

 

1.2.典型应用程序的目录结构

1.3.常见的软件包封装类型

二、RPM 

2.1.RPM包管理工具

(1)Red-Hat Package Manager

①由Red-Hat公司提出,被众多Linux发行版所采用

②建立统一的数据库文件

③详细记录软件包安装、卸载等变化信息

④自动分析软件包依赖关系

(2)RPM软件包

①软件素材参考:http://www.rpm.org

②一般命名格式:bash-4.1.2-15.el6_4.x86_64.rpm

2.2.RPM命令的格式

(1)rpm命令能够实现几乎所有对RPM软件包的管理功能

(2)执行"man rpm"命令可以获得关于rpm命令的详细帮助信息

(3)rpm命令功能
         ①查询、验证RPM软件包的相关信息
         ②安装、升级、卸载RPM软件包
         ③(维护RPM数据库信息等综合管理操作)>生产环境用的很少

2.3.查询RPM软件包信息

2.3.1.查询已安装的rpm软件信息

①  rpm -q 软件名           ###查询指定软件是否已安装
      rpm -q elinks lynx 
 
②  rpm -qi 软件名          ###显示已安装的指定软件的详细信息
     rpm -qi samba-client
 
③  rpm -ql 软件名          ###显示已安装的指定软件的文件列表
      rpm -ql wget
 
④  rpm -qc 软件名          ###列出已安装的指定软件的配置文件
      rpm -qc httpd
 
⑤  rpm -qd 软件名          ###列出已安装的指定软件的软件包文档所在位置
      rpm -qd httpd
 
⑥  rpm -qR 软件名          ###列出已安装的指定软件的依赖的软件包及文件
     rpm -qR wget
 
⑦  rpm -qF 文件或目录      ###查询已安装的指定软件属于哪个安装包
       rpm -qF yum
 
⑧  rpm -qa                ###显示当前系统中以 rpm方式安装的所有软件列表
     rpm -qa | grep -i postfix     ###查询软件postfix是否已安装
 
 ⑨  rpm -qf /usr/bin/passwd   ###查看指定的文件或目录是哪个软件包所安装的

2.3.2.查询未安装的RPM 软件包文件中信息

  ①   rpm -qpi RPM包文件名         ###查询指定软件包的详细信息
        rpm -qpi /mnt/Packages/ethtool-4.8-10.el7.x86_64.rpm
         
  ②   rpm -qpl RPM包文件名         ###查询指定软件包的文件列表
        rpm -qpl /mnt/Packages/ethtool-4.8-10.el7.x86_64.rpm
         
  ③   rpm -qpc RPM包文件名         ###查询指定软件包的配置文件
         rpm -qpc /mnt/Packages/elinks-0.12-0.37.pre6.el7.0.1.x86_64.rpm 
         
   ④  rpm -qpd RPM包文件名         ###查询指定软件包的软件包文档的位置
        rpm -qpd /mnt/Packages/vsftpd-3.0.2-25.el7.x86_64.rpm

2.4.安装、升级、卸载 RPM 软件包

格式:
        rpm [选项] RPM包文件
        rpm -ivh RPM软件


        常用选项:
        -i:安装一个新的 RPM 软件包。
        -U:升级某个软件包,若未安装过,则进行安装。
        -F:升级某个软件包,若未安装过,则放弃安装。
        -h:在安装或升级软件包的过程中,以“#”号显示安装进度。
        -v:显示软件安装过程中的详细信息。
        --force:强制安装某个软件包,比如要安装版本更旧的软件包
        -e:卸载指定名称的软件包。
        --nodeps:在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系。
         
        案列
        rpm -ivh /mnt/Packages/lynx-2.8.8-0.3.dev15.el7.x86_64.rpm 
        rpm -e lynx
        rpm -q lynx

2.5.维护RPM数据库

(1)重建 RPM 数据库
当 RPM 数据库发生损坏,可通过重建RPM数据库修复。
rpm --rebuilddb        或者        rpm --initdb

(2)导入验证公钥
在没有导入用于数字签名验证的公钥文件之前,安装光盘中的一部分RPM软件包时会报错。需要向RPM数据库中导入位于光盘根目录下的公钥文件。
mount /dev/sr0 /mnt/
rpm --import /mnt/RPM-GPG-KEY-CentOS-7

(3)辅助选项
①--nodeps就是安装时不检查依赖关系,比如你这个rpm需要A,但是你没装A,这样你的包就装不上,用了--nodeps你就能装上了。
②--force就是强制安装,比如你装过这个rpm的版本1,如果你想装这个rpm的版本2,就需要用--force强制安装。
--force、--nodeps、-h、-v
先rpm -ivh  /mnt/Packages/perl-URI-1.60-9.el7.noarch.rpm 
rpm -ivh --nodeps /mnt/Packages/perl-URI-1.60-9.el7.noarch.rpm

2.6.解决软件包依赖关系方法

(1)安装有依赖关系的多个软件时

①被依赖的软件包需要先安装

②可同时指定多个.rpm包文件进行安装

(2)卸载有依赖关系的多个软件时

①依赖其他程序的软件包需要先卸载

②可同时指定多个软件名进行卸载

(3)忽略依赖关系

结合"-nodeps" 选项,但可能导致软件异常

三、Yum安装

3.1.配置本地yum源仓库

  mount /dev/cdrom /mnt/            ###把光盘挂载到/mnt目录下
  挂载    设备      目录或文件夹  

  注:最好是空的,原来的数据将被隐藏,一个挂载点同一时只能挂载一个设备。
   cd /etc/yum.repos.d/            ###进入yum源仓库
   mkdir repos.bak
   mv *.repo repos.bak

创建本地源

   cd /etc/yum.repos.d/
    vim local.repo
         
    [local]                                                ###仓库类别
    name=local                                        ###仓库名称
    baseurl=file:///mnt                             ###指定URL 访问路径为光盘挂载目录
    enabled=1                                         ###开启此yum源,此为默认项,可省略
    gpgcheck=0                                       ###不验证软件包的签名  
    yum clean all && yum makecache    ###删除yum缓存并更新

3.2.yum常用的操作命令


yum -y install 软件名                ###安装、升级软件包,“-y”选项表示自动确认
yum -y remove 软件名             ###卸载软件包,可自动解决其依赖关系
yum -y update 软件名              ###升级软件包
 
yum list                                   ###查询软件包列表
yum list installed                     ###查询系统中已安装的软件包
yum list available                    ###查询仓库中尚未安装的软件包
yum list updates                    ###查询可以升级版本的软件包
 
yum info 软件名                        ###查询软件包的描述信息
yum info httpd
 
yum search [all] 关键词                ###根据某个关键词来查找相关的软件包
yum search all httpd
 
yum whatprovides 命令                ###查询命令属于哪个软件包
yum whatprovides netstat
 
yum install 包名 -y --downloadonly --downloaddir=/tmp/    ###下载RPM包到指定目录

四、源代码编译安装

4.1.源代码编译概述

(1)使用源代码安装软件的优点

①获得最新的软件版本,及时修复bug

②根据用户需要,灵活定制软件功能

(2)应用场合举例

①安装较新版本的应用程序时

②当前安装的程序无法满足需要时

③需要为应用程序添加新的功能时

(3)Tarball封包

①.tar.gz和.tar.bz2格式居多

②软件素材参考: http://sourceforge.net

(4)完整性校验

①md5sum校验工具

②[root@localhost ~]# md5sum httpd-2.4.25.tar.gz
24fb8b9e36cf131d78caae864fea0f6a httpd-2.4.25.tar.gz

(5)确认源代码编译环境

①需安装支持C/C++程序语言的编译器,如:

②gCC、gCC-C++、 make.......

4.2、编译安装过程

(一)tar解包

①习惯上将软件包释放到/usr/src/目录

②解包后的源代码文件位置

/usr/src/软件名-版本号/

③示例

[root@localhost ~]# tar zxf httpd-2.4.25.tar.gz -C /usr/src/

解压源代码包,并指定释放目录

④ #yum命令安装apache 库文件以及依赖包
yum install  gcc* apr-devel* pkgconfig* libapr* pcre  pcre-devel  libtool  libxml2-devel apr-util*  -y

(二)./configure配置

①使用源码目录中的configure脚本

②执行"./configure --help"可查看帮助

③典型的配置选项

 --prefix=软件安装目录

④示例

[root@localhost ~]#cd /usr/src/httpd-2.4.25/

[root@localhost httpd-2.4.25]# ./configure --prefix=/usr/local/apache

(三)make编译与安装

①编译
执行make命令

②安装
执行make install命令

③示例

[root@localhost httpd-2.4.25]# make

[root@localhost httpd-2.4.25]# make install

(四)测试、应用、维护软件

①使用前

[root@localhost httpd-2.4.25]# vim /usr/local/apache/conf/httpd.conf

②启动Apache

[root@localhost httpd-2.4.25]# /usr/local/apache/bin/apachectl start

③运行lynx 127.0.0.1查看本机Apache运行状态

五、总结

(一)Linux应用程序基础:①应用程序与系统命令的关。②典型应用程序的目录结构。③常见的软件包封装类型。

(二)使用rpm命令查询RPM软件信息的常用选项。

(三)使用rpm命令安装、升级、卸载RPM软件包的常用给选项。

(四)yum命令安装、卸载、更新的一些常用参数。

(五)源代码编译安装基本过程。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值