配置本地 yum 倉庫
# yum 官網
http://yum.baseurl.org/
# yum 手冊頁
man yum
man yum.conf
SEE ALSO
pkcon (1)
yum.conf (5)
yum-updatesd (8)
package-cleanup (1)
repoquery (1)
yum-complete-transaction (1)
yumdownloader (1)
yum-utils (1)
yum-langpacks (1)
http://yum.baseurl.org/
http://yum.baseurl.org/wiki/Faq
yum search yum
bak 是備份文件,為文件格式擴展名
createrepo
CentOS-Media.repo 本地軟件源
--downloadonly --downloaddir 只下載不安裝
# 關閉網絡軟件源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bk
# 將所有 repo 文件移動到 bak 備份目錄。
mkdir bak
mv ./*.repo bak
# 開啟本地軟件源
編輯 CentOS-Media.repo
vim /etc/yum.repos.d/CentOS-Media.repo
通過 baseurl 指定本地 rpm 包所在的目錄。
baseurl=file:////home/user/rpms/
將這個源設置為開啟
enabled=1
這樣就可以使yum采用本地源安裝軟件。
Linux 掛載鏡像源
Centos制作本地yum源 https://www.cnblogs.com/daleyzou/p/Linux.html
Linux配置本地yum源方法 https://jingyan.baidu.com/article/db55b6093ef1aa4ba30a2fb2.html
Linux掛載命令mount 詳解 https://www.linuxidc.com/Linux/2018-08/153385.htm
CentOS/RHEL系統下yum配置中$releasever的來源 https://blog.csdn.net/xiaolong85/article/details/5657884
linux下Yum的 $releasever
和 $basearch
的取值 https://blog.csdn.net/whatday/article/details/51097456
centosFailure:repodata/repomd.xml https://blog.51cto.com/onehundreddays/2062177
CD/DVD 的掛載順序 https://blog.csdn.net/weixin_30453983/article/details/80583774
yum本地源 baseurl repodata repomd.xml comps.xml https://blog.51cto.com/kpshare/274730
createrepo生成倉庫元數據,搭建本地yum源 https://www.jianshu.com/p/5cb5af152e75
yum 命令的使用與 createrepo 自建倉庫教程
http://www.linuxe.cn/post-300.html
一、在開始搭建自己的YUM倉庫之前,先來了解下如何獲取RPM包
在默認配置下使用yum命令安裝完軟件后安裝包是不會保留的,如果想在本地也留存一份安裝包,只需要將yum配置文件/etc/yum.conf中的keepcache=0改為1即可,這樣安裝包都會留存在cachedir所指定的目錄中。該目錄下還會根據不同的yum源創建不同的目錄,軟件包通過哪個源安裝的就會保存在哪個目錄中,同時相關依賴包也會自動下載,需要注意的如果執行了yum clean all的話是會刪除掉這些安裝包的。
如果僅僅只是想下載軟件包而不進行安裝,只需要加--downloadonly選項即可。
http://www.linuxe.cn/post-300.html
二、自建YUM本地倉庫:
1、首先建立一個目錄用於存放安裝包,然后使用 createrepo 來創建repository倉庫,如果系統里沒有該命令的話需要先進行createrepo 的安裝
mkdir /yum/repo
yum install createrepo
createrepo /yum/repo #將該目錄制作成軟件倉庫,生成 repodata 目錄。
2、命令執行成功后會在該目錄下創建一個repodata目錄
3、創建.repo配置文件指向到本地倉庫的路徑,注意文件名一定要是.repo結尾
vi /etc/yum.repos.d/test.repo
[test]
name=test #yum倉庫的名字
baseurl=file:///yum/repo #倉庫路徑,由於是放在本地的只能用file協議而不是http
enabled=1 #開啟該倉庫
gpgcheck=0 #不做gpg檢查
4、通過yum repolist命令查看倉庫及包的數量,可以看到創建的test倉庫已經加載,而由於我們沒有在目錄中存放任何的rpm包,所以顯示數量為0
三、創建企業YUM倉庫
在第二步的操作中只是在本地建立了一個YUM倉庫,這樣別人是無法使用的。所以通常會在計划任務中把公網YUM源同步到本地(推薦使用reposync),同步后再執行一次createrepo更新元數據,最后把倉庫目錄通過FTP或者Nginx、Apache、NFS服務等共享出來,然后客戶端的配置文件中修改如下:
[test]
name=test
enable=1
gpgcheck=0
baseurl=http://10.211.10.12
實戰 CentOS-Media.repo
[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///root/packages # 本地存放 rpm 包的目錄
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
/root/packages 目錄和 repodata 目錄
[root@localhost ~]# pwd
/root
[root@localhost ~]# ll -R packages/
packages/:
total 58392
-rw-r--r--. 1 root root 32084 Jul 20 22:02 python-deltarpm-3.6-3.el7.x86_64.rpm
drwxr-xr-x. 2 root root 4096 Jul 20 22:08 repodata
packages/repodata:
total 104
-rw-r--r--. 1 root root 9308 Jul 20 22:08 15d4e2f4734a8fa94bb91c7b9c38a3c3dc22d46fc63a3ea0301987d91317d6d7-other.xml.gz
-rw-r--r--. 1 root root 24319 Jul 20 22:08 1a20ab885d0d10d85be397414ced66cc72cd358ca7435c20de4cd107c3f110e2-filelists.sqlite.bz2
-rw-r--r--. 1 root root 13210 Jul 20 22:08 1eba3526b452bb52405bb6586ef488cf6fd716ae2d8dc6d948246707e9d2cee9-other.sqlite.bz2
-rw-r--r--. 1 root root 7314 Jul 20 22:08 61e612bb20fbde8255e8b27cce767e1c9ffbddd93d26fbba3fdc786be62b7c80-primary.xml.gz
-rw-r--r--. 1 root root 19358 Jul 20 22:08 b1a5a3bf9d2139c57b2dee78ce255294a5da617956a61c501673948023115bf1-filelists.xml.gz
-rw-r--r--. 1 root root 16811 Jul 20 22:08 dcb7e7c9aee928ecd5cee26e14dfe041f14092ca5e935606d3f54903eb052558-primary.sqlite.bz2
-rw-r--r--. 1 root root 2980 Jul 20 22:08 repomd.xml
[root@instance-fjii60o3 ~]# yum install createrepo
Loaded plugins: langpacks, versionlock
baidu-bcm | 2.5 kB 00:00:00
base | 3.6 kB 00:00:00
epel | 5.3 kB 00:00:00
extras | 3.4 kB 00:00:00
updates | 3.4 kB 00:00:00
(1/4): extras/7/x86_64/primary_db | 205 kB 00:00:00
(2/4): epel/x86_64/primary_db | 6.8 MB 00:00:00
(3/4): epel/x86_64/updateinfo | 993 kB 00:00:00
(4/4): updates/7/x86_64/primary_db | 6.5 MB 00:00:00
Excluding 1 update due to versionlock (use "yum versionlock status" to show it)
[root@instance-fjii60o3 ~]# createrepo myrepo
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[root@instance-fjii60o3 ~]# ll myrepo/
total 4
drwxr-xr-x 2 root root 4096 Jul 20 21:45 repodata
安裝 createrepo
# 安裝 createrepo
[root@localhost packages]# rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm
warning: createrepo-0.9.9-28.el7.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
error: Failed dependencies:
deltarpm is needed by createrepo-0.9.9-28.el7.noarch
libxml2-python is needed by createrepo-0.9.9-28.el7.noarch
python-deltarpm is needed by createrepo-0.9.9-28.el7.noarch
[root@localhost packages]# rpm -ivh deltarpm-3.6-3.el7.x86_64.rpm
warning: deltarpm-3.6-3.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:deltarpm-3.6-3.el7 ################################# [100%]
[root@localhost packages]# rpm -ivh python-deltarpm-3.6-3.el7.x86_64.rpm
warning: python-deltarpm-3.6-3.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:python-deltarpm-3.6-3.el7 ################################# [100%]
[root@localhost packages]# rpm -ivh libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm
warning: libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:libxml2-python-2.9.1-6.el7_2.3 ################################# [100%]
[root@localhost packages]# rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm
warning: createrepo-0.9.9-28.el7.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:createrepo-0.9.9-28.el7 ################################# [100%]
關機的情況下添加的光盤是IDE格式,但是開機的情況下添加的光盤是SCSI的格式,大家可以細心的觀察下,所以我們能夠發現圖片中的第二個IDE光盤是初始安裝的光盤,也就是Linux內的/dev/sr0,上圖中第一個SCSI光盤是我們開機的時候添加的,所以是/dev/sr1.所以以后我們盡量還是關機的情況下來添加光盤,按照顯示的編號123開進行光盤前后的設置,就不會導致順序顛倒的問題了.
解決辦法就是重新設置掛載的光盤DVD1和DVD2順序,正序即可.
2.或者盡管我們的光盤位置掛載正確,但是我們的掛載順序錯誤了,也會導致這種問題,解決辦法就是上面的修改光盤的掛載順序即可,
原文:https://blog.csdn.net/weixin_30453983/article/details/80583774
# $releasever 的取值
[root@localhost ~]# rpm -qi centos-release
Name : centos-release
Version : 7
Release : 5.1804.el7.centos
Architecture: x86_64
Install Date: Sat 20 Jul 2019 10:50:42 AM CST
Group : System Environment/Base
Size : 40173
License : GPLv2
Signature : RSA/SHA256, Tue 01 May 2018 12:17:56 AM CST, Key ID 24c6a8a7f4a80eb5
Source RPM : centos-release-7-5.1804.el7.centos.src.rpm
Build Date : Sun 29 Apr 2018 12:35:55 AM CST
Build Host : x86-01.bsys.centos.org
Relocations : (not relocatable)
Packager : CentOS BuildSystem <http://bugs.centos.org>
Vendor : CentOS
Summary : CentOS Linux release file
Description :
CentOS Linux release files
# $basearch 的取值
[root@localhost ~]# arch
x86_64
/dev/cdrom是/dev/sr0的軟連接,也就是說/dev/sr0才是實際意義上的光驅。所以沒有軟連接,照樣可以掛載光驅。使用命令"mount /dev/sr0 /mnt/cdrom"便可以實現掛載。
https://bbs.csdn.net/topics/320152493
總算弄清了,
/dev/下面的文件是設備文件,是LINUX啟動,找到的硬件設備。
而/mnt是用來掛載設備的,比如光驅,軟驅,掛載后,就可以看掛載設備中的內容了。
# /dev 設備目錄,Linux 在這里創建設備節點。
# /media 媒體目錄,可移動媒體設備的常用掛載點
# /mnt 掛載目錄,另一個可移動媒體設備的常用掛載點
# cdrom sr0 sr1 sr2 對應在虛擬機中添加的 CD/DVD 節點。
[root@localhost ~]# ll /dev
total 0
lrwxrwxrwx. 1 root root 3 Jul 20 20:47 cdrom -> sr0
brw-rw----. 1 root cdrom 11, 0 Jul 20 20:47 sr0
brw-rw----. 1 root cdrom 11, 1 Jul 20 20:47 sr1
brw-rw----. 1 root cdrom 11, 2 Jul 20 20:47 sr2
# mount + 掛載源 + 掛載點 umount + 掛載源 / 掛載點
# 掛載
[root@localhost ~]# mount /dev/sr1 /mnt/mozq
mount: /dev/sr1 is write-protected, mounting read-only
# 掛載成功
[root@localhost ~]# ll /mnt/mozq/
total 542
-r--r--r--. 2 root root 14 Aug 5 2015 CentOS_BuildTag
-r--r--r--. 2 root root 212 Nov 27 2013 EULA
-r--r--r--. 2 root root 18009 Nov 27 2013 GPL
dr-xr-xr-x. 3 root root 2048 Aug 5 2015 images
dr-xr-xr-x. 2 root root 2048 Aug 5 2015 isolinux
dr-xr-xr-x. 2 root root 514048 Aug 5 2015 Packages
-r--r--r--. 2 root root 1354 Jul 25 2015 RELEASE-NOTES-en-US.html
dr-xr-xr-x. 2 root root 4096 Aug 5 2015 repodata
-r--r--r--. 2 root root 1706 Nov 27 2013 RPM-GPG-KEY-CentOS-6
-r--r--r--. 2 root root 1730 Nov 27 2013 RPM-GPG-KEY-CentOS-Debug-6
-r--r--r--. 2 root root 1730 Nov 27 2013 RPM-GPG-KEY-CentOS-Security-6
-r--r--r--. 2 root root 1734 Nov 27 2013 RPM-GPG-KEY-CentOS-Testing-6
-r--r--r--. 1 root root 3165 Aug 5 2015 TRANS.TBL
# 取消掛載
[root@localhost ~]# umount /mnt/mozq/
[root@localhost ~]# ll /mnt/mozq/
total 0
利用安裝光盤或ISO鏡像來掛載一個本地yum源,利用這個來安裝gcc
# 在 /etc/yum.repos.d 下新建 bak 目錄,將不需要的文件移動到該目錄下。
[root@localhost yum.repos.d]# mv CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Media.repo_bak CentOS-Sources.repo CentOS-Vault.repo bak
[root@localhost yum.repos.d]# ll
total 4
drwxr-xr-x. 2 root root 191 Jul 20 17:56 bak
-rw-r--r--. 1 root root 569 Jul 20 17:49 CentOS-Media.repo
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 17G 1.1G 16G 7% /
devtmpfs 476M 0 476M 0% /dev
tmpfs 488M 0 488M 0% /dev/shm
tmpfs 488M 7.7M 480M 2% /run
tmpfs 488M 0 488M 0% /sys/fs/cgroup
/dev/sda1 1014M 130M 885M 13% /boot
tmpfs 98M 0 98M 0% /run/user/0
# /dev/sr0 被掛載到 /mnt/mozq
/dev/sr0 906M 906M 0 100% /mnt/mozq
[root@localhost ~]# vi /etc/fstab
#
# /etc/fstab
# Created by anaconda on Sat Jul 20 10:50:13 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=8aaf5dae-3dce-46b2-9ecc-af9a961b1eb6 /boot xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
~
問題
[root@localhost ~]# yum search gcc
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
file:///root/packages/repodata/repomd.xml: [Errno 14] curl#37 - "Couldn't open file /root/packages/repodata/repomd.xml"
Trying other mirror.
本地 yum 源
[root@instance-fjii60o3 ~]# yum repolist -v
[root@instance-fjii60o3 ~]# yum repolist -v
Not loading "fastestmirror" plugin, as it is disabled
Loading "langpacks" plugin
Loading "versionlock" plugin
Adding en_US.UTF-8 to language list
Config time: 0.010
Yum version: 3.4.3
Setting up Package Sacks
Reading version lock configuration
Excluding 1 update due to versionlock (use "yum versionlock status" to show it)
pkgsack time: 0.009
Repo-id : baidu-bcm
Repo-name : Baidu Cloud Monitor (BCM)
Repo-revision: 1523946872
Repo-updated : Tue Apr 17 14:34:33 2018
Repo-pkgs : 66
Repo-size : 18 M
Repo-baseurl : http://repo.bcm.baidubce.com/yum
Repo-expire : 21,600 second(s) (last: Wed May 22 19:15:48 2019)
Filter : read-only:present
Repo-filename: /etc/yum.repos.d/baidu-bcm.repo
Repo-id : base/7/x86_64
Repo-name : CentOS-7 - Base
Repo-revision: 1543161601
Repo-updated : Mon Nov 26 00:00:34 2018
Repo-pkgs : 10,018
Repo-size : 9.4 G
Repo-baseurl : http://mirrors.baidubce.com/centos/7/os/x86_64/
Repo-expire : 21,600 second(s) (last: Wed May 22 19:15:48 2019)
Filter : read-only:present
Repo-excluded: 1
Repo-filename: /etc/yum.repos.d/CentOS-Base.repo
使用 yum 安裝 lrzsz
# 搜索 lrzsz 安裝包
[root@localhost ~]# yum search lrzsz
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.163.com
* extras: mirror.bit.edu.cn
* updates: ftp.sjtu.edu.cn
============================================================================== N/S matched: lrzsz ===============================================================================
lrzsz.x86_64 : The lrz and lsz modem communications programs
Name and summary matches only, use "search all" for everything.
# 安裝 lrzsz
[root@localhost ~]# yum -y install lrzsz.x86_64
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.neusoft.edu.cn
* extras: mirror.bit.edu.cn
* updates: mirrors.neusoft.edu.cn
Resolving Dependencies
--> Running transaction check
---> Package lrzsz.x86_64 0:0.12.20-36.el7 will be installed
--> Finished Dependency Resolution