yum( Yellow dog Updater, Modified)是一個在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端軟件包管理器。html
基於 RPM 包管理,可以從指定的服務器自動下載 RPM 包而且安裝,能夠自動處理依賴性關係,而且一次安裝全部依賴的軟件包,無須繁瑣地一次次下載、安裝。前端
yum 提供了查找、安裝、刪除某一個、一組甚至所有軟件包的命令,並且命令簡潔而又好記。c++
yum [options] [command] [package ...]
1. 列出全部可更新的軟件清單命令:yum check-updatevim
2. 更新全部軟件命令:yum updatecentos
3. 僅安裝指定的軟件命令:yum install <package_name>緩存
4. 僅更新指定的軟件命令:yum update <package_name>bash
5. 列出全部可安裝的軟件清單命令:yum list服務器
6. 刪除軟件包命令:yum remove <package_name>ide
7. 查找軟件包命令:yum search <keyword>this
8. 清除緩存命令:
實例 1
安裝 pam-devel
[root@www ~]# yum install pam-devel Setting up Install Process Parsing package install arguments Resolving Dependencies <==先檢查軟件的屬性相依問題 --> Running transaction check ---> Package pam-devel.i386 0:0.99.6.2-4.el5 set to be updated --> Processing Dependency: pam = 0.99.6.2-4.el5 for package: pam-devel --> Running transaction check ---> Package pam.i386 0:0.99.6.2-4.el5 set to be updated filelists.xml.gz 100% |=========================| 1.6 MB 00:05 filelists.xml.gz 100% |=========================| 138 kB 00:00 -> Finished Dependency Resolution ……(省略)
移除 pam-devel
[root@www ~]# yum remove pam-devel Setting up Remove Process Resolving Dependencies <==一樣的,先解決屬性相依的問題 --> Running transaction check ---> Package pam-devel.i386 0:0.99.6.2-4.el5 set to be erased --> Finished Dependency Resolution Dependencies Resolved ============================================================================= Package Arch Version Repository Size ============================================================================= Removing: pam-devel i386 0.99.6.2-4.el5 installed 495 k Transaction Summary ============================================================================= Install 0 Package(s) Update 0 Package(s) Remove 1 Package(s) <==還好,並無屬性相依的問題,單純移除一個軟件 Is this ok [y/N]: y Downloading Packages: Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Erasing : pam-devel ######################### [1/1] Removed: pam-devel.i386 0:0.99.6.2-4.el5 Complete!
利用 yum 的功能,找出以 pam 爲開頭的軟件名稱有哪些?
[root@www ~]# yum list pam* Installed Packages pam.i386 0.99.6.2-3.27.el5 installed pam_ccreds.i386 3-5 installed pam_krb5.i386 2.2.14-1 installed pam_passwdqc.i386 1.0.2-1.2.2 installed pam_pkcs11.i386 0.5.3-23 installed pam_smb.i386 1.1.7-7.2.1 installed Available Packages <==底下則是『可升級』的或『未安裝』的 pam.i386 0.99.6.2-4.el5 base pam-devel.i386 0.99.6.2-4.el5 base pam_krb5.i386 2.2.14-10 base
網易(163)yum源是國內最好的yum源之一 ,不管是速度仍是軟件版本,都很是的不錯。
將yum源設置爲163 yum,能夠提高軟件包安裝和更新的速度,同時避免一些常見軟件版本沒法找到。
首先備份/etc/yum.repos.d/CentOS-Base.repo
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
下載對應版本 repo 文件, 放入 /etc/yum.repos.d/ (操做前請作好相應備份)
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo mv CentOS6-Base-163.repo CentOS-Base.repo
運行如下命令生成緩存
yum clean all
yum makecache
除了網易以外,國內還有其餘不錯的 yum 源,好比中科大和搜狐。 中科大的 yum 源,安裝方法查看:https://lug.ustc.edu.cn/wiki/mirrors/help/centos sohu 的 yum 源安裝方法查看: http://mirrors.sohu.com/help/centos.html
配置本地Yum倉庫
實現此案例須要按照以下步驟進行。
步驟一:搭建一個本地Yum,將RHEL6光盤手動掛載到/media
命令操做以下所示:
[root@localhost ~]# mount /dev/cdrom /media/ mount: block device /dev/sr0 is write-protected, mounting read-only [root@localhost ~]# mount | tail -1 /dev/sr0 on /media type iso9660 (ro)
步驟二:將本地設置爲客戶端,進行Yum驗證
Yum客戶端需編輯配置文件,命令操做以下所示:
[root@localhost ~]# cd /etc/yum.repos.d/ //必須在這個路徑下 [root@localhost yum.repos.d]# ls //此路徑下事先有配置文件的模板 rhel-source.repo [root@localhost yum.repos.d]# cp rhel-source.repo rhel6.repo //配置文件必須以.repo結尾 [root@localhost yum.repos.d]# vim rhel6.repo [rhel-6] //中括號裏內容要求惟一,但不要出現特殊字符 name=Red Hat Enterprise Linux 6 //此爲描述信息,能夠看狀況填寫 baseurl=file:///media/ //此項爲yum軟件倉庫位置,指向光盤掛載點 enabled=1 //此項爲是否開啓,1爲開啓, 0爲不開啓 gpgcheck=1 //此項爲是否檢查簽名,1爲檢測, 0爲不檢測 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release //簽名認證信息的路徑 [root@localhost /]# yum repolist Loaded plugins: product-id, refresh-packagekit, security, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. rhel-6 | 3.9 kB 00:00 ... rhel-6/primary_db | 3.1 MB 00:00 ... repo id repo name status rhel-6 Red Hat Enterprise Linux 6 3,690 repolist: 3,690
對於 Linux 軟件安裝時提示缺失庫的,可使用 yum 的 provides 參數查看 libstdc++.so.6 的庫文件包含在那個安裝包中只須要執行:
yum provides libstdc++.so.6
而後按查詢到安裝包包名,使用 yum install 安裝便可。
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
apt(Advanced Packaging Tool)是一個在 Debian 和 Ubuntu 中的 Shell 前端軟件包管理器。
apt 命令提供了查找、安裝、升級、刪除某一個、一組甚至所有軟件包的命令,並且命令簡潔而又好記。
apt 命令執行須要超級管理員權限(root)。
apt [options] [command] [package ...]
列出全部可更新的軟件清單命令:sudo apt update
升級軟件包:sudo apt upgrade
列出可更新的軟件包及版本信息:apt list --upgradeable
升級軟件包,升級前先刪除須要更新軟件包:sudo apt full-upgrade
安裝指定的軟件命令:sudo apt install <package_name>
安裝多個軟件包:sudo apt install <package_1> <package_2> <package_3>
更新指定的軟件命令:sudo apt update <package_name>
顯示軟件包具體信息,例如:版本號,安裝大小,依賴關係等等:sudo apt show <package_name>
刪除軟件包命令:sudo apt remove <package_name>
清理再也不使用的依賴和庫文件: sudo apt autoremove
移除軟件包及配置文件: sudo apt purge <package_name>
查找軟件包命令: sudo apt search <keyword>
列出全部已安裝的包:apt list --installed
列出全部已安裝的包的版本信息:apt list --all-versions
查看一些可更新的包:
sudo apt update
升級安裝包:
sudo apt upgrade
在以上交互式輸入字母 Y 便可開始升級。
能夠將如下兩個命令組合起來,一鍵升級:
sudo apt update && sudo apt upgrade -y
安裝 mplayer 包:
sudo apt install mplayer
如過不太記得完整的包名,咱們能夠只輸入前半部分的包名,而後按下 Tab 鍵,會列出相關的包名:
以上實例咱們輸入來 reds,而後按下 Tab 鍵,輸出來四個相關的包。
若是咱們想安裝一個軟件包,但若是軟件包已經存在,則不要升級它,可使用 –no-upgrade 選項:
sudo apt install <package_name> --no-upgrade
安裝 mplayer 若是存在則不要升級:
udo apt install mplayer --no-upgrade
若是隻想升級,不要安裝可使用 --only-upgrade 參數:
sudo apt install <package_name> --only-upgrade
只升級 mplayer,若是不存在就不要安裝它:
sudo apt install mplayer --only-upgrade
若是須要設置指定版本,語法格式以下:
sudo apt install <package_name>=<version_number>
package_name 爲包名,version_number 爲版本號。
移除包可使用 remove 命令
sudo apt remove mplayer
查找名爲 libimobile 的相關包:
apt search libimobile
查看 pinta 包的相關信息:
apt show pinta
列出可更新的軟件包:
apt list --upgradeable
清理再也不使用的依賴和庫文件:
sudo apt autoremove
在以上交互式輸入字母 Y 便可開始清理。