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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
[root@aftree ~]# yum --help
Loaded plugins: fastestmirror
Usage: yum [options] COMMAND
 
List of Commands:
 
check          Check for problems in the rpmdb
check-update   Check for available package updates
clean          Remove cached data
deplist        List a package's dependencies
distribution-synchronization Synchronize installed packages to the latest available versions
downgrade      downgrade a package
erase          Remove a package or packages from your system
fs             Acts on the filesystem data of the host, mainly for removing docs/lanuages for minimal hosts.
fssnapshot     Creates filesystem snapshots, or lists/deletes current snapshots.
groups         Display, or use, the groups information
help           Display a helpful usage message
history        Display, or use, the transaction history
info           Display details about a package or group of packages
install        Install a package or packages on your system
list           List a package or groups of packages
load-transaction load a saved transaction from filename
makecache      Generate the metadata cache
provides       Find what package provides the given value
reinstall      reinstall a package
repo-pkgs      Treat a repo. as a group of packages, so we can install/remove all of them
repolist       Display the configured software repositories
search         Search package details for the given string
shell          Run an interactive yum shell
swap           Simple way to swap packages, instead of using shell
update         Update a package or packages on your system
update-minimal Works like upgrade, but goes to the 'newest' package match which fixes a problem that affects your system
updateinfo     Acts on repository update information
upgrade        Update packages taking obsoletes into account
version        Display a version for the machine and/or available repos.
 
 
Options:
  -h, --help            show this help message and exit
  -t, --tolerant        be tolerant of errors
  -C, --cacheonly       run entirely from system cache, don't update cache
  -c [config file], --config=[config file]
                        config file location
  -R [minutes], --randomwait=[minutes]
                        maximum command wait time
  -d [debug level], --debuglevel=[debug level]
                        debugging output level
  --showduplicates      show duplicates, in repos, in list/search commands
  -e [error level], --errorlevel=[error level]
                        error output level
  --rpmverbosity=[debug level name]
                        debugging output level for rpm
  -q, --quiet           quiet operation
  -v, --verbose         verbose operation
  -y, --assumeyes       answer yes for all questions
  --assumeno            answer no for all questions
  --version             show Yum version and exit
  --installroot=[path]  set install root
  --enablerepo=[repo]   enable one or more repositories (wildcards allowed)
  --disablerepo=[repo]  disable one or more repositories (wildcards allowed)
  -x [package], --exclude=[package]
                        exclude package(s) by name or glob
  --disableexcludes=[repo]
                        disable exclude from main, for a repo or for
                        everything
  --disableincludes=[repo]
                        disable includepkgs for a repo or for everything
  --obsoletes           enable obsoletes processing during updates
  --noplugins           disable Yum plugins
  --nogpgcheck          disable gpg signature checking
  --disableplugin=[plugin]
                        disable plugins by name
  --enableplugin=[plugin]
                        enable plugins by name
  --skip-broken         skip packages with depsolving problems
  --color=COLOR         control whether color is used
  --releasever=RELEASEVER
                        set value of $releasever in yum config and repo files
  --downloadonly        don't update, just download
  --downloaddir=DLDIR   specifies an alternate directory to store packages
  --setopt=SETOPTS      set arbitrary config and repo options
  --bugfix              Include bugfix relevant packages, in updates
  --security            Include security relevant packages, in updates
  --advisory=ADVS, --advisories=ADVS
                        Include packages needed to fix the given advisory, in
                        updates
  --bzs=BZS             Include packages needed to fix the given BZ, in
                        updates
  --cves=CVES           Include packages needed to fix the given CVE, in
                        updates
  --sec-severity=SEVS, --secseverity=SEVS
                        Include security relevant packages matching the
                        severity, in updates
 
  Plugin Options:
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
[root@aftree ~]# rpm -ql yum
/etc/logrotate.d/yum
/etc/yum
/etc/yum.conf
/etc/yum.repos.d
/etc/yum/fssnap.d
/etc/yum/pluginconf.d
/etc/yum/protected.d
/etc/yum/vars
/etc/yum/version-groups.conf
/usr/bin/yum
/usr/lib/python2.7/site-packages/rpmUtils
/usr/lib/python2.7/site-packages/rpmUtils/__init__.py
/usr/lib/python2.7/site-packages/rpmUtils/__init__.pyc
/usr/lib/python2.7/site-packages/rpmUtils/arch.py
/usr/lib/python2.7/site-packages/rpmUtils/arch.pyc
/usr/lib/python2.7/site-packages/rpmUtils/miscutils.py
/usr/lib/python2.7/site-packages/rpmUtils/miscutils.pyc
/usr/lib/python2.7/site-packages/rpmUtils/oldUtils.py
/usr/lib/python2.7/site-packages/rpmUtils/oldUtils.pyc
/usr/lib/python2.7/site-packages/rpmUtils/transaction.py
/usr/lib/python2.7/site-packages/rpmUtils/transaction.pyc
/usr/lib/python2.7/site-packages/rpmUtils/updates.py
/usr/lib/python2.7/site-packages/rpmUtils/updates.pyc
/usr/lib/python2.7/site-packages/yum
/usr/lib/python2.7/site-packages/yum/Errors.py
/usr/lib/python2.7/site-packages/yum/Errors.pyc
/usr/lib/python2.7/site-packages/yum/__init__.py
/usr/lib/python2.7/site-packages/yum/__init__.pyc
/usr/lib/python2.7/site-packages/yum/callbacks.py
/usr/lib/python2.7/site-packages/yum/callbacks.pyc
/usr/lib/python2.7/site-packages/yum/comps.py
/usr/lib/python2.7/site-packages/yum/comps.pyc
/usr/lib/python2.7/site-packages/yum/config.py
/usr/lib/python2.7/site-packages/yum/config.pyc
/usr/lib/python2.7/site-packages/yum/constants.py
/usr/lib/python2.7/site-packages/yum/constants.pyc
/usr/lib/python2.7/site-packages/yum/depsolve.py
/usr/lib/python2.7/site-packages/yum/depsolve.pyc
/usr/lib/python2.7/site-packages/yum/drpm.py
/usr/lib/python2.7/site-packages/yum/drpm.pyc
/usr/lib/python2.7/site-packages/yum/failover.py
/usr/lib/python2.7/site-packages/yum/failover.pyc
/usr/lib/python2.7/site-packages/yum/fssnapshots.py
/usr/lib/python2.7/site-packages/yum/fssnapshots.pyc
/usr/lib/python2.7/site-packages/yum/history.py
/usr/lib/python2.7/site-packages/yum/history.pyc
/usr/lib/python2.7/site-packages/yum/i18n.py
/usr/lib/python2.7/site-packages/yum/i18n.pyc
/usr/lib/python2.7/site-packages/yum/igroups.py
/usr/lib/python2.7/site-packages/yum/igroups.pyc
/usr/lib/python2.7/site-packages/yum/logginglevels.py
/usr/lib/python2.7/site-packages/yum/logginglevels.pyc
/usr/lib/python2.7/site-packages/yum/mdparser.py
/usr/lib/python2.7/site-packages/yum/mdparser.pyc
/usr/lib/python2.7/site-packages/yum/metalink.py
/usr/lib/python2.7/site-packages/yum/metalink.pyc
/usr/lib/python2.7/site-packages/yum/misc.py
/usr/lib/python2.7/site-packages/yum/misc.pyc
/usr/lib/python2.7/site-packages/yum/packageSack.py
/usr/lib/python2.7/site-packages/yum/packageSack.pyc
/usr/lib/python2.7/site-packages/yum/packages.py
/usr/lib/python2.7/site-packages/yum/packages.pyc
/usr/lib/python2.7/site-packages/yum/parser.py
/usr/lib/python2.7/site-packages/yum/parser.pyc
/usr/lib/python2.7/site-packages/yum/pgpmsg.py
/usr/lib/python2.7/site-packages/yum/pgpmsg.pyc
/usr/lib/python2.7/site-packages/yum/pkgtag_db.py
/usr/lib/python2.7/site-packages/yum/pkgtag_db.pyc
/usr/lib/python2.7/site-packages/yum/plugins.py
/usr/lib/python2.7/site-packages/yum/plugins.pyc
/usr/lib/python2.7/site-packages/yum/repoMDObject.py
/usr/lib/python2.7/site-packages/yum/repoMDObject.pyc
/usr/lib/python2.7/site-packages/yum/repos.py
/usr/lib/python2.7/site-packages/yum/repos.pyc
/usr/lib/python2.7/site-packages/yum/rpmsack.py
/usr/lib/python2.7/site-packages/yum/rpmsack.pyc
/usr/lib/python2.7/site-packages/yum/rpmtrans.py
/usr/lib/python2.7/site-packages/yum/rpmtrans.pyc
/usr/lib/python2.7/site-packages/yum/sqlitesack.py
/usr/lib/python2.7/site-packages/yum/sqlitesack.pyc
/usr/lib/python2.7/site-packages/yum/sqlutils.py
/usr/lib/python2.7/site-packages/yum/sqlutils.pyc
/usr/lib/python2.7/site-packages/yum/transactioninfo.py
/usr/lib/python2.7/site-packages/yum/transactioninfo.pyc
/usr/lib/python2.7/site-packages/yum/update_md.py
/usr/lib/python2.7/site-packages/yum/update_md.pyc
/usr/lib/python2.7/site-packages/yum/updateinfo.py
/usr/lib/python2.7/site-packages/yum/updateinfo.pyc
/usr/lib/python2.7/site-packages/yum/yumRepo.py
/usr/lib/python2.7/site-packages/yum/yumRepo.pyc
/usr/lib/yum-plugins
/usr/share/bash-completion
/usr/share/bash-completion/completions
/usr/share/bash-completion/completions/yum
/usr/share/bash-completion/completions/yummain.py
/usr/share/doc/yum-3.4.3
/usr/share/doc/yum-3.4.3/AUTHORS
/usr/share/doc/yum-3.4.3/COPYING
/usr/share/doc/yum-3.4.3/ChangeLog
/usr/share/doc/yum-3.4.3/INSTALL
/usr/share/doc/yum-3.4.3/PLUGINS
/usr/share/doc/yum-3.4.3/README
/usr/share/doc/yum-3.4.3/TODO
/usr/share/doc/yum-3.4.3/comps.rng
/usr/share/locale/bg/LC_MESSAGES/yum.mo
/usr/share/locale/bn_IN/LC_MESSAGES/yum.mo
/usr/share/locale/ca/LC_MESSAGES/yum.mo
/usr/share/locale/cs/LC_MESSAGES/yum.mo
/usr/share/locale/da/LC_MESSAGES/yum.mo
/usr/share/locale/de/LC_MESSAGES/yum.mo
/usr/share/locale/el/LC_MESSAGES/yum.mo
/usr/share/locale/en_GB/LC_MESSAGES/yum.mo
/usr/share/locale/es/LC_MESSAGES/yum.mo
/usr/share/locale/eu/LC_MESSAGES/yum.mo
/usr/share/locale/fi/LC_MESSAGES/yum.mo
/usr/share/locale/fr/LC_MESSAGES/yum.mo
/usr/share/locale/gu/LC_MESSAGES/yum.mo
/usr/share/locale/hi/LC_MESSAGES/yum.mo
/usr/share/locale/hu/LC_MESSAGES/yum.mo
/usr/share/locale/id/LC_MESSAGES/yum.mo
/usr/share/locale/id_ID/LC_MESSAGES/yum.mo
/usr/share/locale/it/LC_MESSAGES/yum.mo
/usr/share/locale/ja/LC_MESSAGES/yum.mo
/usr/share/locale/lt_LT/LC_MESSAGES/yum.mo
/usr/share/locale/mr/LC_MESSAGES/yum.mo
/usr/share/locale/ms/LC_MESSAGES/yum.mo
/usr/share/locale/nb/LC_MESSAGES/yum.mo
/usr/share/locale/nl/LC_MESSAGES/yum.mo
/usr/share/locale/nl_NL/LC_MESSAGES/yum.mo
/usr/share/locale/pa/LC_MESSAGES/yum.mo
/usr/share/locale/pl/LC_MESSAGES/yum.mo
/usr/share/locale/pt/LC_MESSAGES/yum.mo
/usr/share/locale/pt_BR/LC_MESSAGES/yum.mo
/usr/share/locale/pt_PT/LC_MESSAGES/yum.mo
/usr/share/locale/ru/LC_MESSAGES/yum.mo
/usr/share/locale/sk/LC_MESSAGES/yum.mo
/usr/share/locale/sr/LC_MESSAGES/yum.mo
/usr/share/locale/sr@latin/LC_MESSAGES/yum.mo
/usr/share/locale/sv/LC_MESSAGES/yum.mo
/usr/share/locale/tr/LC_MESSAGES/yum.mo
/usr/share/locale/uk/LC_MESSAGES/yum.mo
/usr/share/locale/ur/LC_MESSAGES/yum.mo
/usr/share/locale/zh_CN/LC_MESSAGES/yum.mo
/usr/share/locale/zh_TW/LC_MESSAGES/yum.mo
/usr/share/man/man5/yum.conf.5
/usr/share/man/man8/yum-shell.8
/usr/share/man/man8/yum.8
/usr/share/yum-cli
/usr/share/yum-cli/callback.py
/usr/share/yum-cli/callback.pyc
/usr/share/yum-cli/cli.py
/usr/share/yum-cli/cli.pyc
/usr/share/yum-cli/completion-helper.py
/usr/share/yum-cli/output.py
/usr/share/yum-cli/output.pyc
/usr/share/yum-cli/shell.py
/usr/share/yum-cli/shell.pyc
/usr/share/yum-cli/utils.py
/usr/share/yum-cli/utils.pyc
/usr/share/yum-cli/yumcommands.py
/usr/share/yum-cli/yumcommands.pyc
/usr/share/yum-cli/yummain.py
/usr/share/yum-cli/yummain.pyc
/usr/share/yum-plugins
/var/cache/yum
/var/lib/yum
/var/lib/yum/history
/var/lib/yum/plugins
/var/lib/yum/uuid
/var/lib/yum/yumdb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[root@aftree ~]# rpm -qc yum
/etc/logrotate.d/yum
/etc/yum.conf
/etc/yum/version-groups.conf
[root@aftree ~]# rpm -qd yum
/usr/share/doc/yum-3.4.3/AUTHORS
/usr/share/doc/yum-3.4.3/COPYING
/usr/share/doc/yum-3.4.3/ChangeLog
/usr/share/doc/yum-3.4.3/INSTALL
/usr/share/doc/yum-3.4.3/PLUGINS
/usr/share/doc/yum-3.4.3/README
/usr/share/doc/yum-3.4.3/TODO
/usr/share/doc/yum-3.4.3/comps.rng
/usr/share/man/man5/yum.conf.5
/usr/share/man/man8/yum-shell.8
/usr/share/man/man8/yum.8



