Linux软件安装(yum与rpm详解)

  • 来源:网络
  • 更新日期:2020-07-23

摘要:系统运维 Rpm工具安装 编译安装 Yum安装1.RPM工具安装: RPM软件包管理器一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版

系统运维 Rpm工具安装 编译安装 Yum安装
1.RPM工具安装:

RPM软件包管理器
一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件



确切的系统版本所需要的信息

查看系统版本

[root@base-server ~]# uname -r
3.10.0-514.el7.x86_64

RPM的常用参数还包括

-vh:显示安装进度;
-U:升级软件包;
-qpl:列出RPM软件包内的文件信息;
-qpi:列出RPM软件包的描述信息;
-qf:查找指定文件属于哪个RPM软件包;
-Va:校验所有的RPM软件包,查找丢失的文件;
-qa: 查找相应文件,如 rpm -qa mysql
-e 卸载rpm包
-q 查询已安装的软件信息
-i 安装rpm包
-u 升级rpm包
--replacepkgs 重新安装rpm包
--justdb 升级数据库,不修改文件系统
--percent 在软件包安装时输出百分比
--help 帮助
--version 显示版本信息
-c 显示所有配置文件
-d 显示所有文档文件
-h 显示安装进度
-l 列出软件包中的文件
-a 显示出文件状态
-p 查询/校验一个软件包文件
-v 显示详细的处理信息
查询是否安装
[root@base-server ~]# rpm -q httpd
httpd-2.4.6-89.el7.centos.x86_64
查询系统中所有已经安装的软件包有哪些

[root@base-server ~]# rpm -qa

统计已经安装的软件包的个数
[root@base-server ~]# rpm -qa | wc -l
1282
查询某个文件是由哪个软件包安装的
[root@base-server ~]# rpm -qf `which vim`
vim-enhanced-7.4.160-1.el7.x86_64
查询软件的配置文件

[root@base-server ~]# rpm -qc httpd ``

更改端口配置文件位置

[root@base-server ~]# vim /etc/httpd/conf/httpd.conf

安装某个软件时,都安装了哪些文件

[root@base-server ~]# rpm -ql setup

如果想要统计安装了多少文件怎么解决

root@base-server ~]# rpm -ql httpd | wc -l

查询安装软件包的信息
[root@base-server ~]# rpm -qi httpd

卸载安装包
[root@base-server ~]# rpm -e httpd

更新软件包

[root@base-server ~]# rpm -Uvh httpd-2.4.6-89.el7.centos.x86_64.rpm

如果包未安装,等同于-i 进行安装
 如果包已安装,便是更新版本

 ###安装前准备,需要gcc 编译工具,支持C语言。

[root@base-server ~]# rpm -qa gcc
[root@base-server ~]# yum -y install gcc


###确定80端口没有被占用

`[root@base-server ~]# netstat -anpt | grep 80`

##创建一个没有登陆权限的用户 nginx,且不指定登陆目录

`[root@base-server ~]# useradd -M -s /sbin/nologin nginx`

-M 不创建用户的HOME目录
-s shell 指定默认登录shell

[root@base-server ~]# id nginx
uid=1003(nginx) gid=1003(nginx) groups=1003(nginx)


##安装所需要的依赖包,并解压tar包

`[root@base-server ~]# yum -y install gcc* zlib pcre-devel openssl openssl-devel zlib-devel`

pcre //支持正则表达 openssl加密方式,一般配合httpd或nginx,devel是对软件进行二次开发时候使用的,里边包括头文件、静态库甚至源代码。

* 安装nginx过程

[root@base-server ~]# tar -zxf nginx-1.14.0.tar.gz -C /usr/src
[root@base-server ~]# cd /usr/src/nginx-1.14.0/
[root@base-server nginx-1.14.0]# ls
[root@base-server nginx-1.14.0]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module && make && make install
[root@base-server nginx-1.14.0]# ln -s /usr/local/nginx/sbin/* /usr/local/sbin/
[root@base-server nginx-1.14.0]# nginx -t
[root@base-server nginx-1.14.0]# nginx


* 使用命令访问

`[root@base-server nginx-1.14.0]# curl 127.0.0.1`

![](https://s1.51cto.com/images/blog/201910/31/587351e73c95bd889db66b2ff7bcd48c.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

2.Yum安装
yum 语法:
yum [options] [command] [package ...]
options:可选,选项包括
-h(帮助),
-y(当安装过程提示选择全部为yes),
-q(不显示安装的过程)等等。
command:要进行的操作。
package操作的对象。

yum常用命令
1.```
列出所有可更新的软件清单命令:yum check-update

2.更新所有软件命令:yum update

3.仅安装指定的软件命令:yum install <package_name>

4.仅更新指定的软件命令:yum update <package_name>

5.列出所有可安裝的软件清单命令:yum list

6.删除软件包命令:yum remove <package_name>

7.查找软件包 命令:yum search &lt;keyword&gt;

8.清除缓存命令:

yum clean packages: 清除缓存目录下的软件包
yum clean headers: 清除缓存目录下的 headers
yum clean oldheaders: 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的headers
系统自带yum源
[root@base-server ~]# cd /etc/yum.repos.d/
[root@base-server yum.repos.d]# ls
查询是否有我们需要的安装包
[root@base-server yum.repos.d]# yum search httpd
相比较serach 我们通常用list
[root@base-server ~]# yum list | grep httpd
或者杀进程
[root@base-server ~]# netstat -anpt | grep nginx
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 47957/nginx: master 
[root@base-server ~]# kill 47957
[root@base-server ~]# netstat -anpt | grep nginx
[root@base-server ~]# nginx -s stop 

链接

除了网易之外,国内还有其他不错的 yum 源,比如中科大和搜狐。
中科大的 yum 源,安装方法查看:https://lug.ustc.edu.cn/wiki/mirrors/help/centos
sohu 的 yum 源安装方法查看: http://mirrors.sohu.com/help/centos.html

新网虚拟主机