1-8-rhel7-軟件包管理


時間:2018-05-28 姓名:魏文應(yīng)


準備工作:

  • 練習(xí)的過程中,需要一些rpm軟件包,供你嘗試,我們把一會它下載下來。

  • 因為 bin-DVD1 類型的系統(tǒng)鏡像,自帶有一些rpm軟件包的。

  • 比如我用的系統(tǒng)鏡像是 CentOS-6.9-i386-bin-DVD1.iso (如果是其它,比如CentOS-6.9-i386-LiveDVD.iso,是不帶Package的)。

  • VMware掛載DVD鏡像(選擇CentOS-6.9-i386-bin-DVD1.iso 鏡像的位置):

  • 設(shè)置掛載DVD鏡像
  • 點擊確定以后,在虛擬機右下角的 DVD光盤圖標(biāo) 中,右鍵點擊連接,linux中就能看到光盤了。

  • VMware中關(guān)盤圖標(biāo)
  • 使用 df -l 查看一下掛載點,默認掛載到了 /media/CentOS_6.9_Final/ 目錄下:

  • 查看掛載點

一、rpm軟件包管理

RPM: Redhat Package Manager 的簡稱。

rpm包說明: 比如 zsh-5.0.2-14.el7.x86_64.rpm

zsh -5 0 2 14 el7 x86 64
軟件名 主版本號 次版本號 修訂號 軟件發(fā)布次數(shù) 發(fā)行商RHEL7 CPU架構(gòu)平臺 支持系統(tǒng)位數(shù)

安裝rpm軟件:

參數(shù) 說明
-i, --install 安裝軟件包
--nodeps 不驗證軟件包依賴
-v, --verbose 提供更多的詳細信息輸出
-h, --hash 軟件包安裝的時候列出哈希標(biāo)記

到rpm包相關(guān)的網(wǎng)站上去下載軟件包:
http://rpmfind.net/
http://rpm.pbone.net/
http://www.rpmseek.com/index.html

rpm查詢功能

rpm查詢功能(rpm –q 常與下面參數(shù)組合使用):

參數(shù) 說明
-a 查詢所有已安裝的軟件包
-f 查詢文件所屬軟件包
-i 顯示已經(jīng)安裝的rpm軟件包信息
-l 和p搭配使用顯示未安裝軟件包的相關(guān)文件列表和信息
  • 查看某個軟件是由哪個rpm包安裝的: rpm -qf `vim` (查看vim是有哪個rpm包安裝的)。

  • 查看已經(jīng)安裝的rpm包生成了哪些文件:rpm -ql [rpm包名]

  • 查看已安裝包
  • 查看一個未安裝包的安裝后將生成的文件: rpm -qpl [rpm包名]

  • 查看未安裝軟件

rpm軟件包安裝

  • 軟件包升級: rpm -Uvh [rpm包名] 。

rpm軟件包卸載

  • rpm卸載: rpm -e [rpm包名] 。如果有依賴,導(dǎo)致無法卸載,可以使用 --nodeps 參數(shù)忽略依賴強制卸載。

rpm包簽名驗證

MD5哈希簽名驗證,可以防止別人修改軟件包:

查看簽名: rpm -K [軟件包名] 例如:rpm -K httpd-2.2.15-60.el6.centos.6.i686 。

  • 驗證結(jié)果

導(dǎo)入密鑰: rpm --import [密鑰文件] 例如:rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 (系統(tǒng)密鑰默認保存在 /etc/pki/rpm-gpg/ 這個目錄下)。

二、yum的使用

yum(Yellow dog Update, Modified)安裝時,自動處理依賴關(guān)系。yum基于C/S架構(gòu)。

yum源的位置

配置文件在: cd /etc/yum.repos.d/

  • yum源位置

手工書寫yum源配置文件:

# 源的名稱,你隨意起一個
[7-soucre]

# 描述信息,隨意寫一些說明
name=rhel7-server

# 源的位置,也就是rpm軟件包的位置,file://說明是本地源,
# /media 是本地存放軟件包的目錄。
# baseurl=file:///media
baseurl=file:///media/CentOS_6.9_Final

# 啟用yum源:1
# 關(guān)閉yum源:0
enabled=1

# 簽名驗證,為1檢驗公鑰的正確性,0不檢驗
gpgcheck=0

