📄 0220upgrade.htm
字号:
clean ∶下载的档案被放到 /var/cache/yum ,可使用 clean 将他移除,
可清除的项目∶packages | headers | metadata | cache 等;
另外,在[工作项目]部分还可以具有整个群组套件的安装方式,如下所示∶
grouplist ∶列出所有可使用的『套件组』,例如 Development Tools 之类的;
groupinfo ∶后面接 group_name,则可了解该 group 内含的所有套件名;
groupinstall∶这个好用!可以安装一整组的套件群组,相当的不错用!
更常与 --installroot=/some/path 共用来安装新系统
groupupdate ∶升级整个套件群组;
groupremove ∶移除某个套件群组;</span>
<span class=term_hd>范例一∶搜寻 CentOS 的更新主机上是否有 RAID 磁碟阵列相关套件?</span>
[root@linux ~]# <span class=term_command>yum search raid</span>
<span class=term_say>.....前面省略.....</span>
<span class=term_write>mdadm.i386 1.6.0-3 base</span>
Matched from:
mdadm controls Linux md devices (software RAID arrays)
mdadm is used to create, manage, and monitor Linux MD (software RAID)
<span class=term_say>.....后面省略.....
# 看到否?输出资料的特殊字体那一行就显示了你可以安装的套件名称然后你可以这样∶</span>
[root@linux ~]# <span class=term_command>yum info mdadm</span>
Name : mdadm
Arch : i386
Version: 1.6.0
Release: 3
Size : 84 k
Repo : base
Summary: mdadm controls Linux md devices (software RAID arrays)
Description:
<span class=term_say>.....后面省略.....
# 瞧一瞧啊!套件的版本名称、资料大小、还有该套件出处 (base)!
# 需要注意看的是 Summary 与 Description 这两个注意事项内容!</span>
</pre></td></tr></table>
yum 真是个很好用的东西,他可以直接查询是否有某些特殊的套件,
你可以利用『 <span class=text_import2>yum search "一些关键字"</span> 』或者是『
<span class=text_import2>yum list</span> 』列出所有的套件名称,
然后再以正规表示法取得关键字,或者是『 <span class=text_import2>yum list "套件名称"</span> 』
就能够知道该套件的用途,
最后再决定要不要安装啊!上面的范例一就是在找出磁碟阵列的管理软体,
如果确定要安装时,那就可以这样处理∶<br />
<table class="term"><tr><td class="term"><pre>
<span class=term_hd>范例二∶安装某个套件吧!以 mdadm 为例∶</span>
[root@linux ~]# <span class=term_command>rpm -q mdadm</span>
package mdadm is not installed
<span class=term_say># 鸟哥的主机并没有安装这个玩意儿~所以底下开始安装先!</span>
[root@linux ~]# <span class=term_command>yum install mdadm</span>
Setting up Install Process
Setting up repositories
update 100% |=========================| 951 B 00:00
base 100% |=========================| 1.1 kB 00:00
addons 100% |=========================| 951 B 00:00
extras 100% |=========================| 1.1 kB 00:00
<span class=term_say># 上面这个阶段在读取 RPM 档案的档头资料;</span>
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for mdadm to pack into transaction set.
mdadm-1.6.0-3.i386.rpm 100% |=========================| 8.2 kB 00:00
---> Package mdadm.i386 0:1.6.0-3 set to be updated
--> Running transaction check
<span class=term_say># 上面这个阶段则是在下载档案以及准备更新的阶段</span>
Dependencies Resolved
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
mdadm i386 1.6.0-3 base 84 k
Transaction Summary
=============================================================================
Install 1 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 84 k
Is this ok [y/N]: <span class=term_command>y</span>
<span class=term_say># 至于这个阶段则在分析相依属性,并且让使用者确认下载开始</span>
wnloading Packages:
(1/1): mdadm-1.6.0-3.i386 100% |=========================| 84 kB 00:00
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: mdadm ######################### [1/1]
Installed: mdadm.i386 0:1.6.0-3
Complete!
<span class=term_say># 最终则下载与安装的结果!</span>
</pre></td></tr></table>
瞧!经过 yum 我们可以很轻松的就安装好一个软体,并且这个软体已经主动的帮我们做好相依属性的克服了,
真是方便到爆!另外,你必须要知道,<span class=text_import2>刚刚那个被下载安装的 mdadm
档案被放置到 /var/cache/yum 里面去了</span>,
如果你要节省硬碟空间的话那么可以在安装完毕后将该档案移除,就用∶<br />
<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>yum clean packages</span>
Cleaning up Packages
2 packages removed
</pre></td></tr></table>
这样就能够清除掉已下载的档案棉~节省一下硬碟空间啊!OK~那如何进行整体的更新呢?
比如说鸟哥刚刚装完了 CentOS 4.3 ,但这个版本已经推出若干时间,所以也已经作了很多更新了,
那鸟哥如何整体更新啊?很简单,就用如下的指令∶<br />
<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>yum -y update</span>
</pre></td></tr></table>
加一个『 -y 』的参数可以让系统自动帮你回答『 yes 』,在背景处理时会比较方便一点。
如果你是第一次执行,那就会发现∶哇!怎么下载的资料量到达数百 MB 之谱!没错啊!
所以记得 <span class=text_import2>/var/ 这个目录的容量要给大一点</span>才行!
否则就会出现无法完整下载所有更新档案的问题啊! @_@<br /><br />
<a name="yum_group"></a><hr><li><span class=text_import1>安装套件群组的功能</span><br />
<div class=block2>
什么是『套件群组』呢?还记得在安装的时候有出现套件选择的地方吧?
在那个时候你选择的资料可不是『套件名称』喔,而是一堆『套件群组』,举例来说,
你会看到『KDE 桌面环境』之类的,而不是每个 KDE 桌面的各项套件名称,对吧!那个咚咚就是『套件群组』啦!
由于各大 distributions 预设都没有选择发展工具 (Development Tools),
这些工具包含了 gcc, kernel-devel 等等,那么你如何使用 yum 一口气安装呢?
看看底下的范例∶<br />
<table class="term"><tr><td class="term"><pre>
<span class=term_hd>范例三∶查询与安装『套件群组』</span>
[root@linux ~]# <span class=term_command>yum grouplist</span>
Installed Groups:
Administration Tools
Authoring and Publishing
Compatibility Arch Support
<span class=term_say>.....中间省略.....</span>
Available Groups:
<span class=term_write>Development Tools</span>
XFCE-4.2
<span class=term_say>.....中间省略.....</span>
Done
<span class=term_say># 看到没!上面就列出来你已经安装的套件群组,还有尚可安装的其他套件群组,
# 真是非常的方便!那么如何知道 Development Tools 里面有啥咚咚?</span>
[root@linux ~]# <span class=term_command>yum groupinfo "Development Tools"</span>
Group: Development Tools
Required Groups: <span class=term_say><==所需要的相依属性资料</span>
Development Libraries
Default Metapkgs: <span class=term_say><==预设内部所需要的中继套件</span>
Emacs
Optional Metapkgs: <span class=term_say><==最好还含有这些套件较佳</span>
Ruby
XEmacs
<span class=term_say>.....中间省略.....</span>
Mandatory Packages: <span class=term_say><==一些所需要的套件资料</span>
pkgconfig
<span class=term_write>gcc-ppc32
make
gcc
autoconf</span>
<span class=term_say>.....中间省略.....</span>
Default Packages:
gcc-g77
cscope
<span class=term_say>.....中间省略.....</span>
Optional Packages
dejagnu
ElectricFence
gcc-gnat
<span class=term_say>.....中间省略.....
# 总共会列出来这个『套件群组』内含有的各项资料,如果你需要安装的话,就可以∶</span>
[root@linux ~]# <span class=term_command>yum groupinstall "Development Tools"</span>
</pre></td></tr></table>
利用这个『 yum groupinstall "套件群组名" 』可以让你一口气安装很多的套件,
而不必担心某个套件忘记装了!实在是很不错啦~而且利用 groupinfo 的功能你也可以发现一些不错的套件资料,
如此一来,你就可以更方便的管理你的 Linux 系统了,很不错吧!<br /><br />
</div>
<table border=1 width=90% cellspacing=0 cellpadding=5><tr><td>
例题∶请设定一下工作排程,让你的 centOS 可以每天自动更新系统<br /><br />
答∶<ul>
可以使用『 crontab -e 』来动作,也可以编辑『 vi /etc/crontab 』来动作,
由于这个更新是系统方面的,所以鸟哥习惯使用 vi /etc/crontab 来进行指令的说明。
其实内容很简单∶<pre>40 5 * * * root yum -y update && yum clean packages</pre>这样就可以自动更新了,
时间订在每天的凌晨 5:40 ,并且更新完成后会主动的将下载的套件资料移除喔!
</ul>
</td></tr></table><br />
</div>
<hr /><a NAME="yum_others"></a><img src="../images/penguin-s.gif" alt="小标题的图示" height="23" width="16" align="middle" /><span class="text_h2">不同版本间的升级</span><br />
<div class=block2>
什么!不同的版本之间可以直接『网路』升级了喔?没错!而且整个流程还挺简单的,
升级完成之后,绝大部分的服务都还不会有困扰!真是很不错啊!那什么是『不同版本?』举例来说,
CentOS 4.2 升级到 CentOS 4.3 算是一种,而 Fedora Core 1 升级到 CentOS 4.3 则又是另外一种,
同样是 CentOS 的升级比较容易,尤其 4.3 本来就是架构在 4.2 上面持续发展的结果;
不过如果是 Fedora Core 的话,可能就比较麻烦一点点。底下我们分别谈一谈这两种方式的升级吧!<br /><br />
<a name="yum_centos"></a><hr><li><span class=text_import1>CentOS 4.2 升级到 CentOS 4.3</span><br />
<div class=block2>
在 CentOS 的发展理念当中,如果推出了 4.3 ,那么 4.2 以前的 4.x 版本就不会继续发展,
所以使用者必须要将原本的 4.2 直接提升到 4.3 才行。那么需要作些什么动作呢?
不需要啊!只要修改一下 yum 的设定档就好了。首先,同样需要找到最近的镜像站台,
我们依旧以义守大学的 FTP 网站来提供所需要的套件资料,修改成这样∶<br />
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -