Linux入門之Linux系統裏的yum------Linux下如何安裝python中的requests模塊(CentOs)

概述

Yum是一個在Fedora和RedHat以及CentOS中的Shell前端軟件包管理器。基於RPM包管理,能夠從指定的服務器自動下載RPM包並且安裝並自動處理依賴性關係(即,一次性安裝所有依賴的軟件包,無須多次下載、安裝)。yum提供了查找、安裝、刪除某一個、一組甚至全部軟件包的命令,且命令簡潔而又好記。

特點:

1. 配置文件簡潔
2. 自動解決安裝或卸載軟件時遇到的倚賴性問題
3. 可以同時配置多個資源庫
4. 保持與RPM數據庫的一致性
5. 使用方便

yum命令

語法:yum 【操作】 軟件名

常用操作:

命令 功能
yum install yum-fastestmirror 自動搜索鏡像插件
yum install yumex 安裝圖形窗口插件
yum grouplist 查看可能批量安裝的列表

安裝操作

命令 功能
yum install 安裝全部程序徐
yum install 程序名 安裝指定的程序
yum groupinsall 程序組名 安裝程序組

示例:
簡單安裝相關軟件

[root@CentOs7 ~]# yum install bzip2
Loaded plugins: fastestmirror
base                                                                                             | 3.6 kB  00:00:00     
extras                                                                                           | 2.9 kB  00:00:00     
updates                                                                                          | 2.9 kB  00:00:00  
。。。。。。
Installed:
   bzip2.x86_64 0:1.0.6-13.el7
 Complete!

更新操作

命令 功能
yum update 更新全部程序
yum update 程序名 更新指定程序
yum check-update 檢查可更新的程序
yum upgrade 程序名 升級指定程序
yum groupupdate 程序組名 升級程序組

示例:
常見的指定軟件更新操作

[root@CentOs7 ~]# yum update bzip2
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.huaweicloud.com
 * extras: mirrors.huaweicloud.com
 * updates: mirrors.aliyun.com
No packages marked for update

查找和顯示操作

命令 功能
yum info 程序名 顯示目標程序信息
yum list 顯示所有已經安裝和可以安裝的程序
yum list 程序名 顯示指定程序包安裝情況
yum groupinfo 程序組名 顯示程序組信息
yum search string 根據關鍵字string查找安裝包

示例:
查看指定程序的相關信息

[root@CentOs7 ~]# yum info zip
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.huaweicloud.com
 * extras: mirrors.huaweicloud.com
 * updates: mirrors.aliyun.com
Installed Packages
Name        : zip
Arch        : x86_64
Version     : 3.0
Release     : 11.el7
Size        : 796 k
Repo        : installed
From repo   : base
Summary     : A file compression and packaging utility compatible with PKZIP
URL         : http://www.info-zip.org/Zip.html

簡單顯示指定程序安裝情況

[root@CentOs7 ~]# yum list zip
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.huaweicloud.com
 * extras: mirrors.huaweicloud.com
 * updates: mirrors.aliyun.com
Installed Packages
zip.x86_64                

卸載操作

命令 功能
yum remove 程序名 卸載指定程序
yum groupremove 程序組名 刪除指定程序組
yum deplist 程序名 查看指定程序的依賴情況

示例:
嘗試將剛剛安裝的軟件卸載

[root@CentOs7 ~]# yum remove bzip2
Loaded plugins: fastestmirror
Resolving Dependencies
--> Running transaction check
---> Package bzip2.x86_64 0:1.0.6-13.el7 will be erased
--> Finished Dependency Resolution
。。。。。。。
Removed:
  bzip2.x86_64 0:1.0.6-13.el7
Complete!

清除緩存操作

命令 功能
yum clean packages 清除緩存目錄下的軟件包
yum clean headers 清除緩存目錄下的 headers
yum clean oldheaders 清除緩存目錄下舊的 headers
yum clean all 清除緩存目錄下的軟件包及舊的header

示例:
嘗試清除殘餘的安裝文件

[root@CentOs7 ~]# yum clean packages
Loaded plugins: fastestmirror
Cleaning repos: base extras updates
0 package files removed
[root@CentOs7 ~]# 

綜合示例

經過上面的學習讓我們建立一個小的腳本來更深入瞭解yum的工作原理

  1 #!/usr/bin/python3
  2 from requests import request
  3 import os
  4 import sys
  5 packet=sys.argv[1]
  6 print("Begin to download {}!".format(packet))
  7 URL="https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/{}".format(packet)
  8 res= request(method="GET",url=URL)
  9 data=res.content
 10 with open(packet,"wb") as f:
 11     f.write(data)
 12 print("Begin to install {}!".format(packet))
 13 Cmd="rpm -ivh {}".format(packet)
 14 try:
 15     os.popen(Cmd)
 16     print("Begin to install {} succesful !".format(packet))
 17 except Exception as err:
 18     print(err) 
 19   

圖例:
在這裏插入圖片描述
接下來讓我們檢驗腳本的實際能力,首先利用yum命令查詢目標軟件包版本

root@localhost Shell]# yum list zip
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
Available Packages
zip.x86_64                                                3.0-11.el7                                                 base
[root@localhost Shell]# 

然後利用我們開發的腳本下載,我們可以看到腳本已經下載到文件夾下

[root@localhost Shell]# ./yump zip.x86_64 0:3.0-11.el7 
Begin to download zip.x86_64!
Begin to install zip.x86_64!
zip.x86_64 succesful !
[root@localhost Shell]# ls
yump  zip.x86_64

注意事項

對於初學者而言,python的使用會存在諸多問題,針對我個人遇到的問題,我將經驗總結如下:

  • 如果運行腳本時提示python裏無法導入requests模塊,這是由於python-pip裏沒有安裝requests,需要利用cd命令到/usr/bin目錄下用pip或者pip3命令安裝requests模塊,(即pip3 install requests)安裝完成後重啓即可。
  • 如果requests模塊由於網絡原因更新失敗的話,這是由於python裏的源是國外網站的,國內訪問國外有諸多限制,所以可以將python的源改爲阿里的。主要操作方式如下:
  1. 首先利用cd命令回到用戶目錄下(即cd ~)
[root@localhost Shell]# cd 
[root@localhost ~]# ls
anaconda-ks.cfg  get-pip.py  get-pip.py.1  practicec  Shell  test
  1. 然後創建 .pip目錄,並在該目錄下創建pip.conf文件
[root@localhost ~]# mkdir .pip
[root@localhost ~]# cd .pip
[root@localhost .pip]# vim pip.conf 

3.利用vim命令在pip.conf裏面輸入下列代碼,保存退出即可

  1 [global]
  2 trusted-host=mirrors.aliyun.com
  3 index-url=http://mirrors.aliyun.com/pypi/simple                                                                                                                     

4.最後重啓系統並安裝requests包即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章