Linux配置yum源全過(guò)程
一、簡(jiǎn)介yum源
yum是一個(gè)基于RPM包(是Red-Hat Package Manager紅帽軟件包管理器的縮寫)構(gòu)建的軟件更新機(jī)制,能夠自動(dòng)解決軟件包之間的依賴關(guān)系。
yum由倉(cāng)庫(kù)和客戶端組成,也就是整個(gè)yum由兩部分組成,所以yum可以存放在兩臺(tái)服務(wù)器上。也可以存放在一臺(tái)服務(wù)器上??梢杂泄俜絹?lái)提供服務(wù),也可以由第三方來(lái)提供,比如國(guó)內(nèi)的阿里云,搜狐云,還有一些非盈利組織比如學(xué)校等。
官方的源一般在國(guó)外,下載速度肯定有限,手動(dòng)更改成國(guó)內(nèi)的云可以大幅提升下載速度。
二、yum相關(guān)命令
1.查詢需要安裝的軟件
//顯示可用的安裝包(不加軟件名顯示所有安裝包) [root@localhost ~]# yum list 軟件名 //顯示安裝包詳細(xì)信息 [root@localhost ~]#yum info 軟件名 //根據(jù)關(guān)鍵字查找相關(guān)的軟件安裝包 [root@localhost ~]#yum search 關(guān)鍵詞 //查找某個(gè)命令是哪個(gè)軟件提供的 [root@localhost ~]#yum whatprovides 命令名
2.安裝軟件
[root@localhost ~]# yum [選項(xiàng)] install 軟件名 -y 提示信息全部yes -q 不顯示安裝過(guò)程
3.卸載軟件
//卸載已安裝的軟件必須加軟件名 [root@localhost ~]# yum remove httpd //查看歷史的使用記錄,選擇ID 1,2,3,4,5,可以使用yum history undo 4 進(jìn)行卸載,這樣對(duì)比remove好處是可以將所有的依賴都刪除 [root@localhost ~]# yum history [root@localhost ~]# yum history undo 3 //3代表id號(hào) //如果后悔 卸載 可以使用兩種方式 yum history redo 4 (重新安裝一遍) 再次使用yum history undo 6 (反悔卸載等于重新安裝一遍)
4.其他
//僅下載安裝包 [root@localhost ~]# yum install --downloadedonly --downloaddir=保存的路徑 //清除yum緩存目錄 [root@localhost ~]# yum clean all //新建yum源后重新建立元數(shù)據(jù) [root@localhost ~]# yum makecache //顯示所有yum源 [root@localhost ~]# yum repolist all
三、yum配置文件
1.yum主配置文件位置 /etc/yum.conf/
[root@localhost ~]#vim /etc/yum.conf/ [main] cachedir=/var/cache/yum/$basearch/$releasever --yum下載的RPM包的緩存目錄 keepcache=0 --是否保存緩存 0代表不保存,1代表保存 debuglevel=2 --調(diào)試級(jí)別了解即可 logfile=/var/log/yum.log --日志文件位置 exactarch=1 --是否允許不同版本的rpm安裝 obsoletes=1 --update 的一個(gè)參數(shù)是否可以允許舊版本的運(yùn)行 gpgcheck=1 --驗(yàn)證秘鑰 plugins=1 --是否允許插件 installonly_limit=5 --保存幾個(gè)內(nèi)核 bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum distroverpkg=centos-release
2.yum源配置文件位置 /etc/yum.repos.d/
[root@localhost2 ~]#cd /etc/yum.repos.d/ //默認(rèn)已有的yum源,均為國(guó)外官方的在線源,可自己搭建 [root@localhost2 yum.repos.d]#ls CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo CentOS-x86_64-kernel.repo
四、手動(dòng)搭建yum源
yum源分類:
- 本地源:file://
- 在線源:http:// 或 https://
- ftp源:ftp://
1.搭建本地yum源
2.搭建在線yum源(以阿里云yum源為例)
//將自帶的yum備份到repo.bak下 [root@localhost2 yum.repos.d]#cd /etc/yum.repos.d [root@localhost2 yum.repos.d]#ls CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo CentOS-x86_64-kernel.repo [root@localhost2 yum.repos.d]#mkdir repo.bak [root@localhost2 yum.repos.d]#mv *.repo repo.bak [root@localhost2 yum.repos.d]#ls repo.bak //新建阿里云yum源配置文件 [root@localhost2 yum.repos.d]#vim ali.repo [ali] name=ali baseurl=https://mirrors.aliyun.com/centos/7/os/x86_64/ --阿里云鏡像源地址 gpgcheck=0 --不校驗(yàn) //可增設(shè)更新源 [aliupdate] name=update baseurl=https://mirrors.aliyun.com/centos/7/updates/x86_64/ gpgcheck=0 //清除yum緩存目錄和重新建立元數(shù)據(jù) [root@localhost2 yum.repos.d]#yum clean all 已加載插件:fastestmirror, langpacks 正在清理軟件源: ali aliupdate Cleaning up list of fastest mirrors Other repos take up 68 k of disk space (use --verbose for details) [root@localhost2 yum.repos.d]#yum makecache 已加載插件:fastestmirror, langpacks Determining fastest mirrors ali | 3.6 kB 00:00:00 aliupdate | 2.9 kB 00:00:00 (1/7): ali/group_gz | 153 kB 00:00:00 (2/7): ali/primary_db | 6.1 MB 00:00:22 (3/7): ali/filelists_db | 7.2 MB 00:00:25 (4/7): ali/other_db | 2.6 MB 00:00:09 (5/7): aliupdate/filelists_db | 9.4 MB 00:00:35 (6/7): aliupdate/other_db | 1.1 MB 00:00:04 (7/7): aliupdate/primary_db | 17 MB 00:01:01 元數(shù)據(jù)緩存已建立 //測(cè)試下載軟件成功 [root@localhost2 yum.repos.d]#yum install -y mysql 已加載插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile 正在解決依賴關(guān)系 --> 正在檢查事務(wù) ---> 軟件包 mariadb.x86_64.1.5.5.68-1.el7 將被 安裝 --> 解決依賴關(guān)系完成 依賴關(guān)系解決 ============================================================================================================================================================ Package 架構(gòu) 版本 源 大小 ============================================================================================================================================================ 正在安裝: mariadb x86_64 1:5.5.68-1.el7 ali 8.8 M 事務(wù)概要 ============================================================================================================================================================ 安裝 1 軟件包 總下載量:8.8 M 安裝大小:49 M Downloading packages: mariadb-5.5.68-1.el7.x86_64.rpm | 8.8 MB 00:00:34 Running transaction check Running transaction test Transaction test succeeded Running transaction 正在安裝 : 1:mariadb-5.5.68-1.el7.x86_64 1/1 驗(yàn)證中 : 1:mariadb-5.5.68-1.el7.x86_64 1/1 已安裝: mariadb.x86_64 1:5.5.68-1.el7 完畢!
3.搭建ftp yum源
ftp服務(wù)端
//下載vsftp [root@localhost2 yum.repos.d]#yum install -y vsftpd //開(kāi)啟服務(wù) [root@localhost2 yum.repos.d]#systemctl start vsftpd //關(guān)閉防火墻和selinux [root@localhost2 ~]#systemctl stop firewalld [root@localhost2 ~]#setenforce 0 //搭建ftp源(這里使用鏡像里的軟件包)掛載到/var/ftp/centos7 [root@localhost2 ~]#cd /var/ftp [root@localhost2 ftp]#ls pub [root@localhost2 ftp]#mkdir centos7 [root@localhost2 ftp]#mount /dev/sr0 /var/ftp/centos7/ mount: /dev/sr0 寫保護(hù),將以只讀方式掛載
客戶端
//關(guān)閉防火墻和selinux [root@localhost2 ~]#systemctl stop firewalld [root@localhost2 ~]#setenforce 0 //將自帶的yum備份到repo.bak下 [root@localhost1 ~]#cd /etc/yum.repos.d [root@localhost1 yum.repos.d]#ls CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo CentOS-x86_64-kernel.repo [root@localhost1 yum.repos.d]#mkdir repo.bak [root@localhost1 yum.repos.d]#mv *.repo repo.bak/ [root@localhost1 yum.repos.d]#ls repo.bak //新建ftp源配置文件 [root@localhost1 yum.repos.d]#vim ftp.repo [ftp] name=ftp baseurl=ftp://192.168.116.20/centos7 --指定ftp服務(wù)器鏡像源地址(由于遠(yuǎn)程傳輸文件用戶登錄的根目錄在/var/ftp 下,所以這里指定服務(wù)器地址/centos7目錄,就是服務(wù)器的/var/ftp/centos7 目錄) gpgcheck=0 清除yum緩存目錄和重新建立元數(shù)據(jù) [root@localhost1 yum.repos.d]#yum clean all 已加載插件:fastestmirror, langpacks 正在清理軟件源: ftp Cleaning up list of fastest mirrors Other repos take up 1.1 G of disk space (use --verbose for details) [root@localhost1 yum.repos.d]#yum makecache 已加載插件:fastestmirror, langpacks Determining fastest mirrors ftp | 3.6 kB 00:00:00 (1/4): ftp/group_gz | 153 kB 00:00:00 (2/4): ftp/primary_db | 3.3 MB 00:00:00 (3/4): ftp/filelists_db | 3.3 MB 00:00:00 (4/4): ftp/other_db | 1.3 MB 00:00:00 元數(shù)據(jù)緩存已建立 //測(cè)試安裝軟件成功 [root@localhost1 yum.repos.d]#yum install -y tftp 已加載插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile 正在解決依賴關(guān)系 --> 正在檢查事務(wù) ---> 軟件包 tftp.x86_64.0.5.2-22.el7 將被 安裝 --> 解決依賴關(guān)系完成 依賴關(guān)系解決 ========================================================================================================================================================= Package 架構(gòu) 版本 源 大小 ========================================================================================================================================================= 正在安裝: tftp x86_64 5.2-22.el7 ftp 38 k 事務(wù)概要 ========================================================================================================================================================= 安裝 1 軟件包 總下載量:38 k 安裝大小:52 k Downloading packages: tftp-5.2-22.el7.x86_64.rpm | 38 kB 00:00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction 正在安裝 : tftp-5.2-22.el7.x86_64 1/1 驗(yàn)證中 : tftp-5.2-22.el7.x86_64 1/1 已安裝: tftp.x86_64 0:5.2-22.el7 完畢!
五、配置yum源優(yōu)先級(jí)
當(dāng)既有本地yum源又有aliyun源或其他yum源的時(shí)候,我們?cè)谘b軟件包的時(shí)候當(dāng)然希望先用本地的yum源去安裝,本地找不到可用的包時(shí)再使用aliyun源去安裝軟件,這里就涉及到了優(yōu)先級(jí)的問(wèn)題,yum提供的插件yum-plugin-priorities.noarch可以解決這個(gè)問(wèn)題。
//查看是否安裝了yum-plugin優(yōu)先級(jí)插件 [root@localhost2 ~]# rpm -q yum-plugin-priorities.noarch 未安裝軟件包 yum-plugin-priorities.noarch //如果未安裝就需要安裝一下 [root@localhost2 ~]# yum install -y yum-plugin-priorities.noarch //如果我們需要優(yōu)先使用哪個(gè)yum源,就在其配置文件添加priority=1 字段(數(shù)字越小優(yōu)先級(jí)越高) [root@localhost2 ~]vim local.repo [local] name=local baseurl=file:///mnt/ enabled=1 gpgcheck=1 priority=1 --數(shù)字越小優(yōu)先級(jí)越高
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Linux安裝yum時(shí)出現(xiàn)apt-get?install?E:?無(wú)法定位軟件包問(wèn)題解決
- Linux系統(tǒng)軟件包依賴性的解決方案
- linux中安裝deb軟件包實(shí)現(xiàn)方式
- Linux下安裝軟件包報(bào)依賴等相關(guān)問(wèn)題的解決方法
- 如何在Linux?系統(tǒng)中使用apt?包管理器安裝?Git?LFS
- linux操作系統(tǒng)利用python實(shí)現(xiàn)任務(wù)管理器可視化功能
- Linux虛擬機(jī)無(wú)網(wǎng)絡(luò)問(wèn)題的解決方案(yum無(wú)法使用)
- Linux之軟件包管理器yum詳解
相關(guān)文章
Apache中配置支持CORS(跨域資源共享)實(shí)例
這篇文章主要介紹了Apache中配置支持CORS(跨域資源共享)實(shí)例,本文給出了一個(gè)完整的apache、PHP、JavaScript結(jié)合實(shí)現(xiàn)的跨域資源共享實(shí)例,需要的朋友可以參考下2015-01-01Linux宿主機(jī)下/容器下如何修改進(jìn)程打開(kāi)的文件句柄數(shù)(open files)
系統(tǒng)級(jí)的max-file和進(jìn)程級(jí)的ulimit-n分別控制文件句柄的最大數(shù)量,系統(tǒng)級(jí)限制整個(gè)系統(tǒng),而ulimit-n只限制單個(gè)進(jìn)程,當(dāng)進(jìn)程打開(kāi)的文件句柄數(shù)超限時(shí),會(huì)報(bào)“Too many files open”錯(cuò)誤,可以通過(guò)特定命令查看和修改這些值2024-10-10Linux通過(guò)匿名管道進(jìn)行進(jìn)程間通信
這篇文章主要介紹了Linux通過(guò)匿名管道進(jìn)行進(jìn)程間通信,介紹了什么是管道,popen函數(shù),pipe調(diào)用等相關(guān)內(nèi)容,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01Centos7(Firewall)防火墻開(kāi)啟常見(jiàn)端口命令
Centos7默認(rèn)安裝了firewalld,如果沒(méi)有安裝的話,則需要YUM命令安裝;firewalld真的用不習(xí)慣,與之前的iptable防火墻區(qū)別太大,但畢竟是未來(lái)主流講究慢慢磨合它的設(shè)置規(guī)則,需要的朋友可以參考下2018-02-02linux下SVN配置實(shí)現(xiàn)項(xiàng)目目錄自動(dòng)更新以及源碼安裝的操作方法
下面小編就為大家分享一篇linux下SVN配置實(shí)現(xiàn)項(xiàng)目目錄自動(dòng)更新以及源碼安裝的操作方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2017-12-12