0330课的预习任务+课堂笔记

7.1 安装

软件包的三种方法


三种方法:

·rpm工具

·yum工具

·源码包


难度:源码包 > rpm工具 > yum工具


7.2 rpm包介绍

·设置光驱挂载

1.png

在虚拟机光盘位置,设置光盘连接后,进入系统中挂载光驱


[root@arslinux-01 ~]# mount /dev/cdrom /mnt
mount: /dev/sr0 写保护,将以只读方式挂载
[root@arslinux-01 ~]# cd /mnt/
[root@arslinux-01 mnt]# ls
CentOS_BuildTag  EULA  images    LiveOS    repodata              RPM-GPG-KEY-CentOS-Testing-7
EFI              GPL   isolinux  Packages  RPM-GPG-KEY-CentOS-7  TRANS.TBL
[root@arslinux-01 mnt]# cd Packages/
[root@arslinux-01 Packages]#ls
内容过多,不详细展示

例如:tdb-tools-1.3.12-2.el7.x86_64.rpm

包名:tdb-tools

版本号:1.3.12

发布版本号:2.el7 7是CentOS7,如果是6就是CentOS6

平台:x86_64 CentOS7之后只有64位


7.3 rpm工具用法

rpm包在 /mnt/Packages 下,可以先 cd 到 Packages 目录下


rpm -ivh rpm包文件         安装rpm包 i=install v=visual h=human

[root@arslinux-01 Packages]# rpm -ivh zsh-5.0.2-31.el7.x86_64.rpm
准备中...                          ################################# [100%]
正在升级/安装...
1:zsh-5.0.2-31.el7                 ################################# [100%]


rpm -Uvh rpm包文件         升级rpm包

[root@arslinux-01 Packages]# rpm -Uvh zsh-5.0.2-31.el7.x86_64.rpm


rpm -e rpm包名         卸载rpm包

[root@arslinux-01 Packages]# rpm -e ppp

不显示错误就是正常卸载完成,显示错误就不正常,一般是依赖关系的问题

2.png

要按顺序依次卸载才行,最后才能卸载ppp


rpm -qa         查询安装过的包

[root@arslinux-01 Packages]# rpm -qa
firewalld-filesystem-0.5.3-5.el7.noarch
grub2-common-2.02-0.76.el7.centos.noarch
内容过多,不详细列出


rpm -q 包名         查询指定包是否安装

[root@arslinux-01 Packages]# rpm -q gpgme
gpgme-1.3.2-5.el7.x86_64
[root@arslinux-01 Packages]# rpm -q gpgme1
未安装软件包 gpgme1


rpm -qi 包名         查询指定包信息(i=infomation)

[root@arslinux-01 Packages]# rpm -qi vim-enhanced
Name        : vim-enhanced
Epoch       : 2
Version     : 7.4.160
Release     : 5.el7
Architecture: x86_64
Install Date: 2019年03月13日 星期三 22时15分45秒
Group       : Applications/Editors
Size        : 2296666
License     : Vim
Signature   : RSA/SHA256, 2018年11月12日 星期一 22时48分44秒, Key ID 24c6a8a7f4a80eb5
Source RPM  : vim-7.4.160-5.el7.src.rpm
Build Date  : 2018年10月31日 星期三 03时57分29秒
Build Host  : x86-01.bsys.centos.org
Relocations : (not relocatable)
Packager    : CentOS BuildSystem <http://bugs.centos.org>
Vendor      : CentOS
URL         : http://www.vim.org/
Summary     : A version of the VIM editor which includes recent enhancements
Description :
VIM (VIsual editor iMproved) is an updated and improved version of the
vi editor.  Vi was the first real screen-based editor for UNIX, and is
still very popular.  VIM improves on vi by adding new features:
multiple windows, multi-level undo, block highlighting and more.  The
vim-enhanced package contains a version of VIM with extra, recently
introduced features like Python and Perl interpreters.
Install the vim-enhanced package if you'd like to use a version of the
VIM editor which includes recently added enhancements like
interpreters for the Python and Perl scripting languages.  You'll also
need to install the vim-common package.


rpm -ql 包名         列出包具体安装的文件