Linux/CentOS配置:使用yum update更新时不升级内核的方法

购买阿里云主机时,本来选择CentOS7.3-1611版本,期间使用过几次yum update,后偶然发现内核升级,版本也更新为7.4版本,后来小飞说yum update 之后都会这样子,后来百度发现可以禁止更新特定软件。


RedHat/CentOS/Fedora使用 yum update 更新时,默认会升级内核。但有些服务器硬件(特别是组装的机器)在升级内核后,新的内核可能会认不出某些硬件,要重新安装驱动,很麻烦。所以在生产环境中不要轻易的升级内核,除非你确定升级内核后不会出现麻烦的问题。


如果不想升级内核而只更新其他软件包,有两种方法:

1、直接在yum的命令后面加上如下的参数:

1
yum –exclude=kernel* update

2、使用 yum update 命令不升级内核和操作系统的方法

1
2
3
4
vi /etc/yum.conf 
# 在 [main] 的最后添加:
exclude=kernel*
exclude=centos-release*


1、CentOS 更新源配置文件说明 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#/etc/yum.repos.d/CentOS-Base.repo 片段 
[base] 
name=CentOS-$releasever - Base 
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os 
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ 
gpgcheck=1 
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 
#released updates  
[updates] 
name=CentOS-$releasever - Updates 
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates 
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/ 
gpgcheck=1 
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

