18.Linux程序包安装及管理方式——rpm,yum

1.        源码包:

源码包能直接看到源码,安装时需要人为手工设置包装位置,一般是/usr/local/软件名/。源码包的升级版--脚本安装包,人为的改动源码使其有安装界面。

优点:1)开源,如果有足够的能力,可以直接修改源代码。

           2)安装时可以自由选择所需的功能。

           3)软件是编译安装,所以更加适合自己的系统,更加稳定效率也更高。

           4 )卸载方便,直接删了你安装的目录。

缺点:1)安装步骤较多,尤其安装较大的全歼集合时,容易出现拼写错误。

           2)编译时间过长,比二进制安装时间长。

           3)因为是编译安装,安装过程中一旦报错,新手很难解决。

2.        二进制包:

主要包括centos中的rpm包。rpm包有默认安装位置。/etc/配置文件安装目录;/usr/bin/可执行的命令安装目录;/usr/lib/程序所使用的函数库保存位置;/usr/share/doc/基本的软件使用手册保存位置;/usr/share/man/帮助文件保存位置。

rpm  -i         安装包

        -v        提供详细的输出

        -h        打印hash标志作为包安装

优点:1)包管理系统简单,只通过几个命令就可以实现包的安装,升级,查询和卸载。

           2)安装速度比源码包快很多。

缺点:CentOS-6.8-x86_64-bin-DVD1.iso

            1)已经经过编译了,看不到源代码。

             2)功能选择不如源代码包灵活。

             3)安装过程中有很多依赖的包,依赖性不好解决。

3.        yum安装方式:

基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次性安装所有以来的软体包。

yum管理是从指定的服务器(网络yum源)下载,所有必须要有网络或者自己手动配置一个本地yum源(不需要网络),最关键的是yum能帮我们解决依赖性关系。

(1)网络yum源

#安装好linux系统后在/etc/yum.repos.d/目录中:

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ll
total 40
-rw-r--r--. 1 root root 1664 Oct 23  2020 CentOS-Base.repo
-rw-r--r--. 1 root root 1309 Oct 23  2020 CentOS-CR.repo
-rw-r--r--. 1 root root  649 Oct 23  2020 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root  314 Oct 23  2020 CentOS-fasttrack.repo
-rw-r--r--. 1 root root  630 Oct 23  2020 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 Oct 23  2020 CentOS-Sources.repo
-rw-r--r--. 1 root root 8515 Oct 23  2020 CentOS-Vault.repo
-rw-r--r--. 1 root root  616 Oct 23  2020 CentOS-x86_64-kernel.repo

1)一般以.repo结尾的文件都是yum源,如果可以联网,我们可以直接使用CentOS-Base.repo为默认yum源

2)vi查看:

18.Linux程序包安装及管理方式——rpm,yum_第1张图片 [base]:yum源名称,名称一定要在[ ]中

name:yum源说明

baseurl:yum源服务器的地址,这里默认为是CentOS官方的yum源服务器,一般情况下我们使用                 国内站点。

gpgcheck:是否要检验数字证书,1表示校验,0表示不校验

gpgkey:数字证书保存位置

(2)本地yum源(使用光盘):

适用于不一定有网络环境,而且网络yum源也受到宽带的限制,在安装的时候会比较慢,所以一般使用本地的yum源。

本地yum源搭建的步骤:以虚拟机为例:

1)挂载光盘:挂载光盘的时候一定要确认虚拟机的光驱设备是连接的状态。

[root@localhost ~]# mount /dev/sr0 /media
mount: /dev/sr0 is write-protected, mounting read-only

18.Linux程序包安装及管理方式——rpm,yum_第2张图片

 2)将默认的网络yum源备份 创建文件夹bak

[root@localhost yum.repos.d]# mkdir bak
[root@localhost yum.repos.d]# mv CentOS-* /etc/yum.repos.d/bak
[root@localhost yum.repos.d]# ll
total 0
drwxr-xr-x. 2 root root 220 Jul 31 14:23 bak

3)新建光盘yum源文件

vi yum.repo        #添加如下内容:

[Centos]

name=centos

baseurl=file:///media        #在指定服务器地址时,因为是本地文件所以用file,在这里一定要注意                                               三 个/,其中两个是标准格式,第三个是目录路径 /media

gpgcheck=0

enabled=1

[Centos]
name=centos
baseurl=file:///media
gpgcheck=0
enabled=1

4)清空历史缓存并且创建新缓存:

yum clean all                #清空历史缓存

yum makecache            #创建新缓存