使用本地yum源

  • 刪除原來的源碼配置文件:將 cd /etc/yum.repos.d/ 目錄下的 .repo 文件進行備份,然后清空這個目錄下的文件(yum將該目錄下所有.repo結(jié)尾的文件,識別為yum源配置文件)。

  • 創(chuàng)建一個以 .repo 結(jié)尾的文件,比如:vim CentOS-Base.repo,然后寫入手工配置文件的內(nèi)容(注意修改掛載點)。

  • 保存配置文件后,執(zhí)行下面命令,清空一下yum緩存: yum clean all 。

  • 重新生成列表: yum list

  • 安裝軟件: yum install [軟件名稱] (如果安裝過程中,軟件有需要用戶輸入yes或者no進行的確認的步驟,如果你想全部選擇yes,則加上 -y 參數(shù) :yum install -y [軟件名稱])。

  • 檢測升級:yum check-update (本地yum源是不行的,遠程網(wǎng)絡(luò)才能升級)

  • 查看軟件信息: yum info [軟件名稱] 。

  • 卸載軟件: yum remove [軟件名稱] 。

  • 按組來安裝:就是一下子可以安裝一組軟件。查看一下有哪些rpm組包:yum grouplist 。安裝某組軟件:yum

使用遠程yum源

遠程yum源一般由開源鏡像站提供,開源鏡像站一般會提供一個配置文件,比如阿里鏡像站:

http://mirrors.aliyun.com/repo/

或者網(wǎng)易鏡像站:

http://mirrors.163.com/.help/

找到對應(yīng)的 .repo 文件,下載放入 /etc/yum.conf.d/ 這個目錄下就可以了。每一個 .repo 文件都配置了一個源,所以如果原來的 .repo 文件,你不想用了,將它從 /etc/yum.conf.d/ 這個目錄刪除就可以了。然后執(zhí)行 yum clean allyum makecache 更新一下就可以了。

三、源碼編譯安裝軟件包

  • 解壓源代碼包。
  • 進入解壓后的目錄,用 ./configure [--prefix=/usr/local/filname] 來配置,這個過程主要是收集系統(tǒng)信息、設(shè)置安裝目錄等(卸載的時候只需將這個目錄刪除則可)。
  • 編譯:make -j 4 。
  • 安裝:make install

源碼方式安裝nginx服務(wù)器:

  • 需要 pcre-devel 、 zlib-devel 。查看一下這兩個依賴包有沒有:rpm -q pcre-devel zlib-devel 。如果沒有安裝就安裝它: yum install -y pcre-devel zlib-devel 。

  • 添加一個程序運行的系統(tǒng)用戶: useradd -s /sbin/nologin -M nginx (-s指定shell,shell為/sbin/nologin,-M表示不生成宿主目錄)。

  • 解壓準備好的壓縮包 tar -zxvf nginx-1.0.15.tar.gz 。

  • 解壓完成上次一個 nginx-1.0.15 目錄,進入這個目錄。執(zhí)行配置命令

    # --prefix    指定安裝的位置
    # --user      指定運行的用戶
    # --group     指定運行的組
    ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx
    

    如果這一步出錯,提示沒有安裝gcc:

    ./configure: error: C compiler gcc is not found
    

    則安裝GCC編譯器: yum install -y gcc 。再執(zhí)行上面配置命令。如果你和我一樣,使用了本地軟件源,gcc可能因為版本問題,安裝失敗。可以先打開網(wǎng)絡(luò)源,比如阿里源,安裝gcc。

  • 編譯和編譯安裝:make -j4 && make install 。如果安裝成功,會有 /usr/local/nginx/sbin/nginx 可執(zhí)行程序。另外可以執(zhí)行 netstat -anptu | grep nginx 命令查看nginx是否已經(jīng)監(jiān)聽80端口。如果沒有,啟動nginx:/usr/local/nginx/sbin/nginx

  • 啟動nginx并查看
  • 然后用 ifconfig 命令查看一下你的ip地址,在瀏覽器中輸入 [ip地址]:80 ,比如我的:192.168.154.133:80 。你會看到Welcome to nginx! 顯示出來。

nginx 首頁修改測試

  • 打開任意一個網(wǎng)頁,比如百度,通過瀏覽器查看網(wǎng)頁源代碼,將網(wǎng)頁源代碼復(fù)制到 /usr/local/nginx/html/index.xml 中(刪除原來的內(nèi)容)。然后通過瀏覽器,輸入 [ip地址]:80 ,這時顯示的就是百度首頁了,而不是 Welcome to nginx! 。

  • 查看網(wǎng)頁源代碼

四、使用 | 管道命令

管道命令: | 。將前面命令的輸出信息,最為后面命令的輸入信息。比如,執(zhí)行rpm -qa 這個命令時,終端會打印很多信息。如果將這些輸出信息,作為grep命令的輸入,grep命令通過這些輸入字符,找到包含 httpd 字符的字符串。

  • 管道應(yīng)用
  • 可以進行分頁查看: 打印信息太多時,追加上 | more 進行分頁查看,例如 rpm -qa | more 。

Xshell與遠程機器通信

  • rz命令: 在使用Xshell這個SSH工具登陸Linux時,如果想 向linux系統(tǒng)傳文件,可以使用 rz 命令。使用這個工具,需要安裝lrzsz這個工具包:yum -y install lrzsz。注意:在其它終端執(zhí)行這個命令會使終端卡死。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容