解释 
在.repo文件中,配置语法是分段的,每一段配置一个软件仓库,配置语法如下: 

1
2
3
4
5
6
7
8
9
[repositoryid] 
name=Some name for this repository 
baseurl=url://server1/path/to/repository/ 
url://server2/path/to/repository/ 
url://server3/path/to/repository/ 
mirrorlist=url://path/to/mirrorlist/repository/ 
enabled=0/1 
gpgcheck=0/1 
gpgkey=A URL pointing to the ASCII-armoured GPG key file for the repository


其中: 
repositoryid:用于指定一个仓库,例如 [base] 
name:用于指定易读的仓库名称 
baseurl:用于指定本仓库的URL,可以是以下三种类型: 
    http — 用于指定远程 HTTP 协议的源 
    ftp — 用于指定远程 FTP 协议的源 
    file — 用于本地镜像或 NFS 挂装文件系统 
mirrorlist:用于指定仓库的镜像站点 
enabled:用于指定是否使用本仓库,默认值为1,即可用 
gpgcheck:用于指定是否检查软件包的 GPG 签名 
gpgkey:用于指定GPG签名文件的URL 

在name baseurl中经常使用如下的变量: 
    $releasever — 当前系统的版本号 
    $basearch — 当前系统的平台架构 
 若指定mirrorlist,系统将从CentOS的镜像站点中选择离您最近的仓库。并非所有的国内镜像都在CentOS的镜像站点列表中,所以我们可以直接使用baseurl直接指定离您最近的仓库。baseurl 可以指定多个URL,系统会依次检查您列出的仓库,以便在某个服务器宕机时可以使用另外的服务器。为了加快更新,在确保更新服务器及线路良好的情况下,在baseurl中只指定一个URL即可。 


