<?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>Linux for Fun 中文站 &#187; CentOS</title>
	<atom:link href="http://zh.linuxforfun.net/category/centos/feed/" rel="self" type="application/rss+xml" />
	<link>http://zh.linuxforfun.net</link>
	<description>Just for Fun</description>
	<lastBuildDate>Mon, 22 Feb 2010 06:56:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>使用 cvsd 配置 cvs 服务器</title>
		<link>http://zh.linuxforfun.net/2008/04/27/cvsd-setup-cvs-pserver/</link>
		<comments>http://zh.linuxforfun.net/2008/04/27/cvsd-setup-cvs-pserver/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 14:49:10 +0000</pubDate>
		<dc:creator>三大件</dc:creator>
				<category><![CDATA[CentOS]]></category>
		<category><![CDATA[Fedora]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[服务器]]></category>
		<category><![CDATA[软件开发]]></category>
		<category><![CDATA[cvs]]></category>
		<category><![CDATA[cvsd]]></category>
		<category><![CDATA[开发]]></category>
		<category><![CDATA[编程]]></category>

		<guid isPermaLink="false">http://zh.linuxforfun.net/?p=18</guid>
		<description><![CDATA[CVS 服务器最初被设计成由“xinetd”启动。不过现在的 Linux 发布版大多缺省不再安装或启动 xinetd 了，并且 CVS 服务器的配置也比较复杂。cvsd 是一个对 CVS pserver 的包装程序，它可以把 CVS 启动成一个独立的服务，并用指定的 uid/gid 运行在 chroot 的环境下，其安全性有所提高。并且，cvsd 的配置也要相对简单些。 本文将描述如何使用 cvsd 配置一个 CVS pserver。 1、安装 cvsd 软件包 对于基于 RPM 的 Linux 发布版，本站提供了预编译的 RPM 下载： cvsd-1.0.14-1.i386.rpm cvsd-1.0.14-1.src.rpm (source) 对其他发布版，您可以从 cvsd 的原始站点下载 源代码包，自己编译和安装。 2、配置文件 /etc/cvsd/cvsd.conf 检查 cvsd 的配置文件。有几点需要注意： RootJail：cvs 将运行的 chroot 根目录。缺省设置为 RootJail /var/lib/cvsd 对于基于 RPM 的发布版，cvsd [...]]]></description>
			<content:encoded><![CDATA[<p>CVS 服务器最初被设计成由“xinetd”启动。不过现在的 Linux 发布版大多缺省不再安装或启动 xinetd 了，并且 CVS 服务器的配置也比较复杂。<a href="http://ch.tudelft.nl/~arthur/cvsd/">cvsd</a> 是一个对 CVS pserver 的包装程序，它可以把 CVS 启动成一个独立的服务，并用指定的 uid/gid 运行在 chroot 的环境下，其安全性有所提高。并且，cvsd 的配置也要相对简单些。</p>
<p>本文将描述如何使用 cvsd 配置一个 CVS pserver。</p>
<p><strong>1、安装 cvsd 软件包</strong></p>
<p>对于基于 RPM 的 Linux 发布版，本站提供了预编译的 RPM 下载：</p>
<blockquote><p><a href="http://linuxforfun.net/misc/cvsd-1.0.14-1.i386.rpm">cvsd-1.0.14-1.i386.rpm</a><br />
<a href="http://linuxforfun.net/misc/cvsd-1.0.14-1.src.rpm">cvsd-1.0.14-1.src.rpm</a> (source)</p></blockquote>
<p>对其他发布版，您可以从 cvsd 的原始站点下载 <a href="http://ch.tudelft.nl/~arthur/cvsd/downloads.html">源代码包</a>，自己编译和安装。</p>
<p><span id="more-18"></span></p>
<p><strong>2、配置文件 /etc/cvsd/cvsd.conf</strong></p>
<p>检查 cvsd 的配置文件。有几点需要注意：</p>
<ul>
<li>RootJail：cvs 将运行的 chroot 根目录。缺省设置为<br />
<blockquote><p><code>RootJail /var/lib/cvsd</code></p></blockquote>
<p>对于基于 RPM 的发布版，cvsd 的安装包已经对这个目录进行了初始化：</p>
<blockquote><p><code># cvsd-buildroot /var/lib/cvsd</code></p></blockquote>
<p>对于其他发布版，如果这个目录没有初始化；或者您在配置文件中改变了缺省目录“RootJail”，您就需要运行 cvsd-buildroot 命令手动初始化。</li>
<li>Uid 和 Gid: cvsd 运行时使用的用户 ID 和组 ID。缺省设置是：<br />
<blockquote><p><code>Uid cvsd<br />
Gid cvsd</code></p></blockquote>
<p>对于基于 RPM 的发布版，cvsd 的安装包已经创建了 cvsd 用户和组。对于其他发布版，您必须手动创建它们。</li>
<li>Repos: 软件仓库的路径，每个仓库在配置文件中用一行这个配置。每个路径都是相对于“RootJail”并且以“/”字符开头。例如：<br />
<blockquote><p><code>Repos /coolsoft<br />
Repos /hotsoft</code></p></blockquote>
</li>
</ul>
<p><strong>3、创建软件仓库</strong></p>
<p>创建软件仓库，如“coolsoft”，用如下命令：</p>
<blockquote><p><code># cvs -d /var/lib/cvsd/coolsoft init</code></p></blockquote>
<p>这个命令将创建目录 /var/lib/cvsd/coolsoft，并在其下创建一个 CVSROOT 目录树。</p>
<p>如果您允许用户创建此仓库的顶级目录：</p>
<blockquote><p><code># chown cvsd:cvsd /var/lib/cvsd/coolsoft</code></p></blockquote>
<p>编辑文件 <code>/var/lib/cvsd/coolsoft/CVSROOT/config</code> 修改“LockDir”选项：</p>
<blockquote><p><code>LockDir /tmp/coolsoft</code></p></blockquote>
<p>这个目录是相对于“RootJail”目录，如 /var/lib/cvsd。必须手工创建此目录：</p>
<blockquote><p><code># mkdir /var/lib/cvsd/tmp/coolsoft<br />
# chown cvsd:cvsd /var/lib/cvsd/tmp/coolsoft</code></p></blockquote>
<p>现在，创建所有可以访问这个仓库的用户和他们的密码：</p>
<blockquote><p><code># cvsd-passwd /var/lib/cvsd/coolsoft jack</code></p></blockquote>
<p>如果您允许匿名访问这个仓库，创建一个用户，名为“anonymous”或“anoncvs”，并设置密码为空：</p>
<blockquote><p><code># cvsd-passwd /var/lib/cvsd/coolsoft anoncvs</code></p></blockquote>
<p>创建新文件 <code>/var/lib/cvsd/coolsoft/CVSROOT/writers</code>：</p>
<blockquote><p><code># touch /var/lib/cvsd/coolsoft/CVSROOT/writers</code></p></blockquote>
<p>可以保护仓库的访问权限，否则所有的用户都可以对本仓库有写入权限。在这个文件里，加入所有可以对本仓库有写入权限的用户名，一行一个用户。</p>
<p>如果您不允许用户创建仓库的顶级目录，您可以先创建将要用到的顶级目录，以存放用户递交的文件：</p>
<blockquote><p><code># cd /var/lib/cvsd/coolsoft<br />
# mkdir client server<br />
# chown cvsd:cvsd client server</code></p></blockquote>
<p><strong>4、启动 cvsd，测试软件仓库及权限</strong></p>
<p>启动 cvsd，使用命令</p>
<blockquote><p><code># /etc/init.d/cvsd start</code></p></blockquote>
<p>测试新的仓库：</p>
<blockquote><p><code># cvs -d :pserver:jack@myhost.at.office/coolsoft login<br />
# cvs -d :pserver:jack@myhost.at.office/coolsoft co client</code></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://zh.linuxforfun.net/2008/04/27/cvsd-setup-cvs-pserver/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>配置 VSFTPD －－另一种途径</title>
		<link>http://zh.linuxforfun.net/2008/04/15/vsftpd-virtual-users-another-approach/</link>
		<comments>http://zh.linuxforfun.net/2008/04/15/vsftpd-virtual-users-another-approach/#comments</comments>
		<pubDate>Tue, 15 Apr 2008 15:54:35 +0000</pubDate>
		<dc:creator>三大件</dc:creator>
				<category><![CDATA[CentOS]]></category>
		<category><![CDATA[Fedora]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[服务器]]></category>
		<category><![CDATA[网络]]></category>
		<category><![CDATA[vsftpd]]></category>

		<guid isPermaLink="false">http://zh.linuxforfun.net/?p=17</guid>
		<description><![CDATA[如果你正在维护一个提供虚拟空间的服务器，为安全起见，你可能希望网站管理员只能管理他自己的文件。一个好的解决方法是：为所有的管理员配置 VSFTPD 的虚拟用户和根目录。 在上一篇文章里，我介绍了如何配置 VSFTPD 的虚拟用户。本文将说明如何用另一种方法配置 VSFTPD，这个方法需要在系统上创建真实的用户。 1、安装 VSFTPD 对于 Red Hat, CentOS 和 Fedora 这些基于 RPM 的系统，可以用下面的命令安装 VSFTPD： # yum install vsftpd 对于 Debian and Ubuntu，相应的命令是： # apt-get install vsftpd 2、配置虚拟用户和密码验证 我们可以为每个虚拟网站的管理员创建一个真实的帐号。不过我们将只允许这些帐号使用 FTP 访问我们的服务器。 首先，使用“useradd”命令创建帐号。这里需要注意的一些要点是： 用户组：为方便网站管理员管理自己的文件，我们可以指定他们的帐号与系统的 HTTP 服务器运行时使用的组相同。对于 Apache 服务器，这个组通常是“apache”；对于 lighttpd，这个组通常是“lighttpd”。 虚拟目录：我们指定这些用户的主目录跟他们的虚拟网站的 DocumentRoot 一致。我们把这些目录的属性设置为 HTTP 服务器运行的用户组可写。 登录 shell：为了把虚拟用户限制在只能使用 FTP 登录，我们把他们的登录 shell 设置成 /sbin/nologin。 例如： [...]]]></description>
			<content:encoded><![CDATA[<p>如果你正在维护一个提供虚拟空间的服务器，为安全起见，你可能希望网站管理员只能管理他自己的文件。一个好的解决方法是：为所有的管理员配置 VSFTPD 的虚拟用户和根目录。</p>
<p>在<a href="http://zh.linuxforfun.net/2008/04/05/vsftpd-virtual-users/">上一篇文章</a>里，我介绍了如何配置 VSFTPD 的虚拟用户。本文将说明如何用另一种方法配置 VSFTPD，这个方法需要在系统上创建真实的用户。</p>
<p><strong>1、安装 VSFTPD</strong></p>
<p>对于 Red Hat, CentOS 和 Fedora 这些基于 RPM 的系统，可以用下面的命令安装 VSFTPD：</p>
<blockquote><p><code># yum install vsftpd</code></p></blockquote>
<p>对于 Debian and Ubuntu，相应的命令是：</p>
<blockquote><p><code># apt-get install vsftpd</code></p></blockquote>
<p><span id="more-17"></span><strong>2、配置虚拟用户和密码验证</strong></p>
<p>我们可以为每个虚拟网站的管理员创建一个真实的帐号。不过我们将只允许这些帐号使用 FTP 访问我们的服务器。<br />
首先，使用“useradd”命令创建帐号。这里需要注意的一些要点是：</p>
<ul>
<li><strong>用户组</strong>：为方便网站管理员管理自己的文件，我们可以指定他们的帐号与系统的 HTTP 服务器运行时使用的组相同。对于 Apache 服务器，这个组通常是“apache”；对于 lighttpd，这个组通常是“lighttpd”。</li>
<li><strong>虚拟目录</strong>：我们指定这些用户的主目录跟他们的虚拟网站的 DocumentRoot 一致。我们把这些目录的属性设置为 HTTP 服务器运行的用户组可写。</li>
<li><strong>登录 shell</strong>：为了把虚拟用户限制在只能使用 FTP 登录，我们把他们的登录 shell 设置成 /sbin/nologin。</li>
</ul>
<p>例如：</p>
<blockquote><p><code># useradd -g apache -d /var/www/vhosts/mike -s /sbin/nologin mike<br />
# chmod g+w /var/www/vhosts/mike<br />
# passwd mike<br />
Changing password for user mike.<br />
New UNIX password:<br />
Retype new UNIX password:<br />
passwd: all authentication tokens updated successfully.</code></p></blockquote>
<p><strong>3、配置 VSFTPD</strong></p>
<p>创建配置文件 /etc/vsftpd/vsftpd-virtual.conf：</p>
<blockquote><p><code># disables anonymous FTP<br />
anonymous_enable=NO<br />
# enables non-anonymous FTP<br />
local_enable=YES<br />
# enables uploads and new directories<br />
write_enable=YES<br />
# authentication of virtual uses<br />
pam_service_name=login<br />
# the virtual user is restricted to the virtual FTP area<br />
chroot_local_user=YES<br />
# runs vsftpd in standalone mode<br />
listen=YES<br />
# listens on this port for incoming FTP connections<br />
listen_port=60021<br />
# the minimum port to allocate for PASV style data connections<br />
pasv_min_port=62222<br />
# the maximum port to allocate for PASV style data connections<br />
pasv_max_port=63333<br />
# controls whether PORT style data connections use port 20 (ftp-data)<br />
connect_from_port_20=YES<br />
# the umask for file creation<br />
local_umask=022</code></p></blockquote>
<p><strong>5、启动 VSFTPD 并测试</strong></p>
<p>用下面的命令启动 VSFTPD：</p>
<blockquote><p><code># /usr/sbin/vsftpd /etc/vsftpd/vsftpd-virtual.conf</code></p></blockquote>
<p>用 lftp 命令测试虚拟用户的访问权限：</p>
<blockquote><p><code># lftp -u mike -p 60021 192.168.1.101</code></p></blockquote>
<p>所有的虚拟用户应该可以管理他目录下的所有子目录和文件。</p>
]]></content:encoded>
			<wfw:commentRss>http://zh.linuxforfun.net/2008/04/15/vsftpd-virtual-users-another-approach/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>配置 VSFTPD 的虚拟用户</title>
		<link>http://zh.linuxforfun.net/2008/04/05/vsftpd-virtual-users/</link>
		<comments>http://zh.linuxforfun.net/2008/04/05/vsftpd-virtual-users/#comments</comments>
		<pubDate>Sat, 05 Apr 2008 08:38:34 +0000</pubDate>
		<dc:creator>三大件</dc:creator>
				<category><![CDATA[CentOS]]></category>
		<category><![CDATA[Fedora]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[服务器]]></category>
		<category><![CDATA[网络]]></category>
		<category><![CDATA[vsftpd]]></category>

		<guid isPermaLink="false">http://zh.linuxforfun.net/2008/04/05/%e9%85%8d%e7%bd%ae-vsftpd-%e7%9a%84%e8%99%9a%e6%8b%9f%e7%94%a8%e6%88%b7/</guid>
		<description><![CDATA[如果你正在维护一个提供虚拟空间的服务器，为安全起见，你可能希望网站管理员只能管理他自己的文件。一个好的解决方法是：为所有的管理员配置 VSFTPD 的虚拟用户和根目录。下面我们就简明地解说一下如何做。 （参考：配置 VSFTPD 的虚拟用户－－另一种途径） 1、安装 of VSFTPD 对于 Red Hat, CentOS 和 Fedora 这些基于 RPM 的系统，可以用下面的命令安装 VSFTPD： # yum install vsftpd 对于 Debian and Ubuntu，相应的命令是： # apt-get install vsftpd 2、配置虚拟用户和密码验证 我们将使用 PAM 的 pam_userdb 来为虚拟用户提供密码验证。这需要一个 “db” 格式的数据库。我们需要“db_load”命令。对于 CentOS 和 Fedora，这个命令在 db4-utils 包里： # yum install db4-utils 对于 Ubuntu： # apt-get install db4.2-util 要创建“db”格式的文件，首先，我们创建一个普通文件文件“virtual-users.txt”，这个文件的格式非常简单，就是一行用户名，一行密码，循环往下写： [...]]]></description>
			<content:encoded><![CDATA[<p>如果你正在维护一个提供虚拟空间的服务器，为安全起见，你可能希望网站管理员只能管理他自己的文件。一个好的解决方法是：为所有的管理员配置 VSFTPD 的虚拟用户和根目录。下面我们就简明地解说一下如何做。<br />
（参考：<a href="http://zh.linuxforfun.net/2008/04/15/vsftpd-virtual-users-another-approach/">配置 VSFTPD 的虚拟用户－－另一种途径</a>）</p>
<p><strong>1、安装 of VSFTPD</strong></p>
<p>对于 Red Hat, CentOS 和 Fedora 这些基于 RPM 的系统，可以用下面的命令安装 VSFTPD：</p>
<blockquote><p><code># yum install vsftpd</code></p></blockquote>
<p>对于 Debian and Ubuntu，相应的命令是：</p>
<blockquote><p><code># apt-get install vsftpd</code></p></blockquote>
<p><span id="more-15"></span><strong>2、配置虚拟用户和密码验证</strong></p>
<p>我们将使用 PAM 的 pam_userdb 来为虚拟用户提供密码验证。这需要一个 “db” 格式的数据库。我们需要“db_load”命令。对于 CentOS 和 Fedora，这个命令在 db4-utils 包里：</p>
<blockquote><p><code># yum install db4-utils</code></p></blockquote>
<p>对于 Ubuntu：</p>
<blockquote><p><code># apt-get install db4.2-util</code></p></blockquote>
<p>要创建“db”格式的文件，首先，我们创建一个普通文件文件“virtual-users.txt”，这个文件的格式非常简单，就是一行用户名，一行密码，循环往下写：</p>
<blockquote><p><code>mary<br />
123456<br />
jack<br />
654321</code></p></blockquote>
<p>然后，执行下面的命令创建真正的数据库：</p>
<blockquote><p><code># db_load -T -t hash -f virtual-users.txt /etc/vsftpd/virtual-users.db</code></p></blockquote>
<p>现在，创建一个 PAM 文件 /etc/pam.d/vsftpd-virtual 来使用这个数据库：</p>
<blockquote><p><code>auth required pam_userdb.so db=/etc/vsftpd/virtual-users<br />
account required pam_userdb.so db=/etc/vsftpd/virtual-users</code></p></blockquote>
<p><strong>3、配置 VSFTPD</strong></p>
<p>创建配置文件 /etc/vsftpd/vsftpd-virtual.conf：</p>
<blockquote><p><code># disables anonymous FTP<br />
anonymous_enable=NO<br />
# enables non-anonymous FTP<br />
local_enable=YES<br />
# activates virtual users<br />
guest_enable=YES<br />
# virtual users to use local privs, not anon privs<br />
virtual_use_local_privs=YES<br />
# enables uploads and new directories<br />
write_enable=YES<br />
# the PAM file used by authentication of virtual uses<br />
pam_service_name=vsftpd-virtual<br />
# in conjunction with 'local_root',<br />
# specifies a home directory for each virtual user<br />
user_sub_token=$USER<br />
local_root=/var/www/virtual/$USER<br />
# the virtual user is restricted to the virtual FTP area<br />
chroot_local_user=YES<br />
# hides the FTP server user IDs and just display "ftp" in directory listings<br />
hide_ids=YES<br />
# runs vsftpd in standalone mode<br />
listen=YES<br />
# listens on this port for incoming FTP connections<br />
listen_port=60021<br />
# the minimum port to allocate for PASV style data connections<br />
pasv_min_port=62222<br />
# the maximum port to allocate for PASV style data connections<br />
pasv_max_port=63333<br />
# controls whether PORT style data connections use port 20 (ftp-data)<br />
connect_from_port_20=YES<br />
# the umask for file creation<br />
local_umask=022</code></p></blockquote>
<p><strong>4、创建用户主目录</strong></p>
<p>在上面的配置文件指定的目录下，创建所有虚拟用户的主目录（如果这些用户已经有自己的文件目录，只需要创建一个符号连接就可以了），并改变这些目录的属主为 ftp：</p>
<blockquote><p><code># mkdir /var/www/virtual/mary<br />
# chown ftp:ftp /var/www/virtual/mary</code></p></blockquote>
<p><strong>5、启动 VSFTPD 并测试</strong></p>
<p>用下面的命令启动 VSFTPD：</p>
<blockquote><p><code># /usr/sbin/vsftpd /etc/vsftpd/vsftpd-virtual.conf</code></p></blockquote>
<p>用 lftp 命令测试虚拟用户的访问权限：</p>
<blockquote><p><code># lftp -u mary -p 60021 192.168.1.101</code></p></blockquote>
<p>所有的虚拟用户应该可以管理他目录下的所有子目录和文件。</p>
]]></content:encoded>
			<wfw:commentRss>http://zh.linuxforfun.net/2008/04/05/vsftpd-virtual-users/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>在使用 SmartRAID V 的服务器上安装 CentOS 5.1</title>
		<link>http://zh.linuxforfun.net/2008/03/04/smartraid-centos/</link>
		<comments>http://zh.linuxforfun.net/2008/03/04/smartraid-centos/#comments</comments>
		<pubDate>Tue, 04 Mar 2008 02:59:01 +0000</pubDate>
		<dc:creator>三大件</dc:creator>
				<category><![CDATA[CentOS]]></category>
		<category><![CDATA[smartraid v]]></category>
		<category><![CDATA[安装]]></category>
		<category><![CDATA[驱动]]></category>

		<guid isPermaLink="false">http://zh.linuxforfun.net/2008/03/04/%e5%9c%a8%e4%bd%bf%e7%94%a8-smartraid-v-%e7%9a%84%e6%9c%8d%e5%8a%a1%e5%99%a8%e4%b8%8a%e5%ae%89%e8%a3%85-centos-51/</guid>
		<description><![CDATA[公司有一台老旧的服务器，在闲置一年后，需要重新安装 Linux。鉴于 CentOS 更新比较方便，我尝试在这台使用 SmartRAID V 的服务器上安装 CentOS 5.1。安装过程遇到了不少困难，但最终成功安装了 CentOS 5.1。 服务器的基本配置： 2 x Intel(R) Xeon(TM) CPU 2.40GHz 4G Memory Adaptec (formerly DPT) SmartRAID V Controller 6x 36704 MB SCSI disks Intel Corporation 82545EM Gigabit Ethernet Controller ATAPI 52X CD-ROM drive 安装过程描述如下： 0、做 RAID5 在安装之前，先用SmartRAID Storage Manager 做了一个 5 块硬盘组成的 RAID5，留了一块硬盘做 HotSpare。 1、安装介质 我下载的 Centos [...]]]></description>
			<content:encoded><![CDATA[<p>公司有一台老旧的服务器，在闲置一年后，需要重新安装 Linux。鉴于 CentOS 更新比较方便，我尝试在这台使用 SmartRAID V 的服务器上安装 CentOS 5.1。安装过程遇到了不少困难，但最终成功安装了 CentOS 5.1。</p>
<p>服务器的基本配置：</p>
<ul>
<li>2 x Intel(R) Xeon(TM) CPU 2.40GHz</li>
<li>4G Memory</li>
<li>Adaptec (formerly DPT) SmartRAID V Controller</li>
<li>6x 36704 MB SCSI disks</li>
<li>Intel Corporation 82545EM Gigabit Ethernet Controller</li>
<li>ATAPI 52X CD-ROM drive</li>
</ul>
<p>安装过程描述如下：</p>
<p><span id="more-12"></span><strong>0、做 RAID5</strong></p>
<p>在安装之前，先用SmartRAID Storage Manager 做了一个 5 块硬盘组成的 RAID5，留了一块硬盘做 HotSpare。</p>
<p><strong>1、安装介质</strong></p>
<p>我下载的 Centos 5.1 安装盘是 DVD ISO。但服务器没有 DVD-ROM。所以先用 images/diskboot.img做了个 USB启动盘，尝试用 USB启动服务器，没有成功。不得已，只好用 images/boot.iso刻了一张可引导的 CD-ROM。在另一台 Linux 机器上把 DVD ISO 加载到 Apache 服务器的一个目录下，准备使用 HTTP 方式安装。</p>
<p><strong>2、引导，加载 RAID 驱动</strong></p>
<p>用安装盘引导后， 选择 HTTP 安装介质，配置网络参数和 HTTP 服务器地址，安装过程进入图形界面。这时，如果直接选择 ”Next“ 进入下一个步骤，系统将无法识别任何硬盘！这是因为：CentOS没有将 SmartRAID V的驱动放进用于安装的内核里！</p>
<p>解决方法是：事前将安装盘中的   CentOS/kernel-2.6.18-53.el5.i686.rpm 解开，把下列两个驱动模块文件：</p>
<blockquote><p><code>/lib/modules/2.6.18-53.el5/kernel/drivers/message/i2o/i2o_block.ko<br />
/lib/modules/2.6.18-53.el5/kernel/drivers/message/i2o/i2o_scsi.ko</code></p></blockquote>
<p>拷贝到 HTTP 服务器的某个目录下，让要安装的服务器可以取得到。</p>
<p>然后，在图形安装界面下，按 Ctrl-Alt-F2 切换到命令行模式，运行 wget 命令将上面两个驱动文件取过来。然后执行命令：</p>
<blockquote><p><code># insmod i2o_block.ko<br />
# insmod i2o_scsi.ko</code></p></blockquote>
<p>加载 i2o_scsi.ko 时，可能需要好几分钟。</p>
<p>上面两条命令执行完毕后，按 Ctrl-Alt-F6 切换回图形安装界面，点击“Next”进入下一个步骤。这时会弹出一个错误窗口，大致内容是：</p>
<blockquote><p>Error opening /dev/sda: No such device or address</p></blockquote>
<p>不用管它，点击错误窗口的“Cancel”忽略它。这时，安装程序就可以成功地找到我们刚才在 Storage Manager 里做的 RAID5 硬盘 /dev/i2o/hda了。找到硬盘后，我们就可以按通常的步骤分区，安装操作系统了。</p>
<p>（在分区的时候，一开始我使用了缺省的 LVM，但是安装完成后引导时，进入 runlevel 3后，引导几乎处于停顿状态，系统不可用。没有找到原因。重新开始安装过程，选择自己手工分区，不使用 LVM。安装完成后引导一切正常。）</p>
<p><strong>3、制作 initrd</strong></p>
<p>软件包安装完成后，不能点击“Reboot”马上重新启动。因为 i2o_block.ko 和 i2o_scsi.ko并不在 CentOS 内核缺省的 initrd 文件里。这时重新启动，系统将无法引导。</p>
<p>在最后一个图形安装界面下，按 Ctrl-Alt-F2 重新切换到命令行状态，执行如下命令：</p>
<blockquote><p><code># chroot /mnt/sysimage /bin/bash<br />
# /sbin/mkinitrd -f --preload=i2o_block --preload=i2o_scsi  \<br />
/boot/initrd-2.6.18-53.el5PAE.img  2.6.18-53.el5PAE<br />
# exit</code></p></blockquote>
<p>然后，按 Ctrl-Alt-F6 切换回图形安装界面，点击“Reboot”重新启动系统。大功告成！</p>
<p>以后，凡是升级内核后，都要执行上面的 mkinitrd 命令，把 i2o_block  和  i2o_scsi  两个模块加进  initrd  文件。</p>
]]></content:encoded>
			<wfw:commentRss>http://zh.linuxforfun.net/2008/03/04/smartraid-centos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