[root@arslinux-01 Packages]# rpm -ql vim-enhanced
/etc/profile.d/vim.csh
/etc/profile.d/vim.sh
/usr/bin/rvim
/usr/bin/vim
/usr/bin/vimdiff
/usr/bin/vimtutor


rpm -qf 文件绝对路径         查看一个文件是由哪个包安装(q询问query,f文件file)

[root@arslinux-01 Packages]# rpm -qf /usr/bin/ls
coreutils-8.22-23.el7.x86_64
[root@arslinux-01 Packages]# rpm -qf /usr/bin/vim
vim-enhanced-7.4.160-5.el7.x86_64



rpm -qf `which 命令`         查看某个命令时由哪个包安装的(不能是有alias的命令)

[root@arslinux-01 Packages]# rpm -qf `which cd`
bash-4.2.46-31.el7.x86_64

用反引号将which命令括起来


7.4 yum工具用法


安装rpm包时,很可能需要解决依赖关系,不是很方便,那么使用yum安装就很方便了

[root@arslinux-01 Packages]# rpm -ivh texlive-2012-43.20130427_r30134.el7.x86_64.rpm
错误:依赖检测失败:
    texlive-scheme-basic 被 texlive-2:2012-43.20130427_r30134.el7.x86_64 需要
    texlive-collection-latexrecommended 被 texlive-2:2012-43.20130427_r30134.el7.x86_64 需要
    tex-kpathsea 被 texlive-2:2012-43.20130427_r30134.el7.x86_64 需要
    tex-tetex 被 texlive-2:2012-43.20130427_r30134.el7.x86_64 需要
    yum可以自动解决依赖关系,可以帮助自动安装好


yum install ( -y ) 包名         yum 安装包

[root@arslinux-01 Packages]# yum install -y texlive


yum list         查看可以用的rpm包

[root@arslinux-01 Packages]# yum list


yum配置文件:/etc/yum.repos.d/

[root@arslinux-01 Packages]# ls /etc/yum.repos.d/
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo


yum search 关键字         搜索相关rpm包

[root@arslinux-01 Packages]# yum search vim
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.cqu.edu.cn
* extras: mirrors.cqu.edu.cn
* updates: mirrors.cqu.edu.cn
================================================ N/S matched: vim ================================================
protobuf-vim.x86_64 : Vim syntax highlighting for Google Protocol Buffers descriptions
vim-X11.x86_64 : The VIM version of the vi editor for the X Window System
vim-common.x86_64 : The common files needed by any version of the VIM editor
vim-enhanced.x86_64 : A version of the VIM editor which includes recent enhancements
vim-filesystem.x86_64 : VIM filesystem layout
vim-minimal.x86_64 : A minimal version of the VIM editor

名称和简介匹配 only,使用“search all”试试。


yum list | grep '关键字'         精准搜索rpm包

[root@arslinux-01 Packages]# yum list | grep vim
vim-common.x86_64                          2:7.4.160-5.el7             @base
vim-enhanced.x86_64                        2:7.4.160-5.el7             @base
vim-filesystem.x86_64                      2:7.4.160-5.el7             @base
vim-minimal.x86_64                         2:7.4.160-5.el7             @anaconda
protobuf-vim.x86_64                        2.5.0-8.el7                 base
vim-X11.x86_64                             2:7.4.160-5.el7             base


yum grouplist         查看可用的组

[root@arslinux-01 Packages]# yum grouplist
已加载插件:fastestmirror
没有安装组信息文件
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
* base: mirrors.cqu.edu.cn
* extras: mirrors.cqu.edu.cn
* updates: mirrors.cqu.edu.cn
可用的环境分组:
    最小安装
    基础设施服务器
    计算节点
    文件及打印服务器
    基本网页服务器
    虚拟化主机
    带 GUI 的服务器
    GNOME 桌面
    KDE Plasma Workspaces
    开发及生成工作站
可用组:
    传统 UNIX 兼容性
    兼容性程序库
    图形管理工具
    安全性工具
    开发工具
    控制台互联网工具
    智能卡支持
    科学记数法支持
    系统管理
    系统管理工具