配置时只需要根据各家源情况,有选择的配置 [base] [updates] [addons] [extras] [centosplus] 这几项。每一项只要修改 baseurl 和 gpgkey 为相应源地址即可。配置结束之后,要清空 yum 缓存,并重建 yum 缓存,命令如下: 
yum clean all && yum clean metadata && yum clean dbcache && yum makecache && yum update 

3、自动选择最快的源 
 由于yum中有的mirror速度是非常慢的,如果yum选择了这个mirror,这个时候yum就会非常慢,对此,可以下载fastestmirror插件,它会自动选择最快的mirror: 
#yum install yum-fastestmirror 
配置文件:(一般不用动)/etc/yum/pluginconf.d/fastestmirror.conf 
yum镜像的速度测试记录文件:/var/cache/yum/timedhosts.txt 

4、使用图形界面的yum 
 如果觉得命令行的yum不方便,那么可以使用图形化的yumex,这个看起来更方便,因为可以自由地选择软件仓库: 
#yum install yumex 

然后在系统工具中就可以看到yum extender了。实际上系统自带的“添加/删除程序“也可以实现图形化的软件安装,但有些yumex的功能它没有。

5、yum命令简介
yum check-update 检查可更新的所有软件包
yum update 下载更新系统已安装的所有软件包
yum upgrade 大规模的版本升级,与yum update不同的是,连旧的淘汰的包也升级
yum install <packages> 安装新软件包
yum update <packages> 更新指定的软件包
yum remove <packages> 卸载指定的软件包
yum groupinstall <groupnames> 安装指定软件组中的软件包
yum groupupdate <groupnames> 更新指定软件组中的软件包
yum groupremove <groupnames> 卸载指定软件组中的软件包
yum grouplist 查看系统中已经安装的和可用的软件组
yum list 列出资源库中所有可以安装或更新以及已经安装的rpm包
yum list <regex> 列出资源库中与正则表达式匹配的可以安装或更新以及已经安装的rpm包
yum list available 列出资源库中所有可以安装的rpm包
yum list available <regex> 列出资源库中与正则表达式匹配的所有可以安装的rpm包
yum list updates 列出资源库中所有可以更新的rpm包
yum list updates <regex> 列出资源库中与正则表达式匹配的所有可以更新的rpm包
yum list installed 列出资源库中所有已经安装的rpm包
yum list installed <regex> 列出资源库中与正则表达式匹配的所有已经安装的rpm包
yum list extras 列出已经安装的但是不包含在资源库中的rpm包
yum list extras <regex> 列出与正则表达式匹配的已经安装的但是不包含在资源库中的rpm包
yum list recent 列出最近被添加到资源库中的软件包
yum search <regex> 检测所有可用的软件的名称、描述、概述和已列出的维护者,查找与正则表达式匹配的值
yum provides <regex> 检测软件包中包含的文件以及软件提供的功能,查找与正则表达式匹配的值
yum clean headers 清除缓存中的rpm头文件
yum clean packages 清除缓存中rpm包文件
yum clean all 清除缓存中的rpm头文件和包文件
yum deplist <packages> 显示软件包的依赖信息
yum info 列出包信息
当第一次使用 yum 或 yum 资源库有更新时,yum会自动下载所有所需的 headers 放置于 /var/cache/yum 目录下,所需时间可能较长。
yum 命令可以使用 -y 参数用于用 yes 回答命令运行时所提出的问题。


linux下yum命令出现Loaded plugins: fastestmirror Determining fastest mirrors
原创 2013年11月07日 16:27:45
标签:
linux /
yum
10636
今天yum install的时候出问题了,找了半天才找到一个可行的解决办法
fastestmirror是yum的一个加速插件,这里是插件提示信息是插件不能用了。
不能用就先别用呗,禁用掉,先yum了再说。
1.修改插件的配置文件
# vi  /etc/yum/pluginconf.d/fastestmirror.conf  
enabled = 1//由1改为0,禁用该插件
...............................
2.修改yum的配置文件
# vi /etc/yum.conf
.........................
plugins=1//改为0,不使用插件

配置完yum源结束之后,要清空yum 缓存,并重建yum缓存,执行以下命令: yum clean all && yum clean metadata&& yum clean dbcache && yum makecache && yum update,这个时候最后一个命令会更新yum源的时候同时把所有的软件也更新了,如何屏蔽把所有的软件也更新
加上--assumeno试试,再说makecache不就更新源了



CentOS7关闭yum自动下载更新 - CSDN博客  http://blog.csdn.net/kepa520/article/details/50321015


linux yum命令详解

yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

yum的命令形式一般是如下:yum [options] [command] [package ...]
其中的[options]是可选的,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等。[command]为所要进行的操作,[package ...]是操作的对象。

概括了部分常用的命令包括:

自动搜索最快镜像插件:   yum install yum-fastestmirror
安装yum图形窗口插件:    yum install yumex
查看可能批量安装的列表: yum grouplist

yum makecache 是 将服务器上的软件包信息 现在本地缓存,以提高 搜索 安装软件的速度

yum repolist 查询使用的是哪个yum源。

1 安装
yum install 全部安装
yum install package1 安装指定的安装包package1
yum groupinsall group1 安装程序组group1

2 更新和升级
yum update 全部更新
yum update package1 更新指定程序包package1
yum check-update 检查可更新的程序
yum upgrade package1 升级指定程序包package1
yum groupupdate group1 升级程序组group1

3 查找和显示
yum info package1 显示安装包信息package1
yum list 显示所有已经安装和可以安装的程序包
yum list package1 显示指定程序包安装情况package1
yum groupinfo group1 显示程序组group1信息yum search string 根据关键字string查找安装包

4 删除程序
yum remove &#124; erase package1 删除程序包package1
yum groupremove group1 删除程序组group1
yum deplist package1 查看程序package1依赖情况

5 清除缓存
yum clean packages 清除缓存目录下的软件包
yum clean headers 清除缓存目录下的 headers
yum clean oldheaders 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的headers

比如,要安装游戏程序组,首先进行查找:
#:yum grouplist
可以发现,可安装的游戏程序包名字是”Games and Entertainment“,这样就可以进行安装:
#:yum groupinstall "Games and Entertainment"
所 有的游戏程序包就自动安装了。在这里Games and Entertainment的名字必须用双引号选定,因为linux下面遇到空格会认为文件名结束了,因此必须告诉系统安装的程序包的名字是“Games and Entertainment”而不是“Games"。

此外,还可以修改配置文件/etc/yum.conf选择安装源。可见yum进行配置程序有多方便了吧。更多详细的选项和命令,当然只要在命令提示行下面:man yum

yum groupinstall "KDE (K Desktop Environment)"

yum install pirut k3b mikmod

yum groupinstall "Server Configuration Tools"

yum groupinstall "Sound and Video"

#yum groupinstall "GNOME Desktop Environment"

yum groupinstall "Legacy Software Support"

yum groupinstall "Development Libraries"

yum groupinstall "Development Tools"

#yum groupinstall "Windows File Server"

yum groupinstall "System Tools"

yum groupinstall "X Window System"

yum install php-gd
yum install gd-devel
yum groupinstall "Chinese Support"


#yum install samba-common  //该执行会一起安装 samba-client
#yum install samba

yum install gcc
yum install cpp
yum install gcc-c++
yum install ncurses
yum install ncurses-devel
yum install gd-devel php-gd
yum install gd-devel
yum install gcc
yum install cpp
yum install gcc-c++
yum install ncurses
yum install ncurses-devel
yum install gd-devel php-gd
yum install gd-devel
yum install zlib-devel
yum install freetype-devel freetype-demos freetype-utils
yum install libpng-devel libpng10 libpng10-devel
yum install libjpeg-devel
yum install ImageMagick
yum install php-gd
yum install flex
yum install ImageMagick-devel


#yum install system-config-bind         
#yum groupinstall "DNS Name Server"      //安裝 bind 及 bind-chroot 套件
yum groupinstall "MySQL Database"'

yum clean all




yum 命令详解:
Yum 有以下特点:
*可以同时配置多个资源库(Repository)
*简洁的配置文件(/etc/yum.conf)
*自动解决增加或删除rpm包时遇到的倚赖性问题
*使用方便
*保持与RPM数据库的一致性


yum,是Yellow dog Updater Modified的简称,起初是由yellow dog这一发行版的开发者Terra Soft研发,用python写成,那时还叫做yup(yellow dog updater),后经杜克大学的Linux@Duke开发团队进行改进,遂有此名。yum的宗旨是自动化地升级,安装/移除rpm包,收集rpm包的相关信息,检查依赖性并自动提示用户解决。yum的关键之处是要有可靠的repository,顾名思义,这是软件的仓库,它可以是http或ftp站点, 也可以是本地软件池,但必须包含rpm的header, header包括了rpm包的各种信息,包括描述,功能,提供的文件,依赖性等.正是收集了这些 header并加以分析,才能自动化地完成余下的任务。
1.yum的一切配置信息都储存在一个叫yum.conf的配置文件中,通常位于/etc目 录下,这是整个yum系统的重中之重,我在的F9中查看了这一文件,大家一起来看下:
[hanlong@localhost F9常用文档]$ sudo more /etc/yum.conf
[main]
cachedir=/var/cache/yum
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
metadata_expire=1800
# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d

下面简单的对这一文件作简要的说明:
cachedir:yum缓存的目录,yum在此存储下载的rpm包和数据库,一般是/var/cache/yum。
debuglevel:除错级别,0──10,默认是2
logfile:yum的日志文件,默认是/var/log/yum.log。
exactarch,有两个选项1和0,代表是否只升级和你安装软件包cpu体系一致的包,如果设为1,则如你安装了一个i386的rpm,则yum不会用686的包来升级。
gpgchkeck= 有1和0两个选择,分别代表是否是否进行gpg校验,如果没有这一项,默认好像也是检查的。
2.好了,接下来就是yum的使用了,首先用yum来升级软件,yum的操作大都须有超级用户的权限,当然可以用sudo。
yum update,这一步是必须的,yum会从服务器的header目录下载rpm的header,放在本地的缓存中,这可能会花费一定的时间,但比起yum 给我们带来方便,这些时间的花费又算的了什么呢?header下载完毕,yum会判断是否有可更新的软件包,如果有,它会询问你的意见,是否更新,还是说 y吧,把系统始终up to date总是不错的,这时yum开始下载软件包并使用调用rpm安装,这可能要一定时间,取决于要更新软件的数目和网络状况,万一网络断了,也没关系,再 进行一次就可以了。升级完毕,以后每天只要使用yum check-update检查一下有无跟新,如果有,就用yum update进行跟新,时刻保持系统为最新,堵住一切发现的漏洞。用yum update packagename 对某个单独包进行升级。
现在简单的把yum软件升级的一些命令罗列一下:
(更新:我在安装wine的时候是用rpm一个一个安装的,先安装以来关系,然后在安装wine的主包,但是刚刚在论坛上发现来一个好的帖子,就yum的本地安装。参数是-localinstall
$yum localinstall wine-*
这样的话,yum会自动安装所有的依赖关系,而不用rpm一个一个的安装了,省了好多工作。
还有一个与他类似的参数:
$yum localupdate wine-*
如果有wine的新版本,而且你也下载到来本地,就可以这样本地更新wine了。)

