Linux軟件安裝(yum與rpm詳解)

  • Rpm工具安裝
  • 編譯安裝
  • Yum安裝
    1.RPM工具安裝:

RPM軟件包管理器
一種用於互聯網下載包的打包及安裝工具,它包含在某些Linux分發版中。它生成具有.RPM擴展名的文件

Linux軟件安裝(yum與rpm詳解)
Linux軟件安裝(yum與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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章