Linux系统安装软件包2

1. yum更换国内源

因为Linux系统默认安装的的是国外的yum源,有时候下载速度会很慢,可以将默认的yum切换至国内,具体方法如下:

删除本地制作的yum源,并将之前备份的yum.repos.d_bak复制到该目录下;

Linux系统安装软件包2

删除CentOS-Base.repo文件,使用命令“curl -O http://mirrors.163.com/.help/CentOS7-Base-163.repo”下载‘CentOS7-Base-163.repo’;

Linux系统安装软件包2

可以使用‘yum list’命令查看所有的RPM包资源;

安装zsh包,查看是否可以下载;

Linux系统安装软件包2

若是不能确定是否是刚才安装的包起作用,可将该包重命名,查看能否安装RPM包;

Linux系统安装软件包2

可以看到报错;

将名称改回‘CentOS7-Base-163.repo’,即可正常使用;

Linux系统安装软件包2

切换国内源,还有一个命令-‘wget’,使用该命令先使用“yum install -y wget”安装wget工具。

Linux系统安装软件包2

2. yum下载RPM包

安装扩展源,使用命令“yum install -y epel-release”;

Linux系统安装软件包2

使用命令“yum list |grep epel”可以查看epel的RPM包;

Linux系统安装软件包2


仅下载RPM包,不安装,使用命令“yum install 【包名】--downloadonly”;

Linux系统安装软件包2

RPM包默认的下载位置为:/var/cache/yum/x86_64/7/,可根据源来查看具体的位置;

Linux系统安装软件包2

也可以指定下载的位置,“yum install 【包名】 --downloadonly --downloaddir=/tmp”,可在/tmp目录下找到下载的zsh-5.0.2-28.el7.x86_64.rpm;


对于已安装的RPM包,只进行下载时提示已被安装,可使用‘reinstall’来重新下载。

Linux系统安装软件包2

3. 源代码安装

安装源代码一般有三个步骤:

1)./configure:这一步可以定制功能,加上相应的选项即可。具体的选项可以通过'./configure --help'来查看。这一步会自动检测Linux系统与相关的套件是否有编译该源码包时所需要的库,因为一旦缺少某个库,就不能完成编译,只有检测通过后,才会生成Maskfile文件;

2)make:使用这个命令,会根据Maskfile文件中预设的参数进行编译,这一步其实就是gcc在工作了;

3)make install:这一步是安装步骤,用于创建相关软件的存放目录和配置文件。

这三个步骤不是对所有的源码包都一样,也就意味着,源码包的安装并没有标准的安装步骤,这就需要在源码包解压后,进入相应目录,找到相关的帮助文档(一般是以INSTALL或README命名)。

3.1 下载源码包

下载的源码包一般放到/usr/local/src/目录下

下载之前先进入到/usr/local/src/目录下,选择要下载的源码包,我这里下载的是Apache-2.4的源码包,http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.33.tar.gz;

Linux系统安装软件包2

3.2 解压源码包

因为下载的文件是‘.tar.gz’的压缩包,使用命令“tar -zxvf httpd-2.4.33.tar.gz”解压;

Linux系统安装软件包2

3.3 配置相关的选项并编译和安装

‘checking for APR... no’,是因为没有编译安装apr和apr-util以及pcre;

Linux系统安装软件包2

解决方法如下:

3.3.1 回到/usr/local/src目录下;

使用命令‘wget http://mirrors.cnnic.cn/apache/apr/apr-1.6.3.tar.gz’下载apr-1.6.3.tar.gz;

使用命令‘wget http://mirrors.cnnic.cn/apache/apr/apr-util-1.6.1.tar.bz2’下载apr-util-1.6.1.tar.bz2;

因为没找到对应的pcre的RPM包,推荐去官网http://jaist.dl.sourceforge.net/project/pcre/pcre/,找到最新版的.tar.gz进行下载,然后上传到/usr/local/src目录下;

3.3.2 使用命令'tar -zxvf apr-1.6.3.tar.gz'、'tar -jxvf apr-util-1.6.1.tar.bz2'、'tar -zvxf pcre-8.42.tar.gz' 解压;

3.3.3 分别编译和安装apr和apr-util以及pcre

1)编译安装apr:

进入‘cd /usr/local/src/apr-1.6.3’;

配置选项:./configure --prefix=/usr/local/apr

编译:‘make’  ;安装: ‘make install’;

2)编译安装apr-util:

进入‘cd /usr/local/src/apr-util-1.6.1’;

执行命令:yum install -y expat-devel    不安装expat-devel,apr-util无法进行编译(make执行出错);

配置选项:./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/      

编译和安装:‘make’、‘make install’;

3)编译安装pcre:

进入‘cd /usr/local/src/pcre-8.42’;

执行命令:yum -y install gcc-c++    不安装gcc-c++,pcre无法进行编译

配置选项:./configure --prefix=/usr/local/pcre/

编译和安装:‘make’、‘make install’;


编译和安装成功apr和apr-util以及pcre后,切换至‘cd /usr/local/src/httpd-2.4.33’目录下;

执行配置选项:./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre/

编译和安装:‘make’、‘make install’;

其中,执行完命令后,可使用命令‘echo $?’查看上一条命令是否正确执行,正确返回值0,错误返回值1;


安装成功Apache-2.4的源码包后,会在/usr/local/apache2/目录下增加很多目录。

Linux系统安装软件包2