1.列出所有可更新的软件清单
命令:yum check-update

2.安装所有更新软件
命令:yum update

3.仅安装指定的软件
命令:yum install

4.仅更新指定的软件
命令:yum update

5.列出所有可安裝的软件清单
命令:yum list

3.使用yum安装和卸载软件,有个前提是yum安装的软件包都是rpm格式的。
安装的命令是,yum install xxx,yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲突,那么最好,下载安装;如果有,则会给出提示,询问是否要同时安装依赖,或删除冲突的包,你可以自己作出判断
删除的命令是,yum remove xxx,同安装一样,yum也会查询数据库,给出解决依赖关系的提示。
1.用YUM安装软件包
命令:yum install

2.用YUM删除软件包
命令:yum remove

4.用yum查询想安装的软件
我们常会碰到这样的情况,想要安装一个软件,只知道它和某方面有关,但又不能确切知道它的名字。这时yum的查询功能就起作用了。你可以用 yum search keyword这样的命令来进行搜索,比如我们要则安装一个Instant Messenger,但又不知到底有哪些,这时不妨用 yum search messenger这样的指令进行搜索,yum会搜索所有可用rpm的描述,列出所有描述中和messeger有关的rpm包,于是我们可能得到 gaim,kopete等等,并从中选择。
有时我们还会碰到安装了一个包,但又不知道其用途,我们可以用yum info packagename这个指令来获取信息。
1.使用YUM查找软件包
命令:yum search
2.列出所有可安装的软件包
命令:yum list
3.列出所有可更新的软件包
命令:yum list updates
4.列出所有已安装的软件包
命令:yum list installed
5.列出所有已安装但不在 Yum Repository 內的软件包
命令:yum list extras
6.列出所指定的软件包
命令:yum list 7.使用YUM获取软件包信息
命令:yum info 8.列出所有软件包的信息
命令:yum info
9.列出所有可更新的软件包信息
命令:yum info updates
10.列出所有已安裝的软件包信息
命令:yum info installed
11.列出所有已安裝但不在 Yum Repository 內的软件包信息
命令:yum info extras
12.列出软件包提供哪些文件
命令:yum provides

5.清除YUM缓存
yum 会把下载的软件包和header存储在cache中,而不会自动删除。如果我们觉得它们占用了磁盘空间,可以使用yum clean指令进行清除,更精确的用法是yum clean headers清除header,yum clean packages清除下载的rpm包,yum clean all 清除所有
1.清除缓存目录(/var/cache/yum)下的软件包
命令:yum clean packages

2.清除缓存目录(/var/cache/yum)下的 headers

命令:yum clean headers

3.清除缓存目录(/var/cache/yum)下旧的 headers

命令:yum clean oldheaders

4.清除缓存目录(/var/cache/yum)下的软件包及旧的headers

命令:yum clean, yum clean all (= yum clean packages; yum clean oldheaders)

以上所有命令参数的使用都可以用man来查看:
1、安装图形版yumex:yum install yumex。
2、安装额外的软件仓库:
rpm.livna.org 的软件包仓库:
rpm -ivh http://livna-dl.reloumirrors.net … ease-7-2.noarch.rpm

freshrpms.net 的软件包仓库:
rpm –ivh http://ftp.freshrpms.net/pub/fre … 1.1-1.fc.noarch.rpm

3、安装最快源 yum install yum-fastestmirror

资源真的是非常丰富,从Centos到Ubuntu,ISO镜像、升级包,应有尽有,上交的兄弟们真是幸福,羡慕啊。不过还好,我们好歹也算是在教育网内,凑合着也可以沾点光,下载一些。
网址为:ftp://ftp.sjtu.edu.cn/

相应的yum的repo为
[updates]
name=Fedora updates
baseurl=ftp://ftp.sjtu.edu.cn/fedora/linux/updates/$releasever/$basearch/
enabled=1
gpgcheck=0
[fedora]
name=Fedora $releasever - $basearch
baseurl=ftp://ftp.sjtu.edu.cn/fedora/linux/releases/$releasever/Everything/$basearch/os/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY

如果在机器上安装了apt管理器,则相应的源为
repomd ftp://ftp.sjtu.edu.cn/ fedora/linux/updates/$(VERSION)/$(ARCH)/

repomd ftp://ftp.sjtu.edu.cn/ fedora/linux/releases/$(VERSION)/Everything/$(ARCH)/os/

这与前面yum的源的格式上有一些差别,需要加以注意。



下面介绍一下fedora 下安装 scim