完成

(这些都是相应的rpm包的集合,根据需要安装对应rpm包合集,安装系统时,我们选择的时最小安装)


yum groupinstall 组名        安装组(rpm包合集)

[root@arslinux-01 Packages]#LANG=en
[root@arslinux-01 Packages]# yum groupinstall 'Virtualization Host'

3.png

可看出,有68个包要安装,有172个被依赖的,5个要升级的


yum remove [ -y ] 包名         卸载包

[root@arslinux-01 Packages]# yum remove texlive
已加载插件:fastestmirror
正在解决依赖关系
--> 正在检查事务
---> 软件包 texlive.x86_64.2.2012-43.20130427_r30134.el7 将被 删除
--> 解决依赖关系完成

依赖关系解决

==================================================================================================================
Package               架构                 版本                                        源                   大小
==================================================================================================================
正在删除:
texlive               x86_64               2:2012-43.20130427_r30134.el7               @base               0.0

事务概要
==================================================================================================================
移除  1 软件包

安装大小:0
是否继续?[y/N]:n
Exiting on user command
您的事务已保存,请执行:
yum load-transaction /tmp/yum_save_tx.2019-03-29.22-15.eWstun.yumtx 重新执行该事务


yum update [ -y ] 包名         升级包 ##如果不加包名,会把所有rpm包升级,甚至是系统、内核

[root@arslinux-01 Packages]# yum update texlive
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
No packages marked for update



yum provides ‘/*/命令’         搜索一个命令所用的包 ##命令没安装的话,可以用

[root@arslinux-01 Packages]# yum provides '/*/vim'
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.cqu.edu.cn
* extras: mirrors.cqu.edu.cn
* updates: mirrors.cqu.edu.cn
cmake-2.8.12.2-2.el7.x86_64 : Cross-platform make system
源    :base
匹配来源:
文件名    :/usr/share/cmake/editors/vim

git-1.8.3.1-19.el7.x86_64 : Fast Version Control System
源    :base
匹配来源:
文件名    :/usr/share/doc/git-1.8.3.1/contrib/vim

git-1.8.3.1-20.el7.x86_64 : Fast Version Control System
源    :updates
匹配来源:
文件名    :/usr/share/doc/git-1.8.3.1/contrib/vim

2:vim-common-7.4.160-5.el7.x86_64 : The common files needed by any version of the VIM editor
源    :base
匹配来源:
文件名    :/usr/share/vim

2:vim-enhanced-7.4.160-5.el7.x86_64 : A version of the VIM editor which includes recent enhancements
源    :base
匹配来源:
文件名    :/usr/bin/vim

2:vim-enhanced-7.4.160-5.el7.x86_64 : A version of the VIM editor which includes recent enhancements
源    :@base
匹配来源:
文件名    :/usr/bin/vim


7.5 yum搭建本地仓库

不能联网的情况下,可以手动搭建yum本地仓库


挂载镜像到 /mnt 下

[root@arslinux-01 Packages]# mount /dev/cdrom /mnt



先给原 yum 仓库备份

[root@arslinux-01 Packages]# cp -r /etc/yum.repos.d/ /etc/yum.repos.d.bak


清空 yum 仓库

[root@arslinux-01 Packages]# cd /etc/yum.repos.d
[root@arslinux-01 yum.repos.d]# rm -rf *.repo



创建新的 yum 源

[root@arslinux-01 yum.repos.d]# vim dvd.repo
[dvd]
name=install dvd
baseurl=file:///mnt
enable=1
gpgcheck=0

[dvd]就是仓库名称,enable指源是否可用,gpgcheck是否检测,这里不用检测


yum clean all        清除缓存

[root@arslinux-01 yum.repos.d]# yum clean all
已加载插件:fastestmirror
正在清理软件源: dvd
Cleaning up list of fastest mirrors
Other repos take up 141 M of disk space (use --verbose for details)



yum list | less        查看可用的包,加上less可以翻屏看  带@的都是安装过的

[root@arslinux-01 yum.repos.d]# yum list | less

4.png

