[toc]

更改centos yum 源

1
/etc/yum.repos.d/CentOS-Base.rep

更改为

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[base]
name=CentOS-$releasever - Base
baseurl=http://mirrors.aliyun.com/centos/7.6.1810/os/x86_64/
gpgcheck=0

[updates]
name=CentOS-$releasever - Updates
baseurl=https://mirrors.aliyun.com/centos/7.6.1810/updates/x86_64/
gpgcheck=0

[extras]
name=CentOS-$releasever - Extras
baseurl=https://mirrors.aliyun.com/centos/7.6.1810/extras/x86_64/
gpgcheck=0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
[serverid]
#其中serverid是用于区别各个不同的repository(仓库;贮藏室;博物馆;亲信),必须有一个独一无二的名称。 重复了 前面覆盖后面--还是反过来呢???用enabled 测试是后面覆盖前面

name=Some name for this server
#name,是对repository的描述,支持像$releasever $basearch这样的变量; name=Fedora Core $releasever - $basearch - Released Updates

baseurl=url://path/to/repository/
#baseurl是服务器设置中最重要的部分,只有设置正确,才能从上面获取软件。它的格式是:
baseurl=url://server1/path/to/repository/
url://server2/path/to/repository/
url://server3/path/to/repository/
#其中url支持的协议有 http:// ftp:// file://三种。baseurl后可以跟多个url,你可以自己改为速度比较快的镜像站,但baseurl只能有一个,也就是说不能像如下格式:
baseurl=url://server1/path/to/repository/
baseurl=url://server2/path/to/repository/
baseurl=url://server3/path/to/repository/
其中url指向的目录必须是这个repository header目录的上一级,它也支持$releasever $basearch这样的变量。

#mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
#上面的这一行是指定一个镜像服务器的地址列表,通常是开启的,本例中加了注释符号禁用了,我们可以试试,将$releasever和$basearch替换成自己对应的版本和架构,例如10和i386,在浏览器中打开,我们就能看到一长串镜可用的镜像服务器地址列表。

url之后可以加上多个选项,如gpgcheck、exclude、failovermethod等,比如:
gpgcheck=1
exclude=gaim
#其中gpgcheck,exclude的含义和[main]部分相同,但只对此服务器起作用,
failovermethod=priority
#failovermethode 有两个选项roundrobin和priority,意思分别是有多个url可供选择时,yum选择的次序,roundrobin是随机选择,如果连接失 败则使用下一个,依次循环,priority则根据url的次序从第一个开始。如果不指明,默认是roundrobin。

enabled=[1 or 0]
#当某个软件仓库被配置成 enabled=0 时,yum 在安装或升级软件包时不会将该仓库做为软件包提供源。使用这个选项,可以启用或禁用软件仓库。
#通过 yum 的 --enablerepo=[repo_name] 和 --disablerepo=[repo_name] 选项,或者通过 PackageKit 的"添加/删除软件"工具,也能够方便地启用和禁用指定的软件仓库

由于通过源码安装的qemu没有办法通过系统工具进行卸载,也没有办法通过make uninstall方法卸载,所以只能通过删除文件的方式进行卸载。

qemu可执行文件默认放在/usr/local/bin,库文件默认放在/usr/local/libexec,配置文件默认放在/usr/local/etc,共享文件默认放在/usr/local/etc/share。要卸载源码编译的qemu,需要到这四个目录中找出相关的文件然后删除掉。

如果configure时没有通过–target-list=指定编译的目标机体系结构,则/usr/local/bin中的以qemu开头的文件需要删除,总共51个。

/usr/local/libexec中只有一个文件:qemu-bridge-helper,直接删除即可。

/usr/local/etc比较简单,只有一个qemu目录,其下有一个文件target-x86_64.conf,直接将qemu目录删除即可。

同/usr/local/etc一样,qemu相关的共享文件都放在/usr/local/etc/share目录下的qemu子目录中,直接将该子目录删除即可。

设置本地yum源

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
创建rpm包文件存放目录及复制相关文件
# mkdir -pv /mnt/CentOS7_ISO
# cd /run/media/robin/CentOS\ 7\ x86_64/
# cp -R * /mnt/CentOS7_ISO/

修改yum源repo文件配置
# cd /etc/yum.repos.d/
# mkdir old
# mv *.repo old

编辑repo配置文件
# vim /etc/yum.repos.d/longtao.repo
[longtao]
name=longtao local repository
baseurl=file/root/qemu-kvm-ev
gpgcheck=0
enabled=1


清空yum缓存目录
[root@centos7-router yum.repos.d]# yum clean all
Loaded plugins: fastestmirror, langpacks
Cleaning repos: local-media
Cleaning up everything
Cleaning up list of fastest mirrors

生成yum元数据
[root@centos7-router yum.repos.d]# yum makecache
Loaded plugins: fastestmirror, langpacks
local-media | 3.6 kB 00:00:00
(1/4): local-media/group_gz | 155 kB 00:00:00
(2/4): local-media/primary_db | 2.8 MB 00:00:00
(3/4): local-media/other_db | 1.2 MB 00:00:00
(4/4): local-media/filelists_db | 2.9 MB 00:00:00
Determining fastest mirrors
Metadata Cache Created ###提示元数据缓存创建成功

查看本机yum repo 仓库
[root@centos7-router ~]# yum repolist
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
repo id repo name status
local-media CentOS-7 - Media 3,723
repolist: 3,723

临时源

注意事项

  1. yum update别运行,可能把内核和上面的软件都更新了