1. 什么输入法适合我?
fcitx和scim是目前比较好的输入法, 但是他们的特点不同,fcitx只能输入中文,而scim可以根据需要,利用不同的码表达到中英日…等等各种语言的输入问题。如果你只懂中文,或者只会输 入英文&中文,那么fcitx是一个不错的选择,因为它漂亮,小巧,实用。如果你还需要输入日文或者其他语言,那么你因该安装scim。通 过合理的配置,他能够让你像在windows里面一样,想输入什么语言就能输入什么语言,同一种语言想用什么输入法就用什么输入法。Scim的扩充性很 强,而且比较稳定,我就是选择的是scim.
2. 安装一个新输入法前需要哪些准备?
如果你选择fcitx或者scim,那么我建议你删除系统自带的中文输入法。方法如下:
rpm –qa | grep iiimf | xargs rpm –e
rpm –qa | grep Chinput| xargs rpm –e
如果有哪一行提示rpm: no packages given for erase那表示本身你的系统里面没有该输入法,不用担心,继续往下看就行了。
说 明:rpm –qa是列出所有安装的rpm包,grep iiimf是选择出其中名字含有iiimf的那些包,xargs rpm –e的意思是把前面列出的这些包删除掉。Xargs的作用就是把前面通过 | 传过来的数据作为下面命令的参数。这就好比一个过滤器,首先是放着所有的安装包,然后grep以后,只留下了含有某些特定关键字的rpm包,然后通过 xargs和rpm –e的组合运用,把剩下的这些含有某特定关键字的包删掉。这样就达到了删除该输入法及相关包的目的。下面的Chinput也是如此,在此不再重复。如果你还安装了其他输入法,比如你原来装的是fcitx,现在想装scim,那么你最好模仿上面的样子把fcitx删除,方法就是把iiimf的位置改成 fcitx就可以了。
在安装新输入法之前,最好这样做一下,因为多种输入法同时存在一个系统中没有什么好处,你只可能去用一个,而且他们同时存在可能有的时候会出现问题,想想也知道,会互相竞争嘛。所以在此以后,你应该保证系统里面已经没有中文输入法了。通过类似以下方式验证:
whereis fcitx
whereis scim
whereis miniChinput

3. 输入法是何时被系统调用的?
很多人不知道输入法到底什么时候被load进来,不知道这个当然就不知道为什么有的时候呼不出输入法(因为可能根本没有调入)当然也不会知道如何配置能够符合自己的要求。
大 家都知道,linux下面比较常用的有两个桌面系统,gnome和kde,这都无所谓,他们其实都是架在X系统之上的。简单的说X系统就是一个最核心,也 是最底层的桌面系统,gnome也好,kde也罢,或者其他的什么fvwm之类的,都只不过是X系统和用户之间的另一层软件而已。所以要想达到不管使用什 么桌面系统,都能调入输入法,就是要在X系统启动的时候,让输入法也启动起来,那么这样之后,无论你使用的是gnome还是kde或者其他什么桌面,都能 够调入输入法。因为当轮到他们启动的时候,X系统已经启动好了,输入法已经被系统调入了。那么X系统又是如何启动的呢?让我们从startx开始说起。
无论你用什么桌面系统,都是通过startx启动的,那么startx究竟是什么呢?一个应用程序还是一个脚本文件?为什么它能够启动各种桌面系统,并且能够按照相应的配置文件来设置呢?带着疑问,我在console里面输入whereis startx.
在 找到了存放startx的路径以后,用编辑器打开它发现原来是一个脚本文件。这个脚本文件的内容可能根据发行版不同,会有差异,如果你懂一些shell的 语言,那么你可以尝试看看,不一定要全部看懂,但是你大致看过以后会发现最后有一个xinit的命令,然后跟着一些参数。我尝试在console下面输入 xinit(注意,不要在图形界面下做此操作)
发现图形界面启动拉,但是很丑陋,什么功能都没有,鼠标可以动,还有一个可以输入命令的小窗口。怎 么退出来?ctrl+alt+backspace. 原来如此,startx只是一个脚本,里面通过对一系列配置文件的分析设置,最终利用xinit命令启动图形界面。不管是kde还是gnome,都是在这 个脚本中完成的。那么让我们再打开startx脚本看看里面还做了些什么。你仔细看看,会发现有一个东西很显眼,就是/etc/X11/xinit /xinitrc,这个xinitrc好像很眼熟,在配置输入法的其他贴中总是看到,这里出现了肯定是里面运行了这个脚本。再看其他的一些东西,其实都是利用shell配置出一个xinit启动的参数,用来配置桌面系统用的,不用管它。目前已知的就是startx的时候它会去执行一个/etc/X11 /xinit/xinitrc的脚本,让我们打开来看看里面有什么。
打开一看,其中一段我觉得最有价值,是一个for循环,他依次执行了/etc /X11/xinit/xinitrc.d/下面的所有脚本。你可以耐心的找一下,一定可以发现。那么这个目录里面有些什么内容呢?有一个文件看名字就知道和输入相关,他叫xinput。等等,让我们理一下,是怎么从startx到xinput的。
首先是执行startx这个脚本文件,里面他会执行xinitrc这个脚本,然后xinitrc脚本里面的,叫xinput。OK, 我们继续,打开xinput看看。
4.安装软件包
rpm -Uvh scim-0.8.2-1.i586.rpm
rpm -Uvh scim-chinese-0.2.6-1.i586.rpm

5.修改配置文件
接下来重要的一步就是,修改一下
/etc /X11/xinit/xinitrc.d/xinput文件,让SCIM在X启动的时候也启动。我看到网上很多文章也说过,但总是不得要领,经过自己试 验,最简单的就是把xinput文件里的Chinput全部替换为SCIM,chinput替换为scim,保存重启X就可以了。
zh_CN*)
     if [ -e /usr/bin/scim ]; then
   XIM="SCIM"
            elif [ -e /usr/X11R6/bin/xcin ] ; then
                 export LC_CTYPE=zh_CN.GB2312
                 XIM="xcin-zh_CN.GB2312"  
     fi
;;

..............................

SCIM)
XIM_PROGRAM=scim
        XIM_ARGS="-d"
;;