[root@arslinux-01 yum.repos.d]# yum install GConf2
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 GConf2.x86_64.0.3.2.6-8.el7 将被 安装
--> 正在处理依赖关系 /usr/bin/killall,它被软件包 GConf2-3.2.6-8.el7.x86_64 需要
--> 正在检查事务
---> 软件包 psmisc.x86_64.0.22.20-15.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

==================================================================================================================
Package                   架构                      版本                            源                      大小
==================================================================================================================
正在安装:
GConf2                    x86_64                    3.2.6-8.el7                     dvd                    1.0 M
为依赖而安装:
psmisc 
                   x86_64                    22.20-15.el7                    dvd                    141 k
事务概要

==================================================================================================================
安装  1 软件包 (+1 依赖软件包)

总下载量:1.1 M
安装大小:6.8 M
Is this ok [y/d/N]:  y
Downloading packages:
------------------------------------------------------------------------------------------------------------------
总计                                                                               46 MB/s | 1.1 MB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装    : psmisc-22.20-15.el7.x86_64                                                                    1/2
正在安装    : GConf2-3.2.6-8.el7.x86_64                                                                     2/2
验证中      : psmisc-22.20-15.el7.x86_64                                                                    1/2
验证中      : GConf2-3.2.6-8.el7.x86_64  
                                                                   2/2
已安装:
GConf2.x86_64 0:3.2.6-8.el7
作为依赖被安装:
psmisc.x86_64 0:22.20-15.el7


7.6 yum更换国内源


系统自带的源是国外网站,可能不好使用,比如网速较慢等,这样可以更换国内的源


·如果自建了yum源,那么先恢复默认的源

[root@arslinux-01 etc]# rm 0f yum.
yum.conf         yum.repos.d/     yum.repos.d.bak/
[root@arslinux-01 etc]# rm -f yum.repos.d/dvd.repo
rm:是否删除普通文件 "yum.repos.d/dvd.repo"?y
[root@arslinux-01 etc]# ls yum.repos.d
[root@arslinux-01 etc]# cp yum.repos.d.bak/* yum.repos.d/
[root@arslinux-01 etc]# ls yum.repos.d
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo
[root@arslinux-01 yum.repos.d]# wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
[root@arslinux-01 yum.repos.d]# curl -O  http://mirrors.163.com/.help/CentOS7-Base-163.repo
[root@arslinux-01 yum.repos.d]# ls
CentOS7-Base-163.repo  CentOS-Base.repo.bak  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-Base.repo       CentOS-CR.repo        CentOS-fasttrack.repo  CentOS-Sources.repo
[root@arslinux-01 yum.repos.d]# yum list

5.png

[root@arslinux-01 yum.repos.d]# rm CentOS-Base.repo
[root@arslinux-01 yum.repos.d]# yum repolist all

6.png

[root@arslinux-01 yum.repos.d]# yum clean all
已加载插件:fastestmirror
正在清理软件源: base extras updates
Cleaning up list of fastest mirrors
Other repos take up 18 M of disk space (use --verbose for details)

已经更换了163的源


7.7 yum下载rpm包


安装扩展源 epel


yum install -y epel-release         安装扩展源

[root@arslinux-01 yum.repos.d]# ls
CentOS7-Base-163.repo  CentOS-CR.repo         CentOS-fasttrack.repo  CentOS-Sources.repo
CentOS-Debuginfo.repo  CentOS-Media.repo      CentOS-Vault.repo
[root@arslinux-01 yum.repos.d]# yum install -y epel-release
[root@arslinux-01 yum.repos.d]# ls
CentOS7-Base-163.repo  CentOS-CR.repo         CentOS-fasttrack.repo  CentOS-Sources.repo  epel.repo
CentOS-Debuginfo.repo  CentOS-Media.repo      CentOS-Vault.repo    epel-testing.repo

安装之后,多出了 epel.repo 和 epel-testing.reop 两个

[root@arslinux-01 yum.repos.d]# yum list | grep epel


yum 下载 rpm 包

先确认要下载的包是不是已经安装过了


yum install -y 包名 --downloadonly         下载rpm包