[root@localhost yum.repos.d]# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: Centos
Cleaning up list of fastest mirrors
Other repos take up 145 M of disk space (use --verbose for details)
[root@localhost yum.repos.d]# yum makecache
Loaded plugins: fastestmirror
Determining fastest mirrors
Centos                                                   | 3.6 kB     00:00
(1/4): Centos/group_gz                                     | 153 kB   00:00
(2/4): Centos/filelists_db                                 | 3.3 MB   00:00
(3/4): Centos/primary_db                                   | 3.3 MB   00:00
(4/4): Centos/other_db                                     | 1.3 MB   00:00
 
元数据缓存已建立

4.        yum相关命令:

(1)显示配置的仓库

yum repolist all         显示所有

yum repolist enable        显示可以

(2)显示所有软件包

yum list 或者yum list all

yum list |grep 包名

(3)卸载

yum remove 包名

(4)创建和清理缓存

yum clean all                清理缓存

yum makecache            构建缓存

5.源码安装方式:apache为例

(1)安装准备(即搭建环境)

yum install gcc gcc-c++ gcc-g77

(2)下载源码包

网络下载或者上传已经下载好的压缩包,建议将压缩包和解压后的文件保存在指定目录。

(3)安装源码包

将源码包解压至指定位置后,进入操作。

1)编译安装软件程序包源码编译安装三步走:./configure        make        make install

./configure        指定安装路径,例如 --prefix=/usr/local/apache

                          和其他软件关联,例如 --with-apr

                           检查安装环境,例如是否有编译器gcc,是否满足软件的依赖需求

最终生成:Makefile

make clean           清理掉以前编译后产生的 *.o 目标文件

make                    按Makefile文件编译,可以使用 -j 2 指定两颗CPU编译,优化编译器参数

make install           按Makefile定义的文件路径安装

2)安装完成后启动服务

/usr/local/apache/bin/apachectl start        启动服务

/usr/local/apache/bin/apachectl stop        停止服务

ps -ef |grep httpd                                       查看

补充:查看虚拟机的防火墙状态        systemctl status firewalld

           关闭防火墙                              systemctl stop firewalld

            开启防火墙                              systemctl start firewalld

实操例子:

   17  yum install bzip2
   18  tar -jxf httpd-2.4.54.tar.bz2
   19  ll
   20  mv httpd-2.4.54 /usr/local/src/
   21  ll
   22  cd /usr/local/src/
   23  ll
   24  cd httpd-2.4.54/
   25  ./configure --prefix=/usr/local/apache
   26  cd
   27  ll
   28  tar -zxf apr-1.5.2.tar.gz -C /usr/local/src/
   29  ll
   30  tar -zxf apr-util-1.3.12.tar.gz -C /usr/local/src/
   31  cd /usr/local/src/
   32  ll
   33  cd apr-1.5.2/
   34  ./configure --prefix=/usr/local/apr
   35  cd
   36  yum install gcc gcc-c++ gcc-g77
   37  cd /usr/local/src/
   38  ll
   39  cd apr-1.5.2/
   40  make clean
   41  ./configure --prefix=/usr/local/apr
   42  make
   43  make install
   44  cd ..
   45  cd apr-util-1.3.12/
   46  ./configure --prefix=/usr/local/apr-util
   47  make clean
   48  ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
   49  make
   50  make install
   51  cd ..
   52  cd httpd-2.4.54/
   53  make clean
   54  ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
   55  cd ..
   56  cd
   57  ll
   58  unzip -r pcre-8.10.zip
   59  cd
   60  yum install unzip
   61  unzip -r pcre-8.10.zip
   62  unzip pcre-8.10.zip -d /usr/local/src/
   63  ll
   64  cd /usr/local/src/
   65  ll
   66  cd pcre-8.10/
   67  ./configure --prefix=/usr/local/pcre
   68  make
   69  make install\
   70  make install
   71  cd ..
   72  cd httpd-2.4.54/
   73  make clean
   74  ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
   75  cd ..
   76  cd pcre-8.10/
   77  make clean
   78  ./configure
   79  make
   80  make install
   81  make checkinstall
   82  cd ..
   83  cd httpd-2.4.54/
   84  make distclean
   85  ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
   86  make
   87  make install
   88  cd ..
   89  ll
   90  cd apache/
   91  ll
   92  cd bin/
   93  ll
   94  cd apachectl
   95  ./apachectl
   96  systemctl status firewalld
   97  systemctl stop firewalld


 

你可能感兴趣的:(linux,服务器,centos,apache)