然后修改/etc/gtk-2.0/gtk.immodules,找到这一行:
"xim" "X Input Method" "gtk20" "/usr/share/locale" "ko:ja:zh"
改为:
"xim" "X Input Method" "gtk20" "/usr/share/locale" "en:ko:ja:zh"
可能表示输入英文时也使用该输入法

安装完毕后运行scim-setup,将输入法的切换键改为ctrl+space



环境介绍:

CentOS6.X

执行yum --help查看帮助文件:

update         Update a package or packages on your system

upgrade        Update packages taking obsoletes into account

结果验证:

1.执行2个命令时,都会升级系统版本,如我原本的系统为CentOS6.4升级完成后都为CentOS6.6;

2. 执行2个命令时,软件都会更新,配置文件都不变,如果配置文件有新的重名的话,取决于软件包怎么写的。

未完--



系统每天凌晨 3 点自动执行 yum update 任务

但升级内核后,会出现下面情况

一些编译软件需要内核模块才能够被调用, 而内核模块需要与当前版本内核编译后才能够使用, 假设内核升级后,之前软件模块是不可兼容的, 需重新编译后才能够再次被调用,甚至可能导致在启动过程中因为无法加载该模块而无法启用某种系统文件而无法正常启用电脑,需现场修复


RedHat/CentOS/Fedora使用 yum update 更新时,默认会 升级内核 。但有些服务器硬件(特别是组装的机器)在升级内核后,新的内核可能会认不出某些硬件,要重新安装驱动,很麻烦。所以在生产环境中不要轻易的升级内核,除非你确定升级内核后不会出现麻烦的问题。


利用 下面方法进行自动升级过程忽略 kernel 自动更新

[plain] view plain copy

  1. yum --exclude=packgeName\* update  

  2. yum --exclude=packgeName1\* --exclude=packgeName2\* update  

  3. yum -x 'packageName*' update  

  4. yum -x 'packageName1*' -x 'packageName2*' update  


例如

[plain] view plain copy

  1. yum -y --exclude=kernel\* update  

  2. yum -y -x 'kernel*' update  


假如你已经制作自动化脚本, 而不希望修改脚本条件下可参考下面做法

[plain] view plain copy

  1. vi /etc/yum.conf  

  2. [main]  

  3. exclude=kernel*  

版权声明:本文为博主原创文章,未经博主允许不得转载。



使用yum update更新文件系统时不更新内核的方法

使用yum update更新时不升级内核,先进行备份以防止修改出错。

[plain] view plain copy

  1. cp /etc/yum.conf /etc/yum.confbak  


方法一、修改yum的配置文件

vim /etc/yum.conf  在[main]的最后添加

[plain] view plain copy

  1. exclude=kernel*  

  2. exclude=centos-release*  


方法二、直接在yum的命令后面加上如下的参数

[plain] view plain copy

  1. yum --exclude=kernel* update  


查看系统版本  cat /etc/issue
查看内核版本  uname -a


由于虚拟化的影响,阿里云的ECS服务器轻易不要升级内核。 
下面以我的CentOS 7.0 64位服务器为例说明设置方式。 
(以前用的CentOS,以及Fedora服务器基本也适用)

首先,不要采用低版本中常用的如下方式:

yum –exclude=kernel* update1

这个命令在Fedora中基本可以用,但是对于“centos-release”的包无法处理。

完整的办法是:直接修改配置文件/etc/yum.conf,在[main]下面追加下面两行: 
exclude=kernel* 
exclude=centos-release*

示例:

[densintian@rachel ~]# diff /etc/yum.conf ~/backup/yum.conf.20150918 13,14d12 < exclude=kernel* < exclude=centos-release* [densintian@rachel ~]# 12345

设置好后,yum update就不会更新内核了

阿里云ECS CentOS 2.6版本内核升级至3.10


当前有部分应用对系统内核版本有一定的要求,比如Docker要求内核版本在3.10以上,云服务器中提供的Centos 7以下的阿里云官方公共镜像是2.6以下。虽然更换系统到Centos 7可以满足要求,但是更换系统后对业务环境重新部署会消耗一定时间和人力成本,因此可以考虑针对当前系统进行内核升级。

提示:

为避免系统运行出现异常,不推荐进行内核升级。如有该方面的需求,务必在进行操作前创建系统盘快照,以备出现异常后可以及时进行恢复。

升级前系统镜像:CentOS 6.5 64位  

内核版本:2.6.32-431.23.3.el6_x86_64

1、导入public key

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

2、安装elrepo到内核为2.6.32的CentOS中

rpm -Uvh http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm

3、安装kernel-lt(long term support)长期支持版本

yum --enablerepo=elrepo-kernel install kernel-lt -y

注:

1)

如果直接通过yum方式使用elrepo源速度会较慢(该源在国外)。

推荐采用rpm的方式安装kernel-lt:

访问http://elrepo.org/linux/kernel/el6/x86_64/RPMS/下载对应的rpm包,通过rpm方式安装:

rpm -ivh kernel-lt-3.10.93-1.el6.elrepo.x86_64.rpm

2)

关于kernel-lt的介绍可以参考elrepo官网介绍:http://elrepo.org/tiki/kernel-lt

4、编辑grub.conf文件,修改Grub引导顺序

vim /etc/grub.conf

确认安装的新内核的位置,将default的值调整为新内核的顺序,如本次升级案例中新装的内核位置为0,所以将default修改为0,保存退出,reboot重启服务器。

grub.jpg 

5、重启系统后检查内核

uname.jpg 

6、内核升级完成后进行测试

升级完成后可以安装docker进行使用观察:

yum  install  -y  docker-io

service  docker  start

docker  pull  centos:centos 7

docker  run  -t  -i  centos:centos 7  /bin/bash

docker run centos.jpg