[root@arslinux-01 yum.repos.d]# yum install -y zsh --downloadonly
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* epel: sg.fedora.ipserverone.com
正在解决依赖关系
--> 正在检查事务
---> 软件包 zsh.x86_64.0.5.0.2-31.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

==================================================================================================================
Package                架构                      版本                              源                       大小
==================================================================================================================
正在安装:
zsh     
               x86_64                    5.0.2-31.el7                      base                    2.4 M
事务概要
==================================================================================================================
安装  1 软件包

总下载量:2.4 M
安装大小:5.6 M
Background downloading packages, then exiting:
zsh-5.0.2-31.el7.x86_64.rpm                                                                | 2.4 MB  00:00:01
exiting because "Download Only" specified
[root@arslinux-01 yum.repos.d]# rpm -q zsh
未安装软件包 zsh
[root@arslinux-01 yum.repos.d]# ls /var/cache/yum/x86_64/7/base/packages/
zsh-5.0.2-31.el7.x86_64.rpm

CentOS 7 下载 rpm 包默认放到 /var/cache/yum/x86_64/7 下,根据源的不同在不同目录下


·下载rpm包到指定位置

yum install -y 包名 --downloadonly --downloaddir=目标位置绝对路径

[root@arslinux-01 yum.repos.d]# yum install -y zsh --downloadonly --downloaddir=/tmp/
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* epel: mirrors.tuna.tsinghua.edu.cn
正在解决依赖关系
--> 正在检查事务
---> 软件包 zsh.x86_64.0.5.0.2-31.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

==================================================================================================================
Package                架构                      版本                              源                       大小
==================================================================================================================
正在安装:
zsh    
                x86_64                    5.0.2-31.el7                      base                    2.4 M
事务概要
==================================================================================================================
安装  1 软件包

总下载量:2.4 M
安装大小:5.6 M
Background downloading packages, then exiting:
exiting because "Download Only" specified
[root@arslinux-01 yum.repos.d]# ls /tmp/ | grep zsh
zsh-5.0.2-31.el7.x86_64.rpm



·下载已经安装过的包

安装过的包,在用上方方法下载时会提示不做处理

[root@arslinux-01 yum.repos.d]# yum install -y vim-enhanced --downloadonly --downloaddir=/tmp/
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* epel: mirrors.tuna.tsinghua.edu.cn
软件包 2:vim-enhanced-7.4.160-5.el7.x86_64 已安装并且是最新版本
无须任何处理

那么可以用 yum reinstall 来下载


·下载安装过的包到指定位置

yum reinstall -y 包名 --downloadonly --downloaddir=目标位置绝对路径

[root@arslinux-01 yum.repos.d]# yum reinstall -y vim-enhanced --downloadonly --downloaddir=/tmp/
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* epel: ftp.cuhk.edu.hk
正在解决依赖关系
--> 正在检查事务
---> 软件包 vim-enhanced.x86_64.2.7.4.160-5.el7 将被 已重新安装
--> 解决依赖关系完成

依赖关系解决

==================================================================================================================
Package                      架构                   版本                              源                    大小
==================================================================================================================
重新安装:
vim-enhanced                 x86_64                 2:7.4.160-5.el7                   base                 1.0 M

事务概要
==================================================================================================================
重新安装  1 软件包

总下载量:1.0 M
安装大小:2.2 M
Background downloading packages, then exiting:
vim-enhanced-7.4.160-5.el7.x86_64.rpm                                                      | 1.0 MB  00:00:00
exiting because "Download Only" specified

[root@arslinux-01 yum.repos.d]# ls /tmp/ | grep vim
vim-enhanced-7.4.160-5.el7.x86_64.rpm


7.8/7.9 源码包安装


下载源码包(源码包放到 /usr/local/src 下)

[root@arslinux-01 yum.repos.d]# cd /usr/local/src/
[root@arslinux-01 src]# wget https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.38.tar.gz
--2019-03-30 19:41:20--  https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.38.tar.gz
正在解析主机 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)... 101.6.8.193, 2402:f000:1:408:8100::1
正在连接 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)|101.6.8.193|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:9187294 (8.8M) [application/x-gzip]
正在保存至: “httpd-2.4.38.tar.gz”
100%[========================================================================>] 9,187,294   3.57MB/s 用时 2.5s
2019-03-30 19:41:23 (3.57 MB/s) - 已保存 “httpd-2.4.38.tar.gz” [9187294/9187294])



