说明:在Linux CentOS系统中,软件的管理方式有三种:rpm、yum、编译方式。

一、rpm

优点:对于软件包的操作比较简单,通过简单指令即可操作

缺点:

  ①安装时需要自行下载软件包

  ②安装、卸载软件时需要考虑到依赖关系

  ③软件的自定义性比较差,不适合有特殊需求的场景

语法

①查询

  #rpmqa 关键词 (查询机器上是否有安装指定的软件包)

选项说明:

  -q:query,查询

  -a:all,所有

②卸载

  #rpm -e 软件包全称 [–nodeps] (卸载软件,包的全称需要通过①去查询)

选项说明:

  -e:卸载

  –nodeps:忽略依赖关系

③安装

  #rpm -ivh 软件包路径 (软件包的下载需要自行解决)

选项说明:

  -i:install,安装

  -v:显示安装过程

  -h:以“#”形式显示安装过程

④更新(了解)

  #rpm -Uvh 软件包路径 (软件包的下载、依赖关系需要自行解决)

选项说明:

  -U:upgrade,升级

  -v:显示安装过程

  -h:以“#”形式显示安装过程

⑤查看某个文档是由哪个软件包创建的

  #rpm -qf 需要查询的文件路径

选项说明:

  -q:query,查询

  -f:file,指定文件

案例:查询、卸载、安装firefox浏览器。

查询:

解压

  tar -xvjf 文件名.tar.bz2

查询:

卸载:

安装:

①查找软件包

  /run/media/root/CentOS 7 x86_64/Packages

②开始安装

  rpm – ivh 软件包

查询文件所属的软件包:

查询/etc/passwd文件是谁创建的

  #rpm -qf /etc/passwd

二、yum 安装

优点:

  ①快速、傻瓜式的软件管理方式

  ②在联网情况下,自动从服务器上下载软件包(内、外网服务器均可)  

  ③自动解决软件依赖关系

缺点:

  因其底层实为rpm操作,所以也丧失了对软件的自定义功能

Yum常用语法:

  ①搜索/查询相关

    

#yum search [all] 关键词 (根据关键词搜索服务器上的包资源)
    #yum list [关键词] (列出所有的包,包含已经安装的和可供安装的)
    #yum list installed [关键词] (列出当前已经安装的包)

  ②安装

注意:操作指令(install)与-y选项可以颠倒,下同,-y类似于rm指令的-f选项

   

 #yum [-y] install 关键词 (安装指定的软件)

③卸载

 #yum [-y] remove 关键词 (卸载指定的软件)

④更新

 #yum [-y] update (更新整个系统,包含内核)

 #yum [-y] update 关键词

三、编译安装

优点:

  ①用户可选择需要的软件功能

  ②源码方式,有开发能力的用户,可对源码进行自定义

缺点:

  ①需要自行解决依赖关系

  ②编译时间较长

  ③容易出错,一旦出错,需要重新编译安装

编译安装步骤:

  ①下载源码

  ②解压源码

  ③进入解压目录

  ④配置安装

  ⑤编译

  ⑥安装

案例:编译安装Nginx。

类似于apache,是一款开源的web服务器软件,其默认用的端口号也是80。

  ①下载nginx包

下载地址:https://nginx.org/en/download.html

复制下载地址。

需要将下载地址在终端中输入,进行下载:

  #cd /usr/local/src

  #wget https://nginx.org/download/nginx-1.15.5.tar.gz

②解压压缩包

  #tar -jxvf 路径(针对.tar.bz2格式)

  #tar -zxvf 路径(针对.tar.gz格式) 【当前选这个】

  #tar -zxvf nginx-1.15.5.tar.gz

③进入解压后的目录

  #cd nginx-1.15.5

④配置安装

配置包含:指定安装的位置、需要的模块功能

指定位置使用:–prefix选项

例如:–prefix=/usr/local/nginx

./configure --prefix=/usr/local/nginx

需要安装2个依赖:

  #yum install pcre-devel

  #yum install zlib-devel

然后继续重新配置,确认没有问题会看到如下效果:

⑤编译&&完成安装

  #make && make install

测试NGINX的使用:

  #service httpd stop

注意:nginx编译安装之后不支持service指令进行操作,需要找到nginx的执行文件才能启动。

启动:/usr/local/nginx/sbin/nginx

重启:/usr/local/nginx/sbin/nginx -s reload