<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>夜行人 &#187; yum</title>
	<atom:link href="http://www.187299.com/archives/tag/yum/feed" rel="self" type="application/rss+xml" />
	<link>http://www.187299.com</link>
	<description>寻觅生命中的那一片浅草......</description>
	<lastBuildDate>Tue, 07 Sep 2010 08:33:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>rpmdb: Lock table is out of available locker entries</title>
		<link>http://www.187299.com/archives/1442</link>
		<comments>http://www.187299.com/archives/1442#comments</comments>
		<pubDate>Mon, 11 Jan 2010 05:46:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[yum]]></category>

		<guid isPermaLink="false">http://www.187299.com/archives/1442</guid>
		<description><![CDATA[centos想用yum 更新软件的时候提示出错，怀疑是锁定了rpmdb rpmdb: Lock table is out of available locker entries 错误如下: rpmdb: Lock table is out of available locker entries error: db4 error(22) from db-&#62;close: Invalid argument ... ]]></description>
			<content:encoded><![CDATA[<p>centos想用yum 更新软件的时候提示出错，怀疑是锁定了rpmdb<br />
rpmdb: Lock table is out of available locker entries<br />
错误如下:<br />
rpmdb: Lock table is out of available locker entries<br />
error: db4 error(22) from db-&gt;close: Invalid argument<br />
error: cannot open Packages index using db3 - Cannot allocate memory (12)<br />
error: cannot open Packages database in /var/lib/rpm<br />
操作之前备份 /var/lib/rpm ：<br />
tar cvzf rpmdb-backup.tar.gz /var/lib/rpm<br />
# du -sh rpmdb-backup.tar.gz<br />
7.2M    rpmdb-backup.tar.gz<br />
或者<br />
tar -cf rpm.tar /var/lib/rpm<br />
# du -sh rpm.tar<br />
22M    rpm.tar<br />
删除rpm使用的BDB数据库：<br />
rm /var/lib/rpm/__db.00*<br />
重建立 rpm 使用的数据库<br />
rpm --rebuilddb<br />
现在检查，看看 rpm 包是否一切正常:<br />
rpm -qa | sub<br />
yum install subversion</p>
<p>转载自：http://hi.baidu.com/suantop/blog/item/fe32141e588e631740341744.html</p>
]]></content:encoded>
			<wfw:commentRss>http://www.187299.com/archives/1442/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>搭建CentOS5.3本地HTTP_YUM源</title>
		<link>http://www.187299.com/archives/1338</link>
		<comments>http://www.187299.com/archives/1338#comments</comments>
		<pubDate>Mon, 16 Nov 2009 16:36:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[yum]]></category>

		<guid isPermaLink="false">http://www.187299.com/?p=1338</guid>
		<description><![CDATA[下载ISO，挂载 mount -o loop /export/CentOS-5.3-x86_64-bin-DVD.iso /media/ mkdir -p /var/www/html/CentOS5 cd /var/www/html/CentOS5 cp -a /media/* . 安装软件 yum -y install createrepo 生成xml文件 createrepo /var/www/html/CentOS5/CentOS 这样... ]]></description>
			<content:encoded><![CDATA[<p>下载ISO，挂载<br />
mount -o loop /export/CentOS-5.3-x86_64-bin-DVD.iso /media/<br />
mkdir -p /var/www/html/CentOS5<br />
cd /var/www/html/CentOS5<br />
cp -a /media/* .</p>
<p>安装软件</p>
<p>yum -y install createrepo</p>
<p>生成xml文件<br />
createrepo /var/www/html/CentOS5/CentOS<br />
这样操作后 /var/www/html/CentOS5/CentOS下会多出一个repodata目录</p>
<p>如果要生成带group信息的也就是可以用yum grouplist或yum groupinstall的，则需要用以下命令</p>
<p>createrepo -g /var/www/html/CentOS5/repodata/comps.xml CentOS/</p>
<p>删除旧的repodate<br />
rm -rf /var/www/html/CentOS5/repodata</p>
<p>假设你用的域名是www.example.com<br />
假设你已经配置好Apache或Nginx，并可以通过http://www.example.com/访问到你的/var/www/html目录<br />
编写CentOS5-HTTP.repo文件<br />
vi CentOS5-HTTP.repo<br />
[CentOS5-HTTP]<br />
name=CentOS-$releasever - CentOS5-CentOS5-HTTP<br />
baseurl=http://www.example.com/CentOS5/CentOS/<br />
gpgcheck=1<br />
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5</p>
<p>保存退出</p>
<p>将CentOS5-HTTP.repo分发到客户端<br />
保存到<br />
/etc/yum.repos.d/</p>
<p>测试安装lrzsz软件</p>
<p>yum --disablerepo=\* --enablerepo=CentOS5-HTTP -y install lrzsz</p>
<p>至此，配置完毕</p>
]]></content:encoded>
			<wfw:commentRss>http://www.187299.com/archives/1338/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>yum介绍</title>
		<link>http://www.187299.com/archives/93</link>
		<comments>http://www.187299.com/archives/93#comments</comments>
		<pubDate>Thu, 23 Apr 2009 06:22:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[yum]]></category>

		<guid isPermaLink="false">http://www.momati.net/archives/93</guid>
		<description><![CDATA[什么是 yum？ yum 是 yellowdog updater modified 的缩写。yellowdog 是一个 Linux 的 distribution，RH 将这种升级技术利用到自己的 distribution 形成了现在的 yum，感觉上 yum 和 apt 的原理类似，但是 apt 是编译代... ]]></description>
			<content:encoded><![CDATA[<p><span style="font-size: small;">什么是 yum？</span></p>
<p><span style="font-size: small;"> yum 是 yellowdog updater modified 的缩写。yellowdog 是一个 Linux 的</span></p>
<p><span style="font-size: small;">distribution，RH 将这种升级技术利用到自己的 distribution 形成了现在的 yum，感觉上 yum 和 apt</span></p>
<p><span style="font-size: small;">的原理类似，但是 apt 是编译代码，执行效率远高于使用 python 写成的 yum。这是 yum 的主页。</span></p>
<p><span style="font-size: small;"><span id="more-93"></span><br />
</span></p>
<p><span style="font-size: small;"> yum 的理念是使用一个中心仓库(repository)管理一部分甚至一个 distribution</span></p>
<p><span style="font-size: small;">的应用程序相互关系，根据计算出来的软件依赖关系进行相关的升级、安装、删除等等操作，减少了 Linux 用户一直头痛的 dependencies</span></p>
<p><span style="font-size: small;">的问题。这一点上，yum 和 apt 相同。apt 原为 debian 的 deb 类型软件管理所使用，但是现在也能用到 RH 门下的 rpm</span></p>
<p><span style="font-size: small;">了。</span></p>
<p><span style="font-size: small;"> 一般这类软件通过一个或者多个配置文件描述对应的 repository 的网络地址，通过 http 或者 ftp 协议在需要的时候从</span></p>
<p><span style="font-size: small;">repository 获得必要的信息，下载相关的软件包。这样，本地用户通过建立不同的 repository 的描述说明，在有 Internet</span></p>
<p><span style="font-size: small;">连接时就能方便进行系统的升级维护工作。另外，如果需要使用代理，可以用 http_proxy 和 ftp_proxy 这些 shell</span></p>
<p><span style="font-size: small;">里面标准环境变量的设定。</span></p>
<p><span style="font-size: small;"> repository 是用 yum-arch 或者 createrepo 命令创建的，也可以用别人已有的 repository 作为镜像，这里部探讨如何建立一个 repository。</span></p>
<p><span style="font-size: small;"> yum 的基本操作</span></p>
<p><span style="font-size: small;"> yum 的基本操作包括软件的安装(本地，网络)，升级(本地，网络)，卸载，另外还有一定的查询功能。</span></p>
<p><span style="font-size: small;"> 设定好了本地的 yum 之后，就可以很方便的进行安装(现在假设就用 fc5 自带的 yum 进行安装)，如我们需要安装虚拟机 bochs，可以使用</span></p>
<p><span style="font-size: small;"> # yum install bochs</span></p>
<p><span style="font-size: small;"> 如果本地有相关的 rpm 文件，可以用</span></p>
<p><span style="font-size: small;"> # yum localinstall ur.rpm</span></p>
<p><span style="font-size: small;"> 前者导致 yum 搜索现有 repository 中的数据(一般先会连接到这些 repository 下载更新数据)，如果发现有此软件，则会通过分析其 dependencies 然后下载并安装所需软件。</span></p>
<p><span style="font-size: small;"> 如果需要卸载，可以使用</span></p>
<p><span style="font-size: small;"> # yum remove bochs</span></p>
<p><span style="font-size: small;"> 或者</span></p>
<p><span style="font-size: small;"> # yum erase bochs</span></p>
<p><span style="font-size: small;"> 这也会消解对应的 dependencies，如删除 firefox 会把 R 同时删掉，因为 R 依赖于 firefox</span></p>
<p><span style="font-size: small;"> 更新某个软件可以用</span></p>
<p><span style="font-size: small;"> # yum update firefox</span></p>
<p><span style="font-size: small;"> 如果不带后面的程序名，将会升级所有可以升级的软件。过时的软件如果需要处理(如删掉)可以添加 --obsolete 参数，或者使用 upgrade。如果需要更自动化一些的操作(避免回答一些问题)还可以增加一些参数，如</span></p>
<p><span style="font-size: small;"> # yum -y upgrade</span></p>
<p><span style="font-size: small;"> 如果做完一次系统级的升级，将会下载大量 rpm 等等东西，这将占用较多的硬盘，可以使用</span></p>
<p><span style="font-size: small;"> # yum clean packages</span></p>
<p><span style="font-size: small;"> 将相关的 rpm 文件删除，其他的一些有 headers, packages, cache, metadata, all</span></p>
<p><span style="font-size: small;"> 查看什么 rpm 提供某个程序可以使用</span></p>
<p><span style="font-size: small;"> $ yum provides /bin/rpm</span></p>
<p><span style="font-size: small;"> 而使用</span></p>
<p><span style="font-size: small;"> $ yum list rpm</span></p>
<p><span style="font-size: small;"> 会列出 rpm 相关的信息，而</span></p>
<p><span style="font-size: small;"> $ yum list info</span></p>
<p><span style="font-size: small;"> 给出详细的说明，可以用</span></p>
<p><span style="font-size: small;"> $ yum search rpm</span></p>
<p><span style="font-size: small;"> 获得一切能找到的与 rpm 相关的程序，搜索的对象是每个程序的描述部分。</span></p>
<p><span style="font-size: small;"> 更详细的参数说明请查阅相关的 man pages。在 yum-utils 里面可以找到叫 yumdownloader 的程序。使用它可以方便下载，如 srpm 等包</span></p>
<p><span style="font-size: small;"> $ yumdownloader --source firefox</span></p>
<p><span style="font-size: small;"> 如何使用 yum 升级我的 fc？</span></p>
<p><span style="font-size: small;"> 升级的核心部分很简单，首先，需要让 yum 能用新的 repository，fc 管理自己版本也用了一个 rpm，可以用如下命令更新这个包</span></p>
<p><span style="font-size: small;"> # rpm -Uvh http://download.fedora.redhat.com/pub/fedora</span></p>
<p><span style="font-size: small;"> /linux/core/5/i386/os/Fedora/RPMS/fedora-release-5-5.</span></p>
<p><span style="font-size: small;"> noarch.rpm</span></p>
<p><span style="font-size: small;"> 此后就是用 yum 把 fc4 相关的程序更新到 fc5，</span></p>
<p><span style="font-size: small;"> # yum -y upgrade</span></p>
<p><span style="font-size: small;"> 注意，由于某些自己安装的程序没有相关的 repository 程序替代，因此很可能干扰这个过程，如 qterm，原来的</span></p>
<p><span style="font-size: small;">repository 里面没有，偷懒的办法自然是先找到相关的 repository 并添加到 yum</span></p>
<p><span style="font-size: small;">的配置文件，笨拙的方法是先卸载这些东西... 进行了漫长的等待之后(我做的那次下载了 1.5Gb+</span></p>
<p><span style="font-size: small;">的东西)，就可以看着一个一个的软件更新了，然后重启，用新内核 boot 成功就几乎大功告成了。</span></p>
<p><span style="font-size: small;"> 也许有一些应用软件无法处理老版本的配置文件，需要手动配置一下基本就行了。我的 fc5 就这样从 fc4 上长了出来~</span></p>
<p><span style="font-size: small;"> FC 本身有一个关于升级的 FAQ，可以参考。</span></p>
<p><span style="font-size: small;"> 怎样配制 yum 添加新的 repository？</span></p>
<p><span style="font-size: small;"> 这主要需要关心 yum 的配置文件。它的主配置文件在 /etc/yum.conf，其说明可以参考这里。</span></p>
<p><span style="font-size: small;"> 其中重要的有 repository 的相关信息，在 fc5 里面，repository 的信息是分开存储的，一般在 /tec/yum.repos.d/ 里面，一般一个 repository 写成一个文件，如 fedora-core.repo。</span></p>
<p><span style="font-size: small;"> 网上一般提供 yum 升级的 repository 都会提供类似的说明，如 DAG，他提供了可供安装的 rpm，装上后 yum 就配置好了，可以直接用上面的命令执行系统维护，又如 dries，可以建立一个 dries.repo 文件，内容是</span></p>
<p><span style="font-size: small;"> [dries]</span></p>
<p><span style="font-size: small;"> name=Extra Fedora rpms dries - $releasever - $basearch</span></p>
<p><span style="font-size: small;"> baseurl=http://ftp.belnet.be/packages/dries.ulyssis.org/redhat/el3/en/i386/dries</span></p>
<p><span style="font-size: small;"> 这个一般看见就明白了，恕不赘述。</span></p>
<p><span style="font-size: small;"> 一些其他的工具</span></p>
<p><span style="font-size: small;"> 在 yum-utils 里面还有一些有用的工具，如 package-cleanup 用于清除本地安装的 rpm，还有维护</span></p>
<p><span style="font-size: small;">repository 的一些工具，如</span></p>
<p><span style="font-size: small;">repo-graph，repo-rss，repoclosure，repomanage，repoquery，reposync，repotrack，</span></p>
<p><span style="font-size: small;">yum-builddep。</span></p>
<p><span style="font-size: small;"><br />
</span></p>
<p><span style="font-size: small;">转载自：http://hi.baidu.com/toih1000/blog/item/6f26d41ffa938409314e15c4.html<br />
</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.187299.com/archives/93/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>yum安装gnome</title>
		<link>http://www.187299.com/archives/92</link>
		<comments>http://www.187299.com/archives/92#comments</comments>
		<pubDate>Thu, 23 Apr 2009 02:36:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[yum]]></category>

		<guid isPermaLink="false">http://www.momati.net/archives/92</guid>
		<description><![CDATA[以centos4.2为例子， #yum grouplist 显示系统已经安装的组件，和可以安装的组件 如果系统安装之初采用最小化安装，没有安装xwindow，那么r #yum -y groupinstall "X Window System" #yum -y groupinstall "GNOME Desktop ... ]]></description>
			<content:encoded><![CDATA[<p><span style="font-size: small;">以centos4.2为例子，<br />
#yum grouplist<br />
显示系统已经安装的组件，和可以安装的组件<br />
如果系统安装之初采用最小化安装，没有安装xwindow，那么r<br />
#yum -y groupinstall "X Window System"<br />
#yum -y groupinstall "GNOME Desktop Environment"</span></p>
<p><span style="font-size: small;"><span id="more-92"></span><br />
</span></p>
<p><span style="font-size: small;">注意：为了能快速下载，可以设置/etc/yum.repos.d/CentOS-Base.repo 指向国内的站点http://mirror.be10.com<br />
安装完X Window 修改<br />
/etc/X11/xdm/Xaccess （去掉 #* #any host can get a login window前面的 #）r<br />
/etc/X11/gdm/gdm.conf （Enable=true,port=177）r<br />
/etc/inittab （第一行改为 id:5:initdefault: 最后一行改为 x:5:respawn:/usr/bin/gdm）r</span></p>
<p><span style="font-size: small;">修改完毕，reboot os</span></p>
<p><span style="font-size: small;">#netstat -ln<br />
检查 177 是否开放r</span></p>
<p><span style="font-size: small;">如果没有177端口，那么可能是iptables设置有问题r<br />
可以用命令开放端口<br />
#iptables -I INPUT -p udp -s 0/0 -d 0/0 –dport 177 -j ACCEPT<br />
最彻底的办法是关闭iptables</span></p>
<p><span style="font-size: small;">/sbin/service iptables stop<br />
或者<br />
#chkconfig –level 5 iptables off<br />
然后reboot os</span></p>
<p><span style="font-size: small;">ok现在应该可以用xmanager连接 linux的图形界面了</span></p>
<p><span style="font-size: small;">Created By: sb123</span></p>
<p><span style="font-size: small;">转载自：http://hi.baidu.com/monobao/blog/item/d19e34a423e527f09152eec6.html</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.187299.com/archives/92/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CentOS使用光盘作为本地的yum源</title>
		<link>http://www.187299.com/archives/106</link>
		<comments>http://www.187299.com/archives/106#comments</comments>
		<pubDate>Tue, 14 Apr 2009 08:42:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[yum]]></category>

		<guid isPermaLink="false">http://www.momati.net/archives/106</guid>
		<description><![CDATA[[root@cacti yum.repos.d]# mkdir /media/CentOS [root@cacti yum.repos.d]# mount /dev/cdrom /media/CentOS [root@cacti yum.repos.d]# yum --disablerepo=* --enablerepo=c5-media install gcc 如需要安装其他软件，将gcc替换。 参考文章：http://hi.... ]]></description>
			<content:encoded><![CDATA[<p><span style="font-size: small;">[root@cacti yum.repos.d]# mkdir /media/CentOS<br />
[root@cacti yum.repos.d]# mount /dev/cdrom /media/CentOS<br />
[root@cacti yum.repos.d]# yum --disablerepo=* --enablerepo=c5-media install gcc</span></p>
<p><span style="font-size: small;">如需要安装其他软件，将gcc替换。</span></p>
<p>参考文章：<a href="http://hi.baidu.com/sivilian/blog/item/5a39806600fd5022aa184cd3.html" target="_blank">http://hi.baidu.com/sivilian/blog/item/5a39806600fd5022aa184cd3.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.187299.com/archives/106/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