解压源码包

[root@arslinux-01 src]# tar -zxvf httpd-2.4.38.tar.gz
[root@arslinux-01 src]# ls
httpd-2.4.38  httpd-2.4.38.tar.gz
[root@arslinux-01 src]# cd httpd-2.4.38
[root@arslinux-01 httpd-2.4.38]# ls
ABOUT_APACHE     BuildAll.dsp    configure.in  include         LICENSE        README            test
acinclude.m4     BuildBin.dsp    docs          INSTALL         Makefile.in    README.cmake      VERSIONING
Apache-apr2.dsw  buildconf       emacs-style   InstallBin.dsp  Makefile.win   README.platforms
Apache.dsw       CHANGES         httpd.dep     LAYOUT          modules        ROADMAP
apache_probes.d  CMakeLists.txt  httpd.dsp     libhttpd.dep    NOTICE         server
ap.d             config.layout   httpd.mak     libhttpd.dsp    NWGNUmakefile  srclib
build            configure       httpd.spec    libhttpd.mak    os             support


安装方法

查看 INSTALL 文档中的安装步骤

[root@arslinux-01 httpd-2.4.38]# more INSTALL
    $ ./configure --prefix=路径(源码包安装完成后,所有目录会统一在一个目录中)
    $ make
    $ make install
    $ 路径/bin/apachectl start


安装源码包

1.检测

./configure

                --prefix 指定安装路径

2.编译和安装

make && make install

[root@arslinux-01 src]# cd httpd-2.4.38/
[root@arslinux-01 httpd-2.4.38]# ./configure --prefix=/usr/local/apache2

7.png

echo $? 查看上一条命令是否运行成功,成功则为 0

这里检测不成功,是 APR 没有安装,我们先去安装 APR

[root@arslinux-01 src]# wget http://mirrors.cnnic.cn/apache/apr/apr-1.6.5.tar.gz
[root@arslinux-01 src]# tar -zxvf apr-1.6.5.tar.gz
[root@arslinux-01 src]# cd apr-1.6.5
[root@arslinux-01 apr-1.6.5]# ./configure --prifix=/usr/local/apr
configure: error: unrecognized option: `--prifix=/usr/local/apr'
Try `./configure --help' for more information
[root@arslinux-01 apr-1.6.5]# ./configure --prefix=/usr/local/apr

8.png

gcc 没有安装,先装gcc

[root@arslinux-01 apr-1.6.5]# yum install -y gcc

再次运行安装 apr

[root@arslinux-01 apr-1.6.5]# ./configure --prefix=/usr/local/apr
[root@arslinux-01 apr-1.6.5]# echo $?
0
[root@arslinux-01 apr-1.6.5]# make && make install
[root@arslinux-01 apr-1.6.5]# echo $?
0
[root@arslinux-01 httpd-2.4.38]# ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr

9.png


下载安装 apr-util

[root@arslinux-01 src]# wget http://mirrors.cnnic.cn/apache/apr/apr-util-1.6.1.tar.gz
--2019-03-30 20:18:12--  http://mirrors.cnnic.cn/apache/apr/apr-util-1.6.1.tar.gz
正在解析主机 mirrors.cnnic.cn (mirrors.cnnic.cn)... 101.6.8.193, 2402:f000:1:408:8100::1
正在连接 mirrors.cnnic.cn (mirrors.cnnic.cn)|101.6.8.193|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:554301 (541K) [application/x-gzip]
正在保存至: “apr-util-1.6.1.tar.gz”

100%[========================================================================>] 554,301     1018KB/s 用时 0.5s

