<?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; redhat</title>
	<atom:link href="http://www.litrin.net/tag/redhat/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.litrin.net</link>
	<description>It is Cool to OpenSource</description>
	<lastBuildDate>Fri, 03 Feb 2012 04:33:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Redhat的壁垒</title>
		<link>http://www.litrin.net/2011/03/12/redhat%e7%9a%84%e5%a3%81%e5%9e%92/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=redhat%25e7%259a%2584%25e5%25a3%2581%25e5%259e%2592</link>
		<comments>http://www.litrin.net/2011/03/12/redhat%e7%9a%84%e5%a3%81%e5%9e%92/#comments</comments>
		<pubDate>Sat, 12 Mar 2011 06:19:12 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[开源7788]]></category>
		<category><![CDATA[站长的blog]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[业界话题]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=1406</guid>
		<description><![CDATA[前些日子，Redhat宣布将要改变现有的发行版本和补丁包的命名方式，并且直言不讳的说这样是为了“有效的防止竞争对手介入”。一点也不突然，自从Fedora从Redhat中分离的那一天起，这一天就迟早会到来，我反而觉得Redhat动手太迟了。 相比正统到迂腐的“HAT”，“FEDORA”休闲了很多，也正如单词本身的定位，现在的Redhat事实上是Redhat Enterprise Linux( 红帽企业Linux,RHEL)的意思，fedora成为了社区维护的Linux。事实证明，这种战略确实在尽可能的减少开支的情况下给Redhat带来了可观的收益。 说起盈利，目前正统的linux厂商甚至于开源软件厂商的盈利模式无外乎卖服务而已。显然的是，Redhat不但从技术上还是市场上，这些年一直是 作为商业Linux的标杆而“神一样的存在”。大量的应用甚至到专门为Redhat而开发。但说实话，Redhat的价格高的有些离谱，授权费用甚至超过商业Windows或者Unix。作为商业行为我们无可厚非，但对于这些专属应用的下场确实一个艰难的决定：要么放弃，要么使用非授权版本的RHEL。显然Centos的存在就是弥补了这样一个空缺——除了商标之外就是一个RHEL。当然，一贯在商业上滑头的Oracle也是搞了一套RHEL like的Oracle Linux；类似的还有Novell提出可以为客户维护RHEL的服务，这里也不再累述。 所有这一切建立的基础是什么？正式基于RHEL虽然是商业软件，但不得不开源。不可否认，目前Linux的体系里大多数的更新都出自 redhat，没有人敢于否认这一点。甚至可以这么说：“目前最有影响力的企业级Linux都是基于RPM的，RPM本身就是Redhat的！”但看着自己的成果却被别人拿去赚钱，没有人会受这样的窝囊气。此次Redhat做出的改变只能说是在GPL框架内做出的最后反抗。但这样后果如何？ 可能一：Redhat破坏了目前的生态，Centos可以转为独立分支；Oracle 甚至可以直接转向Solaris，RPM体系逐渐衰落。直至最后影响到自己，进而影响到整个Linux的社区。或者说RPM旁落，Debian系里将会出现下一个Redhat。 可能二：Redhat借此击垮了Centos和Oracle Linux，让自己独大，赚取更多利益。到头来可能会是更高的授权费用。但相对这确实是有利于Linux生态的。 可能三：这个可能是最有可能的结果，也是最无聊的。大家依旧我行我素，依然现状不改。 OK，说起服务，不得不提Apple。最近Apple最新的IDE－Xcode4也放在了App store里出售，标价$4.99。要知道Mac上TextMate这个简单的文本编辑器都要卖到$56。区区5刀只能说是象征性收费。这是一个很有意思的问题，也许不久以后的将来IT业的收费模式将会逐步改变为“微收费”模式。像Redhat这样的情况完全可以完全精确到每次升级收取一定数量的服务费，而不是像现在这样按照年这样大的粒度。相信不少企业也会认同这样的收费模式，量上去了，平摊成本自然会降低。这同时也是提醒了很多特定模式下的客户：“收费意味着更高的服务质量和体验！”]]></description>
			<content:encoded><![CDATA[<p>前些日子，Redhat宣布将要改变现有的发行版本和补丁包的命名方式，并且直言不讳的说这样是为了“有效的防止竞争对手介入”。一点也不突然，自从Fedora从Redhat中分离的那一天起，这一天就迟早会到来，我反而觉得Redhat动手太迟了。</p>
<p>相比正统到迂腐的“HAT”，“FEDORA”休闲了很多，也正如单词本身的定位，现在的Redhat事实上是Redhat Enterprise Linux( 红帽企业Linux,RHEL)的意思，fedora成为了社区维护的Linux。事实证明，这种战略确实在尽可能的减少开支的情况下给Redhat带来了可观的收益。</p>
<p>说起盈利，目前正统的linux厂商甚至于开源软件厂商的盈利模式无外乎卖服务而已。显然的是，Redhat不但从技术上还是市场上，这些年一直是 作为商业Linux的标杆而“神一样的存在”。大量的应用甚至到专门为Redhat而开发。但说实话，Redhat的价格高的有些离谱，授权费用甚至超过商业Windows或者Unix。作为商业行为我们无可厚非，但对于这些专属应用的下场确实一个艰难的决定：要么放弃，要么使用非授权版本的RHEL。显然Centos的存在就是弥补了这样一个空缺——除了商标之外就是一个RHEL。当然，一贯在商业上滑头的Oracle也是搞了一套RHEL like的Oracle Linux；类似的还有Novell提出可以为客户维护RHEL的服务，这里也不再累述。</p>
<p><span id="more-1406"></span><br />
所有这一切建立的基础是什么？正式基于RHEL虽然是商业软件，但不得不开源。不可否认，目前Linux的体系里大多数的更新都出自 redhat，没有人敢于否认这一点。甚至可以这么说：“目前最有影响力的企业级Linux都是基于RPM的，RPM本身就是Redhat的！”但看着自己的成果却被别人拿去赚钱，没有人会受这样的窝囊气。此次Redhat做出的改变只能说是在GPL框架内做出的最后反抗。但这样后果如何？</p>
<p style="padding-left: 30px;">可能一：Redhat破坏了目前的生态，Centos可以转为独立分支；Oracle 甚至可以直接转向Solaris，RPM体系逐渐衰落。直至最后影响到自己，进而影响到整个Linux的社区。或者说RPM旁落，Debian系里将会出现下一个Redhat。<br />
可能二：Redhat借此击垮了Centos和Oracle Linux，让自己独大，赚取更多利益。到头来可能会是更高的授权费用。但相对这确实是有利于Linux生态的。<br />
可能三：这个可能是最有可能的结果，也是最无聊的。大家依旧我行我素，依然现状不改。</p>
<p>OK，说起服务，不得不提Apple。最近Apple最新的IDE－Xcode4也放在了App store里出售，标价$4.99。要知道Mac上TextMate这个简单的文本编辑器都要卖到$56。区区5刀只能说是象征性收费。这是一个很有意思的问题，也许不久以后的将来IT业的收费模式将会逐步改变为“微收费”模式。像Redhat这样的情况完全可以完全精确到每次升级收取一定数量的服务费，而不是像现在这样按照年这样大的粒度。相信不少企业也会认同这样的收费模式，量上去了，平摊成本自然会降低。这同时也是提醒了很多特定模式下的客户：“收费意味着更高的服务质量和体验！”</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2011/03/12/redhat%e7%9a%84%e5%a3%81%e5%9e%92/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CentOS上Xen的快速部署</title>
		<link>http://www.litrin.net/2010/09/16/centos%e4%b8%8axen%e7%9a%84%e5%bf%ab%e9%80%9f%e9%83%a8%e7%bd%b2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=centos%25e4%25b8%258axen%25e7%259a%2584%25e5%25bf%25ab%25e9%2580%259f%25e9%2583%25a8%25e7%25bd%25b2</link>
		<comments>http://www.litrin.net/2010/09/16/centos%e4%b8%8axen%e7%9a%84%e5%bf%ab%e9%80%9f%e9%83%a8%e7%bd%b2/#comments</comments>
		<pubDate>Thu, 16 Sep 2010 05:57:43 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[硬件相关]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=1312</guid>
		<description><![CDATA[背景描述 一台托管在外的服务器，环境为CentOS5.5，跑LAMP。由于运行环境和成本控制的考虑，需要同时配置PHP4+Mysql和PHP5+Mysql两种环境。起初计划采用两个apache环境，不同的端口来解决。考虑到目前Xen技术上已经成熟，于是考虑在真实主机上安装ngnix和mysql。通过xen安装两套虚拟环境分别配置不同的Php版本，前端使用ngnix代理的方式实现多个虚拟主机合并到同一个80号的目的。 本文同样适用于Redhat和小白鼠Fedora. 真实主机（主机名:www）上配置Xen CentOS的Xen还是比较容易设置的 #yum install kernel-xen xen等待安装，安装结束后，修改grub配置，确保主机通过xen内核启动后，重启主机。 主机启动后，首先确认 #uname -r ，内核版本号后面应该跟随一个xen标记，如：2.6.18-194.11.3.el5xen 需要解释的是，由于这台主机的要求网络结构是“一个出口”，即逻辑上虚拟主机的网络拓扑应该是路由方式，而Centos默认Xen的结构是网桥模式，这里需要修改下相应的配置。 /etc/xen/xend-config.sxp文件中 (network-script network-bridge) (vif-script vif-bridge) 注释掉 (network-script network-route) (vif-script     vif-route) 去掉注释 重启xen服务使设置生效，/etc/init.d/xend restart 配置虚拟主机 相比之前参考的很多文档，Centos的虚拟主机配置相对比较容易，至少没有那么复杂，因为Centos提供了一个比较方便的工具virt-install 我准备给虚拟主机都安装CentOS5.5，为了方便，我将光盘挂装到了 /mnt并设置了ngnix可以直接通过http://www/方式访问光盘中的文件，如果您之前通过http或者其他方式网络安装过操作系统，这一步应该很好理解。 正题来了：  virt-install -n CentOSVM1 -r 512 -f /xen/CentOSVM1.img  -l http://www/  &#8211;network=network:default -p -s 10 &#8211;nographics &#8211;vcpus=2 解释： -n CentOSVM1 设置虚拟服务器名称 -r 512 设置内存大小 -f [...]]]></description>
			<content:encoded><![CDATA[<p>背景描述</p>
<p>一台托管在外的服务器，环境为CentOS5.5，跑LAMP。由于运行环境和成本控制的考虑，需要同时配置PHP4+Mysql和PHP5+Mysql两种环境。起初计划采用两个apache环境，不同的端口来解决。考虑到目前Xen技术上已经成熟，于是考虑在真实主机上安装ngnix和mysql。通过xen安装两套虚拟环境分别配置不同的Php版本，前端使用ngnix代理的方式实现多个虚拟主机合并到同一个80号的目的。</p>
<p>本文同样适用于Redhat和小白鼠Fedora.</p>
<p><span id="more-1312"></span></p>
<p><strong>真实主机（主机名:www）上配置Xen</strong></p>
<p>CentOS的Xen还是比较容易设置的<br />
#yum install kernel-xen xen等待安装，安装结束后，修改grub配置，确保主机通过xen内核启动后，重启主机。</p>
<p>主机启动后，首先确认<br />
#uname -r ，内核版本号后面应该跟随一个xen标记，如：2.6.18-194.11.3.el5<strong>xen</strong></p>
<p>需要解释的是，由于这台主机的要求网络结构是“一个出口”，即逻辑上虚拟主机的网络拓扑应该是路由方式，而Centos默认Xen的结构是网桥模式，这里需要修改下相应的配置。<br />
/etc/xen/xend-config.sxp文件中<br />
(network-script network-bridge)<br />
(vif-script vif-bridge)<br />
注释掉<br />
(network-script network-route)<br />
(vif-script     vif-route)<br />
去掉注释<br />
重启xen服务使设置生效，/etc/init.d/xend restart</p>
<p><strong>配置虚拟主机</strong></p>
<p>相比之前参考的很多文档，Centos的虚拟主机配置相对比较容易，至少没有那么复杂，因为Centos提供了一个比较方便的工具virt-install</p>
<p>我准备给虚拟主机都安装CentOS5.5，为了方便，我将光盘挂装到了 /mnt并设置了ngnix可以直接通过<a rel="nofollow" target="_blank" href="http://www/">http://www/</a>方式访问光盘中的文件，如果您之前通过http或者其他方式网络安装过操作系统，这一步应该很好理解。</p>
<p>正题来了：</p>
<p> virt-install -n CentOSVM1 -r 512 -f /xen/CentOSVM1.img  -l <a rel="nofollow" target="_blank" href="http://mirrors.163.com/FreeBSD/releases/i386/8.1-RELEASE/8.1-RELEASE/">http://www/</a>  &#8211;network=network:default -p -s 10 &#8211;nographics &#8211;vcpus=2</p>
<p>解释：<br />
-n CentOSVM1 设置虚拟服务器名称<br />
-r 512 设置内存大小<br />
-f /xen/CentOSVM1.img  虚拟磁盘文件的保存路径，如果有重名可以使用&#8211;force参数强制重建。<br />
-l <a rel="nofollow" target="_blank" href="http://mirrors.163.com/FreeBSD/releases/i386/8.1-RELEASE/8.1-RELEASE/">http://www/</a> 安装文件的访问方式，支持nfs http ftp smb等多种方式。如果你对你的带宽比较自信，可以使用<a rel="nofollow" target="_blank" href="http://mirrors.163.com/centos/5.5/os/i386/">http://mirrors.163.com/centos/5.5/os/i386/</a>网易的镜像站<br />
&#8211;network=network:default 网络连接方式，我选择的是route中的default<br />
-p 我的机器不支持硬件虚拟化，-p参数不使用类似技术。现在新的CPU连Atom这样的都支持了，-p可以不加。<br />
-s 10磁盘文件的大小，单位是G<br />
&#8211;nographics 不使用图形界面，可以不加此参数，然后加入&#8211;vnc看看图形效果<br />
&#8211;vcpus=2 虚拟CPU的个数</p>
<p>剩下的就是等待安装的过程，由于之前的设置，网络这块直接DHCP就可以通过了。安装过程中报错找不到安装媒体的大多都是网络设置错误。</p>
<p>整个过程中可以通过ctrl+]回到真实主机，通过在真实主机中使用xm console CentOSVM1回到CentOSVM1的控制台。</p>
<p>OK，可以开始第二台主机的安装了，照旧吧：<br />
 virt-install -n CentOSVM2 -r 512 -f /xen/CentOSVM2.img  -l <a rel="nofollow" target="_blank" href="http://mirrors.163.com/FreeBSD/releases/i386/8.1-RELEASE/8.1-RELEASE/">http://www/</a>  &#8211;network=network:default -p -s 10 &#8211;nographics &#8211;vcpus=1</p>
<p><strong>部分操作</strong></p>
<p>xm console &lt;NAME&gt; 连接到虚拟机控制台<br />
xm create &lt;NAME&gt; 根据配置文件创建主机，如果您一直follow之前的操作并且完成了虚拟主机的安装，这条命令实际上等于启动一台虚拟机<br />
xm shutdown &lt;NAME&gt; 关机<br />
xm reboot &lt;NAME&gt; 重启<br />
xm destroy &lt;NAME&gt; 删除主机<br />
xentop 各主机之前的资源占用情况</p>
<p><strong>关于Ubuntu的xen</strong></p>
<p>记得804的时候，通过apt-get install ubuntu-xen-server xen的方式可以搭建起xen的环境，但不知出于什么目的，904以后，apt源里面移出了linux-xen内核的安装包。你当然可以下载到类似的替代安装包，但这无疑给安装带来了麻烦。</p>
<p>ubunt desktop和server的安装盘都无法通过网络安装程序，如果需要部署Ubuntu的虚拟机，你需要下载alternate安装盘。</p>
<p>暂时就这么多，改日写个ubuntu的安装文档出来。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2010/09/16/centos%e4%b8%8axen%e7%9a%84%e5%bf%ab%e9%80%9f%e9%83%a8%e7%bd%b2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>一个怪异的Cron问题</title>
		<link>http://www.litrin.net/2010/08/13/%e4%b8%80%e4%b8%aa%e6%80%aa%e5%bc%82%e7%9a%84cron%e9%97%ae%e9%a2%98/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e4%25b8%2580%25e4%25b8%25aa%25e6%2580%25aa%25e5%25bc%2582%25e7%259a%2584cron%25e9%2597%25ae%25e9%25a2%2598</link>
		<comments>http://www.litrin.net/2010/08/13/%e4%b8%80%e4%b8%aa%e6%80%aa%e5%bc%82%e7%9a%84cron%e9%97%ae%e9%a2%98/#comments</comments>
		<pubDate>Fri, 13 Aug 2010 03:24:22 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Unix]]></category>
		<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[solaris]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[服务器]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=1297</guid>
		<description><![CDATA[一个朋友向我咨询他遇到的一个问题。 Centos的操作系统，自然是主流应用的WWW。近期无缘无故的Cron失效，所有的任务都无法执行。多次重启主机，重启Cron服务均是如此。 起先我由于没有拿到控制台，怀疑是Cron经典的环境变量问题，修改了半天也是白忙。总算此兄开恩，将root的权限给了我。:) 登入主机，crontab -l，所有命令都正常，单独执行也都OK。跑到/var/spool/cron下也没有发现有什么文件权限之类的问题。 每天都被cron mail挤爆信箱的我觉的从邮件入手吧。谁知那位兄弟没有配置邮件系统，而且直接disable了sendmail服务。 这里需要说明的是，Crontab 默认会将定时执行的结果通过mail返回给用户。如果没有启动Sendmail服务，系统（确切的应该是sendmail程序）将会把每一个结果保存为一个文件，放置在/var/spool/clientmqueue下。 cd /var/spool/clientmqueue 呵呵，果然！等了半个多小时愣是没有给list出来。du -sh 也是个费时费力的操作了。 mv * 太慢，直接 ls &#124; xargs rm 操作，清空了所有的文件，重试了一下，搞定！ 解决此类方法的建议： 开启sendmail服务，这是最佳途径。 每条命令使用 &#8216;&#62;&#62;&#8217;  指向一个日志文件，如果觉得返回没有必要，就直接  &#62;&#62; /dev/null 2&#62;&#38;1 丢弃掉。 更加变态的方式就是再加一条cron，定期清空 /var/spool/clientmqueue PS： 之前没有弄过，完成测试的时候才理清的一个Cron问题： 30 3 * * 1 dosomething ,是每周一3点半执行是确信无疑的了。 30 3 1 * 1 dosomething, 是当1号是周一的时候执行吗？不是！是1号，或者周一的时候执行。crontab中的星期是一个“或”的概念，而非其他的“和”的概念。]]></description>
			<content:encoded><![CDATA[<p>一个朋友向我咨询他遇到的一个问题。</p>
<p>Centos的操作系统，自然是主流应用的WWW。近期无缘无故的Cron失效，所有的任务都无法执行。多次重启主机，重启Cron服务均是如此。</p>
<p>起先我由于没有拿到控制台，怀疑是Cron经典的环境变量问题，修改了半天也是白忙。总算此兄开恩，将root的权限给了我。:)</p>
<p><span id="more-1297"></span></p>
<p>登入主机，crontab -l，所有命令都正常，单独执行也都OK。跑到/var/spool/cron下也没有发现有什么文件权限之类的问题。</p>
<p>每天都被cron mail挤爆信箱的我觉的从邮件入手吧。谁知那位兄弟没有配置邮件系统，而且直接disable了sendmail服务。</p>
<p>这里需要说明的是，Crontab 默认会将定时执行的结果通过mail返回给用户。如果没有启动Sendmail服务，系统（确切的应该是sendmail程序）将会把每一个结果保存为一个文件，放置在/var/spool/clientmqueue下。</p>
<p>cd /var/spool/clientmqueue 呵呵，果然！等了半个多小时愣是没有给list出来。du -sh 也是个费时费力的操作了。</p>
<p>mv * 太慢，直接 ls | xargs rm 操作，清空了所有的文件，重试了一下，搞定！</p>
<p>解决此类方法的建议：</p>
<ol>
<li>开启sendmail服务，这是最佳途径。</li>
<li>每条命令使用 &#8216;&gt;&gt;&#8217;  指向一个日志文件，如果觉得返回没有必要，就直接  &gt;&gt; /dev/null 2&gt;&amp;1 丢弃掉。</li>
<li>更加变态的方式就是再加一条cron，定期清空 /var/spool/clientmqueue</li>
</ol>
<p>PS：</p>
<p>之前没有弄过，完成测试的时候才理清的一个Cron问题：</p>
<p>30 3 * * 1 dosomething ,是每周一3点半执行是确信无疑的了。<br />
30 3 1 * 1 dosomething, 是当1号是周一的时候执行吗？不是！是1号，或者周一的时候执行。crontab中的星期是一个“或”的概念，而非其他的“和”的概念。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2010/08/13/%e4%b8%80%e4%b8%aa%e6%80%aa%e5%bc%82%e7%9a%84cron%e9%97%ae%e9%a2%98/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>为GIMP的退出叫好</title>
		<link>http://www.litrin.net/2009/12/22/%e4%b8%bagimp%e7%9a%84%e9%80%80%e5%87%ba%e5%8f%ab%e5%a5%bd/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e4%25b8%25bagimp%25e7%259a%2584%25e9%2580%2580%25e5%2587%25ba%25e5%258f%25ab%25e5%25a5%25bd</link>
		<comments>http://www.litrin.net/2009/12/22/%e4%b8%bagimp%e7%9a%84%e9%80%80%e5%87%ba%e5%8f%ab%e5%a5%bd/#comments</comments>
		<pubDate>Tue, 22 Dec 2009 02:00:33 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[开源7788]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[业界话题]]></category>
		<category><![CDATA[桌面应用]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=1136</guid>
		<description><![CDATA[自从第一次接触Linux的桌面版，我就认识了GIMP这个软件。印象最深的就是那个戴着“南瓜帽”的小狐狸形象。近期得到消息，Ubuntu这个目前拥有最大Linux Desktop份额的发行版从下一版本（1004）后正式将GIMP排除在默认安装包之外。 从GIMP本身说起，这是一个很强大的图片编辑软件，很多功能已经达到或者超过了昂贵的Photoshop。曾经用它处理过几次图片，效果也很让我满意。但作为Linux桌面版必备的软件，它的利用率可能是最低的了——有太多太多的软件可以替代它的位置，而且不同于OpenOffice，你无法要求每一个Linux用户都修改图片，或者已经被PS浸染的人回过头来用这个甚至买不到一本参考书的GIMP。 就像windows这个系统始终被诟病的捆绑，捆绑的仅仅是几乎人人都会用到的浏览器而已，甚至稍微常用点的MS office都不在捆绑之列。如果有一天windows将他们的Virtual Studio绑进操作系统，那会是多么滑稽的事。 Linux的开发者目前存在的最大问题似乎就在这里，对最终受众的技能要求过高。我也曾见过论坛上新手问诸如文本编辑器之类的问题，却被老手们“强迫”使用vi这类巨复杂的工具来实现。仿佛只有把事情搞的复杂了，搞的小众了才能显示出“老手”的能耐。计算机作为机器最终是要为人服务的，没有必要为了更好的为机器服务一次让人去学他们本身就不感兴趣的东西。 想起当初redhat曾经在自带游戏里边放置了一个叫做x-bill的游戏。这个游戏主要的内容似乎是和一个虚拟的Bill先生抢占PC，Bill先生会在每台机器上做一个windows标记，你的任务就是做企鹅标记，并把windows标记的PC扔进垃圾桶。说实在的这个游戏确实很无趣，但这个游戏本身的设计到被选入Redhat发行包的整个过程都代表了很多Linuxer的理念。可惜的是，你不能要求每一个用户都参与到这个游戏中，不能仅仅依靠一腔热情的完成这个游戏。 只有包容所有受众的、不令人望而生畏的操作系统才是最好的。为GIMP的退居二线而叫好！]]></description>
			<content:encoded><![CDATA[<p>自从第一次接触Linux的桌面版，我就认识了GIMP这个软件。印象最深的就是那个戴着“南瓜帽”的小狐狸形象。近期得到消息，Ubuntu这个目前拥有最大Linux Desktop份额的发行版从下一版本（1004）后正式将GIMP排除在默认安装包之外。</p>
<p>从GIMP本身说起，这是一个很强大的图片编辑软件，很多功能已经达到或者超过了昂贵的Photoshop。曾经用它处理过几次图片，效果也很让我满意。但作为Linux桌面版必备的软件，它的利用率可能是最低的了——有太多太多的软件可以替代它的位置，而且不同于OpenOffice，你无法要求每一个Linux用户都修改图片，或者已经被PS浸染的人回过头来用这个甚至买不到一本参考书的GIMP。</p>
<p><span id="more-1136"></span></p>
<p>就像windows这个系统始终被诟病的捆绑，捆绑的仅仅是几乎人人都会用到的浏览器而已，甚至稍微常用点的MS office都不在捆绑之列。如果有一天windows将他们的Virtual Studio绑进操作系统，那会是多么滑稽的事。</p>
<p>Linux的开发者目前存在的最大问题似乎就在这里，对最终受众的技能要求过高。我也曾见过论坛上新手问诸如文本编辑器之类的问题，却被老手们“强迫”使用vi这类巨复杂的工具来实现。仿佛只有把事情搞的复杂了，搞的小众了才能显示出“老手”的能耐。计算机作为机器最终是要为人服务的，没有必要为了更好的为机器服务<strong>一次</strong>让人去学他们本身就不感兴趣的东西。</p>
<p>想起当初redhat曾经在自带游戏里边放置了一个叫做x-bill的游戏。这个游戏主要的内容似乎是和一个虚拟的Bill先生抢占PC，Bill先生会在每台机器上做一个windows标记，你的任务就是做企鹅标记，并把windows标记的PC扔进垃圾桶。说实在的这个游戏确实很无趣，但这个游戏本身的设计到被选入Redhat发行包的整个过程都代表了很多Linuxer的理念。可惜的是，你不能要求每一个用户都参与到这个游戏中，不能仅仅依靠一腔热情的完成这个游戏。</p>
<p>只有包容所有受众的、不令人望而生畏的操作系统才是最好的。为GIMP的退居二线而叫好！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2009/12/22/%e4%b8%bagimp%e7%9a%84%e9%80%80%e5%87%ba%e5%8f%ab%e5%a5%bd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Virtual Server Virtual PC下Linux桌面的问题</title>
		<link>http://www.litrin.net/2008/02/19/virtual-server-virtual-pc%e4%b8%8blinux%e6%a1%8c%e9%9d%a2%e7%9a%84%e9%97%ae%e9%a2%98/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=virtual-server-virtual-pc%25e4%25b8%258blinux%25e6%25a1%258c%25e9%259d%25a2%25e7%259a%2584%25e9%2597%25ae%25e9%25a2%2598</link>
		<comments>http://www.litrin.net/2008/02/19/virtual-server-virtual-pc%e4%b8%8blinux%e6%a1%8c%e9%9d%a2%e7%9a%84%e9%97%ae%e9%a2%98/#comments</comments>
		<pubDate>Tue, 19 Feb 2008 02:01:00 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[硬件相关]]></category>
		<category><![CDATA[网络和安全]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=477</guid>
		<description><![CDATA[自从微软出了自家的虚拟机软件之后，兼容性就一直遭人不齿&#8212;&#8212;确实，只提供windows系列的增强驱动也确实太小家子气。公司里有一台Virtual server，即V-PC的server版，在上面装了N个Linux的发行版，几乎所有的桌面全都被搞得惨不忍睹。 琢磨了半天，硬件都是认出来的，只能说明分辨率之类的设置有问题，(Centos为例) 修改桌面配置文件/etc/X11/xorg.conf， 找到：DefaultDepth&#160;&#160;&#160;&#160; 24&#160; 改为 DefaultDepth&#160;&#160;&#160;&#160; 16 #16 bit 色深 同样的： SubSection &#34;Display&#34; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Viewport&#160;&#160; 0 0 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Depth&#160;&#160;&#160;&#160;&#160;24 &#160;&#160;&#160;&#160;&#160;&#160;&#160; EndSubSection 改为： SubSection &#34;Display&#34; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Viewport&#160;&#160; 0 0 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Depth&#160;&#160;&#160;&#160; 16 &#160;&#160;&#160;&#160;&#160;&#160;&#160; EndSubSection &#160; 这个就是标准的640x480x16bit的标准VGA. 重起桌面，问题解决！同样的方法在V-PC上通过。 &#160;]]></description>
			<content:encoded><![CDATA[<p>自从微软出了自家的虚拟机软件之后，兼容性就一直遭人不齿&mdash;&mdash;确实，只提供windows系列的增强驱动也确实太小家子气。公司里有一台Virtual server，即V-PC的server版，在上面装了N个Linux的发行版，几乎所有的桌面全都被搞得惨不忍睹。</p>
<p>琢磨了半天，硬件都是认出来的，只能说明分辨率之类的设置有问题，(Centos为例) 修改桌面配置文件/etc/X11/xorg.conf，<br />
找到：DefaultDepth&nbsp;&nbsp;&nbsp;&nbsp; 24&nbsp; 改为 DefaultDepth&nbsp;&nbsp;&nbsp;&nbsp; 16 #16 bit 色深<br />
同样的：</p>
<p>SubSection &quot;Display&quot;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Viewport&nbsp;&nbsp; 0 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Depth&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;24 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; EndSubSection</p>
<p>改为：</p>
<p>SubSection &quot;Display&quot;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Viewport&nbsp;&nbsp; 0 0<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Depth&nbsp;&nbsp;&nbsp;&nbsp; 16<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; EndSubSection</p>
<p>&nbsp; 这个就是标准的640x480x16bit的标准VGA.</p>
<p>重起桌面，问题解决！同样的方法在V-PC上通过。</p>
<p><a rel="nofollow" target="_blank" target="_blank" href="http://www.litrin.net/UserFiles/vitual-server.png"><img height="241" alt="Virtual Pc server linux桌面问题" width="400" src="/UserFiles/vitual-server.png" /></a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2008/02/19/virtual-server-virtual-pc%e4%b8%8blinux%e6%a1%8c%e9%9d%a2%e7%9a%84%e9%97%ae%e9%a2%98/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Centos+dual core的性能问题</title>
		<link>http://www.litrin.net/2007/10/18/centosdual-core%e7%9a%84%e6%80%a7%e8%83%bd%e9%97%ae%e9%a2%98/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=centosdual-core%25e7%259a%2584%25e6%2580%25a7%25e8%2583%25bd%25e9%2597%25ae%25e9%25a2%2598</link>
		<comments>http://www.litrin.net/2007/10/18/centosdual-core%e7%9a%84%e6%80%a7%e8%83%bd%e9%97%ae%e9%a2%98/#comments</comments>
		<pubDate>Thu, 18 Oct 2007 03:24:23 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[硬件相关]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=467</guid>
		<description><![CDATA[一台Centos5的主机，做编译的时候发现速度非常慢，修改各项参数也无济于事。vmstat是正常，分析下来最可能的原因就是CPU了。 该主机的CPU是双核的PD2.66，用的是一块华硕的VIA芯片主板。出问题的时候给我的感觉就是像笔记本开启省电模式一样。 demsg查看启动信息，找到了可疑的纪录： Losing some ticks&#8230; checking if CPU frequency changed. google了一下： This seems to be common with dual core chips, and poor acpi implementations for cpu throttling. Change the clock source by changing your kernel boot options to clock=pmtmr or clock=pit 由于系统的ＡＣＰｉ提供了错误的信息导致ｃｐｕ开启了自动降频之类的问题。修改ｇｒｕｂ的配置文件，估计八成跟这高不成低不就的VIA板子有关。 vi /boot/grub/grub.conf 找到类似于　kernel /vmlinuz-2.6.18-8.1.14.el5 ro root=LABEL=/ 的一行，在末尾添加clock=pmtmr，问题解决。 根据以往惯例，估计同样的FC和REDAHT AS系列也会有类似的问题，可以同样解决。]]></description>
			<content:encoded><![CDATA[<p>一台Centos5的主机，做编译的时候发现速度非常慢，修改各项参数也无济于事。vmstat是正常，分析下来最可能的原因就是CPU了。</p>
<p>该主机的CPU是双核的PD2.66，用的是一块华硕的VIA芯片主板。出问题的时候给我的感觉就是像笔记本开启省电模式一样。</p>
<p>demsg查看启动信息，找到了可疑的纪录：<br />
<em>Losing some ticks&#8230; checking if CPU frequency changed.</em></p>
<p>google了一下：</p>
<p>This seems to be common with dual core chips, and poor acpi<br />
implementations for cpu throttling. Change the clock source by<br />
changing your kernel boot options to clock=pmtmr or clock=pit
</p>
<p>由于系统的ＡＣＰｉ提供了错误的信息导致ｃｐｕ开启了自动降频之类的问题。修改ｇｒｕｂ的配置文件，估计八成跟这高不成低不就的VIA板子有关。</p>
<p>vi /boot/grub/grub.conf</p>
<p>找到类似于　kernel /vmlinuz-2.6.18-8.1.14.el5 ro root=LABEL=/ 的一行，在末尾添加clock=pmtmr，问题解决。</p>
<p>根据以往惯例，估计同样的FC和REDAHT AS系列也会有类似的问题，可以同样解决。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2007/10/18/centosdual-core%e7%9a%84%e6%80%a7%e8%83%bd%e9%97%ae%e9%a2%98/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>制作Fedora Live CD</title>
		<link>http://www.litrin.net/2007/04/23/%e5%88%b6%e4%bd%9cfedora-live-cd/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e5%2588%25b6%25e4%25bd%259cfedora-live-cd</link>
		<comments>http://www.litrin.net/2007/04/23/%e5%88%b6%e4%bd%9cfedora-live-cd/#comments</comments>
		<pubDate>Mon, 23 Apr 2007 03:27:21 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=447</guid>
		<description><![CDATA[第一步是获取 livecd-tools RPM，可从 Zeuthen 的 Fedora 主页 获得。直接获取并安装 livecd-tools-001-1.i386.rpm，如下所示： &#160; $ su - &#60;Enter root password&#62; # wget -c http://people.redhat.com/davidz/livecd/i386/livecd-tools-001-1.i386.rpm # rpm -ivh livecd-tools-001-1.i386.rpm 现在应该使用 livecd-creator 命令，不使用任何选项调用该命令可获取一个简单的命令列表。 清单 2. livecd-creator 命令提供的选项 $ livecd-creator No packages specified. usage: livecd-creator [--help] [--repo=&#60;name1&#62;,&#60;url1&#62; ...] [--repo=&#60;name2&#62;,&#60;url2&#62;] --package=&#60;p1&#62; [--package=&#60;p2&#62; ...] [--exclude-package=&#60;e1&#62;] --exclude-package=&#60;e2&#62; ...] [--base-on=&#60;path-to-iso-file&#62;] [--fslabel=&#60;label&#62;] --help : Print usage and [...]]]></description>
			<content:encoded><![CDATA[<p>第一步是获取 livecd-tools RPM，可从 <a rel="nofollow" target="_blank" href="http://people.redhat.com/davidz/livecd/i386/">Zeuthen 的 Fedora 主页</a> 获得。直接获取并安装 livecd-tools-001-1.i386.rpm，如下所示：</p>
<p>&nbsp;</p>
<p></p>
<table cellspacing="0" cellpadding="0" summary="" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
$ su -
&lt;Enter root password&gt;
# wget -c http://people.redhat.com/davidz/livecd/i386/livecd-tools-001-1.i386.rpm
# rpm -ivh livecd-tools-001-1.i386.rpm</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>现在应该使用 <code>livecd-creator</code> 命令，不使用任何选项调用该命令可获取一个简单的命令列表。</p>
<p>
<a name="listing2"><strong><font color="#000000">清单 2. livecd-creator 命令提供的选项</font></strong></a></p>
<table cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
$ livecd-creator
No packages specified.

usage: livecd-creator [--help]
                      [--repo=&lt;name1&gt;,&lt;url1&gt; ...] [--repo=&lt;name2&gt;,&lt;url2&gt;]
                      --package=&lt;p1&gt; [--package=&lt;p2&gt; ...]
                      [--exclude-package=&lt;e1&gt;] --exclude-package=&lt;e2&gt; ...]
                      [--base-on=&lt;path-to-iso-file&gt;]
                      [--fslabel=&lt;label&gt;]

 --help             : Print usage and exit
 --repo             : Path to yum repository
 --package          : Include this package
 --exclude-package  : Exclude this package
 --base-on          : Add packages to an existing live CD iso9660 image
 --fslabel          : File system label (default: livecd-YYYYMMDD-HHMI)</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p><a name="N100D1"><span class="smalltitle"><font color="#000000">创建核心包的本地存储库</font></span></a></p>
<p>另外，您还需要能够访问定制 Live CD 上所需工具的 RPM。如果您拥有快速的 Internet 连接，则可在创建 Live CD 之前使用 <code>livecd-creator</code> 命令下载这些 RPM 及其依赖的包。另一个选择是从 Fedora Core 6 安装 CD 或 DVD 中复制所有包并创建本地的&ldquo;核心&rdquo;存储库。要创建本地存储库，需要 <a rel="nofollow" target="_blank" href="http://tqmcube.com/repo.php">createrepo 工具</a>。 </p>
<p>
<a name="listing3"><strong><font color="#000000">清单 3. 安装 createrepo 工具</font></strong></a></p>
<table cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
# wget -c http://tqmcube.com/files/createrepo-0.4.3-5.1.noarch.rpm
# rpm -ivh createrepo-0.4.3-5.1.noarch.rpm</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>现在创建本地存储库，首先从 Core 6 的 5 张 CD 或 1 张 DVD 中复制所有的 RPM，然后使用 createrepo 工具。</p>
<p>
<a name="listing4"><strong><font color="#000000">清单 4. 创建本地存储库</font></strong></a></p>
<table cellspacing="0" cellpadding="0" summary="" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
# mkdir /var/www/html/repo/core/
# cp &lt;PATH TO RPMs&gt; /var/www/html/repo/core/
# createrepo /var/www/html/repo/core/
</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>执行完最后一条命令要花费些时间，它将创建一个 repodata 目录。<code>livecd-creator</code> 命令使用此目录来访问包。</p>
<p><a name="N10103"><span class="smalltitle"><font color="#000000">创建配置包的本地存储库</font></span></a></p>
<p>由于要使用 Zeuthen 的包作为 Live CD 的基础，因此也需要为它们创建本地存储库。 </p>
<p>
<a name="listing5"><strong><font color="#000000">清单 5. 创建 LiveCD 包的存储库</font></strong></a></p>
<table cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
# mkdir base_packages
# cd base_packages
# wget -c http://people.redhat.com/davidz/livecd/i386/fedora-livecd-6-1.i386.rpm
# wget -c http://people.redhat.com/davidz/livecd/i386/fedora-livecd-gnome-6-1.i386.rpm
# wget -c http://people.redhat.com/davidz/livecd/i386/fedora-livecd-desktop-6-1.i386.rpm
# createrepo /root/base_packages</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>跟以前一样，最后一条命令将生成 repodata 目录，帮助 <code>livecd-creator</code> 定位配置包。</p>
<p><a name="N1011E"><span class="atitle"><font color="#000000">制作 CD</font></span></a></p>
<p>设置好存储库后，就可轻松地创建定制 Live CD 了。<code>livecd-creator</code> 命令生成 ISO 映像，这些映像可被烧制成 CD-R。但是我建议使用虚拟化软件测试 ISO，而不要实际将它们烧制到物理介质上。有几种这类软件可免费获得，如 VMware Player、QEMU 和 VirtualBox。</p>
<p><a name="N1012B"><span class="smalltitle"><font color="#000000">最小的 Live CD</font></span></a></p>
<p>要熟悉 <code>livecd-creator</code> 命令的用法，可由创建最小的 Live CD 开始：</p>
<p>
<a name="listing6"><strong><font color="#000000">清单 6. 创建最小的 Live CD</font></strong></a></p>
<table cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
# livecd-creator --repo=c6,file:///var/www/html/repo/core --package=bash
      --package=kernel --package=grub --fslabel=Fedora-minimal-LiveCD</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>此命令要求 <code>livecd-creator</code> 从本地存储库中获取三个包 &mdash;&mdash; bash、grub 和 kernel，并将它们包含到名为 Fedora-minimal-LiveCD 的 Live CD 中。<code>livecd-creator</code> 命令使用 Fedora 的 YUM 安装这些包，也因此要安装指定包依赖的其他应用程序。</p>
<p>执行完该命令要花费些时间，因为它将创建工作区，然后安装指定的包和它们的依赖项，重新标记 SELinux（Fedora 的安全机制）的工作区，压缩整个工作区，配置 Live CD bootloader、GRUB，并最终创建 ISO 映像。 </p>
<p>恭喜您！您成功创建了您的第一个 Live CD。当然，您尚不能使用它来实现多少功能，因为缺乏配置文件。</p>
<p><a name="N10154"><span class="smalltitle"><font color="#000000">带 GNOME 的 Live CD</font></span></a></p>
<p>既然您已经了解了 <code>livecd-creator</code> 命令的用法，现在就可以使用它创建包含 GNOME 的 Live CD 了。</p>
<p>
<a name="listing7"><strong><font color="#000000">清单 7. 创建带 GNOME 的 Live CD</font></strong></a></p>
<table cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
# livecd-creator --repo=c6,file:///var/www/html/repo/core
      --repo=lcd6,file:///root/base_packages
      --package=fedora-livecd-gnome
      --repo=e6,http://download.fedora.redhat.com/pub/fedora/linux/extras/6/i386
      --fslabel=My-Fedora-LiveCD-1</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>这里，使用本地存储库获取基础包并指定 CD 应该基于哪个配置包。还要指定 fedora-livecd-gnome 所需的包都应从本地核心存储库中获取。fedora-livecd-gnome 中有一些包不在核心存储库中，这些包将通过给定的 URL 从附加存储库中获取。最后，它将创建名为 My-Fedora-LiveCD-1.iso 的 ISO。</p>
<p>如果 <code>livecd-creator</code> 无法找到包 &mdash;&mdash; 例如，如果它不在指定的存储库中 &mdash;&mdash; 则命令会跳过该包并仍将继续创建 Live CD。除非缺少的包是关键包（如 kernel），否则，您均将得到一个可用的 Live CD。</p>
<p>除配置 RPM 中提到的包外，还可使用 <code>--package</code> 开关添加定制包。<code>livecd-creator</code> 命令也可使用多个存储库构建 CD。</p>
<p>
<a name="listing8"><strong><font color="#000000">清单 8. 使用多个存储库创建 Live CD</font></strong></a></p>
<table cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
 # livecd-creator --repo=c6,file:///var/www/html/repo/core
      --package=openoffice
      --repo=lcd6,file:///root/base_packages
      --package=fedora-livecd-gnome
      --repo=e6,http://download.fedora.redhat.com/pub/fedora/linux/extras/6/i386
      --repo=livna,http://rpm.livna.org/fedora/6/i386
      --package=vlc
      --fslabel=My-LiveCD-2</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>与前一个示例中一样，此命令使用所有来自 fedora-livecd-gnome 的包创建 Live CD。另外，它将包含 OpenOffice.org 办公套件，该套件可从核心存储库中获得。它也将添加来自 livna 存储库的 VLC Media Player。我们将其称作 My-LiveCD-2，因为它包含来自第三方存储库的包，不能被称作 Fedora Live CD。</p>
<p>如果创建 CD 后，想要将另一个应用程序（如 Evolution e-mail client）添加到定制 CD 中可以么？没问题。如果前一个 CD 的 ISO 可用，则只需让 <code>livecd-creator</code> 使用此 ISO 的包并追加新包即可。</p>
<p>
<a name="listing9"><strong><font color="#000000">清单 9. 向现有的 Live CD ISO 中添加新包</font></strong></a></p>
<table cellspacing="0" cellpadding="0" summary="" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
# livecd-creator --repo=c6,file:///var/www/html/repo/core
      --base-on=My-LiveCD-2.iso
      --package=evolution
      --fslabel=My-LiveCD-New</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>这将根据前一个 ISO 中的包和附加的 Evolution 包创建一个新的 Live CD。</p>
<p><a name="N101A2"><span class="atitle"><font color="#000000">创建定制配置包</font></span></a></p>
<p>我希望上述示例能让您了解创建 Live CD 实际上是一项很简单的工作。使用 Zeuthen 提供的包，您可继续创建 Live CD，向其中添加来自任何存储库的应用程序。</p>
<p>但是假设您需要创建可用于编写文档和代码的 Live CD。您希望为编写代码文档将 OpenOffice.org、Evolution e-mail client、Beagle desktop search、GAIM instant messenger、Xchat IRC client、GIMP image manipulator、GCC compiler、GDB debugger 和 Doxygen 包含进来。</p>
<p>可以在每次想要装配 CD 时使用 <code>--package</code> 开关指定它们，也可以编写自己的配置文件。使用配置文件的附加优点是还可以指定定制配置。 </p>
<p><a name="N101B5"><span class="smalltitle"><font color="#000000">配置文件剖析</font></span></a></p>
<p>创建自己的配置文件之前，请先查看一下用来创建 Live CD 的配置文件：fedora-gnome。可从 RPM 提取该配置文件，方法是在 fedora-livecd-gnome-6-1.i386.rpm 上右击并选择 <strong>Extract Here</strong> 选项。这应该会在 etc/livecd/ 目录下生成一个名为 20-fedora-livecd-gnome.conf 的文件。前缀数字用于帮助识别包树中的特定的包。因此，20-* 包在 10-* 包之后并可能会依赖于后者，而 30-* 包则在 20-* 之后并可能会依赖于 20-* 和前缀更小的包。</p>
<p>文件的第一部分包含要安装的应用程序的列表，第二部分则包含该特殊环境中所需做出的配置。</p>
<p>
<a name="listing10"><strong><font color="#000000">清单 10. 20-fedora-livecd-gnome.conf 文件的内容</font></strong></a></p>
<table cellspacing="0" cellpadding="0" summary="" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
case $1 in
    # inquire what packages to install; must print packages to install
    pkgadd)
    echo &quot;
chkconfig
gdm
gnome-panel
nautilus
metacity
gnome-themes
redhat-artwork
gnome-power-manager
gnome-volume-manager
desktop-printing
gnome-terminal
gedit
.
.
.
.

# run configuration scripts when all packages are installed
    post)
# mount livecd
mkdir -p /mnt/livecd
mount -o ro -t iso9660 /dev/livecd /mnt/livecd
# add fedora user with no passwd
useradd -c &quot;Fedora live CD&quot; fedora
passwd -d fedora &gt; /dev/null
.
.
.
.</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>如您所见，大多数工作（如设置用户、设置网络）都由 fedora-gnome 包完成。</p>
<p><a name="N101D2"><span class="smalltitle"><font color="#000000">创建配置文件</font></span></a></p>
<p>创建配置文件的最佳方法是使用 20-fedora-livecd-gnome.conf 并删除 GNOME 特有的位。让我们调用 40-fedora-livecd-office-code.conf 文件。这应该能够奏效：</p>
<p><code># cp 20-fedora-livecd-gnome.conf 40-fedora-livecd-office-code.conf</code> </p>
<p>删除 GNOME 位后，可添加所需包的列表。新文件应显示如下内容（请注意：为节省空间起见，我删除了许可证位）：</p>
<p>
<a name="listing11"><strong><font color="#000000">清单 11. 最新创建的 40-fedora-live-office.conf 文件</font></strong></a></p>
<table cellspacing="0" cellpadding="0" summary="" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
        #!/bin/bash

# livecd configuration for Base Fedora system

# PLEASE ADD LICENSE RELATED NOTE

case $1 in
    # inquire what packages to install; prints package list on stdout
    pkgadd)
    echo &quot;
evolution
evolution-connector
evolution-webcal
gaim
xchat
beagle
gimp

openoffice.org-core
openoffice.org-draw
openoffice.org-calc
openoffice.org-graphicfilter
openoffice.org-math
openoffice.org-writer
openoffice.org-xsltfilter
openoffice.org-impress

gcc
gdb
doxygen
&quot;
    ;;

    # run configuration scripts when all packages are installed
    post)
    ;;

    # run when an livecd install is complete to clean up
    install-post)
    ;;

    # run when an livecd install is complete; must prints packages to remove
    install-pkgrem)
echo &quot;
fedora-livecd-office-code
&quot;
    ;;
esac</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>别忘了创建 ISO 之前将配置包的名称包含到要删除包的列表中。</p>
<p><a name="N101F3"><span class="smalltitle"><font color="#000000">创建 RPM</font></span></a></p>
<p>在您可以实际使用此配置文件之前，需要先利用它来创建 RPM。创建 RPM 需要 SPEC 文件。可以使用 <a rel="nofollow" target="_blank" href="http://people.redhat.com/davidz/livecd/spec/fedora-livecd.spec">Zeuthen 的 fedora-livecd.spec</a> 并对它进行编辑，以便包含关于新配置文件的信息。</p>
<p>大致说来，SPEC 文件包含将被包含到 RPM 中的文件列表，以及安装 RPM 时存放这些文件的位置。我无意深入探讨创建 SPEC 文件的细节，但是您可以使用我为本文创建的 SPEC 文件。请从本文后面的 下载 部分下载该文件，并阅读注释以了解对 Zeuthen 的原始文件做出的更改。</p>
<p>请注意：SPEC 文件指向其他包（如 fedora-live-gnome-fedora-livecd-desktop）的配置文件。要确保这些配置文件也都可用。 </p>
<p>Fedora 使用 <code>rpmbuild</code> 命令来利用 SPEC 文件创建 RPM。<code>rpmbuild</code> 命令要求所有的 .conf 配置文件都位于 /usr/src/redhat/SOURCES 目录下，并且 SPEC 文件中所有称作 SOURCE 的文件也应位于该目录下。另外还要确保 fedora-livecd.spec 文件位于 /usr/src/redhat/SPECS 目录下。</p>
<p>
<a name="listing12"><strong><font color="#000000">清单 12. 创建新的 RPM</font></strong></a></p>
<table cellspacing="0" cellpadding="0" summary="" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
# cd /usr/src/redhat/SPECS
# rpmbuild -bb fedora-livecd.spec
# ls /usr/src/redhat/RPMS/i386
fedora-livecd-6-2.i386.rpm
fedora-livecd-gnome-6-2.i386.rpm
fedora-livecd-desktop-6-2.i386.rpm
fedora-livecd-office-6-2.i386.rpm</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>为了区别定制 RPM 和原始 RPM，我已将其版本定为 6-2 而不是原始的 6-1。</p>
<p><a name="N10223"><span class="smalltitle"><font color="#000000">使用定制 RPM 构建 Live CD</font></span></a></p>
<p>一旦您可以自由处理 RPM，创建 Live CD 的过程也就大同小异了。使用新的 RPM 重新创建包的本地存储库即可。</p>
<p>
<a name="listing13"><strong><font color="#000000">清单 13. 使用新的 RPM 创建配置包的本地存储库</font></strong></a></p>
<table cellspacing="0" cellpadding="0" summary="" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
# rm /root/base_packages/*
# cp /usr/src/redhat/RPMS/* /root/base_packages/
# createrepo /root/base_packages</pre>
</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>现在通过 <code>livecd-creator</code> 来使用最新创建的包。</p>
<p>
<a name="listing14"><strong><font color="#000000">清单 14. 使用新的 Fedora-Office-Code-LiveCD RPM 创建 Live CD</font></strong></a></p>
<table cellspacing="0" cellpadding="0" summary="" border="0">
<tbody>
<tr>
<td class="code-outline">
<pre class="displaycode">
# livecd-creator --repo=c6,file:///var/www/html/repo/core
      --repo=lcd6,file:///root/base_packages
      --package=fedora-livecd-office-code
      --repo=e6,http://download.fedora.redhat.com/pub/fedora/linux/extras/6/i386
      --fslabel=My-Fedora-Office-Code-LiveCD</pre>
</td>
</tr>
</tbody>
</table>
<p>转眼之间！您就从完全由自己定制的配置获得了完全由自己定制的 Live CD.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2007/04/23/%e5%88%b6%e4%bd%9cfedora-live-cd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Redhat 5发布</title>
		<link>http://www.litrin.net/2007/03/15/redhat-5%e5%8f%91%e5%b8%83/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=redhat-5%25e5%258f%2591%25e5%25b8%2583</link>
		<comments>http://www.litrin.net/2007/03/15/redhat-5%e5%8f%91%e5%b8%83/#comments</comments>
		<pubDate>Thu, 15 Mar 2007 08:56:38 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=439</guid>
		<description><![CDATA[随着2次跳票之后，原定将在2月28日发布的Redhat AS5今天总算发布了。 感觉上现在*nix的系统逐步逐步的将重心放给了更强壮的文件系统和虚拟机上。这次AS5的发布同样也是如此。 这次新版本的发布，粗看下来新增的功能有： 2.6.18 内核，不谈也罢 jboss的支持，没办法，现在成了自己的东西了。 支持4个（标准版本）以及更多（高级版本）虚拟机 GFS文件系统，更大、更强壮，似乎也离我们更远&#8230; 一系列的更新。 感觉相对于其他商业的linux，redhat的步子很大但速度总是慢半拍。按照惯例，Centos的最新版本近几天也会放出。按照我本人的惯例，至少要等到AS5update1之后才考虑陆续部署，毕竟作为服务器的操作系统而讲&#8220;够用&#8221;和&#8220;够兼容&#8221;的诱惑远远大于&#8220;够新&#8221;。 &#160; 附广告：Redhat AS5&#160; 如果有人想要尝新的话可以到开源小站在淘宝购买，5CD版本，25元包邮]]></description>
			<content:encoded><![CDATA[<p>随着2次跳票之后，原定将在2月28日发布的Redhat AS5今天总算发布了。</p>
<p>感觉上现在*nix的系统逐步逐步的将重心放给了更强壮的文件系统和虚拟机上。这次AS5的发布同样也是如此。</p>
<p>这次新版本的发布，粗看下来新增的功能有：</p>
<ul>
<li>2.6.18 内核，不谈也罢 </li>
<li>jboss的支持，没办法，现在成了自己的东西了。 </li>
<li>支持4个（标准版本）以及更多（高级版本）虚拟机 </li>
<li>GFS文件系统，更大、更强壮，似乎也离我们更远&#8230; </li>
<li>一系列的更新。 </li>
</ul>
<p>感觉相对于其他商业的linux，redhat的步子很大但速度总是慢半拍。按照惯例，Centos的最新版本近几天也会放出。按照我本人的惯例，至少要等到AS5update1之后才考虑陆续部署，毕竟作为服务器的操作系统而讲&ldquo;够用&rdquo;和&ldquo;够兼容&rdquo;的诱惑远远大于&ldquo;够新&rdquo;。</p>
<p>&nbsp;</p>
<p>附广告：Redhat AS5&nbsp; 如果有人想要尝新的话可以到<a rel="nofollow" target="_blank" href="http://shop33329853.taobao.com/" target="_blank"><strong><font color="#ff8c00">开源小站在淘宝</font></strong></a>购买，5CD版本，25元包邮</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2007/03/15/redhat-5%e5%8f%91%e5%b8%83/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fedora Core 6的新特性</title>
		<link>http://www.litrin.net/2006/10/24/fedora-core-6%e7%9a%84%e6%96%b0%e7%89%b9%e6%80%a7/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=fedora-core-6%25e7%259a%2584%25e6%2596%25b0%25e7%2589%25b9%25e6%2580%25a7</link>
		<comments>http://www.litrin.net/2006/10/24/fedora-core-6%e7%9a%84%e6%96%b0%e7%89%b9%e6%80%a7/#comments</comments>
		<pubDate>Tue, 24 Oct 2006 01:08:10 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=409</guid>
		<description><![CDATA[按照计划，Fedora Core 将在美国东部时间10月24日上午10:00，即北京时间今晚22:00左右正式推出FC6（但愿不要再druft了），这次FC似乎要彻底与Redhat决裂了。他们启用了新的网站&#8212;&#8212;其实也不新，就是将原先的FC wiki设成了默认的主页。这可以称得上是从&#8220;公司发行&#8221;到&#8220;社区发行&#8221;的一个标志吧。 根据路线图，本次FC的更新主要是： 桌 面应用的改观 使用gcjwebplugin插 件的firefox浏览器，支持Java&#160;applets； 桌面管理器升级到GNOME 2.16 和 KDE 3.5.3； &#160;SCIM 默认允许使用多国语言（FC5仅允许东亚语系）； 更新了开发工具 Eclipse 的框架和内核； 网络设置工具有了质的改观，允许并方便 的设置多网卡间的负载均衡； 用 hplip 替换了 hpijs更好的支持hp系列的打 印机设备。 系 统管理工具的改观 新增了一个高效的系统工具setroubleshoot， 可以方便的设置原本令人头痛不已的selinux。 其实，感觉相比以往的更新，本次更新似乎不算大升级，或许因为正式版本还没有推出，没有正式定义的缘故吧。 按照惯例，本站将在明天晚些时间提供FC6的本地下载，同时将会删除FC5的站内镜像，如果有需要的话还是直接等着下FC6]]></description>
			<content:encoded><![CDATA[<p>按照计划，Fedora Core 将在美国东部时间10月24日上午10:00，即北京时间今晚22:00左右正式推出FC6（但愿不要再druft了），这次FC似乎要彻底与Redhat决裂了。他们启用了新的网站&mdash;&mdash;其实也不新，就是将原先的FC wiki设成了默认的主页。这可以称得上是从&ldquo;公司发行&rdquo;到&ldquo;社区发行&rdquo;的一个标志吧。<br />
<!--break--></p>
<p>根据路线图，本次FC的更新主要是：</p>
<p><span style="font-style: italic; text-decoration: underline; color: rgb(255, 0, 0);"> 桌 面应用的改观</span></p>
<div class="itemizedlist">
<ul type="disc">
<li>
<p>使用<code class="systemitem">gcjwebplugin</code>插 件的firefox浏览器，支持Java&nbsp;applets； </p>
</li>
<li>
<p> 桌面管理器升级到GNOME 2.16 和 KDE 3.5.3； </p>
</li>
<li>
<p>&nbsp;SCIM 默认允许使用多国语言（FC5仅允许东亚语系）； </p>
</li>
<li>
<p> 更新了开发工具 <span class="application">Eclipse</span> 的框架和内核； </p>
</li>
<li>
<p> <span class="application">网络设置工具有了质的改观，允许并方便 的设置多网卡间的负载均衡</span>；</p>
</li>
<li>
<p>用 <code class="systemitem">hplip</code> 替换了 <code class="systemitem">hpijs</code>更好的支持hp系列的打 印机设备。 </p>
</li>
</ul>
</div>
<div lang="en" class="section"><span style="font-style: italic; text-decoration: underline; color: rgb(255, 0, 0);">系 统管理工具的改观</span></p>
<div class="itemizedlist">
<ul type="disc">
<li>
<p>新增了一个高效的系统工具<code class="systemitem">setroubleshoot</code>， 可以方便的设置原本令人头痛不已的selinux。</p>
</li>
</ul>
</div>
<p>其实，感觉相比以往的更新，本次更新似乎不算大升级，或许因为正式版本还没有推出，没有正式定义的缘故吧。</p>
<p>按照惯例，本站将在明天晚些时间提供FC6的本地下载，同时将会删除FC5的站内镜像，如果有需要的话还是直接等着下FC6
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2006/10/24/fedora-core-6%e7%9a%84%e6%96%b0%e7%89%b9%e6%80%a7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>用Centos的yum升级RedhatAS</title>
		<link>http://www.litrin.net/2006/04/17/%e7%94%a8centos%e7%9a%84yum%e5%8d%87%e7%ba%a7redhatas/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e7%2594%25a8centos%25e7%259a%2584yum%25e5%258d%2587%25e7%25ba%25a7redhatas</link>
		<comments>http://www.litrin.net/2006/04/17/%e7%94%a8centos%e7%9a%84yum%e5%8d%87%e7%ba%a7redhatas/#comments</comments>
		<pubDate>Mon, 17 Apr 2006 07:17:15 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=301</guid>
		<description><![CDATA[这只是笔者一种&#8220;懒&#8221;的方式，希望能够给大家提供帮助。 CentOS和Redhat的关系可以在这里查看。 RedhatAS的升级非常麻烦&#8212;&#8212;需要那个该死的服务授权号，对于向我这样没有授权号的系统管理员而言，除了手工升级就只能干瞪眼了。这天我突发奇想：既然CentOS完全兼容RHEL系列，何不尝试用Centos的yum命令为其升级呢？ 安装位于centos第一张盘的yum，rpm包的，很方便，连同其依赖库都在DISK1中，这里不作太多累述了。 修改/etc/yum.repos.d/CentOS-Base.repo文件如下: [base]name=CentOS-$releasever &#8211; Basemirrorlist=http://mirrorlist.centos.org/?release=4_3&#38;arch=x86_64&#38;repo=osbaseurl=http://mirror.centos.org/centos/4.3/updates/x86_64/gpgcheck=1gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 [update]name=CentOS-$releasever &#8211; Updatesmirrorlist=http://mirrorlist.centos.org/?release=4_3&#38;arch=x86_64&#38;repo=updatesbaseurl=http://mirror.centos.org/centos/4.3/updates/x86_64/gpgcheck=1gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 [addons]name=CentOS-$releasever &#8211; Addonsmirrorlist=http://mirrorlist.centos.org/?release=4_3&#38;arch=x86_64&#38;repo=addonsbaseurl=http://mirror.centos.org/centos/4.3/updates/x86_64/ gpgcheck=1gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 [extras]name=CentOS-$releasever &#8211; Extrasmirrorlist=http://mirrorlist.centos.org/?release=4_3&#38;arch=x86_64&#38;repo=extrasbaseurl=http://mirror.centos.org/centos/4.3/updates/x86_64/gpgcheck=1gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 [centosplus]name=CentOS-$releasever &#8211; Plusmirrorlist=http://mirrorlist.centos.org/?release=4_3&#38;arch=x86_64&#38;repo=centosplusbaseurl=http://mirror.centos.org/centos/4.3/updates/x86_64/gpgcheck=1enabled=0gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 [contrib]name=CentOS-$releasever &#8211; Contribmirrorlist=http://mirrorlist.centos.org/?release=4_3&#38;arch=x86_64&#38;repo=contribbaseurl=http://mirror.centos.org/centos/4.3/updates/x86_64/gpgcheck=1enabled=0gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 其实，仅仅添加了baseurl而已。需要注意的是：笔者的服务器是AMD64的，若为其他请酌情修改baseurl 和 mirrorlist测试一下：yum list .]]></description>
			<content:encoded><![CDATA[<p>这只是笔者一种&ldquo;懒&rdquo;的方式，希望能够给大家提供帮助。</p>
<p>CentOS和Redhat的关系可以在<a target="_blank" href="http://www.litrin.net/?q=node/86">这里查看</a>。</p>
<p>RedhatAS的升级非常麻烦&mdash;&mdash;需要那个该死的服务授权号，对于向我这样没有授权号的系统管理员而言，除了手工升级就只能干瞪眼了。这天我突发奇想：既然CentOS完全兼容RHEL系列，何不尝试用Centos的yum命令为其升级呢？ </p>
<p>安装位于centos第一张盘的yum，rpm包的，很方便，连同其依赖库都在DISK1中，这里不作太多累述了。</p>
<p>修改/etc/yum.repos.d/CentOS-Base.repo文件如下:</p>
<p>[base]<br />name=CentOS-$releasever &#8211; Base<br />mirrorlist=<span style="color: rgb(255, 0, 0);">http://mirrorlist.centos.org/?release=4_3&amp;arch=x86_64&amp;repo=</span>os<br /><span style="color: rgb(255, 0, 0);">baseurl=http://mirror.centos.org/centos/4.3/updates/x86_64/</span><br />gpgcheck=1<br />gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4</p>
<p>[update]<br />name=CentOS-$releasever &#8211; Updates<br />mirrorlist=<span style="color: rgb(255, 0, 0);">http://mirrorlist.centos.org/?release=4_3&amp;arch=x86_64&amp;repo=</span>updates<br /><span style="color: rgb(255, 0, 0);">baseurl=http://mirror.centos.org/centos/4.3/updates/x86_64/</span><br />gpgcheck=1<br />gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4</p>
<p>[addons]<br />name=CentOS-$releasever &#8211; Addons<br />mirrorlist=<span style="color: rgb(255, 0, 0);">http://mirrorlist.centos.org/?release=4_3&amp;arch=x86_64&amp;repo=</span>addons<br /><span style="color: rgb(255, 0, 0);">baseurl=http://mirror.centos.org/centos/4.3/updates/x86_64/</span></p>
<p>gpgcheck=1<br />gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4</p>
<p>[extras]<br />name=CentOS-$releasever &#8211; Extras<br />mirrorlist=<span style="color: rgb(255, 0, 0);">http://mirrorlist.centos.org/?release=4_3&amp;arch=x86_64&amp;repo=</span>extras<br /><span style="color: rgb(255, 0, 0);">baseurl=http://mirror.centos.org/centos/4.3/updates/x86_64/</span><br />gpgcheck=1<br />gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4</p>
<p>[centosplus]<br />name=CentOS-$releasever &#8211; Plus<br />mirrorlist=<span style="color: rgb(255, 0, 0);">http://mirrorlist.centos.org/?release=4_3&amp;arch=x86_64&amp;repo=</span>centosplus<br /><span style="color: rgb(255, 0, 0);">baseurl=http://mirror.centos.org/centos/4.3/updates/x86_64/</span><br />gpgcheck=1<br />enabled=0<br />gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4</p>
<p>[contrib]<br />name=CentOS-$releasever &#8211; Contrib<br />mirrorlist=<span style="color: rgb(255, 0, 0);">http://mirrorlist.centos.org/?release=4_3&amp;arch=x86_64&amp;repo=</span>contrib<br /><span style="color: rgb(255, 0, 0);">baseurl=http://mirror.centos.org/centos/4.3/updates/x86_64/</span><br />gpgcheck=1<br />enabled=0<br />gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4</p>
<p>其实，仅仅添加了baseurl而已。需要注意的是：笔者的服务器是AMD64的，若为其他请酌情修改baseurl 和 mirrorlist<span style="color: rgb(255, 0, 0);"><br /><span style="color: rgb(0, 0, 0);">测试一下：yum list .</span></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2006/04/17/%e7%94%a8centos%e7%9a%84yum%e5%8d%87%e7%ba%a7redhatas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RedhatAS 和 CentOS的Update</title>
		<link>http://www.litrin.net/2006/03/24/redhatas-%e5%92%8c-centos%e7%9a%84update/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=redhatas-%25e5%2592%258c-centos%25e7%259a%2584update</link>
		<comments>http://www.litrin.net/2006/03/24/redhatas-%e5%92%8c-centos%e7%9a%84update/#comments</comments>
		<pubDate>Fri, 24 Mar 2006 03:49:10 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=285</guid>
		<description><![CDATA[前一段时间几乎都在关注FC5的信息，忘记了其实redhat的企业版也在近期推出了最新的AS4update3。这个版本是在原先FC4的基础上升级而来的——FC的真正用意可见一斑。 CentOS这帮家伙们也是效率高的可以，仅在几天之后就将CentOS的4.3版本释放了出来，呵呵，我现在正在更新中，估计今天晚些时候就可以提供下载了。]]></description>
			<content:encoded><![CDATA[<p>前一段时间几乎都在关注FC5的信息，忘记了其实redhat的企业版也在近期推出了最新的AS4update3。这个版本是在原先FC4的基础上升级而来的——FC的真正用意可见一斑。</p>
<p>CentOS这帮家伙们也是效率高的可以，仅在几天之后就将CentOS的4.3版本释放了出来，呵呵，我现在正在更新中，估计今天晚些时候就可以提供下载了。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2006/03/24/redhatas-%e5%92%8c-centos%e7%9a%84update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Redhat9下升级Linux内核(Vmware)</title>
		<link>http://www.litrin.net/2006/03/22/redhat9%e4%b8%8b%e5%8d%87%e7%ba%a7linux%e5%86%85%e6%a0%b8vmware/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=redhat9%25e4%25b8%258b%25e5%258d%2587%25e7%25ba%25a7linux%25e5%2586%2585%25e6%25a0%25b8vmware</link>
		<comments>http://www.litrin.net/2006/03/22/redhat9%e4%b8%8b%e5%8d%87%e7%ba%a7linux%e5%86%85%e6%a0%b8vmware/#comments</comments>
		<pubDate>Wed, 22 Mar 2006 01:20:35 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=283</guid>
		<description><![CDATA[首先说下我的环境win2kpro+Vmware（虚拟scsi的Redhat9）能联网然后说说需要的文件和要素：1.Linux-2.6.0.tar.gz2.module-init-tools-3.2-pre9.tar.gz3.mkinitrd-3.5.14-1-i386.rpm4.不怕失败的心&#160;下面说说详细的步骤和作法：#wget http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/module-init-tools-3.2.tar.gz&#160;#wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.0.tar.gz&#160;# wget ftp://ftp.mbl.is/pub/fedora/1/i386/os/Fedora/RPMS/mkinitrd-3.5.14-1.i386.rpm &#160;现在软件具备了，下一步就是开始具体的做了：#cp module-init-tools-3.2.tar.gz&#160;&#160;&#160; /usr/src#cp linux-2.6.0.tar.gz /usr/src#cp mkinitrd-3.5.14-1.i386.rpm&#160; /usr/src#cd /usr/src#tar zxvf module-init-tools-3.2.tar.gz#tar zxvf linux-2.6.0.tar.gz#rpm -Uvh mkinitrd-3.5.14-1.i386.rpm#rpm -qa&#124;grep initrdmkinitrd-3.5.14-1-i386#cd module-init-tools-3.2#./configure &#8211;prefix=/#make moveold#make#make install#cd ..#tar zxvf linux-2.6.0.tar.gz#cd linux-2.6.0#make mrproper#make menuconfig其实可以根据自己的需要进行选择！ 下面着重讲几个重要的配置: * 关于&#34;Loadable Module support&#34;动态挂装内核模块选项, 一定要选上&#34;Module unloading&#34;和&#34;Automatic kernel module loading&#34;这两个选项.* 关于&#34;Processor type and features&#34;选项, 一定要选上&#34;Preemptible Kernel&#34;抢占式内核选项, 这是2.6.x内核优于2.4.x内核的重要原因之一.* 关于&#34;Block Devices&#34;的配置, 一定要选上对loopback和ramdisk的支持.* 关于&#34;Multi-device support(RAID and LVM)&#34;, [...]]]></description>
			<content:encoded><![CDATA[<p>首先说下我的环境win2kpro+Vmware（虚拟scsi的Redhat9）能联网<br />然后说说需要的文件和要素：<br />1.Linux-2.6.0.tar.gz<br />2.module-init-tools-3.2-pre9.tar.gz<br />3.mkinitrd-3.5.14-1-i386.rpm<br />4.不怕失败的心<br />&nbsp;<br />下面说说详细的步骤和作法：<br />#wget http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/module-init-tools-3.2.tar.gz<br />&nbsp;<br />#wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.0.tar.gz<br />&nbsp;<br /># wget ftp://ftp.mbl.is/pub/fedora/1/i386/os/Fedora/RPMS/mkinitrd-3.5.14-1.i386.rpm <br />&nbsp;<br />现在软件具备了，下一步就是开始具体的做了：<br />#cp module-init-tools-3.2.tar.gz&nbsp;&nbsp;&nbsp; /usr/src<br />#cp linux-2.6.0.tar.gz /usr/src<br />#cp mkinitrd-3.5.14-1.i386.rpm&nbsp; /usr/src<br />#cd /usr/src<br />#tar zxvf module-init-tools-3.2.tar.gz<br />#tar zxvf linux-2.6.0.tar.gz<br />#rpm -Uvh mkinitrd-3.5.14-1.i386.rpm<br />#rpm -qa|grep initrd<br />mkinitrd-3.5.14-1-i386<br />#cd module-init-tools-3.2<br />#./configure &#8211;prefix=/<br />#make moveold<br />#make<br />#make install<br />#cd ..<br />#tar zxvf linux-2.6.0.tar.gz<br />#cd linux-2.6.0<br />#make mrproper<br />#make menuconfig<br />其实可以根据自己的需要进行选择！</p>
<p>下面着重讲几个重要的配置:</p>
<p>* 关于&quot;Loadable Module support&quot;动态挂装内核模块选项, 一定要选上&quot;Module unloading&quot;和&quot;Automatic kernel module loading&quot;这两个选项.<br />* 关于&quot;Processor type and features&quot;选项, 一定要选上&quot;Preemptible Kernel&quot;抢占式内核选项, 这是2.6.x内核优于2.4.x内核的重要原因之一.<br />* 关于&quot;Block Devices&quot;的配置, 一定要选上对loopback和ramdisk的支持.<br />* 关于&quot;Multi-device support(RAID and LVM)&quot;, 要选上&quot;device mapper&quot;.<br />* 关于&quot;Input device support&quot;, 记得要选上&quot;Keyboards&quot;和&quot;Mice&quot;的支持.<br />* 关于&quot;Graphics support&quot;, 要选上对frame buffer的支持.<br />* 关于ALSA, 要选上&quot;OSS API emulation&quot;选项. OSS可以不用了.<br />* 关于USB, 能选的都选上吧<br />* 文件系统 ，请务必要选中ext3文件系统,<br />File systems&#8212;&gt;<br />[*] Ext3 journalling file system support<br />[*] Ext3 Security Labels<br />[*] JBD (ext3) debugging support<br />以上三项一定要选上,而且要内建(即标*). 这个非常重要,在配置完后一定要检查一下.config文件有没有&quot;CONFIG_EXT3_FS=y&quot;这一项. 如果不是&quot;CONFIG_EXT3_FS=y&quot;而是&quot;CONFIG_EXT3_FS=m&quot;,你在运行内核时就会遇上以下错误: pivotroot: pivot_root(/sysroot,/sysroot/initrd) failed</p>
<p>* 网卡驱动<br />请务必把自己网卡对应的驱动编译进内核,比较普遍的网卡是realtek 8139,以下就是这种网卡的配置,以供参考<br />Device Drivers&#8212;&gt;<br />Networking support&#8212;&gt;<br />Ethernet (10 or 100Mbit) &#8212;&gt;<br />&lt;*&gt; RealTek RTL-8139 C+ PCI Fast Ethernet Adapter support (EXPERIMENTAL)<br />&lt;*&gt; RealTek RTL-8139 PCI Fast Ethernet Adapter support</p>
<p>* 声卡驱动<br />也要选择自己声卡对应的驱动编译进内核,比较普遍的声卡是i810_audio,以下就是这种声卡的配置,以供参考<br />Device Drivers &#8212;&gt;<br />Sound &#8212;&gt;<br />&lt;*&gt; Sound card support<br />Advanced Linux Sound Architecture &#8212;&gt;<br />&lt;*&gt; Advanced Linux Sound Architecture<br />&lt;*&gt; Sequencer support<br />&lt; &gt; Sequencer dummy client<br />&lt;*&gt; OSS Mixer API<br />&lt;*&gt; OSS PCM (digital audio) API[*] OSS Sequencer API<br />&lt;*&gt; RTC Timer support<br />PCI devices &#8212;&gt;<br />&lt;*&gt; Intel i8x0/MX440, SiS 7012; Ali 5455; NForce Audio; AMD768/8111<br />Open Sound System &#8212;&gt;<br />&lt; &gt; Open Sound System (DEPRECATED)</p>
<p>注意，如果用vmware进行编译，那么需要注意一些地方：<br />如果你在vmware下重新编译内核，硬盘用的是scsi的，以下选项必选：<br />Device Drivers&nbsp; &#8212;&gt;SCSI device support&nbsp; &#8212;&gt;&lt;*&gt;&nbsp;&nbsp; SCSI disk support<br />Device Drivers&nbsp; &#8212;&gt;SCSI device support&nbsp; &#8212;&gt;SCSI low-level drivers&nbsp; &#8212;&gt; &lt;*&gt; BusLogic SCSI support<br />可以<br />#make bzImage<br />可以<br />#make modules<br />#make modules_install<br />最后<br />#make install<br />最后：<br />我使用的grub启动系统，那么将 /boot/grub/grub.conf 中 linux2.6域中<br />kernel /vmlinux-2.6.14.2 项后面的 ro root=LABEL=/ 这个参数去掉，然后就可以用了<br />#cd /boor/grub<br />#vi grub.conf<br />然后进行相应的修改。<br />#reboot<br />之后选择升级后的2.6内核的启动。<br />&nbsp;<br />接着就成功了！<br />&nbsp;<br />再补充几句：<br />&nbsp;&nbsp;&nbsp; 升级到2.6.15.6的时候，步骤和上面差不多，但是mkinitrd要mkinitrd-4.1.18-2.i386.rpm<br />&nbsp;<br />当然，还需要lvm2-2.00.25-1.01.i386.rpm<br />不相信的话可以安装mkinitrd试试，不会成功的，会提示需要lvm2-2.00.25-1.01.i386.rpm这时就需要下载一个lvm2-2.00.25-1.01.i386.rpm了，在www.pbone.net能找到。<br />安装命令如下：<br />#rpm -Uvh &#8211;nodeps lvm2-2.00.25-1.01.i386.rpm<br />否则会提示需要2.6的内核，这个是RedHat9内核是2.4.20-8的！<br />&nbsp;<br />到这里，安装就完成了，如果有什么不妥的话，可以自己进行修改。我说的不妥是某些服务，比如iptables，这些都可以自己去解决了，但是系统是绝对能进去的。<br />还有，一般来说，编译内核成功后，写到grub.conf文件里的都不用改的，make install的时候就帮改了！我的是这样的！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2006/03/22/redhat9%e4%b8%8b%e5%8d%87%e7%ba%a7linux%e5%86%85%e6%a0%b8vmware/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fedora Core 5</title>
		<link>http://www.litrin.net/2006/03/21/fedora-core-5/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=fedora-core-5</link>
		<comments>http://www.litrin.net/2006/03/21/fedora-core-5/#comments</comments>
		<pubDate>Tue, 21 Mar 2006 03:49:21 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=282</guid>
		<description><![CDATA[RedHat履行了自己的承诺&#8212;&#8212;其负责维护的免费Linux桌面版本Fedora按照日程表的计划于昨天（2006/03/20）推出了第5个版本，即FC5。与前一段时间沸沸扬扬的所谓&#8220;正式版&#8221;相比，这次是真正的release版本，代号&#8220;Bordeaux&#34;&#8212;&#8212;波尔多，盛产美酒的地方。大家如有需要，本站已经实现 本地下载 。 FROM&#160; TO&#160; 由于我还没有安装这个版本，所以只能从官方的文档中看看新版本有了哪些修改： 每一个版本都必不可少，也反映&#8221;最平淡&#8220;的新硬件支持 桌面系统 全面更新的外观，新的泡泡主题，以及首次使用的 Fedora 新标识。 Fedora 渲染项目的早期工作被集成到桌面中。这个新的项目将为高级的，基于 OpenGL 的桌面接口提供技术基础。 流行的桌面环境 GNOME 和 KDE 的创新版本。 GNOME 桌面基于 2.14 发布 , 而 KDE 桌面是 3.5 的一般版本。 最新版的GNOME 电源管理程序和GNOME 屏幕保护程序提供了新的集成的电源管理选项。 新的GNOME 用户共享工具提供了简单而有效的文件共享。 挂起到内存(Suspend to RAM)得到改进，它基于休眠支持的基础性工作。 过去的图形化软件管理工具被替换为新一代工具的第一版。本次发布包含Pup, 系统升级的简单界面，以及Pirut, 一个新的软件包管理器，替换了system-config-packages。它们基于yum工具，为整个系统提供了一致的软件安装和升级功能。 这一版本的 Fedora 首次包含 Mono 支持，以及众多 Mono 应用程序，例如Beagle, 桌面搜索工具;F-Spot, 相片管理工具; 以及Tomboy, 记事程序。 您可以体验 0.10 版本的Gstreamer媒体框架带来的震撼的多媒体支持。本次发布在稳定性和功能上啾裙グ姹径加刑岣摺?lt;span&#62;Totem电影播放器以及其他媒体软件都已更新为支持新的框架。 [...]]]></description>
			<content:encoded><![CDATA[<p>RedHat履行了自己的承诺&mdash;&mdash;其负责维护的免费Linux桌面版本Fedora按照日程表的计划于昨天（2006/03/20）推出了第5个版本，即FC5。与前一段时间沸沸扬扬的所谓&ldquo;正式版&rdquo;相比，这次是真正的release版本，代号&ldquo;Bordeaux&quot;&mdash;&mdash;波尔多，盛产美酒的地方。大家如有需要，本站已经实现<a rel="nofollow" target="_blank" href="../../../../download/FedoraCore/"> 本地下载 。</a></p>
<p></p>
<div style="text-align: center; font-family: Arial;"><font size="5"><span style="color: rgb(51, 153, 102); font-weight: bold;">FROM</span><span style="font-weight: bold;">&nbsp;</span> </font><img src="/UserFiles/Image/fedora_old.gif" alt="" /><font size="5"> <span style="color: rgb(128, 0, 128); font-weight: bold;">TO</span>&nbsp; </font><img src="/UserFiles/Image/fedora_new.png" style="width: 110px; height: 40px;" alt="" /></div>
<p>由于我还没有安装这个版本，所以只能从官方的文档中看看新版本有了哪些修改：</p>
<ol>
<li>每一个版本都必不可少，也反映&rdquo;最平淡&ldquo;的新硬件支持<span style="font-weight: bold;"></span></li>
<li>桌面系统
<div>
<ul>
<li>
<p>全面更新的外观，新的泡泡主题，以及首次使用的 Fedora 新标识。</p>
</li>
<li>
<p>Fedora 渲染项目的早期工作被集成到桌面中。这个新的项目将为高级的，基于 OpenGL 的桌面接口提供技术基础。</p>
</li>
<li>
<p>流行的桌面环境 GNOME 和 KDE 的创新版本。 GNOME 桌面基于 2.14 发布 , 而 KDE 桌面是 3.5 的一般版本。</p>
</li>
<li>
<p>最新版的<span><strong>GNOME 电源管理程序</strong></span>和<span><strong>GNOME 屏幕保护程序</strong></span>提供了新的集成的电源管理选项。</p>
</li>
<li>
<p>新的<span><strong>GNOME 用户共享工具</strong></span>提供了简单而有效的文件共享。</p>
</li>
<li>
<p>挂起到内存(Suspend to RAM)得到改进，它基于休眠支持的基础性工作。</p>
</li>
<li>
<p>过去的图形化软件管理工具被替换为新一代工具的第一版。本次发布包含<span><strong>Pup</strong></span>, 系统升级的简单界面，以及<span><strong>Pirut</strong></span>, 一个新的软件包管理器，替换了<font face="新宋体">system-config-packages</font>。它们基于<font face="新宋体">yum</font>工具，为整个系统提供了一致的软件安装和升级功能。</p>
</li>
<li>
<p>这一版本的 Fedora 首次包含 Mono 支持，以及众多 Mono 应用程序，例如<span><strong>Beagle</strong></span>, 桌面搜索工具;<span><strong>F-Spot</strong></span>, 相片管理工具; 以及<span><strong>Tomboy</strong></span>, 记事程序。</p>
</li>
<li>
<p>您可以体验 0.10 版本的<span><strong>Gstreamer</strong></span>媒体框架带来的震撼的多媒体支持。本次发布在稳定性和功能上啾裙グ姹径加刑岣摺?lt;span&gt;<strong>Totem</strong>电影播放器以及其他媒体软件都已更新为支持新的框架。</p>
</li>
<li>
<p>国际化支持有极大进步，在 Fedora Core 5 中包含了<span><strong>SCIM</strong></span>。<span><strong>SCIM</strong></span>语言输入框架提供了简单易用的界面，可以输入多种非英文语言。<span><strong>SCIM</strong></span>替换了过去使用的<span><strong>IIIMF</strong></span>系统。</p>
</li>
<li>
<p>默认网页浏览器是<span><strong>Firefox</strong></span>1.5，它有大量新特性，更快，更安全，更有效。</p>
</li>
<li>
<p><span><strong>OpenOffice.org</strong></span>2.0 最终版也包含在内。OpenOffice.org 使用系统中很多软件包，使得性能和效率得以提升。</p>
</li>
<li>
<p>大量的<span><strong>GTK</strong></span>和<span><strong>GNOME</strong></span>程序利用了<span><strong>Cairo</strong></span>2D 图形库, 包含在此次发布中，提供了高效而迷人的图形界面。</p>
</li>
<li>
<p>对广泛使用的 Broadcom 43xx 无线芯片组的测试驱动包含其中。</p>
</li>
<li>
<p>本次发布包括<font face="新宋体">libnotify</font>, 这个软件库为桌面带来了简单而吸引人的通知消息。</p>
</li>
<li>
<p>Fedora Core 5 使用<font face="新宋体">gnome-mount</font>, 更有效的机制，替换了<font face="新宋体">fstab-sync</font>，使用 HAL 来处理挂载。</p>
</li>
<li>
<p>打印支持得到改进，包含了<font face="新宋体">hplip</font>工具，替换了<font face="新宋体">hpijs</font>。</p>
</li>
</ul></div>
</li>
<li>管理系统
<div>
<ul>
<li>
<p><span><strong>Xen</strong></span>虚拟化得到加强。在 Fedora Core 5 系统中配置<span><strong>Xen</strong></span>虚拟机的工具现在使用标准的图形化安装过程，在桌面上运行为一个窗口程序。Fedora 开发者还创建了<font face="新宋体">gnome-applet-vm</font>, 它是简单的虚拟主机监控小程序，还有<font face="新宋体">libvirt</font>, 一个软件库，提供 API 来使用 Xen 虚拟化的能力。</p>
</li>
<li>
<p>行业领先的<font face="新宋体">anaconda</font>安装系统进一步发展。新的特性包括远程登录，以及对回溯的增强支持。安装系统中的软件包管理由<font face="新宋体">yum</font>实现。这一增强是将 Fedora Extras 集成到安装过程中的第一步。</p>
</li>
<li>
<p>版本 2.2 的<span><strong>Apache</strong></span>HTTP 服务器包含其中。这一版本提供了认证、数据库支持、代理和内容过滤的功能增强。</p>
</li>
<li>
<p>最新版的数据库服务器包含其中，包括<span><strong>MySQL</strong></span>5.0 和<span><strong>PostgreSQL</strong></span>8.1。</p>
</li>
<li>
<p>几个 Java 程序以<font face="新宋体">GCJ</font>编译成了本地代码，例如<span><strong>Geronimo</strong></span>J2EE 服务器以及<span><strong>Apache Jakarta</strong></span>项目，相比过去版本的 Java 开发能力又有提高。</p>
</li>
<li>
<p>系统监测和性能分析的新工具包含其中。本次发布包含了systap, 一个调试和分析系统瓶颈的工具，以及<span><strong>Frysk</strong></span>, 一种执行分析技术，可以监测运行中的进程或线程。</p>
</li>
<li>
<p>本次发布包含了<font face="新宋体">system-config-cluster</font>, 一个使您在图形界面管理集群配置的工具。</p>
</li>
<li>
<p><span><strong>Kexec</strong></span>和<span><strong>Kdump</strong></span>工具组合提供了新的崩溃转储功能，以及加快启动的可能，通过跳过引导时的固件。<span><strong>Kexec</strong></span>在一个内核运行的同时加载新的内核，而<span><strong>Kdump</strong></span>可以提供前一个内核的内存转储以调试。</p>
</li>
<li>
<p>本次发布包含了<font face="新宋体">iscsi-initiator-utils</font>, iSCSI 守护进程及工具程序，提供对 iSCSI 接口的硬件的支持。</p>
</li>
</ul></div>
</li>
<li>系统层次的改变
<div>
<ul>
<li>
<p>X.org X11R7.0 包含在本次发布中。R7.0 新的模块化结构使得驱动升级和开发更加简单，使 Linux 图形界面走上快速改进的道路。</p>
</li>
<li>
<p>gcc 4.1 编译器包含其中，所有 Fedora 软件包都使用新的编译器进行构建，安全和性能都有提高。</p>
</li>
<li>
<p>本次发布的内核基于 Linux 2.6.16. 请参考发行注记中有关内核的其他段落。</p>
</li>
<li>
<p>用于笔记本电脑和移动设备的 PCMCIA 框架发生了改变。过去的<font face="新宋体">pcmcia-cs</font>软件包使用 cardmgr/pcmcia 服务，在此次 Fedora 发布中，它们被替换为新的<font face="新宋体">pcmciautils</font>软件包， PCMCIA 设备直接由 hotplug 系统处理，使用动态的 udev 子系统。这样，系统效率和性能都有提高。</p>
</li>
<li>
<p>SELinux 的实现经历了巨大变化。参照策略支持二进制策略模块。将 SELinux 策略移动到单独的软件包中成为可能，用户可以更简单地定制专用的策略。这个版本还支持 SELinux 框架的 MCS (Multi Category Security, 多类别安全，默认启用) 和 MLS (Multi Level Security, 多层次安全) 子系统。SELinux 继续支持 TE (Type Enforcement, 类型强制，默认启用)，以及 RBAC (Role-Based Access Control, 基于角色的访问控制)。请查看其他章节中有关链接。</p>
</li>
</ul></div>
<p>&nbsp;</p>
</li>
</ol>
<p>个人评价：<br />根据这一段时间网友的呼声看来，大家最为期待的其实是新的3D桌面技术，这个自然不在话下，同样类似的还有对于部分打印机的更新支持和openoffice的更新，表现了Linux要占据桌面应用的野心。</p>
<p>从这次对于桌面的更新看来，对于电源的更新、&rdquo;挂起到磁盘&ldquo;、无线网卡、PCMCIA 框架等一系列笔记本电脑标志技术的更新修改，说明Fedora将把工作重点放在对于笔记本电脑的支持，欲摆脱传统上Linux对于笔记本电脑支持不佳的软肋。</p>
<p>对于软件系统的更新、共享工具、mono支持、新的流媒体等的更新说明了将来的趋势是&rdquo;基于网络&ldquo;而非&rdquo;基于单机&ldquo;的操作系统，这和Google传说中的网络操作系统有着些许异曲同工之妙。</p>
<p>更强的支持Xen以及更好的系统管理工具乃至于Redhat的看家本事Se-linux的更新，个人觉得这并非是给一般用户准备的，毕竟Redhat开发维护FC的真实价值在于给自己的企业版本Linux提供一个拥有广泛测试的&rdquo;实验平台&ldquo;。</p>
<p>Java，又见Java&mdash;&mdash;Redhat对于Java的支持可谓是一代比一代强了，从2.0根本没有任何对于Java的引入，到3.0对于Java几乎只停留在Kdevolop上的一种文件，到4.0提供了一整套的Java开发环境（虽然版本很低），终于到了5代的&rdquo;Java开发的完整平台&ldquo;，似乎其最终目标是提供一个可供企业级系统部署的Java平台。可以看得出，自Solaris宣布开源以后，Redhat在企业级场合受到了严重的挑战，不得不加强修补对于自身Java支持不完善的软肋，争取在Sun之外建立自己的Java平台并与其一争高下。</p>
<p>当然要数最为&rdquo;引人注目&ldquo;的更新自然是对于Logo的修改，新的logo采用了蓝色的基调，留意一下：&quot;TM&quot;小标志，注册商标了！新的logo再也不见了那顶挥之不去的&rdquo;小红帽&ldquo;，虽然&ldquo;Fedora&rdquo;的意思还是&ldquo;帽子&rdquo;，看来经历了3年，redhat终于要放手了，让自己的Fedora逐渐变为&ldquo;Fedoraproject.org&quot;。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2006/03/21/fedora-core-5/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>给Fedora 4安装Fcitx 3.x</title>
		<link>http://www.litrin.net/2005/12/23/%e7%bb%99fedora-4%e5%ae%89%e8%a3%85fcitx-3x/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e7%25bb%2599fedora-4%25e5%25ae%2589%25e8%25a3%2585fcitx-3x</link>
		<comments>http://www.litrin.net/2005/12/23/%e7%bb%99fedora-4%e5%ae%89%e8%a3%85fcitx-3x/#comments</comments>
		<pubDate>Fri, 23 Dec 2005 04:38:58 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=174</guid>
		<description><![CDATA[注:应别人要求转贴了FC4下安装fcitx（为了使用五笔输入）的文档，并作了部分文字、格式修改，不涉及技术。由于未经测试，希望大家见谅。原著为LinuxSir.Org的北南南北。 一、下载； 源码包：fcitx-3.2-050827.tar.bz2 RPM 包：fcitx-3.2.050827-fc4.noarch.rpm 二、安装 fcitx，二选其一； 1、RPM包的安装； [root@localhost beinan]# rpm -ivh fcitx-3.2.050827-fc4.noarch.rpm 配置请看第三点； 2、源码包的安装； [root@localhost beinan]# tar jxvf fcitx-3.2-050827.tar.bz2[root@localhost beinan]# cd fcitx[root@localhost fcitx-3.1.1]# ./configure[root@localhost fcitx-3.1.1]# make[root@localhost fcitx-3.1.1]# make install 三、Fcitx 3.x的配置； 让fcitx 进入桌面自动运行；方法有二； 方法一： 请在 /etc/X11/xinit/xinput.d/ 目录中查看文件zh_CN ，如果没有就建一个；把里面的内容改为如下的； XIM=fcitxXIM_PROGRAM=fcitxGTK_IM_MODULE=fcitxgnome-im-settings-daemon &#62;/dev/null 方法二： 在$HOME/.xinput.d/里建立文件zh_CN，包含下面内容, 就可以了； XIM=fcitxXIM_PROGRAM=fcitxGTK_IM_MODULE=fcitxXMODIFIERS=&#34;@im=fcitx&#34;gnome-im-settings-daemon &#62;/dev/null 如果当前用户目录下没有 .xinput.d目录，就建一个。然后再建一个zh_CN的文件，内容就是上面的那段。 [root@localhost beinan]# mkdir ~/.xinput.d 这样就差不多能用起来了。直接运行一下命令； [root@localhost beinan]# [...]]]></description>
			<content:encoded><![CDATA[<p>注:应别人要求转贴了FC4下安装fcitx（为了使用五笔输入）的文档，并作了部分文字、格式修改，不涉及技术。由于未经测试，希望大家见谅。<br />原著为LinuxSir.Org的北南南北。<br />
<hr style="width: 100%; height: 2px;" />一、下载；</p>
<p>源码包：<a rel="nofollow" target="_blank" href="http://www.fcitx.org/download/fcitx-3.2-050827.tar.bz2" target="_blnk">fcitx-3.2-050827.tar.bz2</a></p>
<p>RPM 包：<a rel="nofollow" target="_blank" href="http://www.fcitx.org/download/fcitx-3.2.051108-fc4.noarch.rpm" target="_blnk">fcitx-3.2.050827-fc4.noarch.rpm</a></p>
<p>二、安装 fcitx，二选其一；</p>
<p>1、RPM包的安装；</p>
<p>[root@localhost beinan]# rpm -ivh fcitx-3.2.050827-fc4.noarch.rpm</p>
<p>配置请看第三点；</p>
<p>2、源码包的安装；</p>
<p>[root@localhost beinan]# tar jxvf fcitx-3.2-050827.tar.bz2<br />[root@localhost beinan]# cd fcitx<br />[root@localhost fcitx-3.1.1]# ./configure<br />[root@localhost fcitx-3.1.1]# make<br />[root@localhost fcitx-3.1.1]# make install</p>
<p>三、Fcitx 3.x的配置；</p>
<p>让fcitx 进入桌面自动运行；方法有二；</p>
<p>方法一：</p>
<p>请在 /etc/X11/xinit/xinput.d/ 目录中查看文件zh_CN ，如果没有就建一个；把里面的内容改为如下的；</p>
<p>XIM=fcitx<br />XIM_PROGRAM=fcitx<br />GTK_IM_MODULE=fcitx<br />gnome-im-settings-daemon &gt;/dev/null</p>
<p>方法二：</p>
<p>在$HOME/.xinput.d/里建立文件zh_CN，包含下面内容, 就可以了；</p>
<p>XIM=fcitx<br />XIM_PROGRAM=fcitx<br />GTK_IM_MODULE=fcitx<br />XMODIFIERS=&quot;@im=fcitx&quot;<br />gnome-im-settings-daemon &gt;/dev/null</p>
<p>如果当前用户目录下没有 .xinput.d目录，就建一个。然后再建一个zh_CN的文件，内容就是上面的那段。</p>
<p>[root@localhost beinan]# mkdir ~/.xinput.d</p>
<p>这样就差不多能用起来了。直接运行一下命令；</p>
<p>[root@localhost beinan]# fcitx</p>
<p>如果不能使用fcitx ，可能得设置设置一下变量；</p>
<p>还得设置一下当前用户的环境变量，也就是在你想用的那个用户的家目录下的 .bashrc 文件。</p>
<p>.bashrc这个文件是隐藏的，你可以用 vi 或者gedit编辑都行。看你习惯吧。</p>
<p>在里面加两行，如下：</p>
<p>export LC_CTYPE=&quot;zh_CN&quot;<br />export XMODIFIERS=&quot;@im=fcitx&quot;</p>
<p>注意保存一下，否则不起做用；</p>
<p>我是刚安装好的系统，一切都是新的，看一下我的beinan这个用户下的 .bashrc的配置吧。</p>
<p># .bashrc<br /># User specific aliases and functions<br />export LC_CTYPE=&quot;zh_CN&quot;<br />export XMODIFIERS=&quot;@im=fcitx&quot;<br /># Source global definitions<br />if [ -f /etc/bashrc ]; then<br />. /etc/bashrc<br />fi</p>
<p>存在的问题；</p>
<p>如果您用中文桌面环境，能启动fcitx ，但不能输入，大多是控制台的locale和桌面的locale不一致所引起的。</p>
<p>请在用户家目录下的.bashrc 中加入一行；</p>
<p>export LANG=&quot;zh_CN.UTF-8&quot;</p>
<p>另外还在建一个 .i18n的文件；内容如下：</p>
<p>LANG=&quot;zh_CN.UTF-8&quot;</p>
<p>重启X就好了，按CTRL+ALT+BACKSPACE；就重新启动系统；litrin注：其实直接在终端下输入init 3回到文本方式，再init 5 回来就成了。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2005/12/23/%e7%bb%99fedora-4%e5%ae%89%e8%a3%85fcitx-3x/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Redhat中Selinux的用法</title>
		<link>http://www.litrin.net/2005/12/19/redhat%e4%b8%adselinux%e7%9a%84%e7%94%a8%e6%b3%95/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=redhat%25e4%25b8%25adselinux%25e7%259a%2584%25e7%2594%25a8%25e6%25b3%2595</link>
		<comments>http://www.litrin.net/2005/12/19/redhat%e4%b8%adselinux%e7%9a%84%e7%94%a8%e6%b3%95/#comments</comments>
		<pubDate>Mon, 19 Dec 2005 01:26:59 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=162</guid>
		<description><![CDATA[RedHat Enterprise Linux AS 4.0中安全方面的最大变化在于集成SELinux的支持。 SELinux的全称是Security Enhanced Linux，是由美国国家安全局NSA开发的访问控制体制。 SELinux可以最大限度地保证Linux系统的安全。至于它的作用到底有多大，举一个简单的例子可以证明：没有SELinux保护的Linux的安全级别和Windows一样，是C2级，但经过保护SELinux保护的Linux，安全级别则可以达到B1级。 下 面在举一个例子来说明。如果我们把/tmp目录下的所有文件和目录权限设置为0777，这样在没有SELinux保护的情况下，任何人都可以访问/tmp 下的内容。而在SELinux环境下，尽管目录权限允许你访问/tmp下的内容，但SELinux的安全策略会继续检查你是否可以访问。 启用SELinux我们在安装RedHat Enterprise Linux AS 4.0的过程中，可以选择&#8220;激活&#8221;、&#8220;警告&#8221;或者&#8220;关闭&#8221;SELinux。默认设置为&#8220;激活&#8221;。 配置SELinux策略RedHat Enterprise Linux AS 4.0安装之后，我们可以执行&#8220;应用程序&#8221;&#8211;&#62;&#8220;系统设置&#8221;&#8211;&#62;&#8220;安全级别&#8221;，或者直接在控制台窗口输入&#8220;system-config- securitylevel&#8221;来打开&#8220;安全级别&#8221;设置窗口。在&#8220;SELinux&#8221;选项页中，我们不但可以设置&#8220;启用&#8221;或者&#8220;禁用&#8221;SELinux，而且还 可以对已经内置的SELinux策略进行修改. 主要的Selinux操作 ls -Z ps -Z id -Z 这三个命令的-Z参数专为SELinux而增加的,可以看到文件,进程和用户的SELinux属性情况. 重要命令:chcon 改变文件的SELinux属性!]]></description>
			<content:encoded><![CDATA[<p>RedHat Enterprise Linux AS 4.0中安全方面的最大变化在于集成SELinux的支持。</p>
<p>SELinux的全称是Security Enhanced Linux，是由美国国家安全局NSA开发的访问控制体制。</p>
<p>SELinux可以最大限度地保证Linux系统的安全。至于它的作用到底有多大，举一个简单的例子可以证明：没有SELinux保护的Linux的安全级别和Windows一样，是C2级，但经过保护SELinux保护的Linux，安全级别则可以达到B1级。</p>
<p>下 面在举一个例子来说明。如果我们把/tmp目录下的所有文件和目录权限设置为0777，这样在没有SELinux保护的情况下，任何人都可以访问/tmp 下的内容。而在SELinux环境下，尽管目录权限允许你访问/tmp下的内容，但SELinux的安全策略会继续检查你是否可以访问。</p>
<ol>
<li><font size="3">启用SELinux</font><br />我们在安装RedHat Enterprise Linux AS 4.0的过程中，可以选择&ldquo;激活&rdquo;、&ldquo;警告&rdquo;或者&ldquo;关闭&rdquo;SELinux。默认设置为&ldquo;激活&rdquo;。</li>
<li><font size="3">配置SELinux策略<br /></font>RedHat Enterprise Linux AS 4.0安装之后，我们可以执行&ldquo;应用程序&rdquo;&#8211;&gt;&ldquo;系统设置&rdquo;&#8211;&gt;&ldquo;安全级别&rdquo;，或者直接在控制台窗口输入&ldquo;system-config- securitylevel&rdquo;来打开&ldquo;安全级别&rdquo;设置窗口。在&ldquo;SELinux&rdquo;选项页中，我们不但可以设置&ldquo;启用&rdquo;或者&ldquo;禁用&rdquo;SELinux，而且还 可以对已经内置的SELinux策略进行修改.</li>
<li><font size="4">主要的Selinux操作<br /></font><font class="normalfont"><span style="font-style: italic;"> ls -Z</span><br style="font-style: italic;" /><span style="font-style: italic;"> ps -Z</span><br style="font-style: italic;" /><span style="font-style: italic;"> id -Z</span><br /> 这三个命令的-Z参数专为SELinux而增加的,可以看到文件,进程和用户的SELinux属性情况.<br /> 重要命令:<br /><span style="font-style: italic;">chcon </span>改变文件的SELinux属性!</font></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2005/12/19/redhat%e4%b8%adselinux%e7%9a%84%e7%94%a8%e6%b3%95/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>什么是Selinux</title>
		<link>http://www.litrin.net/2005/12/07/%e4%bb%80%e4%b9%88%e6%98%afselinux/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e4%25bb%2580%25e4%25b9%2588%25e6%2598%25afselinux</link>
		<comments>http://www.litrin.net/2005/12/07/%e4%bb%80%e4%b9%88%e6%98%afselinux/#comments</comments>
		<pubDate>Wed, 07 Dec 2005 04:10:17 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=128</guid>
		<description><![CDATA[介绍： 当今世界，无处不在高速互联网连接、如备有无线接入点的咖啡馆和在网上到处传播的各种黑客工具使得出于对计算机安全的考虑成为老生常谈。出于解决安全问题，NSA在Linux社区的帮助下开发了一种访问控制体系，在这种访问控制体系的限制下，进程只能访问那些在他的任务中所需要文件。这种体系叫做 Security-Enhanced Linux或简化为SELinux。 SELinux概览： SELinux是一种基于 域-类型 模型（domain-type）的强制访问控制（MAC）安全系统，它由NSA编写并设计成内核模块包含到内核中，相应的某些安全相关的应用也被打了SELinux的补丁，最后还有一个相应的安全策略。 众所周知，标准的UNIX安全模型是&#34;任意的访问控制&#34;DAC。就是说，任何程序对其资源享有完全的控制权。假设某个程序打算把含有潜在重要信息的文件仍到/tmp目录下，那么在DAC情况下没人能阻止他！ 而MAC情况下的安全策略完全控制着对所有资源的访问。这是MAC和DAC本质的区别。 SELinux里实现的MAC允许程序在/tmp目录下建立文件，也允许这个文件按照UNIX权限字的要求对全世界可读，但是当UNIX许可检查应用后， SELinux许可检查还要进一步判断对资源的访问是否被许可。换句话说，尽管某些UNIX文件的权限被设定为0777但是你也许仍然会被禁止读，写和执行该UNIX文件。在只有DAC的情况下，用户可以查看或更改属于他的任何文件。SELinux则可以限制每一个进程对各种资源的访问，和访问的权级。就是说当一个程序在使用含有敏感数据时，这些数据会被禁止写入那些低权级进程可读的文件中。 SELinux提供了比传统的UNIX权限更好的访问控制。 例如，管理员可以只允许一个应用程序添加记录到一个日志文件但不允许其重写或者删除该日志文件的内容。虽然ext2和ext3文件系统有一个append-only标签（使用chattr设置）,但是这属性不区分某一个进程（不能在为一个访问 append-only的同时，又允许另一个进程据有完全可写的权利）；另一方面，一个应用程序可以被允许在一个文件夹中建立文件和向其写入数据，但不能删除文件：这种特性是没有SELinux的普通的Linux内核所不能做到的。还有，网络应用程序可以绑定到其需要的端口上（如BIND的53端口），但不能绑定其它端口。 域-类型模型意味着在安全域中运行着的每一个进程和每一个资源（一般文件、目录文件和套接字等）都有一个与之相联系的&#34;类型&#34;（type）。 在这基础之上建立了一系列规则，这些规则列出了某个域可以在每一个类型上执行的所有动作。 域-类型模型的一个优点就是我们可以对策略进行分析，从而判断出哪些信息有可能外溢。在标准的UNIX环境中，用户一般可以使用ps命令来互相查看彼此的进程列表，然而这也会为攻击者提供有价值的信息。甚至就算完全阻止用户使用ps命令，信息还是会意外的或故意的泄露，其实在一个给定的UNIX环境中，哪些信息会发生泄露是无法判断的。 而在SELinux情况下，我们会有很多工具用来分析SELinux策略并判断哪些信息泄露是可能的。举个例子，假如有两个应用程序被允许向一个日志文件添加数据，且他们互相不能直接通信。那么如果一个其中进程又获得了对该日志的读权限的话，那么一个单方通信就有可能形成。 对访问/etc/shadow文件做访问限制是个很好的例子，通过该例子我们可以看出策略分析的好处。如果你装了Fedora Core 3,并且选择了严格的SElinux策略配置，那么将会有17个域被允许访问shadow_t(/etc/shadow的type)，其中有9个域据有写权利。这17个域中有2个可以从用户域（user domain）进入，他们是/usr/bin/passwd和 /sbin/unix_chkpwd(一个为无特权应用程序提供密码检查的辅助程序，比如向锁屏程序就需要使用到unix_chkpwd)。这17个域中的某些域是为一些不常见的应用程序准备的（如radius_t域就是为RADIUS服务器准备的），所以，也就是说，就算除去这个不常用的域，一般的系统中还有16个可访问的域能够访问/etc/shadow呢！ 值得注意的是，Fedora发型版的SELinux策略已经变得越来越灵活；未来版本的策略也许会使何以访问/etc/shadow的域超过17个，这取决于可调节选项的实际配置。还要注意的是，17这个数字是基于严格的策略设定之后而得出的，实际上一个默认的安装会大于这个数字。 在一个没有SE的机器上，任何以root身份运行的进程都可以访问/etc/shadow文件。这意味着任何被&#34;SETUID root&#34;的二进制代码或以root身份运行的网络服务守护进程，它们所产生的任何安全问题都将会是灾难性的。 SELinux允许我们限制这些守护进程只访问其所需：BIND只能在53端口提供服务、DHCP服务器可以使用原始套接字（raw network access）、DHCP客户端也可以使用原始套接字并可以改变网络接口，但是它们谁都别想访问/etc/shadow,/home,/root等等这些重要的资源。所以，在SElinux的情况下，如果BIND受到了危害，它最多也就是发送一些伪造的报文罢了。如果DHCPD受到了危害，最坏的可能就是你的ip地址分配被搞乱。这比root权力被远程滥用好多了！ 大家很清楚，一个进程可以援引另一个进程。 在这种情况下，拿DHCPD为例，DHCPD也许会尝试援引 /sbin/unix_chkpwd对密码进行强力攻击。（But even that potential vulnerability is closed）:SELinux能够提供&#34;过渡&#34;规则，这种规则可以用来判断各种域间过渡是否合法。有了&#34;过渡&#34;规则以后，由用户执行的屏幕保护程序可以顺利过渡到/sbin/unix_chkpwd这样一个特权域，然而DHCPD就别想了。 上述这些限制功能可以使你对系统的状态了如指掌。如果你发现你的DHCP服务器有BUG，那你只要简单的升级DHCP服务器到新版本并且确定每一个客户端都能正常获得IP地址就可以了。可是如果没有SE的话，你还要考虑你的新服务器是否已被黑客入侵并擦除了痕迹。 SElinux 对不同的域做了严格的隔离。我以前运行一个Debian系统有两年时间，在这期间我开放了他的root密码。最近两个月我在一个Fedora系统上做同样的事情。但这两个系统已经抵抗住了很多次以root身份的攻击（见httphttp://www.coker.com.au/selinux/play.html）。（译者注：这里有一些作者对其playmachine的介绍被忽略了） 为了给RHEL4做代码测试，Fedora core 2已经尝试集成了SELinux，但是默认是关闭的。而且将来RHEL和Fedora Core的SE还会有非常大的差别的。我们计划在RHEL中，将把SELinux的策略设置的比Fedora Core要严格，我们相信这样做也符合用户的要求。未来的Fedora版本的SELinux策略将会越来越严格，但再严格也不会超过RHEL。 SELinux深入研究： SELinux的策略数据库控制着SELinux的方方面面。它可以判断一个程序可能会运行在哪个域中，还可以说明某个域可以访问哪些资源。这种规定被叫做规则，一个典型的策略往往拥有100,000条规则。别被这数字吓坏，我们根本不必去关心它，因为当我们撰写策略时，我们可以使用高级宏，这些高级宏的一行就能生成10,000条规则。除了宏以外，还有一些工具，使用他们可以分析这些生成的规则是否能达到你对安全的要求。其实再和设置每个文件的UNIX 权限位这样的工作比起来，这100,000个规则也是相当小的工作量了。 Fedora Core 2安全策略的目标是满足大多数用户无需改动就可以工作的要求，但也有一些普通的简单的选项可以调节策略，一般都是简简单单的一行选项。比如是否允许用户通过dmesg阅读内核的日志，是否允许管理员（sysadm_r）直接通过SSH登陆或登陆图形会话，还有是否允许用户绑定TCP套接字。 那100,000个左右的规则存储在一个大约2.6MB的文件中，当系统启动时随内核一起装入内存并占用同样大小（大约2.6MB）的内核空间。 Fedora [...]]]></description>
			<content:encoded><![CDATA[<p><strong>介绍：  </strong><br />当今世界，无处不在高速互联网连接、如备有无线接入点的咖啡馆和在网上到处传播的各种黑客工具使得出于对计算机安全的考虑成为老生常谈。出于解决安全问题，NSA在Linux社区的帮助下开发了一种访问控制体系，在这种访问控制体系的限制下，进程只能访问那些在他的任务中所需要文件。这种体系叫做  Security-Enhanced Linux或简化为SELinux。 </p>
<p><strong>SELinux概览：  </strong></p>
<p>SELinux是一种基于 域-类型  模型（domain-type）的强制访问控制（MAC）安全系统，它由NSA编写并设计成内核模块包含到内核中，相应的某些安全相关的应用也被打了SELinux的补丁，最后还有一个相应的安全策略。  </p>
<p>众所周知，标准的UNIX安全模型是&quot;任意的访问控制&quot;DAC。就是说，任何程序对其资源享有完全的控制权。假设某个程序打算把含有潜在重要信息的文件仍到/tmp目录下，那么在DAC情况下没人能阻止他！</p>
<p>而MAC情况下的安全策略完全控制着对所有资源的访问。这是MAC和DAC本质的区别。  </p>
<p>SELinux里实现的MAC允许程序在/tmp目录下建立文件，也允许这个文件按照UNIX权限字的要求对全世界可读，但是当UNIX许可检查应用后，  SELinux许可检查还要进一步判断对资源的访问是否被许可。<br />换句话说，尽管某些UNIX文件的权限被设定为0777但是你也许仍然会被禁止读，写和执行该UNIX文件。在只有DAC的情况下，用户可以查看或更改属于他的任何文件。SELinux则可以限制每一个进程对各种资源的访问，和访问的权级。就是说当一个程序在使用含有敏感数据时，这些数据会被禁止写入那些低权级进程可读的文件中。  </p>
<p>SELinux提供了比传统的UNIX权限更好的访问控制。</p>
<p>例如，管理员可以只允许一个应用程序添加记录到一个日志文件但不允许其重写或者删除该日志文件的内容。虽然ext2和ext3文件系统有一个append-only标签（使用chattr设置）,但是这属性不区分某一个进程（不能在为一个访问  append-only的同时，又允许另一个进程据有完全可写的权利）；另一方面，一个应用程序可以被允许在一个文件夹中建立文件和向其写入数据，但不能删除文件：这种特性是没有SELinux的普通的Linux内核所不能做到的。还有，网络应用程序可以绑定到其需要的端口上（如BIND的53端口），但不能绑定其它端口。  </p>
<p>域-类型模型意味着在安全域中运行着的每一个进程和每一个资源（一般文件、目录文件和套接字等）都有一个与之相联系的&quot;类型&quot;（type）。</p>
<p>在这基础之上建立了一系列规则，这些规则列出了某个域可以在每一个类型上执行的所有动作。  域-类型模型的一个优点就是我们可以对策略进行分析，从而判断出哪些信息有可能外溢。在标准的UNIX环境中，用户一般可以使用ps命令来互相查看彼此的进程列表，然而这也会为攻击者提供有价值的信息。甚至就算完全阻止用户使用ps命令，信息还是会意外的或故意的泄露，其实在一个给定的UNIX环境中，哪些信息会发生泄露是无法判断的。</p>
<p>而在SELinux情况下，我们会有很多工具用来分析SELinux策略并判断哪些信息泄露是可能的。举个例子，假如有两个应用程序被允许向一个日志文件添加数据，且他们互相不能直接通信。那么如果一个其中进程又获得了对该日志的读权限的话，那么一个单方通信就有可能形成。  </p>
<p>对访问/etc/shadow文件做访问限制是个很好的例子，通过该例子我们可以看出策略分析的好处。<br />如果你装了Fedora Core  3,并且选择了严格的SElinux策略配置，那么将会有17个域被允许访问shadow_t(/etc/shadow的type)，其中有9个域据有写权利。这17个域中有2个可以从用户域（user  domain）进入，他们是/usr/bin/passwd和  /sbin/unix_chkpwd(一个为无特权应用程序提供密码检查的辅助程序，比如向锁屏程序就需要使用到unix_chkpwd)。这17个域中的某些域是为一些不常见的应用程序准备的（如radius_t域就是为RADIUS服务器准备的），所以，也就是说，就算除去这个不常用的域，一般的系统中还有16个可访问的域能够访问/etc/shadow呢！</p>
<p>值得注意的是，Fedora发型版的SELinux策略已经变得越来越灵活；未来版本的策略也许会使何以访问/etc/shadow的域超过17个，这取决于可调节选项的实际配置。还要注意的是，17这个数字是基于严格的策略设定之后而得出的，实际上一个默认的安装会大于这个数字。  </p>
<p>在一个没有SE的机器上，任何以root身份运行的进程都可以访问/etc/shadow文件。这意味着任何被&quot;SETUID  root&quot;的二进制代码或以root身份运行的网络服务守护进程，它们所产生的任何安全问题都将会是灾难性的。</p>
<p>SELinux允许我们限制这些守护进程只访问其所需：<br />BIND只能在53端口提供服务、DHCP服务器可以使用原始套接字（raw  network  access）、DHCP客户端也可以使用原始套接字并可以改变网络接口，但是它们谁都别想访问/etc/shadow,/home,/root等等这些重要的资源。<br />所以，在SElinux的情况下，如果BIND受到了危害，它最多也就是发送一些伪造的报文罢了。如果DHCPD受到了危害，最坏的可能就是你的ip地址分配被搞乱。这比root权力被远程滥用好多了！  </p>
<p>大家很清楚，一个进程可以援引另一个进程。</p>
<p>在这种情况下，拿DHCPD为例，DHCPD也许会尝试援引  /sbin/unix_chkpwd对密码进行强力攻击。（But even that potential vulnerability is  closed）:SELinux能够提供&quot;过渡&quot;规则，这种规则可以用来判断各种域间过渡是否合法。有了&quot;过渡&quot;规则以后，由用户执行的屏幕保护程序可以顺利过渡到/sbin/unix_chkpwd这样一个特权域，然而DHCPD就别想了。  </p>
<p>上述这些限制功能可以使你对系统的状态了如指掌。如果你发现你的DHCP服务器有BUG，那你只要简单的升级DHCP服务器到新版本并且确定每一个客户端都能正常获得IP地址就可以了。可是如果没有SE的话，你还要考虑你的新服务器是否已被黑客入侵并擦除了痕迹。</p>
<p>SElinux  对不同的域做了严格的隔离。我以前运行一个Debian系统有两年时间，在这期间我开放了他的root密码。最近两个月我在一个Fedora系统上做同样的事情。但这两个系统已经抵抗住了很多次以root身份的攻击（见http<a rel="nofollow" target="_blank" href="http://www.coker.com.au/selinux/play.html">http://www.coker.com.au/selinux/play.html</a>）。（译者注：这里有一些作者对其playmachine的介绍被忽略了）  </p>
<p>为了给RHEL4做代码测试，Fedora core 2已经尝试集成了SELinux，但是默认是关闭的。而且将来RHEL和Fedora  Core的SE还会有非常大的差别的。我们计划在RHEL中，将把SELinux的策略设置的比Fedora  Core要严格，我们相信这样做也符合用户的要求。未来的Fedora版本的SELinux策略将会越来越严格，但再严格也不会超过RHEL。  </p>
<p><strong>SELinux深入研究：  </strong></p>
<p>SELinux的策略数据库控制着SELinux的方方面面。它可以判断一个程序可能会运行在哪个域中，还可以说明某个域可以访问哪些资源。这种规定被叫做规则，一个典型的策略往往拥有100,000条规则。别被这数字吓坏，我们根本不必去关心它，因为当我们撰写策略时，我们可以使用高级宏，这些高级宏的一行就能生成10,000条规则。除了宏以外，还有一些工具，使用他们可以分析这些生成的规则是否能达到你对安全的要求。其实再和设置每个文件的UNIX  权限位这样的工作比起来，这100,000个规则也是相当小的工作量了。 </p>
<p>Fedora Core  2安全策略的目标是满足大多数用户无需改动就可以工作的要求，但也有一些普通的简单的选项可以调节策略，一般都是简简单单的一行选项。比如是否允许用户通过dmesg阅读内核的日志，是否允许管理员（sysadm_r）直接通过SSH登陆或登陆图形会话，还有是否允许用户绑定TCP套接字。  <br />那100,000个左右的规则存储在一个大约2.6MB的文件中，当系统启动时随内核一起装入内存并占用同样大小（大约2.6MB）的内核空间。 Fedora  Core 3默认的strict策略有着多余290,000条规则，占用7MB的内核空间。Fedora Core  3默认的target策略有大约5,000条规则，占用150K的内核空间。  </p>
<p>目前，SELinux并没有在内存使用方面进行优化；但现在对这些优化工作已经有了计划和一些降低内存使用的方法。如果你不打算使用某些守护进程，你可以简单的将其对应的策略文件删除以便获得占用空间更少的策略。2003年，在Ottawa举办的一次Linux讨论会上，我提交过一篇文章，那是关于我在把  SELinux移植到HP iPAQ PDA上所做的工作的文章(在<a rel="nofollow" target="_blank" href="http://archive.linuxsymposium.org/ols2003/Proceedings/%E5%8F%AF%E4%BB%A5%E8%8E%B7%E5%BE%97">http  //archive.linuxsymposium.org/ols2003/Proceedings/可以获得</a>)。</p>
<p>证明我可以使SELinux（且选择  strict策略）很好的工作在一台只有 64 MBs的RAM 和32 MBs 存储空间的小平台上，并且我相信我还可以使它运行在更小的平台上。针对Fedora  Core2系统，我们只把目光定位在目前最常见的硬件平台，从而得出了默认的策略配置。但那些使用老机器的用户们也许会希望配置出最小限度的策略以便减少内存使用和提高性能。  </p>
<p>在使用了SELinux的系统中，每一个进程的上下文都包含三个组成部分：一个ID（identity），一个角色（role）和一个域（domain）</p>
<p>ID是指这个进程的所有者，就是UNIX账户，但前提是这个账户必须被预先编译到SELinux策略中去使SELinux认识这个账户，不然的话SELinux默认地将那些未知的系统进程ID记为  system_u ，将那些未知的用户进程ID记为  user_u；角色用来判断某个处于此角色的ID可以进入哪些域，还用来防止某个处于此角色的ID进入其它不该进入的域。比如， user_r角色就不允许进入  sysadm_t （重要的系统管理域）。</p>
<p>换句话说就是，那些只有 user_u ID的进程只能扮演 user_r 这个角色，而 user_r  这个角色 永远不能被许可进入 sysadm_t 域。从而，那些只有 user_u 这个ID的人是别想进入 sysadm_t 域的。这些特色在缺省的Fedora  Core2策略中并没有完全使用，当前我们只是把努力花在制定守护进程上，而对用户域的策略限制的很少（targeted策略没有对用户登陆做任何限制）。  </p>
<p>一个安全上下文可以像 identity:role:domain  这样一种描述符的方式简明的表现出来。</p>
<p>比如，典型的系统管理上下文可以表示成 root:sysadm_r:sysadm_t  。任何可以被访问的对象都可以这样来表示。值得注意的是，&quot;域&quot;其实也是和一个进程相对应的一个&quot;类型&quot;。所以当检查某个进程是否有权向另一个进程发送信号（比如为ps命令检阅/proc文件系统）时，接受信号的进程的&quot;域&quot;就会充当&quot;域-类型&quot;模型中的&quot;类型&quot;的角色，从而完成&quot;域-类型&quot;的规则检查。即完成了进程间通信权限的检查。由于对于文件还没有使用角色这个机制，所以目前每个文件都被规定为object_r  角色（这个角色只是占个位置罢了，对策略没有任何影响）。</p>
<p>文件的ID就是文件创建者的ID。constraints  策略源文件中使用这个方式来判断一个访问是否有权改变某个文件的上下文描述符。除非被访问的文件的描述符中的ID字段和访问该文件的进程的所有者ID字段相同，无论是改变前还是改变后，否则进程无权改变一个文件的上下文描述符。</p>
<p>例如，一个拥有  rjc:user_r:user_t 描述符的进程可以将一个拥有 rjc:object_r:user_games_rw_t  描述符的文件的描述符改为rjc:object_r:user_games_ro_t ，但是它无权改变一个拥有  john:object_r:user_games_rw_t 描述符的文件的任何属性。  </p>
<p>要想查看当前运行的进程的上下文描述符，可以使用ps命令并加入 &quot;-Z&quot;选项，如例一：&quot;ps ax -Z的输出&quot;： <br />PID CONTEXT  COMMAND <br />1634 root:user_r:user_t -bash <br />1662 root:user_r:user_t ps ax -Z  </p>
<p>Example 1. Example Output of ps ax -Z  </p>
<p>要想查看目录下的文件的上下文描述符，可以使用ls命令并加入 &quot;-Z&quot;选项，如例一：&quot;ls -Z的输出&quot;： <br />drwxr-xr-x root  root system_u:object_r:bin_t bin <br />drwxr-xr-x root root  system_u:object_r:boot_t boot <br />drwxr-xr-x root root  system_u:object_r:device_t dev <br />drwxr-xr-x root root system_u:object_r:etc_t  etc <br />drwxr-xr-x root root system_u:object_r:home_root_t home <br />drwxr-xr-x  root root system_u:object_r:root_t initrd <br />drwxr-xr-x root root  system_u:object_r:lib_t lib <br />drwx&#8212;&#8212; root root  system_u:object_r:lost_found_t lost+found <br />drwxr-xr-x root root  system_u:object_r:default_t misc <br />drwxr-xr-x root root  system_u:object_r:mnt_t mnt <br />drwxr-xr-x root root system_u:object_r:usr_t opt  <br />?&#8212;&#8212;&#8212; ? ? oracle <br />dr-xr-xr-x root root proc <br />drwxr-x&#8212; root root  system_u:object_r:user_home_dir_t root <br />drwxr-xr-x root root  system_u:object_r:sbin_t sbin <br />drwxr-xr-x root root selinux <br />drwxr-xr-x  root root system_u:object_r:default_t srv <br />drwxr-xr-x root root sys  <br />drwxrwxrwt root root system_u:object_r:tmp_t tmp <br />drwxr-xr-x root root  system_u:object_r:usr_t usr <br />drwxr-xr-x root root system_u:object_r:var_t var  </p>
<p>Example 2. Example Output of ls -Z  </p>
<p>值得注意的是：对于那些没有指定上下文的文件（一般是指那些不支持rwx标签的文件系统，如/sys、/proc、/selinux），ls命令就不会显示其上下文。对于不能用stat命令查看当前状态的那些文件系统。ls命令返回&quot;?&#8212;&#8212;&#8212;&quot;,其所有者和所有组也被标记为&quot;？&quot;，同样的，他的上下文也不会显示。  <br />如例三所示，id命令将返回当前shell的上下文 <br />uid=0(root) gid=0(root)  groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)  context=root:user_r:user_t <br />Example 3. Example Output of the id Command  </p>
<p>如果你的SELinux系统使用了strict  策略，你会发现应用程序做一些不正常的事情是很容易发生的。你经常会发现某些程序中会有些bug，这些bug使程序做那些你的SELinux策略不允许其做的其它事情。  <br />SELinux要求进程的上下文只有在被执行的&quot;那一刻&quot;才允许改变。新进程的域和角色信息可以从exec系统函数的上下文和文件类型中自动获得。进程也可以在执行exec之前被指明上下文。这些过程自然受SELinux策略的控制，因为ID，角色和域都受SELinux策略的控制。  </p>
<p><strong>Fedora中策略的实现： </strong></p>
<p>从 Fedora Core 3  开始，SELinux的策略数据存储于/etc/security/selinux/X/src/policy/目录下（X指你选则的策略，可以是 &quot;strict&quot;  或者 &quot;targeted&quot;）。在这个目录中，你可以使用&quot;make  load&quot;来编译并装在策略。也就是用那个命令将策略编译成二进制格式并装在到内核中，并立即生效。除了装如内核，该命令还将策略的二进制格式存储到  /etc/selinux/X/policy/policy.YY文件中，这里X指你选则的策略，可以是&quot;strict&quot; 或者  &quot;targeted&quot;，YY是策略的版本号（Fedora Core  3支持最新的版本是18）。这是为了在系统开机的第一时间，init可以迅速装载策略到内核。/etc/selinux/config这个配置文件用来告诉init那些策略需要装载。  </p>
<p>当你启动一个SELinux时，init所做的第一件事就是挂载/proc文件系统，并判断SELinux是否被激活。init通过selinuxfs文件系统类型来判断内核中是否有SELinux，如果内核中没有SELinux或者内核参数中  selinux=0 这一项，那么系统就会以一种叫做  non-SE的状态被继续引导启动。如果发现了SELinux，那么/selinux虚拟文件系统将被创建，然后，init通过  /selinux/policyvers来检查内核所支持的SELinux版本。最后，相应的策略数据  /etc/selinux/X/policy/policy.YY就会被装在到内核中去了。  </p>
<p>当策略被装载完之后，所有正在运行着的进程（指的就是init和内核的所有线程）都将被指定 system_u:system_r:kernel_t  这样一种上下文（内核线程其实无论在什么时间被创建，其上下文都是system_u:system_r:kernel_t  ）。当init装载完策略之后，它还要重新执行自己。策略中有一个规则叫domain_auto_trans(kernel_t, init_exec_t,  init_t)。他的意思就是当 kernel_t 域执行了一个据有 init_exec_t  类型的可执行文件（如/sbin/init）,那么该执行文件对应的进程的域就会自动过渡到 init_t  域（这是/sbin/init正确的所在域）。当这些都完成之后，init就继续完成那些通常的任务来完成机器的启动。内核线程自始至终都以 kernel_t  这个类型运行。 </p>
<p>文件和目录的上下文存储于扩展属性当中 (XATTRs)。更多关于XATTRs的信息请参考attr(5), getfattr(1)  和 setfattr(1)的manpage。</p>
<p>简单的说，一个XATTR就是硬盘上某个文件的所有权，它由文件名和其它一些信息组成。对于每个  persistent 文件系统来说，它的每个文件或目录的SELinux上下文就存储在  security.selinux属性当中。虽然/proc文件系统不是persistent  文件系统，但SELinux还是在幕后为其文件和目录做了上下文标记，只是不能用getxattr获得罢了。和它对比，devpts文件系统（应用于/dev/pts  Unix98伪终端）中各个文件（各个伪终端）的上下文是可以通过getxattr来获得的，并可以通过 setxattr  来更改每个设备的上下文（以便sshd等类似程序可以更改tty设备的上下文）。对于那些拥有固定存储的文件系统(ext2, ext3, Reiserfs, XFS,  vfat, 等等) 有两种选择用于设定文件上下文：<br />第一种：文件系统的类型就规定了其内部每一个文件英据有统一的上下文；<br />第二种：使用 XATTRs  为每个文件标记不同上下文。例如，在iso9660（CD-ROM）文件系统中的每一个文件的上下文都是system_u:object_r:iso9660_t  ，这被称做 genfs标记。 </p>
<p>Ext2, ext3 和XFS支持 XATTRs 而且 Fedora  系统也支持安全标记名字空间，所以Fedora默认使用 XATTRs 来标记文件的上下文，但这也是可选方法之一。因为 直到 Reiser4发布之前 ，Hans  Reiser对 支持XATTR没多大兴趣，所以Fedora的 ReiserFS 文件系统不能很好的支持SELinux标记操作。也就是说，使用 ReiserFS  文件系统作为SELinux的根文件系统是不可能的事情。  </p>
<p>XFS有一个与XATTRs相关的重要的问题：如果XATTRs不能被装入超级块（inode），那么它们就会被装入数据块，每一个超级块就要使用一个数据块用来装  SELinux XATTR 。建立XFS时，mkfs.xfs在默认情况下创建的数据块大小为4096,超级块大小为256（要是用于安装 SELinux XATTR  ，大约缺少30字节）。这就是说，默认的XFS文件系统中，每一个超级块要占用4096字节用来装载 SELinux XATTR  ，这对于磁盘空间来说是严重的浪费！当你使用&quot;-i size=512&quot;选项创建一个XFS文件系统时，超级块的大小就变成了512字节，这样就可以将SELinux  XATTR 装入超级块，即节省了空间，又提高的性能。512字节的超级块也有可能给其它操作带来好处。所以，如果你使用XFS并且打算将来使用 SELinux  的话，将超级块的大小规定为512字节肯定是个好主意。  </p>
<p>如果你使用的是较新的内核（如最新的Fedora内核或标准2.6.8.1内核）并且使用最新的mount工具，那么当你挂载一个文件系统时，有一个选项可以用来为整个文件系统指定上下文标签。比如你要挂载的文件系统是一个邮件池（mail  spool），你可以使用&quot;-o  context=system_u:object_r:mail_spool_t&quot;选项来挂载他，这样会将其内部的全部文件的上下文标记为  system_u:object_r:mail_spool_t。如果你的这个邮件池很大，而且还是XFS文件系统，这个方法还可以避免上一段所讨论的  inode大小的问题。甚至对于ext3那样的对XATTRs  开销较小的文件系统来说，使用context=选项挂载文件系统也会进一步减少开销，也可以避免为已经建立的文件系统重新设置  SElinux上下文（如果文件系统中文件较多的话，会浪费很长的时间）。 </p>
<p><strong>Fedora的缺省SELinux策略：  </p>
<p></strong>在Fedora Core 3系统中，缺省的策略是&quot;targeted  &quot;策略。对于此种选择人们议论纷纷，问题在于我们希望能使尽可能多得人使用SELinux。如果人们觉得这玩意太可怕并且妨碍了人们做他们想做的事，那么人们会把它关掉。所以我们在这个时候宁愿为大多数人提供适量的保护策略，也不会为了少部分人而提供严格的保护策略。缺省的Fedora  Core 3安装会激活 SELinux 并使用&quot;targeted &quot;策略，你也可以通过运行 system-config-securitylevel  这个程序将策略改为更加严格的 &quot;strict &quot;策略。  </p>
<p>如果你安装了策略的源文件包，那么策略的源文件就在/etc/selinux/X/src/policy/目录里面（X指你选则的策略，可以是  &quot;strict&quot; 或者  &quot;targeted&quot;）在这个目录下有一个叫作domains/program/的子目录，里面为每一个守护进程对应了一个.te文件。你可以删去那些你不使用也不打算使用的守护进程所对应的.te文件，从而减少内核内存空间的使用，并提高性能。比如，你的系统没有BIND服务，你完全可以删掉  named.te 文件。然后如果你使用&quot;make  load&quot;命令重新装载策略到内核的话，内核对内存的使用量就会减少。然而也要小心，如果你误删了其它文件，那么你的系统将不能正常启动进入  enforcing模式。所以目前，这种调节最好还是由内行来做。 </p>
<p>刚开始接触SElinux的你，要注意一个内核参数，它用来决定你系统的内核运行于  强制（enforcing  ）模式还是自由（permissive）模式，那就是&quot;enforcing&quot;参数。在自由模式下SELinux只是记录他该做什么，而事实上并不做任何动作。在强制模式下SElinux会来真格的。如果你的策略有错误，在强制模式下系统可能会阻止你登陆！所以正常情况下你应改在启动时传  enforcing=1  给内核，当你的SELinux策略有问题时，你可以临时传enforcing=0给内核来查错。在/etc/selinux/config这个init的配置文件中相应的有一个选项，通过设置它，也可以使系统进入自由模式。  </p>
<p>如果你打算中止使用SELinux，你可以使用 selinux=0  这个内核参数。这会关闭SELinux的全部功能，就好像你的内核并没有把SElinux机制编译进去一样。所以当系统出了问题时，比如系统崩溃，有些人就用此方法进行理事的恢复工作，但是我并不赞成这种做法。当你临时使用  selinux=0 进入系统后，你所建立的任何文件将不会拥有SELinux上下文标记。这就意味着，如果你替换了诸如/etc/passwd  或/etc/shadow等重要文件，那么下一次进入SELinux时，系统就不会正常的工作。这不是严重的问题，当你从CD引导时，做系统恢复时，或使用一个不支持  XATTRs备份软件恢复系统时，同样的问题也会发生。这个问题虽然可以通过为受到影响的文件系统重新标记上下文来解决，但是使用 enforcing=0 来代替  selinux=0 不是更好吗？<br />你可以编辑/etc/selinux/config来临时关闭SELinux。 </p>
<p>Fedora Core  2的释放是SELinux一次重要的发展。他是第一套提供对SELinux完整支持的主流Linux发行版本。Fedora Core 3  也是一个重要的里程碑，因为他是第一套将SELinux作为默认安装选项的Linux发行版本。<br />Red Hat Enterprise Linux 4 见会跟随  Fedora Core 的开发步伐，其对SELinux的支持也会得到进一步的发展。当 RHEL 4 发布时，她将会从 Fedora Core  系统和在Fedora 上学习SELinux的用户那里获得非常大的益处。 </p>
<p>你可以在 irc.freenode.net的  IRC服务器上的#fedora-selinux频道找到对SELinux的支持。还有 Fedora SELinux邮件列表 <a rel="nofollow" target="_blank" target="_blank" href="http://www.redhat.com/mailman/listinfo/fedora-selinux-list">http://www.redhat.com/mailman/listinfo/fedora-selinux-list</a>  。我经常挂在#fedora-selinux上面，并也订阅了邮件列表，我期望着在那里回答您提出的任何问题。  </p>
<p><strong>更多关于SELinux的资料： </p>
<p></strong>NSA site for Security-Enhanced  Linux: <a rel="nofollow" target="_blank" target="_blank" href="http://www.nsa.gov/selinux/">http://www.nsa.gov/selinux/</a> <br />Fedora Core SELinux FAQ: <a rel="nofollow" target="_blank" target="_blank" href="http://people.redhat.com/kwade/fedora-docs/selinux-faq/">http://people.redhat.com/kwade/fedora-docs/selinux-faq/</a>  <br />IRC channel for SELinux in Fedora Core: irc.freenode.net, #fedora-selinux  <br />Mailing list for SELinux in Fedora Core: <a rel="nofollow" target="_blank" target="_blank" href="http://www.redhat.com/mailman/listinfo/fedora-selinux-list">http://www.redhat.com/mailman/listinfo/fedora-selinux-list</a>  <br />SELinux play machine: <a rel="nofollow" target="_blank" target="_blank" href="http://www.coker.com.au/selinux/play.html">http://www.coker.com.au/selinux/play.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2005/12/07/%e4%bb%80%e4%b9%88%e6%98%afselinux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>为什么XMMS不支持mp3播放？</title>
		<link>http://www.litrin.net/2005/11/24/%e4%b8%ba%e4%bb%80%e4%b9%88xmms%e4%b8%8d%e6%94%af%e6%8c%81mp3%e6%92%ad%e6%94%be%ef%bc%9f/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e4%25b8%25ba%25e4%25bb%2580%25e4%25b9%2588xmms%25e4%25b8%258d%25e6%2594%25af%25e6%258c%2581mp3%25e6%2592%25ad%25e6%2594%25be%25ef%25bc%259f</link>
		<comments>http://www.litrin.net/2005/11/24/%e4%b8%ba%e4%bb%80%e4%b9%88xmms%e4%b8%8d%e6%94%af%e6%8c%81mp3%e6%92%ad%e6%94%be%ef%bc%9f/#comments</comments>
		<pubDate>Thu, 24 Nov 2005 07:04:24 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[桌面应用]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=96</guid>
		<description><![CDATA[上次才说道XMMS是一个linux桌面系统下比较出色的播放器，模仿winamp的界面，可对于不少linux的用户会有无法播放mp3文件的毛病，这其实是linux发行版对于mp3版权问题的一种避规态度，在发行包中没有附加mp3的插件，解决方案就是&#8212;&#8212;自己编译一个。 对于Redhat FedoraCore的用户有现成的RPM包]]></description>
			<content:encoded><![CDATA[<p>上次才说道XMMS是一个linux桌面系统下比较出色的播放器，模仿winamp的界面，可对于不少linux的用户会有无法播放mp3文件的毛病，这其实是linux发行版对于mp3版权问题的一种避规态度，在发行包中没有附加mp3的插件，解决方案就是&mdash;&mdash;自己编译一个。</p>
<p>对于Redhat FedoraCore的用户有现成的<a rel="nofollow" target="_blank" href="http://www.gurulabs.com/goodies/downloads.php">RPM包</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2005/11/24/%e4%b8%ba%e4%bb%80%e4%b9%88xmms%e4%b8%8d%e6%94%af%e6%8c%81mp3%e6%92%ad%e6%94%be%ef%bc%9f/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>利用现成的RPM让Fedora支持NTFS</title>
		<link>http://www.litrin.net/2005/11/24/%e5%88%a9%e7%94%a8%e7%8e%b0%e6%88%90%e7%9a%84rpm%e8%ae%a9fedora%e6%94%af%e6%8c%81ntfs/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e5%2588%25a9%25e7%2594%25a8%25e7%258e%25b0%25e6%2588%2590%25e7%259a%2584rpm%25e8%25ae%25a9fedora%25e6%2594%25af%25e6%258c%2581ntfs</link>
		<comments>http://www.litrin.net/2005/11/24/%e5%88%a9%e7%94%a8%e7%8e%b0%e6%88%90%e7%9a%84rpm%e8%ae%a9fedora%e6%94%af%e6%8c%81ntfs/#comments</comments>
		<pubDate>Thu, 24 Nov 2005 06:56:13 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=95</guid>
		<description><![CDATA[FC包括前身的Redhat桌面版，服务器版都不提供对于NTFS文件系统的支持，利用重新编译内核的方式可加载该模块，但对于FC来说，重边内核也许意味着你要丧失SElinux的特性，同时也无法再次利用yum升级内核。 正巧我的移动硬盘是NTFS格式的，由于经常用来拷贝数十G的文件，80G的容量就分为一个分区&#8212;&#8212;只能是NTFS格式的了。于是，为了在我的机器上读取这个硬盘，我找到了这个网站http://www.linux-ntfs.org&#160; 简单的RPM包，实现NTFS支持，何乐而不为呢？]]></description>
			<content:encoded><![CDATA[<p>FC包括前身的Redhat桌面版，服务器版都不提供对于NTFS文件系统的支持，利用重新编译内核的方式可加载该模块，但对于FC来说，重边内核也许意味着你要丧失SElinux的特性，同时也无法再次利用yum升级内核。</p>
<p>正巧我的移动硬盘是NTFS格式的，由于经常用来拷贝数十G的文件，80G的容量就分为一个分区&mdash;&mdash;只能是NTFS格式的了。于是，为了在我的机器上读取这个硬盘，我找到了这个网站<a rel="nofollow" target="_blank" href="http://www.linux-ntfs.org/content/view/128/64/">http://www.linux-ntfs.org</a>&nbsp; 简单的RPM包，实现NTFS支持，何乐而不为呢？</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2005/11/24/%e5%88%a9%e7%94%a8%e7%8e%b0%e6%88%90%e7%9a%84rpm%e8%ae%a9fedora%e6%94%af%e6%8c%81ntfs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CentOS 与 RHEL 的关系</title>
		<link>http://www.litrin.net/2005/11/21/centos-%e4%b8%8e-rhel-%e7%9a%84%e5%85%b3%e7%b3%bb/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=centos-%25e4%25b8%258e-rhel-%25e7%259a%2584%25e5%2585%25b3%25e7%25b3%25bb</link>
		<comments>http://www.litrin.net/2005/11/21/centos-%e4%b8%8e-rhel-%e7%9a%84%e5%85%b3%e7%b3%bb/#comments</comments>
		<pubDate>Mon, 21 Nov 2005 05:14:27 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=86</guid>
		<description><![CDATA[其实为什么有 CentOS？ CentOS 与 RHEL 有什么关系？ RHEL 在发行的时候，有两种方式。一种是二进制的发行方式，另外一种是源代码的发行方式。 无论是哪一种发行方式，你都可以免费获得（例如从网上下载），并再次发布。但如果你使用了他们的在线升级（包括补丁）或咨询服务，就必须要付费。 RHEL 一直都提供源代码的发行方式，CentOS 就是将 RHEL 发行的源代码从新编译一次，形成一个可使用的二进制版本。由于 LINUX 的源代码是 GNU，所以从获得 RHEL 的源代码到编译成新的二进制，都是合法。只是 REDHAT 是商标，所以必须在新的发行版里将 REDHAT 的商标去掉。 REDHAT 对这种发行版的态度是：&#8220;我们其实并不反对这种发行版，真正向我们付费的用户，他们重视的并不是系统本身，而是我们所提供的商业服务。&#8221; 所以，CentOS 可以得到 RHEL 的所有功能，甚至是更好的软件。但 CentOS 并不向用户提供商业支持，当然也不负上任何商业责任。 我正逐步将我的 RHEL 转到 CentOS 上，因为我不希望为 RHEL 升级而付费。当然，这是因为我已经有多年的 UNIX 使用经验，因此 RHEL 的商业技术支持对我来说并不重要。 但如果你是单纯的业务型企业，那么我还是建议你选购 RHEL 软件并购买相应服务（按：RH在中国只有开发中心而没有支持中心，换而言之，买了支持也得不到）。这样可以节省你的 IT 管理费用，并可得到专业服务。 一句话，选用 CentOS 还是 RHEL，取决于你所在公司是否拥有相应的技术力量。]]></description>
			<content:encoded><![CDATA[<p><span class="postbody">其实为什么有 CentOS？ CentOS 与 RHEL 有什么关系？  </p>
<p> RHEL 在发行的时候，有两种方式。一种是二进制的发行方式，另外一种是源代码的发行方式。  </p>
<p> 无论是哪一种发行方式，你都可以免费获得（例如从网上下载），并再次发布。但如果你使用了他们的在线升级（包括补丁）或咨询服务，就必须要付费。  </p>
<p> RHEL 一直都提供源代码的发行方式，CentOS 就是将 RHEL 发行的源代码从新编译一次，形成一个可使用的二进制版本。由于 LINUX 的源代码是 GNU，所以从获得 RHEL 的源代码到编译成新的二进制，都是合法。只是 REDHAT 是商标，所以必须在新的发行版里将 REDHAT 的商标去掉。 </p>
<p> REDHAT 对这种发行版的态度是：&ldquo;我们其实并不反对这种发行版，真正向我们付费的用户，他们重视的并不是系统本身，而是我们所提供的商业服务。&rdquo;  </p>
<p> 所以，CentOS 可以得到 RHEL 的所有功能，甚至是更好的软件。但 CentOS 并不向用户提供商业支持，当然也不负上任何商业责任。  </p>
<p> 我正逐步将我的 RHEL 转到 CentOS 上，因为我不希望为 RHEL 升级而付费。当然，这是因为我已经有多年的 UNIX 使用经验，因此 RHEL 的商业技术支持对我来说并不重要。  </p>
<p> 但如果你是单纯的业务型企业，那么我还是建议你选购 RHEL 软件并购买相应服务（<span style="font-style: italic;">按：RH在中国只有开发中心而没有支持中心，换而言之，买了支持也得不到</span>）。这样可以节省你的 IT 管理费用，并可得到专业服务。  </p>
<p> 一句话，选用 CentOS 还是 RHEL，取决于你所在公司是否拥有相应的技术力量。</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2005/11/21/centos-%e4%b8%8e-rhel-%e7%9a%84%e5%85%b3%e7%b3%bb/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>自己如何制作RPM包</title>
		<link>http://www.litrin.net/2005/11/16/%e8%87%aa%e5%b7%b1%e5%a6%82%e4%bd%95%e5%88%b6%e4%bd%9crpm%e5%8c%85/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e8%2587%25aa%25e5%25b7%25b1%25e5%25a6%2582%25e4%25bd%2595%25e5%2588%25b6%25e4%25bd%259crpm%25e5%258c%2585</link>
		<comments>http://www.litrin.net/2005/11/16/%e8%87%aa%e5%b7%b1%e5%a6%82%e4%bd%95%e5%88%b6%e4%bd%9crpm%e5%8c%85/#comments</comments>
		<pubDate>Wed, 16 Nov 2005 04:10:35 +0000</pubDate>
		<dc:creator>Litrin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://www.litrin.net/?p=65</guid>
		<description><![CDATA[制作自己的RPM包[转贴] 我最早使用redhat就是冲着Rpm包来的，可是不久我就发现Rpm的缺点并非所有的软件都有Rpm包，而且各个版本的Linux之间的Rpm不能通用，于是便有将部分软件制作rpm的念头。几天前看到一篇东西，转贴过来，有空再试。 随 着RedHat Linux的风靡全球，其软件包管理工具及格式RPM也得到推广。基于RPM源代码开放、安装卸载简单、升级维护方便及查询功能强大的特点，越来越多的开 发者喜欢采用RPM格式来发布自己的软件包，更多的用户从中受益。那么，RPM软件包是怎样制作的呢？ 其实，制作RPM软件包并不是一件复杂的工作，其中的关键在于编写SPEC软件包描述文件。下面以我制作小赵编辑器LZE的软件包（lze-6.0-1.i386.rpm）为例，详细说明一下软件包的制作过程。 1.mkdir -p /usr/src/dist/{BUILD,RPMS/i386} 上 述命令用于创建两个目录/usr/src/dist/BUILD与/usr/src/dist/RPMS/i386，前一个目录是RPM建立软件包时用的 目录，后一个是RPM输出软件包的目录，我的LZE软件包lze-6.0-1.i386.rpm就是在此目录下存放的。这两个目录不创建，运行rpm命令 建包时将报错退出。 注意：输出目录名i386，意味着这是台X86的机器。如果你的机器与此体系不同，则目录名也要相应更换。 2.编写软件包描述文件lze-6.0-1.spec 要想制作一个软件包，就必须写一个软件包描述文件（SPEC）。这个文件中包含了软件包的诸多信息，如软件包的名字，版本，类别，说明摘要，创建时要执行什么指令，安装时要执行什么操作，以及软件包所要包含的文件列表等等。 LZE软件包描述文件lze-6.0-1.spec比较简单，仅用于创建二进制程序包。其描述文件内容如下：（每行开头的数字为所在行在文件中的行号） 1 Summary：小赵全屏幕中英文多窗口多功能编辑器（Linux/UNIX系统适用） 2 Name：lze 3 Version：6.0 4 Release：1 5 Vendor：纵横软件制作中心（Email：zhsoft@etang.com） 6 Copyright：Share 7 Group：Applications/Editors 8 Source：http：//zhsoft.myetang.com/lze-6.0.tar.gz 9 %description 10 小赵编辑器，是为使用SCO UNIX，Linux多用户系统的广大用户专门设计的全屏幕多窗 11 口中英文多功能编辑器。 12 它主要有以下十大特点：1.全屏幕菜单操作。2.显示方式多样。3.块操作丰富。4.十 13 字制表功能强大。5.多窗口操作灵活自如。6.文件操作功能齐全。7.解释输出功能独具特 14 色。8.自带中文输入法（增强五笔和增强拼音），实用方便。9.十六进制编辑功能，如虎 15 添翼。10.即时翻译，按到即译。 16 总之，小赵编辑器会成为您在UNIX，Linux系统上编制程序和书写一般性文稿的好帮手。 17 它将在工作中助您一臂之力，轻松上阵，游刃有余！ 18 19 [...]]]></description>
			<content:encoded><![CDATA[<p>制作自己的RPM包[转贴]</p>
<p></p>
<p>我最早使用redhat就是冲着Rpm包来的，可是不久我就发现Rpm的缺点并非所有的软件都有Rpm包，而且各个版本的Linux之间的Rpm不能通用，于是便有将部分软件制作rpm的念头。几天前看到一篇东西，转贴过来，有空再试。</p>
<p>随 着RedHat Linux的风靡全球，其软件包管理工具及格式RPM也得到推广。基于RPM源代码开放、安装卸载简单、升级维护方便及查询功能强大的特点，越来越多的开 发者喜欢采用RPM格式来发布自己的软件包，更多的用户从中受益。那么，RPM软件包是怎样制作的呢？ </p>
<p>其实，制作RPM软件包并不是一件复杂的工作，其中的关键在于编写SPEC软件包描述文件。下面以我制作小赵编辑器LZE的软件包（lze-6.0-1.i386.rpm）为例，详细说明一下软件包的制作过程。 </p>
<p>1.mkdir -p /usr/src/dist/{BUILD,RPMS/i386} </p>
<p>上 述命令用于创建两个目录/usr/src/dist/BUILD与/usr/src/dist/RPMS/i386，前一个目录是RPM建立软件包时用的 目录，后一个是RPM输出软件包的目录，我的LZE软件包lze-6.0-1.i386.rpm就是在此目录下存放的。这两个目录不创建，运行rpm命令 建包时将报错退出。 </p>
<p>注意：输出目录名i386，意味着这是台X86的机器。如果你的机器与此体系不同，则目录名也要相应更换。 </p>
<p>2.编写软件包描述文件lze-6.0-1.spec </p>
<p>要想制作一个软件包，就必须写一个软件包描述文件（SPEC）。这个文件中包含了软件包的诸多信息，如软件包的名字，版本，类别，说明摘要，创建时要执行什么指令，安装时要执行什么操作，以及软件包所要包含的文件列表等等。 </p>
<p>LZE软件包描述文件lze-6.0-1.spec比较简单，仅用于创建二进制程序包。其描述文件内容如下：（每行开头的数字为所在行在文件中的行号） </p>
<p>1 Summary：小赵全屏幕中英文多窗口多功能编辑器（Linux/UNIX系统适用） <br />2 Name：lze <br />3 Version：6.0 <br />4 Release：1 <br />5 Vendor：纵横软件制作中心（Email：zhsoft@etang.com） <br />6 Copyright：Share <br />7 Group：Applications/Editors <br />8 Source：http：//zhsoft.myetang.com/lze-6.0.tar.gz <br />9 %description <br />10 小赵编辑器，是为使用SCO UNIX，Linux多用户系统的广大用户专门设计的全屏幕多窗 <br />11 口中英文多功能编辑器。 <br />12 它主要有以下十大特点：1.全屏幕菜单操作。2.显示方式多样。3.块操作丰富。4.十 <br />13 字制表功能强大。5.多窗口操作灵活自如。6.文件操作功能齐全。7.解释输出功能独具特 <br />14 色。8.自带中文输入法（增强五笔和增强拼音），实用方便。9.十六进制编辑功能，如虎 <br />15 添翼。10.即时翻译，按到即译。 <br />16 总之，小赵编辑器会成为您在UNIX，Linux系统上编制程序和书写一般性文稿的好帮手。 <br />17 它将在工作中助您一臂之力，轻松上阵，游刃有余！ <br />18 <br />19 %prep <br />20 # prep start. <br />21 <br />22 %build <br />23 # build start. <br />24 cp /root/{读我，版权声明} . <br />25 <br />26 %install <br />27 # install start. <br />28 <br />29 %files <br />30 %defattr （-，root，root） <br />31 %doc 读我 <br />32 %doc 版权声明 <br />33 %config /etc/funkey.def <br />34 %config /etc/inputme.def <br />35 <br />36 /usr/bin/lze <br />37 /usr/bin/lzeime.py <br />38 /usr/bin/lzeime.wb <br />39 <br />40 %changelog <br />41 <br />42 * Fri May 1 1998 雨亦奇 <br />43 &#8211; 增加多窗口操作 <br />44 <br />45 * Mon Mar 24 1997 雨亦奇 <br />46 &#8211; 增加块操作命令 <br />47 </p>
<p>描述文件说明如下： </p>
<p>（1）文件头 </p>
<p>它包含以下几个域： </p>
<p>* Summary： <br />软件包一句话说明，一行有效。 <br />* Name： <br />软件包的名字，RPM用该名字与版本号，释出号及体系号来命名软件包。如，本例输出的软件包名为lze-6.0-1.i386.rpm。 <br />* Version： <br />软件版本号。仅当软件较以前有较大改变时才增加版本号。 <br />* Release： <br />软件释出号。若软件较以前改变较小，则仅增加释出号，不改变版本号。 <br />* Vendor： <br />软件开发者的名字。 <br />* Copyright： <br />软件包所采用的版权规则。具体有： GPL（自由软件），BSD，MIT，Public Domain（公共域），Distributable（贡献），commercial（商业），Share（共享）等。 <br />* Group： <br />软件包所属类别，具体类别有： <br />Amusements/Games （娱乐/游戏） <br />Amusements/Graphics（娱乐/图形） <br />Applications/Archiving （应用/档案） <br />Applications/Communications（应用/通讯） <br />Applications/Databases （应用/数据库） <br />Applications/Editors （应用/编辑器） <br />Applications/Emulators （应用/仿真器） <br />Applications/Engineering （应用/工程） <br />Applications/File （应用/文件） <br />Applications/Internet （应用/因特网） <br />Applications/Multimedia（应用/多媒体） <br />Applications/Productivity （应用/产品） <br />Applications/Publishing（应用/印刷） <br />Applications/System（应用/系统） <br />Applications/Text （应用/文本） <br />Development/Debuggers （开发/调试器） <br />Development/Languages （开发/语言） <br />Development/Libraries （开发/函数库） <br />Development/System （开发/系统） <br />Development/Tools （开发/工具） <br />Documentation （文档） <br />System Environment/Base（系统环境/基础） <br />System Environment/Daemons （系统环境/守护） <br />System Environment/Kernel （系统环境/内核） <br />System Environment/Libraries （系统环境/函数库） <br />System Environment/Shells （系统环境/接口） <br />User Interface/Desktops（用户界面/桌面） <br />User Interface/X （用户界面/X窗口） <br />User Interface/X Hardware Support （用户界面/X硬件支持） <br />* Source： <br />源程序软件包的名字。 <br />* %description： <br />软件包具体说明，可写在多个行上。示例中第10-18行均为说明。 </p>
<p>（2）%prep段 </p>
<p>这 个段是预处理段，通常用来执行一些解开源程序包的命令，为下一步的编译安装作准备。%prep和下面%build，%install段一样，除了可以执行 RPM所定义的宏命令（以%开头）以外，还可以执行SHELL命令，命令可以有很多行。示例中，本段只有第20行一行注释语句（以#开头），不执行任何操 作。 </p>
<p>（3）build段 </p>
<p>本段是建立段，所执行的命令为生成软件包服务。 </p>
<p>本段第23行是注释行，第24行执行的是拷贝命令，将/root目录下的两个文件（读我，版权声明）拷贝到软件包建立目录（/usr/src/dist/BUILD）。 </p>
<p>（4）%install段 </p>
<p>本段是安装段，其中的命令在安装软件包时将执行。示例中，本段只有第27行一行注释语句（以#开头），不执行任何操作。 </p>
<p>（5）%files段 </p>
<p>本段是文件段，用于定义软件包所包含的文件，分为三类&#8211;说明文档（doc），配置文件（config）及执行程序，还可定义文件存取权限，拥有者及组别。本段中： </p>
<p>第30行－%defattr宏：定义文件存取权限为默认值（用-表示默认值，也可选择八进制数值，如0777等），定义拥有者为root，定义组别为root。 </p>
<p>第31，32行－%doc宏：用该宏定义软件包所含的说明文档，若没有指定目录，则目录为/usr/src/dist/BUILD。每个宏只能定义一个说明文档。说明文档一般安装在&quot;/usr/doc/软件包名-版本号-释出号&quot;目录下。 </p>
<p>第33， 34行－%config宏：定义软件包应用的配置文件，象sendmail.cf，passwd等。当卸载含有配置文件的软件包时，任何未作改动的配置文 件将被删除，改动过的配置文件将自动改名，后缀加上.rpmsave，以便再度安装这个软件包时可以迅速恢复使用。 </p>
<p>第36-38行－为软件包所包含的文件名列表，可以写许多行。如果文件名指示的是一个目录，则该目录下的所有文件将被包含在软件包中，注意不要弄错了。 </p>
<p>（6）%changelog段 </p>
<p>本段是修改日志段。你可以将软件的每次修改记录到这里，保存到发布的软件包中，以便查询之用。 </p>
<p>每一个修改日志都有这样一种格式：第一行是：* 星期 月 日 年 修改人 电子信箱。 </p>
<p>其中：星期、月份均用英文形式，用中文会出错。 </p>
<p>接下来的行写的应是修改了什么地方，可写多行。一般以减号起始，便于查阅。 </p>
<p>3.rpm -bb lze-6.0-1.spec </p>
<p>用此命令生成软件包，执行后屏幕将显示如下信息：（每行开头为行号） </p>
<p>1 Executing： %prep <br />2 + umask 022 <br />3 + cd /usr/src/dist/BUILD <br />4 + exit 0 <br />5 Executing： %build <br />6 + umask 022 <br />7 + cd /usr/src/dist/BUILD <br />8 + cp /root/读我 /root/版权声明. <br />9 + exit 0 <br />10 Executing： %install <br />11 + umask 022 <br />12 + cd /usr/src/dist/BUILD <br />13 + exit 0 <br />14 Processing files： lze <br />15 Executing： %doc <br />16 + umask 022 <br />17 + cd /usr/src/dist/BUILD <br />18 + DOCDIR=/usr/doc/lze-6.0 <br />19 + export DOCDIR <br />20 + rm -rf /usr/doc/lze-6.0 <br />21 + /bin/mkdir -p /usr/doc/lze-6.0 <br />22 + cp -pr 读我 /usr/doc/lze-6.0 <br />23 + cp -pr 版权声明 /usr/doc/lze-6.0 <br />24 + exit 0 <br />25 Finding Provides： （using /usr/lib/rpm/find-provides）&#8230; <br />26 Finding Requires： （using /usr/lib/rpm/find-requires）&#8230; <br />27 Requires： ld-Linux.so.2 libc.so.6 libc.so.6（GLIBC_2.0） libc.so.6（GLIBC_2.1） <br />28 Wrote： /usr/src/dist/RPMS/i386/lze-6.0-1.i386.rpm </p>
<p>第28行显示： 制作完成软件包，名字为lze-6.0-1.i386.rpm，在/usr/src/dist/RPMS/i386目录下。 </p>
<p>4.软件包制作完成后，可用以下命令查询一下，看看效果。如果不满意的话，可以再次修改软件包描述文件，重新运行上一步命令，产生新的RPM软件包。 </p>
<p>转到/usr/src/dist/RPMS/i386目录，执行以下命令： </p>
<p>（1）rpm -qpi lze-6.0-1.i386.rpm </p>
<p>此命令用于查询指定软件包的头部信息，结果如下：（以行号开头） </p>
<p>1 Name： lze Relocations： （not relocateable） <br />2 Version ： 6.0 Vendor： 纵横软件制作中心（Email：zhsoft@etang.com） <br />3 Release ： 1 Build Date： 2001年07月12日 星期四 13时33分21秒 <br />4 Install date： （not installed） Build Host： 纵横软件制作中心 <br />5 Group ： Applications/Editors Source RPM： lze-6.0-1.src.rpm <br />6 Size： 532081 License： Share <br />7 Summary ： 小赵全屏幕中英文多窗口多功能编辑器（Linux/UNIX系统适用） <br />8 Description ： <br />9 小赵编辑器，是为使用SCO UNIX，Linux多用户系统的广大用户专门设计的全屏幕多窗 <br />10 口中英文多功能编辑器。 <br />11 它主要有以下十大特点：1.全屏幕菜单操作。2.显示方式多样。3.块操作丰富。4.十 <br />12 字制表功能强大。5.多窗口操作灵活自如。6.文件操作功能齐全。7.解释输出功能独具特 <br />13 色。8.自带中文输入法（增强五笔和增强拼音），实用方便。9.十六进制编辑功能，如虎 <br />14 添翼。10.即时翻译，按到即译。 <br />15 总之，小赵编辑器会成为您在UNIX，Linux系统上编制程序和书写一般性文稿的好帮手。 <br />16 它将在工作中助您一臂之力，轻松上阵，游刃有余！ </p>
<p>（2）rpm -qpl lze-6.0-1.i386.rpm </p>
<p>此命令用于查询指定软件包的全部文件列表，将命令中的-qpl换作-qpd，将显示文档文件列表，换作-qpc将显示配置文件列表。 </p>
<p>命令执行结果如下：（行号开头） </p>
<p>1 /etc/funkey.def <br />2 /etc/inputme.def <br />3 /usr/bin/lze <br />4 /usr/bin/lzeime.py <br />5 /usr/bin/lzeime.wb <br />6 /usr/doc/lze-6.0 <br />7 /usr/doc/lze-6.0/版权声明 <br />8 /usr/doc/lze-6.0/读我 </p>
<p>查询结果一切正常，软件包制作到此结束。 </p>
<p>小结 </p>
<p>在Linux下制作RPM软件包关键在描述文件，写起来着实简单，根据上述步骤生成软件包后，就可以对外发布了。在其它机器上用安装命令（rpm -i 包名）可安装这个软件包，若想卸载，可用命令（rpm -e 包名）来卸载这个包，非常方便。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.litrin.net/2005/11/16/%e8%87%aa%e5%b7%b1%e5%a6%82%e4%bd%95%e5%88%b6%e4%bd%9crpm%e5%8c%85/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