2019-03-30 20:18:13 (1018 KB/s) - 已保存 “apr-util-1.6.1.tar.gz” [554301/554301])
[root@arslinux-01 src]# ls
apr-1.6.5  apr-1.6.5.tar.gz  apr-util-1.6.1.tar.gz  httpd-2.4.38  httpd-2.4.38.tar.gz
[root@arslinux-01 src]# tar -zxvf apr-util-1.6.1.tar.gz
[root@arslinux-01 src]# ls
apr-1.6.5  apr-1.6.5.tar.gz  apr-util-1.6.1  apr-util-1.6.1.tar.gz  httpd-2.4.38  httpd-2.4.38.tar.gz
[root@arslinux-01 src]# cd apr-util-1.6.1
[root@arslinux-01 apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
[root@arslinux-01 apr-util-1.6.1]# echo $?
0
[root@arslinux-01 apr-util-1.6.1]# make && make install

10.png

查看资料,这是由于缺少 expat-devel 包造成的

[root@arslinux-01 apr-util-1.6.1]# yum install -y  expat-devel
[root@arslinux-01 apr-util-1.6.1]# echo $?
0
[root@arslinux-01 apr-util-1.6.1]# make && make install
[root@arslinux-01 apr-util-1.6.1]# echo $?
0
[root@arslinux-01 apr-util-1.6.1]# cd ../httpd-2.4.38
[root@arslinux-01 httpd-2.4.38]# ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/

11.png

[root@arslinux-01 httpd-2.4.38]# yum install pcre-devel


装完后再重新检测

[root@arslinux-01 httpd-2.4.38]# ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/
[root@arslinux-01 httpd-2.4.38]# echo $?
0
[root@arslinux-01 httpd-2.4.38]# make && make install

112.png


解决方法:

查了一些资料,删除所有编译好目录和文件,重新解压源码包,分别复制 apr-1.6,.5 和 apr-util-1.6.1 到 /usr/local/src/httpd-2.4.38/srclib/apr 和 /usr/local/src/httpd-2.4.38/srclib/apr-util 下

然后再重新一次源码包安装 apr 、 apr-util 、 httpd

[root@arslinux-01 src]# rm -rf apr-1.6.5
[root@arslinux-01 src]# rm -rf apr-util-1.6.1
[root@arslinux-01 src]# rm -rf httpd-2.4.38
[root@arslinux-01 src]# cd ..
[root@arslinux-01 local]# rm -rf apr
[root@arslinux-01 local]# rm -rf apr-util
[root@arslinux-01 local]# cd src/
[root@arslinux-01 src]# tar -zxvf apr-1.6.5.tar.gz
[root@arslinux-01 src]# tar -zxvf apr-util-1.6.1.tar.gz
[root@arslinux-01 src]# tar -zxvf httpd-2.4.38.tar.gz
[root@arslinux-01 src]# cp -r apr-1.6.5 /usr/local/src/httpd-2.4.38/srclib/apr
[root@arslinux-01 src]# cp -r apr-util-1.6.1 /usr/local/src/httpd-2.4.38/srclib/apr-util
[root@arslinux-01 src]# cd apr-1.6.5
[root@arslinux-01 apr-1.6.5]# ./configure --prefix=/usr/local/apr
[root@arslinux-01 apr-1.6.5]# make && make install
[root@arslinux-01 apr-1.6.5]# cd ../apr-util-1.6.1/
[root@arslinux-01 apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
[root@arslinux-01 apr-util-1.6.1]# make && make install
[root@arslinux-01 apr-util-1.6.1]# cd ../httpd-2.4.38
[root@arslinux-01 httpd-2.4.38]# ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/
[root@arslinux-01 httpd-2.4.38]# make && make install
[root@arslinux-01 httpd-2.4.38]# ls /usr/local/apache2/
bin  build  cgi-bin  conf  error  htdocs  icons  include  logs  man  manual  modules

没有报错,安装成功


扩展

1. yum保留已经安装过的包

http://www.360doc.com/content/11/0218/15/4171006_94080041.shtml

2. 搭建局域网yum源 https://blog.csdn.net/miouqi/article/details/73159297




0330课堂笔记


1.yum保留已经安装过的包

http://www.360doc.com/content/11/0218/15/4171006_94080041.shtml

安装yum-tuils 使用 yumdownloader

yum localinstall rpm包


2.搭建局域网yum源 http://blog.lishiming.net/?p=500


猜你喜欢

转载自blog.51cto.com/11530642/2371846