<?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; FreeBSD</title>
	<atom:link href="http://www.tisswb.cn/archives/tag/freebsd/feed" rel="self" type="application/rss+xml" />
	<link>http://www.tisswb.cn</link>
	<description>结婚开始倒计时了，高兴~</description>
	<lastBuildDate>Sat, 31 Jul 2010 16:42:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>FreeBSD7.0用ports安装apache+php+mysql</title>
		<link>http://www.tisswb.cn/archives/201.html</link>
		<comments>http://www.tisswb.cn/archives/201.html#comments</comments>
		<pubDate>Wed, 12 Nov 2008 05:13:39 +0000</pubDate>
		<dc:creator>笨二十一</dc:creator>
				<category><![CDATA[Linux/Unix]]></category>
		<category><![CDATA[Web服务器]]></category>
		<category><![CDATA[服务器]]></category>
		<category><![CDATA[FreeBSD]]></category>

		<guid isPermaLink="false">http://www.tisswb.cn/?p=201</guid>
		<description><![CDATA[网上有很多介绍apache+php+mysql安装的教程，但大多都是基于源代码编译或者给予RPM包的方式，对于FreeBSD自带的ports安装很少见到，有方便的干嘛弄得复杂呢？
首先确定主机联网
cvsup -h cvsup.freebsd.org /usr/share/example/cvsup/ports-supfile #同步ports
cd /usr/ports/databases/mysql50-server/
make install clean # n长的编译过程
rehash
cp /usr/local/share/mysql/my-small.cnf /etc/my.cnf #由于我这台机器以pgsql为主所以使用小内存模式
mysql_install_db -u mysql ; mysqld_safe -u mysql &#038;
cd /usr/ports/www/apache2/
<span class="readmore"><a href="http://www.tisswb.cn/archives/201.html" title="FreeBSD7.0用ports安装apache+php+mysql" target="_blank">阅读全文——共939字</a></span>]]></description>
			<content:encoded><![CDATA[<p>网上有很多介绍apache+php+mysql安装的教程，但大多都是基于源代码编译或者给予RPM包的方式，对于FreeBSD自带的ports安装很少见到，有方便的干嘛弄得复杂呢？<br />
首先确定主机联网<br />
cvsup -h cvsup.freebsd.org /usr/share/example/cvsup/ports-supfile #同步ports<br />
cd /usr/ports/databases/mysql50-server/<br />
make install clean # n长的编译过程<br />
rehash<br />
cp /usr/local/share/mysql/my-small.cnf /etc/my.cnf #由于我这台机器以pgsql为主所以使用小内存模式<br />
mysql_install_db -u mysql ; mysqld_safe -u mysql &#038;<br />
cd /usr/ports/www/apache2/<br />
make install clean<br />
cd ../mod_php5<br />
make install clean<br />
在/usr/local/etc/apache/httpd.conf中加一句：<br />
AddType application/x-httpd-php .php<br />
AddType application/x-httpd-php-source .phps #可不加<br />
rehash<br />
apachectl start<br />
echo &#8220;< ?php phpinfo() ?>&#8221; > /usr/loacl/www/data/info.php<br />
如果启动成功并能显示lynx http://localhost/info.php说明基本的 php+apache2已经工作正常！<br />
cd /usr/port/lang/php5-extensions/<br />
make install clean #如果第一次安装会出现提示框，否则先make conf设置<br />
选择需要的模块，当然也可以选择必须的，日后再添加。<br />
apachectl restart<br />
如果lynx http://localhost/info.php有改动，恭喜你！安装成功！！<br />
后续工作：<br />
echo &#8216; mysql_enable = &#8220;YES&#8221; &#8216; >> /etc/rc.conf<br />
echo &#8216; apache2_enable=&#8221;YES&#8221; &#8216; >> /etc/rc.conf<br />
#以便开机后自动启动mysql apache </p>
]]></content:encoded>
			<wfw:commentRss>http://www.tisswb.cn/archives/201.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD安装配置Ports详解</title>
		<link>http://www.tisswb.cn/archives/194.html</link>
		<comments>http://www.tisswb.cn/archives/194.html#comments</comments>
		<pubDate>Wed, 12 Nov 2008 02:35:45 +0000</pubDate>
		<dc:creator>笨二十一</dc:creator>
				<category><![CDATA[Linux/Unix]]></category>
		<category><![CDATA[服务器]]></category>
		<category><![CDATA[FreeBSD]]></category>

		<guid isPermaLink="false">http://www.tisswb.cn/?p=194</guid>
		<description><![CDATA[在您能使用 ports 之前， 您必须先获得 Ports Collection ── 本质上是 /usr/ports 目录下的一堆 Makefile、补丁和描述文件。
在您安装 FreeBSD 系统的时候， sysinstall 会询问您是否需要安装 Ports Collection。 如果您选择 no， 那您可以用下面的指令来安装 Ports Collection：
CVSup 方法
保持您本地 Ports 套件最新的一种快捷的方法， 是使用 CVSup 来进行更新。 如果您希望了解更多关于 CVSup 的细节， 请参见 使用 CVSup。
注意: csup 是用 C 语言对 CVSup 软件的重写， 在 FreeBSD 6.2 和更高版本中，作为系统的一部分提供。 您可以直接使用系统附带的 csup 而跳过 #1 这一步， 并将这份文档余下部分中的 cvsup 命令改为 csup。 对于较早版本而言， 可以使用 net/csup port 或预编译包来安装 csup。
<span class="readmore"><a href="http://www.tisswb.cn/archives/194.html" title="FreeBSD安装配置Ports详解" target="_blank">阅读全文——共1938字</a></span>]]></description>
			<content:encoded><![CDATA[<p>在您能使用 ports 之前， 您必须先获得 Ports Collection ── 本质上是 /usr/ports 目录下的一堆 Makefile、补丁和描述文件。</p>
<p>在您安装 FreeBSD 系统的时候， sysinstall 会询问您是否需要安装 Ports Collection。 如果您选择 no， 那您可以用下面的指令来安装 Ports Collection：</p>
<p>CVSup 方法<br />
保持您本地 Ports 套件最新的一种快捷的方法， 是使用 CVSup 来进行更新。 如果您希望了解更多关于 CVSup 的细节， 请参见 使用 CVSup。</p>
<p>注意: csup 是用 C 语言对 CVSup 软件的重写， 在 FreeBSD 6.2 和更高版本中，作为系统的一部分提供。 您可以直接使用系统附带的 csup 而跳过 #1 这一步， 并将这份文档余下部分中的 cvsup 命令改为 csup。 对于较早版本而言， 可以使用 net/csup port 或预编译包来安装 csup。</p>
<p>在首次运行 CVSup 之前， 务必确认 /usr/ports 是空的！ 如果您之前已经用其他地方安装了一份 Ports 套件，则 CVSup 可能不会自动删除已经在上游服务器上删除掉的补丁文件。</p>
<p>安装 net/cvsup-without-gui 软件包：<br />
# pkg_add -r cvsup-without-gui<br />
请参见 如何安装 CVSup (第 A.5.2 节) 以了解更多细节。</p>
<p>启用cvsup命令<br />
#rehash</p>
<p>运行 cvsup：<br />
# cvsup -L 2 -h cvsup.FreeBSD.org /usr/share/examples/cvsup/ports-supfile<br />
将 cvsup.FreeBSD.org 改为离您较近的 CVSup 服务器。 请参见 CVSup 镜像 (第 A.5.7 节) 中的镜像站点完整列表。</p>
<p>注意: 有时可能希望使用自己的 ports-supfile， 比如说，不想每次都通过命令行来指定所使用的 CVSup 服务器。</p>
<p>这种情况下， 需要以 root 身份将 /usr/share/examples/cvsup/ports-supfile 复制到新的位置， 例如 /root 或您的主目录。<br />
编辑 ports-supfile。<br />
把 CHANGE_THIS.FreeBSD.org 修改成离您较近的 CVSup 服务器。 可以参考 CVSup 镜像 (第 A.5.7 节) 中的镜像站点完整列表。</p>
<p>接下来按如下的方式运行 cvsup：<br />
# cvsup -L 2 /root/ports-supfile</p>
<p>此后运行 cvsup(1) 命令将下载最近所进行的改动， 并将它们应用到您的 Ports Collection 上，不过这一过程并不重新联编您系统上的 ports。</p>
<p>Portsnap 方式<br />
Portsnap 是另一种用于发布 Ports 套件的方法。 它最早从 FreeBSD 6.0 开始引入。 在较早的系统中， 您可以通过 ports-mgmt/portsnap package 来安装它：<br />
# pkg_add -r portsnap<br />
请参见 使用 Portsnap 以了解关于全部 Portsnap 功能的详细描述。</p>
<p>如果您使用 FreeBSD 6.1-RELEASE， 或通过 port 或 package 安装了较新版本的 Portsnap 的话， 可以直接跳过这一步。 /usr/ports 将在首次使用 portsnap(8) 命令时自动创建。 而如果您使用的是较早期版本的 Portsnap，就只能手工创建空的 /usr/ports 目录了。<br />
# mkdir /usr/ports<br />
下载压缩的 Ports 套件快照到 /var/db/portsnap。您可以根据需要在这之后关闭 Internet 连接。<br />
# portsnap fetch</p>
<p>假如您是首次运行 Portsnap， 则需要将快照释放到 /usr/ports：<br />
# portsnap extract<br />
如果您已经有装好的 /usr/ports 而您只想更新，则应执行下面的命令：<br />
# portsnap update</p>
<p>Sysinstall 方式<br />
这种方法需要使用 sysinstall 从安装介质上安装 Ports 套件。注意， 安装的将是发布发行版时的旧版 Ports 套件。 如果您能访问 Internet，应使用前面介绍的方法之一。</p>
<p>以 root 身份运行 sysinstall (对 FreeBSD 5.2 之前的版本， 应执行 /stand/sysinstall)：<br />
# sysinstall<br />
用光标向下选择 Configure， 并按 Enter。<br />
向下并选择 Distributions， 按 Enter。<br />
选择 ports， 并按 Space。<br />
选择 Exit， 并按 Enter。<br />
选择所希望的安装介质， 例如 CDROM、 FTP， 等等。<br />
选择 Exit 并按 Enter。</p>
<p>按 X 退出 sysinstall。</p>
<p>参考文章：<a href="http://cnsnap.cn.freebsd.org/doc/zh_CN.GB2312/books/handbook/cvsup.html#CVSUP-INSTALL">http://cnsnap.cn.freebsd.org/doc/zh_CN.GB2312/books/handbook/cvsup.html#CVSUP-INSTALL</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tisswb.cn/archives/194.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD7.0安装VMware Tools方法</title>
		<link>http://www.tisswb.cn/archives/156.html</link>
		<comments>http://www.tisswb.cn/archives/156.html#comments</comments>
		<pubDate>Thu, 09 Oct 2008 09:26:38 +0000</pubDate>
		<dc:creator>笨二十一</dc:creator>
				<category><![CDATA[Linux/Unix]]></category>
		<category><![CDATA[服务器]]></category>
		<category><![CDATA[虚拟化应用]]></category>
		<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://www.tisswb.cn/?p=156</guid>
		<description><![CDATA[经常使用虚拟机，特别是VM的人，估计对vmtools都不陌生，这个东东确实对虚拟机性能提升很大，建议安装哦~
FreeBSD7中安装VMtools正常安装会报错 要装perl5.8与compat6x 如果你安装FreeBSD时已经装了Perl5.8可以去掉第一行操作以root登陆或者su到root执行一下操作即可安装Vmware tools 注意开始你必须选择在VM里设置把VMware-FreeBSD-tools的iso镜像挂载到虚拟里



#cd /usr/ports/lang/perl5.8 &#38;&#38; make WITH_GDBM=yes install clean
#cd /usr/ports/misc/compat6x &#38;&#38; make install clean
#ln -s /usr/local/lib/compat/libc.so.6 /lib
#unsetenv REMOTEHOST
<span class="readmore"><a href="http://www.tisswb.cn/archives/156.html" title="FreeBSD7.0安装VMware Tools方法" target="_blank">阅读全文——共992字</a></span>]]></description>
			<content:encoded><![CDATA[<p>经常使用虚拟机，特别是VM的人，估计对vmtools都不陌生，这个东东确实对虚拟机性能提升很大，建议安装哦~</p>
<p>FreeBSD7中安装VMtools正常安装会报错 要装perl5.8与compat6x 如果你安装FreeBSD时已经装了Perl5.8可以去掉第一行操作以root登陆或者su到root执行一下操作即可安装Vmware tools 注意开始你必须选择在VM里设置把VMware-FreeBSD-tools的iso镜像挂载到虚拟里</p>
<table style="width: 98%; border: #ffffff 1px solid;" border="0">
<tbody>
<tr class="tr3">
<td>#cd /usr/ports/lang/perl5.8 &amp;&amp; make WITH_GDBM=yes install clean<br />
#cd /usr/ports/misc/compat6x &amp;&amp; make install clean<br />
#ln -s /usr/local/lib/compat/libc.so.6 /lib<br />
#unsetenv REMOTEHOST<br />
#mount /cdrom<br />
#cd /cdrom<br />
#cp vmware-freebsd-tools.tar.gz /root<br />
#cd /root<br />
#tar -zxvf vmware-freebsd-tools.tar.gz<br />
#cd vmware-tools-distrib<br />
#./vmware-install.pl</td>
</tr>
</tbody>
</table>
<p> </p>
<p>VMware-tools的使用</p>
<p>　　要使用VMware-tools，需要在VMware主程序界面中选择“VM”菜单下的“Install vmware-tools”</p>
<p>　　主要的可执行程序放在 /usr/local/bin目录下：</p>
<p>　　vmware-config-tools.pl</p>
<p>　　这是个shell环境下可执行脚本，可以在命令行下直接输入vmware-config-tools运行，它的主要作用就是启动vmware-tools，设置屏幕分辨率。</p>
<p>　　vmware-toolbox</p>
<p>　　这是个运行在X终端环境下的Gtk图形界面的管理程序，必须在X环境下才能执行，vmware-tools默认安装时，这个程序运行时有问题，提示需要libc.so.5和libm.so.3两个库，为了能够运行，需要在/usr/lib文件夹内建立两个库的连接：</p>
<p>　　cd /usr/lib</p>
<p>　　ln -s libc.so libc.so.5</p>
<p>　　ln -s libm.so libm.so.3</p>
<p>　　启动X，比如KDE，在模拟终端中输入“vmware-toolbox”即可进入vmware-tools的控制面板</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tisswb.cn/archives/156.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD7.0基础&#8211;核心编译</title>
		<link>http://www.tisswb.cn/archives/77.html</link>
		<comments>http://www.tisswb.cn/archives/77.html#comments</comments>
		<pubDate>Wed, 25 Jun 2008 16:27:56 +0000</pubDate>
		<dc:creator>笨二十一</dc:creator>
				<category><![CDATA[Linux/Unix]]></category>
		<category><![CDATA[服务器]]></category>
		<category><![CDATA[FreeBSD]]></category>

		<guid isPermaLink="false">http://www.tisswb.cn/?p=77</guid>
		<description><![CDATA[具体步骤如下：
1，#cd /usr/src/sys/i386/conf
    #cp GENERIC /root/MYKERNEL         //拷贝一个副本，一种好的习惯吧，不在原来的文件上修改
    #ln -s /root/MYKERNEL                  //将副本做个软连接到/usr/src/sys/i386/conf
2,编辑MYKERNEL，#vi MYKERNEL
注意：蓝色的表示FreeBSD7.0中已没有该行,在此只是让大家知道一下，可以不用理会。
                   查看计算机硬件信息，直接输入dmesg：#dmesg 并参考着主板使用手册
       关于确定自己计算机硬件信息，其实，对于新手来说，真的很麻烦，不过，要有耐心，看一遍不懂，就多看几遍，手还得勤快点儿，不懂时，多用 google 查查~
#machine i386                   
<span class="readmore"><a href="http://www.tisswb.cn/archives/77.html" title="FreeBSD7.0基础&#8211;核心编译" target="_blank">阅读全文——共18947字</a></span>]]></description>
			<content:encoded><![CDATA[<p><strong>具体步骤如下：<br />
1，#cd /usr/src/sys/i386/conf<br />
    #cp GENERIC /root/MYKERNEL         //拷贝一个副本，一种好的习惯吧，不在原来的文件上修改<br />
    #ln -s /root/MYKERNEL                  //将副本做个软连接到/usr/src/sys/i386/conf<br />
2,编辑MYKERNEL，#vi MYKERNEL</p>
<p></strong><span style="color: #ff0000;"><strong>注意：</strong><span style="color: #040000;"><strong>蓝色的表示FreeBSD7.0中已没有该行,在此只是让大家知道一下，可以不用理会。</p>
<p></strong></span></span><strong>                   </strong><strong><span>查看计算机硬件信息，直接输入dmesg：#dmesg 并参考着主板使用手册<br />
       关于确定自己计算机硬件信息，其实，对于新手来说，真的很麻烦，不过，要有耐心，看一遍不懂，就多看几遍，手还得勤快点儿，不懂时，多用 google 查查~</p>
<p>#machine i386                   <br />
</span><span style="color: #0817ff;"><span style="color: #080000;">//7.0中已经没有这行，现在的计算机很NB，谁还用386地啊，开个玩笑！</span></span><br />
<span style="color: #0010ff;">   </span>               <br />
           <br />
#cpu            I486_CPU<br />
#cpu            I586_CPU<br />
cpu             I686_CPU<br />
//CPU类型，可以用dmesg查看，在靠前的位置</p>
<p>ident           MYKERNEL<br />
//核心名称，自己随便起<br />
<span style="color: #ff0000;">注意：象machine 与cpu 这两个设置。如果你的内核名称包含数字，请记得用双引号把</span></strong><span><strong>它括起来。内核名将会使用-D 参数传给编译器，所以不要用像DEBUG或是其它可能干扰编译器的机器、CPU 名称，如vax ，别那么另类嘛！。</p>
<p>#maxusers n   <br />
<span style="color: #080000;">//简单的讲，他决定着系统进程表能够容纳多少个进程，在做服务器时，这个值一定要大，</span></strong></span><span><span style="color: #080000;"><strong>7.0中已经没有这行，可能是系统自动完成这项功能吧~，我们不用理会</strong></span><br />
</span><span style="color: #ff0000;"></p>
<p></span><strong># To statically compile in device wiring instead of /boot/device.hints<br />
#hints          &#8220;GENERIC.hints&#8221;         # Default places to look for devices.<br />
//默认该行被注释上了，表示：在系统启动loader阶段，动态的从/boot/device.hints加载设备驱动程序参数；如果拿掉注释“#”，则会静态地将设备驱动程序参数编译进内核。<span style="color: #ff0000;">该行保持默认即可。</span></p>
<p>#makeoptions     DEBUG=-g                # Build kernel with gdb(1) debug symbols<br />
//内核开发与测试时用，<span style="color: #ff0000;">将该行注释上</span><span style="color: #ff0000;">。</span></p>
<p><span style="color: #0010ff;">#options MATH_EMULATE #Support for x87 emulation</span><br />
<span style="color: #0817ff;"><span style="color: #080000;">//早期CPU只有整型运算器，浮点运算器是单独卖的，用户可以选购，现在的CPU都带浮点运算器，这行就是浮点运算模拟器的支持，</span></span><span style="color: #0817ff;"><span style="color: #080000;">7.0中已经没有这行，不用理会。</span></span><br />
   </p>
<p>options         SCHED_4BSD              # 4BSD scheduler<br />
//<span style="color: #008000;">SCHED_4BSD是BSD系统默认调度器，也可以说成排成工作，<span style="color: #ff0000;">保留。</span></span></p>
<p>options         PREEMPTION              # Enable kernel thread preemption<br />
//允许内核根据线程的优先级抢占式调度。 这有助于改善交互性，并可以让中断的线程更早地执行，<span style="color: #ff0000;">保留</span><span style="color: #ff0000;">。</span></p>
<p>options         INET                     # InterNETworking<br />
//对IPv4的支持，即使不接入Internet也要保留，计算机内部循环网络lookback要使用，<span style="color: #ff0000;">保留。</span><br />
#options         INET6                   # IPv6 communications protocols<br />
//对IPv6的支持，<span style="color: #ff0000;">拿掉</span>。</p>
<p>#options         SCTP                    # Stream Control Transmission Protocol<br />
//流控制传输协议，借鉴 UDP 的优点解决了 TCP 的某些局限。<span style="color: #ff0000;">拿掉。</span></p>
<p>options         FFS                     # Berkeley Fast Filesystem<br />
<span style="color: #0010ff;">#options        FFS_ROOT                #FFS usable as root device [keep this!]</span><br />
//最基本的文件系统，从硬盘启动需要此项，<span style="color: #ff0000;">保留。</span>注意: 在FreeBSD 5.X中， FFS_ROOT 已不是必须的了。</p>
<p>options         SOFTUPDATES             # Enable FFS soft updates support<br />
//<span style="color: #ff0000;">简单的讲，保持文件系统一致性</span>，这个一致性在数据库中体现的也很明显，比如我们的机器突然掉电，可能内存中有些在数据还没有来得及写入硬盘，这样，文件系统中数据就可能不一致，还有两种保持文件系统一致性的技术，Soft Updates技术不同于这两种技术，</strong><a name="SOFT-UPDATES"></a><span style="color: #ff0000;"><strong>保留。<br />
<span style="color: #080000;">关于Soft Updates:</span><br />
</strong><a href="http://school.21tx.com/2006/04/01/10649.html"><strong>http://school.21tx.com/2006/04/01/10649.html</strong></a></p>
<p></span><strong>options         UFS_ACL                 # Support for access control lists<br />
//启用内核中的访问控制表的支持,访问控制技术是<span style="color: #ff0000;">一种主动防护技术</span>，</strong><strong><span style="color: #ff0000;">保留。<br />
</span><span style="color: #aa5500;">//访问控制技术通过控制与检查进出关键服务器中的访问，保护服务器中的关键数据。它是一种主机防护技术。如果说安全保护就像保护自己的球网不被攻破一样，防火墙是中卫、IDS是后卫，则访问控制就是守门员——随时准备扑出任何非法的进入。&#8212;&#8212;-<span style="color: #ff0000;">引自互联网</span></span><br />
</strong><span style="color: #ff0000;"></p>
<p></span><strong>options         UFS_DIRHASH             # Improve performance on big directories<br />
//通过使用额外的内存，提升对大目录磁盘操作的性能。大型服务器和频繁使用的工作站打开这个选项，在磁盘操作不是很重要的小型系统上关闭它，比如防火墙。<span style="color: #ff0000;">保留吧</span></p>
<p></strong><span style="color: #0c6200;"><strong>options         UFS_GJOURNAL            # Enable gjournal-based UFS journaling<br />
</strong><span style="color: #020000;"><strong>//这个技术不太清楚，打开吧。</p>
<p></strong></span></span><span style="color: #0010ff;"><strong>#options        MFS                    #Memory Filesyste</strong></span><span style="color: #0817ff;"><span style="color: #080000;"><br />
</span></span><strong>#options         MD_ROOT                 # MD is a potential root device<br />
//内存映射文件系统。如果有些数据需要快速的访问，用这个功能挺好的，<span style="color: #ff0000;">拿掉。</span></p>
<p>#options         NFSCLIENT               # Network Filesystem Client<br />
#options         NFSSERVER               # Network Filesystem Server<br />
#options         NFS_ROOT                # NFS usable as /, requires NFSCLIENT<br />
//网络文件系统。通过网络挂接<span class="TRADEMARK">UNIX</span>分区，我们一般用不着，这个通常用在大型服务器上，</strong><strong><span style="color: #ff0000;">拿掉。</p>
<p></span>#options         MSDOSFS                 # MSDOS Filesystem<br />
<span class="TRADEMARK">//对MS-DOS</span>® 文件系统的支持，</strong><strong><span style="color: #ff0000;">拿掉。</p>
<p></span>#options         CD9660                  # ISO 9660 Filesystem<br />
//CD-ROM 使用的ISO 9660文件系统，可以拿掉，需要时，内核会动态加载。</strong><strong><span style="color: #ff0000;">拿掉。</p>
<p></span>options         PROCFS                   # Process filesystem (requires PSEUDOFS)<br />
options         PSEUDOFS                 # Pseudo-filesystem framework<br />
//虚拟的文件系统，挂在/proc下，允许程序（如ps）获取正在执行的进程信息。6.X 内核中， 如果希望使用 <tt class="LITERAL"><span style="font-family: 新宋体;">PROCFS</span></tt>， 就必须加入 <tt class="LITERAL"><span style="font-family: 新宋体;">PSEUDOFS</span></tt> 的支持。<span style="color: #ff0000;">两个都保留。</span><br style="color: #ff0000;" /></p>
<p>options         GEOM_PART_GPT            # GUID Partition Tables.<br />
options         GEOM_LABEL               # Provides labelization<br />
//提供了在磁盘上使用大量分区的能力。<span style="color: #ff0000;">保留</span></p>
<p>options         COMPAT_43TTY             # BSD 4.3 TTY compat [KEEP THIS!]<br />
//使系统兼容4.3BSD。有些程序依赖这个功能，看后边的KEEP THIS!，一定要保留。</strong><strong><span style="color: #ff0000;">保留</p>
<p></span>options         COMPAT_FREEBSD4          # Compatible with FreeBSD4<br />
options         COMPAT_FREEBSD5          # Compatible with FreeBSD5<br />
options         COMPAT_FREEBSD6          # Compatible with FreeBSD6<br />
//对FreeBSD4、5、6中程序的支持，运行老应用程序时需要这些功能。</strong><strong><span style="color: #ff0000;">保留</p>
<p></span><br />
#options         SCSI_DELAY=5000         # Delay (in ms) before probing SCSI<br />
//内核探测SCSI设备延迟时间，视情况而定是否保留，如果只有IDE硬盘驱动器，可以拿掉这行。</p>
<p><span style="color: #0010ff;">#options UCONSOLE #Allow users to grab the console</span><br />
//FreeBSD7.0没有这个；FreeBSD 5.X中, 就已经没有UCONSOLE了。<br />
<span style="color: #2000ff;">#options USERCONFIG #boot -c editor</span><br />
//这个选项允许从启动菜单启动配置编辑器。<br />
<span style="color: #0010ff;">#options VISUAL_USERCONFIG #visual boot -c editor</span><br />
//这个选项允许从启动菜单启动可视化的配置编辑器。<br />
注意: 从FreeBSD 5.0 开始,USERCONFIG选项和新的device.hints方式冲突。</p>
<p>#options         KTRACE                  # ktrace(1) support<br />
//打开内核进程跟踪，在调试时很有用。<span style="color: #ff0000;">拿掉。</span></p>
<p>#options         SYSVSHM                  # SYSV-style shared memory<br />
#options         SYSVMSG                  # SYSV-style message queues<br />
#options         SYSVSEM                 # SYSV-style semaphores<br />
//这三个是Unix System V处理进程之间通信用的，分别是System V共享内存、消息队列、信号量，保护共享资源；<br />
BSD为进程通信提供的是管道(pipe)、命名管道(named pipe)、软中断信号(signal)<span style="color: #ff0000;">；注释上</span>。</p>
<p><span style="color: #2000ff;">#options P1003_1B #Posix P1003_1B real-time extensions</span><br />
//在1993 POSIX中添加的实时扩展。在ports中有些应用程序会用到它们（比如Star Office ）。<br />
注意: 在 FreeBSD 5.X中, 此项功能已经被 _KPOSIX_PRIORITY_SCHEDULING 选项所取代，并且P1003_1B也不再是必选项了。<span style="color: #ff0000;">&#8211;引自互联网</span></p>
<p>options         _KPOSIX_PRIORITY_SCHEDULING    # POSIX P1003_1B real-time extensions<br />
//实时扩展。Ports Collection中某些应用程序会用到这些。<span style="color: #ff0000;">保留</span></p>
<p><br style="color: #0010ff;" /><span style="color: #0010ff;">#options ICMP_BANDLIM #Rate limit bad replies</span><br />
//这个选项启用基于带宽限制的ICMP的错误响应。你使用这个选项可以帮助你保护你的机器<br />
免受拒绝式服务攻击。<br />
FreeBSD 5.X, 已经默认支持这种功能，而不需要有ICMP_BANDLIM选项。<span style="color: #ff0000;">&#8211;引自互联网</span></p>
<p>options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev<br />
//这个选项是在 <tt class="FILENAME"><span style="font-family: 新宋体;">/dev</span></tt>下建立键盘设备节点必需的。</strong><strong><span style="color: #ff0000;">保留</p>
<p></span><br />
options         ADAPTIVE_GIANT          # Giant mutex is adaptive.<br />
//对内核全局锁技术的支持，保护内核资源。<span style="color: #ff0000;">保留 </span></strong><span style="font-weight: bold;"></p>
<p></span><strong>options         STOP_NMI                # Stop CPUS using NMI instead of IPI<br />
options         AUDIT                   # Security event auditing<br />
//这两项保留吧，不太清楚，第二个是审计什么的。<span style="color: #ff0000;">保留</span></p>
<p># To make an SMP kernel, the next two lines are needed<br />
#options         SMP                     # Symmetric MultiProcessor Kernel<br />
#device          apic                    # I/O APIC<br />
//对多CPU的支持，<span style="color: #ff0000;">单CPU可以拿掉</span>。</p>
<p># CPU frequency control<br />
device          cpufreq<br />
//CPU频率控制，<span style="color: #ff0000;">保留</span></p>
<p># Bus support.<br />
#device          eisa<br />
device          pci<br />
//计算机总线类型，每个计算机都有其中的一种，<span style="color: #ff0000;">选择自己的总线类型</span>。<br />
isa总线在现在的i386机器上已经很少见了。而eisa在586以后的主机板已经没见过了。pci是目前的主流。</p>
<p># Floppy drives<br />
#device          fdc<br />
//软盘驱动器</p>
<p># ATA and ATAPI devices<br />
device          ata<br />
//IDE接口的硬盘也叫ATA接口的硬盘，<span style="color: #ff0000;">如果有IDE/ATA硬盘或光驱，一定要打开这个选项。如果要支持以下任何IDE接口装置都必须将这个选项打开。</span><br />
device          atadisk                 # ATA disk drives<br />
#device         ataraid                 # ATA RAID drives<br />
device          atapicd                 # ATAPI CDROM drives<br />
#device         atapifd                 # ATAPI floppy drives<br />
#device         atapist                 # ATAPI tape drives<br />
//以上装置分别是IDE或ATA硬盘、IDE或ATA磁盘阵列装置、IDE或ATA光驱、IDE或ATA软盘机、及IDE或ATA磁带机。您可以将不必要的装置移除，例如IDE软盘机等。</p>
<p>#options         ATA_STATIC_ID          # Static device numbering<br />
//创建固定的IDE或ATA控置器的控制号码，如果拿掉这个选项，控制号码将动态创建，通常用在一些比较旧的设备上。<span style="color: #ff0000;">拿掉。</span></p>
<p># SCSI Controllers<br />
#device          ahb                     # EISA AHA1742 family<br />
#device          ahc                     # AHA2940 and onboard AIC7xxx devices<br />
#options         AHC_REG_PRETTY_PRINT    # Print register bitfields in debug<br />
                                         # output. Adds ~128k to driver.<br />
#device          ahd                     # AHA39320/29320 and onboard AIC79xx devices<br />
#options         AHD_REG_PRETTY_PRINT    # Print register bitfields in debug<br />
                                         # output. Adds ~215k to driver.<br />
#device          amd                 # AMD 53C974 (Tekram DC-390(T))<br />
#device          hptiop              # Highpoint RocketRaid 3xxx series<br />
#device          isp                 # Qlogic family<br />
#device         ispfw                # Firmware for QLogic HBAs- normally a module<br />
#device          mpt                 # LSI-Logic MPT-Fusion<br />
#device         ncr                  # NCR/Symbios Logic<br />
#device          sym                 # NCR/Symbios Logic (newer chipsets + those of `ncr&#8217;)<br />
#device          trm                 # Tekram DC395U/UW/F DC315U adapters</p>
<p>#device          adv                 # Advansys SCSI adapters<br />
#device          adw                 # Advansys wide SCSI adapters<br />
#device          aha                 # Adaptec 154x SCSI adapters<br />
#device          aic                 # Adaptec 15[012]x SCSI adapters, AIC-6[23]60.<br />
#device          bt                  # Buslogic/Mylex MultiMaster SCSI adapters</p>
<p>#device          ncv                 # NCR 53C500<br />
#device          nsp                 # Workbit Ninja SCSI-3<br />
#device          stg                 # TMC 18C30/18C50<br />
//SCSI控制器。</strong><strong><span style="color: #ff0000;">如果没有SCSI硬盘之类的东东，就都拿掉。</p>
<p></span># SCSI peripherals<br />
device          scbus                # SCSI bus (required for SCSI)<br />
//SCSI总线，下边的每项都需要scbus的支持。<br />
#device          ch                  # SCSI media changers<br />
device          da                   # Direct Access (disks)<br />
#device          sa                  # Sequential Access (tape etc)<br />
#device          cd                  # CD<br />
#device          pass                # Passthrough device (direct SCSI access)<br />
#device          ses                 # SCSI Environmental Services (and SAF-TE)<br />
//这些是周边的SCSI接口设备，每一项都需要scbus的支持。ch是SCSI media changer(一种备份用的设备)。如果有SCSI硬盘或是USB硬盘，保留da这个选项。sa及cd分别是SCSI磁带机及光驱。</p>
<p># RAID controllers interfaced to the SCSI subsystem<br />
#device          amr                 # AMI MegaRAID<br />
#device          arcmsr              # Areca SATA II RAID<br />
#device          asr                 # DPT SmartRAID V, VI and Adaptec SCSI RAID<br />
#device          ciss                # Compaq Smart RAID 5*<br />
#device          dpt                 # DPT Smartcache III, IV &#8211; See NOTES for options<br />
#device          hptmv               # Highpoint RocketRAID 182x<br />
#device          hptrr               # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx<br />
#device          iir                 # Intel Integrated RAID<br />
#device          ips                 # IBM (Adaptec) ServeRAID<br />
#device          mly                 # Mylex AcceleRAID/eXtremeRAID<br />
#device          twa                 # 3ware 9000 series PATA/SATA RAID<br />
# RAID controllers<br />
#device          aac                 # Adaptec FSA RAID<br />
#device          aacp                # SCSI passthrough for aac (requires CAM)<br />
#device          ida                 # Compaq Smart RAID<br />
#device          mfi                 # LSI MegaRAID SAS<br />
#device          mlx                 # Mylex DAC960 family<br />
#device          pst                 # Promise Supertrak SX6000<br />
#device          twe                 # 3ware ATA RAID<br />
//磁盘阵列的支持，磁盘阵列是将多个物理磁盘组成一个逻辑磁盘，<span style="color: #ff0000;">如果只有一个硬盘，就都拿掉吧！</span></p>
<p># atkbdc0 controls both the keyboard and the PS/2 mouse<br />
device          atkbdc              # AT keyboard controller<br />
device          atkbd               # AT keyboard<br />
device          psm                 # PS/2 mouse<br />
//atkbdc用来控制AT键盘及PS/2鼠标(就是圆口的鼠标)。而atkbd及psm分别为AT键盘及PS/2鼠标的驱动程序。<span style="color: #ff0000;">后两者需要前两者的支持。保留</span></p>
<p>#device          kbdmux              # keyboard multiplexer<br />
//对多个键盘的支持。 <span style="color: #ff0000;">如果只使用一个键盘，可以拿掉。</span><br style="color: #ff0000;" /></p>
<p>device          vga                 # VGA video card driver<br />
//显卡驱动。<span style="color: #ff0000;">保留。</span></p>
<p>device          splash              # Splash screen and screen saver support<br />
//启动时的 splash 画面！ 屏幕保护程序也需要这一选项。<span style="color: #ff0000;">保留。</span></p>
<p># syscons is the default console driver, resembling an SCO console<br />
device          sc<br />
//预设的console终端驱动程序，<span style="color: #ff0000;">有屏幕就一定要保留</span>。</p>
<p>#device          agp                 # support several AGP chipsets<br />
//对AGP接口显卡支持的驱动程序。我的是集成显卡，所以我去掉了，<span style="color: #ff0000;">要注意自己的哦！！</span><br />
</strong><a href="http://www.cnitblog.com/gunc/admin/EditArticles.aspx?postid=41743"></p>
<p></a><br />
<strong># PCCARD (PCMCIA) support<br />
# PCMCIA and cardbus bridge support<br />
#device          cbb                 # cardbus (yenta) bridge<br />
#device          pccard              # PC Card (16-bit) bus<br />
#device          cardbus             # CardBus (32-bit) bus<br />
//笔记本专用，<span style="color: #ff0000;">拿掉。</span></p>
<p># Serial (COM) ports<br />
device          sio                 # 8250, 16[45]50 based<br />
device          uart                # Generic UART driver<br />
//支持串行端口 Serial (COM) ports，这个不太懂，<span style="color: #ff0000;">保留吧~</span></p>
<p># Parallel port<br />
device          ppc         <br />
device          ppbus               # Parallel port bus (required)<br />
#device          lpt                # Printer<br />
device          plip                # TCP/IP over parallel<br />
device          ppi                 # Parallel port interface device<br />
#device         vpo                 # Requires scbus and da<br />
// 这些是并行端口驱动程序，ppc提供ISA-bus并行接口支持；ppbus提供并行总线的支持；lpt提供并行打印机的支持，plip提供并行网络接口驱动器的支持；普通用途的I/O (“geek port”) + IEEE1284 I/O；这是针对Iomega Zip驱动器的。它要求<tt class="LITERAL"><span style="font-family: 新宋体;">scbus</span></tt>和<tt class="LITERAL"><span style="font-family: 新宋体;">da</span></tt>的支持。 最好的执行效果是工作在EPP 1.9模式。&#8211;<span style="color: #ff0000;">引自手册</span></p>
<p># If you&#8217;ve got a &#8220;dumb&#8221; serial or parallel PCI card that is<br />
# supported by the puc(4) glue driver, uncomment the following<br />
# line to enable it (connects to sio, uart and/or ppc drivers):<br />
#device         puc<br />
//默认已经注释，不太清楚，不用理会了。</p>
<p># PCI Ethernet NICs.<br />
#device          de                  # DEC/Intel DC21x4x (&#8220;Tulip&#8221;)<br />
#device          em                  # Intel PRO/1000 adapter Gigabit Ethernet Card<br />
#device          ixgb                # Intel PRO/10GbE Ethernet Card<br />
device           le                  # AMD Am7900 LANCE and Am79C9xx PCnet<br />
#device          txp                 # 3Com 3cR990 (&#8220;Typhoon&#8221;)<br />
#device          vx                  # 3Com 3c590, 3c595 (&#8220;Vortex&#8221;)<br />
//网卡驱动，<span style="color: #ff0000;">保留自己的</span>。</strong></p>
<p><strong># PCI Ethernet NICs that use the common MII bus controller code.<br />
# NOTE: Be sure to keep the &#8216;device miibus&#8217; line in order to use these NICs!<br />
#device          miibus              # MII bus support<br />
//对MII总线的支持，对于一些PCI 10/100 Ethernet NIC来说是必需的。<br />
#device          bce                 # Broadcom BCM5706/BCM5708 Gigabit Ethernet<br />
#device          bfe                 # Broadcom BCM440x 10/100 Ethernet<br />
#device          bge                 # Broadcom BCM570xx Gigabit Ethernet<br />
#device          dc                  # DEC/Intel 21143 and various workalikes<br />
#device          fxp                 # Intel EtherExpress PRO/100B (82557, 82558)<br />
#device          lge                 # Level 1 LXT1001 gigabit Ethernet<br />
#device          msk                 # Marvell/SysKonnect Yukon II Gigabit Ethernet<br />
#device          nfe                 # nVidia nForce MCP on-board Ethernet<br />
#device          nge                 # NatSemi DP83820 gigabit Ethernet<br />
#device         nve                  # nVidia nForce MCP on-board Ethernet Networking<br />
#device          pcn                 # AMD Am79C97x PCI 10/100 (precedence over &#8216;le&#8217;)<br />
#device          re                  # RealTek 8139C+/8169/8169S/8110S<br />
#device          rl                  # RealTek 8129/8139<br />
#device          sf                  # Adaptec AIC-6915 (&#8220;Starfire&#8221;)<br />
#device          sis                 # Silicon Integrated Systems SiS 900/SiS 7016<br />
#device          sk                  # SysKonnect SK-984x &amp; SK-982x gigabit Ethernet<br />
#device          ste                 # Sundance ST201 (D-Link DFE-550TX)<br />
#device          stge                # Sundance/Tamarack TC9021 gigabit Ethernet<br />
#device          ti                  # Alteon Networks Tigon I/II gigabit Ethernet<br />
#device          tl                  # Texas Instruments ThunderLAN<br />
#device          tx                  # SMC EtherPower II (83c170 &#8220;EPIC&#8221;)<br />
#device          vge                 # VIA VT612x gigabit Ethernet<br />
#device          vr                  # VIA Rhine, Rhine II<br />
#device          wb                  # Winbond W89C840F<br />
#device          xl                  # 3Com 3c90x (&#8220;Boomerang&#8221;, &#8220;Cyclone&#8221;)</p>
<p># ISA Ethernet NICs. pccard NICs included.<br />
#device          cs                  # Crystal Semiconductor CS89x0 NIC<br />
# &#8216;device ed&#8217; requires &#8216;device miibus&#8217;<br />
#device          ed                  # NE[12]000, SMC Ultra, 3c503, DS8390 cards<br />
#device          ex                  # Intel EtherExpress Pro/10 and Pro/10+<br />
#device          ep                  # Etherlink III based cards<br />
#device          fe                  # Fujitsu MB8696x based cards<br />
#device          ie                  # EtherExpress 8/16, 3C507, StarLAN 10 etc.<br />
#device          sn                  # SMC&#8217;s 9000 series of Ethernet chips<br />
#device          xe                  # Xircom pccard Ethernet<br />
//ISA 以太网卡驱动</p>
<p># Wireless NIC cards<br />
#device          wlan                # 802.11 support<br />
#device          wlan_wep            # 802.11 WEP support<br />
#device          wlan_ccmp           # 802.11 CCMP support<br />
#device          wlan_tkip           # 802.11 TKIP support<br />
#device          wlan_amrr           # AMRR transmit rate control algorithm<br />
#device          wlan_scan_ap        # 802.11 AP mode scanning<br />
#device          wlan_scan_sta       # 802.11 STA mode scanning<br />
#device          an                  # Aironet 4500/4800 802.11 wireless NICs.<br />
#device          ath                 # Atheros pci/cardbus NIC&#8217;s<br />
#device          ath_hal             # Atheros HAL (Hardware Access Layer)<br />
#device          ath_rate_sample     # SampleRate tx rate control for ath<br />
#device          awi                 # BayStack 660 and others<br />
#device          ral                 # Ralink Technology RT2500 wireless NICs.<br />
#device          wi                  # WaveLAN/Intersil/Symbol 802.11 wireless NICs.<br />
#device         wl                   # Older non 802.11 Wavelan wireless NIC.<br />
//无线网卡驱动</p>
<p># Pseudo devices.<br />
device          loop                # Network loopback<br />
// 内部循环网络，telnet等用，</strong><strong><span style="color: #ff0000;">保留</p>
<p></span>device          random              # Entropy device<br />
device          ether               # Ethernet support<br />
//这是用来支持以太网络，只要您有网络卡都必须保留这个项目。<span style="color: #ff0000;">保留</span></p>
<p>#device          sl                  # Kernel SLIP<br />
//SLIP已经被PPP取代了，</strong><strong><span style="color: #ff0000;">拿掉。</p>
<p></span>device          ppp                 # Kernel PPP<br />
//PPP 就是 Point-to-Point 通讯协议的简写，提供了相当完整的 TCP/IP 功能。需要时可动态加载。<br />
这里的PPP称为Kernel-mode PPP，传输速度较快，但设定较为不易，额外功能较少。</strong><strong><span style="color: #ff0000;">随便选择。</p>
<p></span>#device          tun                 # Packet tunnel.<br />
//tun 是User-modePPP(亦称 iijppp)，比Kernel-mode PPP容易设定，传输速度略慢，但提供许多特殊能，如需要时自动拨号联机 (Dial-up on demand)、封包过滤器 (packet filter)等等。后接数字表示要支持多少线的PPP，需要时可动态加载。</strong><strong><span style="color: #ff0000;">随便选择。<br />
</span>    tun 会被ppp所使用，如果有拨接网络(含 ADSL 拨号)一定要保留这两个选项。</p>
<p>device          pty                 # Pseudo-ttys (telnet etc)<br />
//终端例如：telnet同时上线最大人数，在 FreeBSD 4.x 预设是 16。你可以在pty的后面加上数字来提高人数，最大是 256。FreeBSD 5.x 后则不用理会这个问题。</strong><strong><span style="color: #ff0000;">保留。</p>
<p></span>device          md                  # Memory &#8220;disks&#8221;<br />
//用来支持虚拟的 Memory disk，这是一种将某块内存拿来当成磁盘驱动器使用的虚拟装置。<br />
这个不太清楚，</strong><strong><span style="color: #ff0000;">保留吧</p>
<p></span>device          gif                 # IPv6 and IPv4 tunneling<br />
//IPv4与IPv6通信，可动态加载。</strong><strong><span style="color: #ff0000;">随便选择。</p>
<p></span>device          faith               # IPv6-to-IPv4 relaying (translation)<br />
//抓取封包，并将封包转交给负责IPv4与IPv6通讯的后台服务程序，提供动态加载。</strong><strong><span style="color: #ff0000;">随便选择。</p>
<p></span>device          firmware            # firmware assist module<br />
//介于硬件与软件之间的东东，挺麻烦的家伙，</strong><strong><span style="color: #ff0000;">保留吧</p>
<p></span># The `bpf&#8217; device enables the Berkeley Packet Filter.<br />
# Be aware of the administrative consequences of enabling this!<br />
# Note that &#8216;bpf&#8217; is required for DHCP.<br />
device          bpf                 # Berkeley packet filter<br />
//提供网络封包过滤功能，网络监控程序用来获取网络上的封包。<span style="color: #ff0000;">保留</span></p>
<p># USB support<br />
#device          uhci                # UHCI PCI-&gt;USB interface<br />
#device          ohci                # OHCI PCI-&gt;USB interface<br />
device          ehci                 # EHCI PCI-&gt;USB interface (USB 2.0)<br />
device          usb                  # USB Bus (required)<br />
#device         udbp                 # USB Double Bulk Pipe devices<br />
#device          ugen                # Generic<br />
#device          uhid                # &#8220;Human Interface Devices&#8221;<br />
#device          ukbd                # Keyboard<br />
#device          ulpt                # Printer<br />
#device          umass               # Disks/Mass storage &#8211; Requires scbus and da<br />
device          ums                  # Mouse<br />
#device          ural                # Ralink Technology RT2500USB wireless NICs<br />
#device          rum                 # Ralink Technology RT2501USB wireless NICs<br />
#device          urio                # Diamond Rio 500 MP3 player<br />
#device          uscanner            # Scanners<br />
# USB Ethernet, requires miibus<br />
#device          aue                 # ADMtek USB Ethernet<br />
#device          axe                 # ASIX Electronics USB Ethernet<br />
#device          cdce                # Generic USB over Ethernet<br />
#device          cue                 # CATC USB Ethernet<br />
#device          kue                 # Kawasaki LSI USB Ethernet<br />
#device          rue                 # RealTek RTL8150 USB Ethernet<br />
//USB支持，如果要使用鼠标（包括USB接口(方口)和PS/2接口(圆口)）一定要有usb和ums的支持，其中如果想使用USB 2.0就要保留ehci。</p>
<p># FireWire support<br />
device          firewire            # FireWire bus code<br />
device          sbp                 # SCSI over FireWire (<span style="color: #ff0000;">Requires scbus and da</span>)<br />
device          fwe                 # Ethernet over FireWire (non-standard!)<br />
device          fwip                # IP over FireWire (RFC 2734,3146)<br />
device          dcons               # Dumb console driver<br />
device          dcons_crom          # Configuration ROM for dcons<br />
//防火墙支持</p>
<p>   </strong><span style="color: #ff0000;"><strong> 注意：</strong><strong><span style="color: #040000;">以上，只是我个人对GENERIC内核的设置，如果还需要其他一些功能，可以加在里边比如磁盘配额等等，不过那些以后再考虑也关系，先把这个GENERIC搞定吧~<br />
    编译内的一定要适情况而定，<span style="color: #000000;"><span style="color: #ff0000;">依据</span>自己计算机<span style="color: #ff0000;">硬件</span>的<span style="color: #ff0000;">信息</span>和<span style="color: #ff0000;">所需</span>要的<span style="color: #ff0000;">功能</span>而定</span>。</span>仅供参考。</strong></span></p>
<p><strong>    终于搞定了，真是麻烦死了，一定要有耐心哦~ </strong></p>
<p><strong>接下来，就可以存盘退出，然后步骤如下：</p>
<p>1，执行#/usr/sbin/config MYKERNEL        //生成内核原始码</p>
<p>接着会有写提示，很简单的提示~<br />
<img src="http://www.cnitblog.com/images/cnitblog_com/gunc/8.jpg" alt="" width="727" height="323" /></p>
<p>2，#cd ../compile/MYKERNEL               //新内核的原始码目录            <br />
3，#make cleandepend                     //清除依赖吧关系吧~ 我的理解<br />
4，#make depend                          //建立目标文件、源文件、头文件的依赖关系表，如果头文件已更 新，就会重新编译需要该头文件的源文件。如果你没有看懂解释没有关系。如果以后你在Unix下开发程序，自然就会明白。<br />
5，#make                                    //编译<br />
6，#make install                         //安装</p>
<p>    接着，就等着吧。<br />
<span style="color: #ff0000;">注意</span>： <span style="color: #ff0000;">如果出现了错误</span>，千万别着急，多花些时间，简单看下错误提示，<span style="color: #ff0000;">错误多数是后边那些不好确定的行目</span>。修改完后保存，先把上次/usr/src/sys/i386/compile目录下的MYKERNEL删掉，然后再重新编译。</p>
<p>    这几步是我看了些资料和编译时的提示做的，看其他资料上说，还有别的方法，不过，我没有试过，也不知到这两种方法有什么区别，哪个比较好？</p>
<p>    以上，只是我个人的总结，虽然成功了，但是，还有些地方不太明白，比如，有些什么总线啦~ 如何确定串口并口啦~ AT 键盘啦~ 还有就是刚才的两种执行方法有和不同。<br />
</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tisswb.cn/archives/77.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>FreeBSD7.0 优化编译内核</title>
		<link>http://www.tisswb.cn/archives/75.html</link>
		<comments>http://www.tisswb.cn/archives/75.html#comments</comments>
		<pubDate>Tue, 24 Jun 2008 16:40:26 +0000</pubDate>
		<dc:creator>笨二十一</dc:creator>
				<category><![CDATA[Linux/Unix]]></category>
		<category><![CDATA[服务器]]></category>
		<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[内核编译]]></category>

		<guid isPermaLink="false">http://www.tisswb.cn/?p=75</guid>
		<description><![CDATA[第一步：编译内核
我是用的最小化安装，所以没有/usr/src/sys,要编译内核，需要先装上，按装办法
选行sysinstall 选择 [Configure] -&#62; [Distribution] -&#62; [src] -&#62; [sys]及[base]
第一步：
#cd /usr/src/sys/i386/conf
#cp GENGERIC DYITKERNEL
这里的DYITKERNEL是自己起的名子，因为我维护dyit这个域名，所以起了这个名子
上边这样子做有个坏处，就是可能因为硬盘空间不够，删除/usr/src目录,结果把DYITKERNEL也删除了，
所以常用的做法是把DYITKERNEL放到别的地方，然后在i386下建议一个符号链接
# mkdir /root/kernels
<span class="readmore"><a href="http://www.tisswb.cn/archives/75.html" title="FreeBSD7.0 优化编译内核" target="_blank">阅读全文——共1977字</a></span>]]></description>
			<content:encoded><![CDATA[<p>第一步：编译内核</p>
<p>我是用的最小化安装，所以没有/usr/src/sys,要编译内核，需要先装上，按装办法<br />
选行sysinstall 选择 [Configure] -&gt; [Distribution] -&gt; [src] -&gt; [sys]及[base]<br />
第一步：<br />
#cd /usr/src/sys/i386/conf<br />
#cp GENGERIC DYITKERNEL<br />
这里的DYITKERNEL是自己起的名子，因为我维护dyit这个域名，所以起了这个名子<br />
上边这样子做有个坏处，就是可能因为硬盘空间不够，删除/usr/src目录,结果把DYITKERNEL也删除了，<br />
所以常用的做法是把DYITKERNEL放到别的地方，然后在i386下建议一个符号链接<br />
# mkdir /root/kernels<br />
# cp GENERIC /root/kernels/DYITKERNEL  <br />
# ln -s /root/kernels/DYITKERNEL<br />
把GENERIC放以/root/kernels下，然后在当前目录下建立一个符号链接</p>
<p>第二步：编辑内核配置文件<br />
#vi DYITKERNEL或#ee DYITKERNEL<br />
至于保留或注解掉哪些选择，一下根据自己的硬件，二是参见<br />
<a href="http://hi.baidu.com/ken_unc/blog/item/6ef56b22aa878cf6d6cae25c.html">http://hi.baidu.com/ken%5Func/blog/item/6ef56b22aa878cf6d6cae25c.html</a><br />
<a href="http://hi.baidu.com/my219/blog/item/792b9e117e64647ccb80c430.html">http://hi.baidu.com/my219/blog/item/792b9e117e64647ccb80c430.html</a></p>
<p>我这里主要做的是：</p>
<p>#cpu            I486_CPU<br />
#cpu            I586_CPU<br />
cpu             I686_CPU<br />
ident           DYITKERNEL<br />
//核心名称，自己随便起</p>
<p>#options SCHED_4BSD<br />
加上<br />
options SCHED_ULE<br />
其它的参考上边两个文章改了一些</p>
<p>第三步：编译<br />
# cd /usr/src<br />
编译内核<br />
# make buildkernel KERNCONF=DYITKERNEL<br />
编译过程中有时候会出错，复制下错误信息在google找下就解决了，一般就是就是有些device需要另一个device,你删除了<br />
安装新内核<br />
# make installkernel KERNCONF=DYITKERNEL<br />
#reboot<br />
注意: 使用这种方法联编内核时,需要安装完整的 FreeBSD 源代码<br />
那什么是安装完整的 FreeBSD 源代码呢，就是上边我们装的src/base src/sys,如果这两个没都装上，<br />
会编译失败.<br />
内核将会被复制到 /boot/kernel 目录中成为 /boot/kernel/kernel 而旧的则被移到 /boot/kernel.old/kernel。<br />
现在关闭系统， 然后用新的内核启动计算机,如果不能启动，参照<br />
<a href="http://www.freebsd.org/doc/zh_CN.GB2312/books/handbook/kernelconfig-trouble.html">http://www.freebsd.org/doc/zh_CN.GB2312/books/handbook/kernelconfig-trouble.html</a></p>
<p>第二：编译内核是我不会参考这里，只是区别，弄明白一些东西。<br />
如果要从freebsd6.2升级到7.0就要这样子做<br />
找freebsd编译内核的教程时经常会发现,需要make world或make buildworld什么的，这些是做什么的呢？<br />
我们知道，要编译最新的apache等应用软件的时候，先cvsup下ports树，然后编译。<br />
实际上freebsd的核心源代码，就是freebsd本身，也可以通过cvsup来更新的。更新后只是源码更新了。想以这些新源码编译内核<br />
和上边说的第一步就有区别了,就要用的make buildworld这些东西了<br />
freebsd手册中的相关部分:http://www.freebsd.org/doc/zh_CN/books/handbook/makeworld.html</p>
<p>具体的操作步骤：<br />
文章参考<a href="http://blog.chinaunix.net/u/26264/showart_409375.html">http://blog.chinaunix.net/u/26264/showart_409375.html</a><br />
2.1更新/usr/src下的源码<br />
#cd /usr/share/examples/cvsup/<br />
#cvsup -L 2 -h cvsup2.cn.freebsd.org standard-supfile<br />
#make buildworld<br />
2.2<br />
下边就同第一步一样了。<br />
#cd /usr/src<br />
#make buildkernel KERNCONF=DYITKERNEL<br />
#make installkernel KERNCONF=DYITKERNEL<br />
如果你懒的现在自己定义内核用<br />
#cd /usr/src<br />
#make buildkernel<br />
#make installkernel<br />
重新后进入单用户:<br />
进入单用户模式<br />
#mergemaster -p<br />
#make installworld<br />
#mergemaster<br />
#reboot</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tisswb.cn/archives/75.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>vi编辑器命令大全(Unix/Linux)</title>
		<link>http://www.tisswb.cn/archives/73.html</link>
		<comments>http://www.tisswb.cn/archives/73.html#comments</comments>
		<pubDate>Tue, 24 Jun 2008 15:10:57 +0000</pubDate>
		<dc:creator>笨二十一</dc:creator>
				<category><![CDATA[Linux/Unix]]></category>
		<category><![CDATA[服务器]]></category>
		<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[vi]]></category>

		<guid isPermaLink="false">http://www.tisswb.cn/?p=73</guid>
		<description><![CDATA[　　文本编辑器是所有计算机系统中最常用的一种工具。UNIX下的编辑器有ex,sed和vi等，其中，使用最为广泛的是vi，而vi命令繁多，论坛里好像这方面的总结不多，以下稍做总结，以资共享！渴望更正和补充！
进入vi的命令
vi filename :打开或新建文件，并将光标置于第一行首
vi +n filename ：打开文件，并将光标置于第n行首
vi + filename ：打开文件，并将光标置于最后一行首
vi +/pattern filename：打开文件，并将光标置于第一个与pattern匹配的串处
vi -r filename ：在上次正用vi编辑时发生系统崩溃，恢复filename
vi filename&#8230;.filename ：打开多个文件，依次进行编辑
移动光标类命令
h ：光标左移一个字符
<span class="readmore"><a href="http://www.tisswb.cn/archives/73.html" title="vi编辑器命令大全(Unix/Linux)" target="_blank">阅读全文——共5948字</a></span>]]></description>
			<content:encoded><![CDATA[<p>　　文本编辑器是所有计算机系统中最常用的一种工具。UNIX下的编辑器有ex,sed和vi等，其中，使用最为广泛的是vi，而vi命令繁多，论坛里好像这方面的总结不多，以下稍做总结，以资共享！渴望更正和补充！</p>
<p>进入vi的命令<br />
vi filename :打开或新建文件，并将光标置于第一行首<br />
vi +n filename ：打开文件，并将光标置于第n行首<br />
vi + filename ：打开文件，并将光标置于最后一行首<br />
vi +/pattern filename：打开文件，并将光标置于第一个与pattern匹配的串处<br />
vi -r filename ：在上次正用vi编辑时发生系统崩溃，恢复filename<br />
vi filename&#8230;.filename ：打开多个文件，依次进行编辑</p>
<p>移动光标类命令<br />
h ：光标左移一个字符<br />
l ：光标右移一个字符<br />
space：光标右移一个字符<br />
Backspace：光标左移一个字符<br />
k或Ctrl+p：光标上移一行<br />
j或Ctrl+n ：光标下移一行<br />
Enter ：光标下移一行<br />
w或W ：光标右移一个字至字首<br />
b或B ：光标左移一个字至字首<br />
e或E ：光标右移一个字至字尾<br />
) ：光标移至句尾<br />
( ：光标移至句首<br />
}：光标移至段落开头<br />
{：光标移至段落结尾<br />
nG：光标移至第n行首<br />
n+：光标下移n行<br />
n-：光标上移n行<br />
n$：光标移至第n行尾<br />
H ：光标移至屏幕顶行<br />
M ：光标移至屏幕中间行<br />
L ：光标移至屏幕最后行<br />
0：（注意是数字零）光标移至当前行首<br />
$：光标移至当前行尾</p>
<p>屏幕翻滚类命令<br />
Ctrl+u：向文件首翻半屏<br />
Ctrl+d：向文件尾翻半屏<br />
Ctrl+f：向文件尾翻一屏<br />
Ctrl＋b；向文件首翻一屏<br />
nz：将第n行滚至屏幕顶部，不指定n时将当前行滚至屏幕顶部。</p>
<p>插入文本类命令<br />
i ：在光标前<br />
I ：在当前行首<br />
a：光标后<br />
A：在当前行尾<br />
o：在当前行之下新开一行<br />
O：在当前行之上新开一行<br />
r：替换当前字符<br />
R：替换当前字符及其后的字符，直至按ESC键<br />
s：从当前光标位置处开始，以输入的文本替代指定数目的字符<br />
S：删除指定数目的行，并以所输入文本代替之<br />
ncw或nCW：修改指定数目的字<br />
nCC：修改指定数目的行</p>
<p>删除命令<br />
ndw或ndW：删除光标处开始及其后的n-1个字<br />
do：删至行首<br />
d$：删至行尾<br />
ndd：删除当前行及其后n-1行<br />
x或X：删除一个字符，x删除光标后的，而X删除光标前的<br />
Ctrl+u：删除输入方式下所输入的文本</p>
<p>搜索及替换命令<br />
/pattern：从光标开始处向文件尾搜索pattern<br />
?pattern：从光标开始处向文件首搜索pattern<br />
n：在同一方向重复上一次搜索命令<br />
N：在反方向上重复上一次搜索命令<br />
：s/p1/p2/g：将当前行中所有p1均用p2替代<br />
：n1,n2s/p1/p2/g：将第n1至n2行中所有p1均用p2替代<br />
：g/p1/s//p2/g：将文件中所有p1均用p2替换</p>
<p>选项设置<br />
all：列出所有选项设置情况<br />
term：设置终端类型<br />
ignorance：在搜索中忽略大小写<br />
list：显示制表位(Ctrl+I)和行尾标志（$)<br />
number：显示行号<br />
report：显示由面向行的命令修改过的数目<br />
terse：显示简短的警告信息<br />
warn：在转到别的文件时若没保存当前文件则显示NO write信息<br />
nomagic：允许在搜索模式中，使用前面不带“”的特殊字符<br />
nowrapscan：禁止vi在搜索到达文件两端时，又从另一端开始<br />
mesg：允许vi显示其他用户用write写到自己终端上的信息</p>
<p>最后行方式命令<br />
：n1,n2 co n3：将n1行到n2行之间的内容拷贝到第n3行下<br />
：n1,n2 m n3：将n1行到n2行之间的内容移至到第n3行下<br />
：n1,n2 d ：将n1行到n2行之间的内容删除<br />
：w ：保存当前文件<br />
：e filename：打开文件filename进行编辑<br />
：x：保存当前文件并退出<br />
：q：退出vi<br />
：q!：不保存文件并退出vi<br />
：!command：执行shell命令command<br />
：n1,n2 w!command：将文件中n1行至n2行的内容作为command的输入并执行之，若不指定n1，n2，则表示将整个文件内容作为command的输入<br />
：r!command：将命令command的输出结果放到当前行</p>
<p>寄存器操作<br />
&#8220;?nyy：将当前行及其下n行的内容保存到寄存器？中，其中?为一个字母，n为一个数字<br />
&#8220;?nyw：将当前行及其下n个字保存到寄存器？中，其中?为一个字母，n为一个数字<br />
&#8220;?nyl：将当前行及其下n个字符保存到寄存器？中，其中?为一个字母，n为一个数字<br />
&#8220;?p：取出寄存器？中的内容并将其放到光标位置处。这里？可以是一个字母，也可以是一个数字<br />
ndd：将当前行及其下共n行文本删除，并将所删内容放到1号删除寄存器中。</p>
<p>VI的使用<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>一、插入文本<br />
┌──┬────────────┐<br />
│命令│描述　　　　　　　　　　│<br />
├──┼────────────┤<br />
│i 　│在当前字符前插入文本　　│<br />
├──┼────────────┤<br />
│I 　│在行首插入文本 　　　 　│<br />
├──┼────────────┤<br />
│a 　│在当前字符后添加文本　　│<br />
├──┼────────────┤<br />
│A 　│在行末添加文本　　　　　│<br />
├──┼────────────┤<br />
│o 　│在当前行后面插入一空行　│<br />
├──┼────────────┤<br />
│O 　│在当前行前面插入一空行　│<br />
├──┼────────────┤<br />
│R 　│以改写方式输入文本　　　│<br />
└──┴────────────┘<br />
二、移动光标<br />
┌─────┬───────────┐<br />
│命令　　　│描述　　　　　　　　　│<br />
├─────┼───────────┤<br />
│j或下箭头 │向下移动一行　　　　　│<br />
├─────┼───────────┤<br />
│k或上箭头 │向上移动一行　　　　　│<br />
├─────┼───────────┤<br />
│h或左箭头 │左移一个字符　　　　　│<br />
├─────┼───────────┤<br />
│l或右箭头 │右移一个字符　　　　　│<br />
├─────┼───────────┤<br />
│w 　　　　│右移一个词　　　　　　│<br />
├─────┼───────────┤<br />
│W 　　　　│右移一个以空格分隔的词│<br />
├─────┼───────────┤<br />
│b 　　　　│左移一个词　　　　　　│<br />
├─────┼───────────┤<br />
│B 　　　　│左移一个以空格分隔的词│<br />
├─────┼───────────┤<br />
│0 　　　　│移到行首　　　　　　　│<br />
│Ctrl-F　　│向前翻页　　　　　　　│<br />
├─────┼───────────┤<br />
│Ctrl-B　　│向后翻页　　　　　　　│<br />
├─────┼───────────┤<br />
│nG　　　　│到第n行 　　　　　　　│<br />
├─────┼───────────┤<br />
│G 　　　　│到最后一行　　　　　　│<br />
└─────┴───────────┘<br />
三、替换文本<br />
┌─────┬──────┐<br />
│命令　　　│描述　　　　│<br />
├─────┼──────┤<br />
│$ 　　　　│到行尾　　　│<br />
├─────┼──────┤<br />
│( 　　　　│到句子的开头│<br />
├─────┼──────┤<br />
│) 　　　　│到句子的末尾│<br />
├─────┼──────┤<br />
│{　 　　　│到段落的开头│<br />
├─────┼──────┤<br />
│}　　 　　│到段落的末尾│<br />
└─────┴──────┘</p>
<p>四、删除文本<br />
┌───┬───────────┐<br />
│命令　│描述 　　　　　　 　　│<br />
├───┼───────────┤<br />
│r 　　│替换一个字符 　　　　 │<br />
├───┼───────────┤<br />
│c 　　│修改文本直到按下Esc健 │<br />
├───┼───────────┤<br />
│cw　　│修改下一个词 　　　 　│<br />
├───┼───────────┤<br />
│cnw　 │修改接下来的n个词 　　│<br />
└───┴───────────┘<br />
五、文本编辑<br />
┌──┬──────────────────────┐<br />
│命寺│描述　　　　　　　　　　　　　　　　　　　　│<br />
├──┼──────────────────────┤<br />
│yy　│将一行文本移到缺省缓冲区中 　　　　 　　　　│<br />
├──┼──────────────────────┤<br />
│yn　│将下一个词移到缺省缓冲区中 　　 　　　　　　│<br />
├──┼──────────────────────┤<br />
│ynw │将后面的n个词移到缺省缓冲区中　　　　 　　　│<br />
├──┼──────────────────────┤<br />
│p 　│如果缺省缓冲区中包含一行文本，则在当前　　　│<br />
│　　│行后面插入一个空行井将缺省缓冲区中的声　　　│<br />
│　　│容粘贴到这一行中；如果缺省缓冲区中包含　　　│<br />
│　　│多个词，把这些词粘贴到光标的右边．　　　　　│<br />
├──┼──────────────────────┤<br />
│P 　│如果缺省缓冲区中包含一行文本，则正当前 　 　│<br />
│ 　 │行前面插入一个空行井将缺省缓冲区中的内 　 　│<br />
│　　│容粘贴到这一行中；如果缺省缓冲区中包含 　　 │<br />
│ 　 │多个词，把这些词粘贴到光标的左边 　 　</p>
<p> </p>
<p> </p>
<p>　　│<br />
└──┴──────────────────────┘<br />
六、保存退出<br />
┌───────────┬───────────────┐<br />
│命令　　　　　　　　　│描述　　　　　　　　　　　　　│<br />
├───────────┼───────────────┤<br />
│zz　　　　　　　　　　│保存并退出　　　　　　　　　　│<br />
├───────────┼───────────────┤<br />
│:w filename　　　　 　│写入文件　　　　　　　　　 　 │<br />
├───────────┼───────────────┤<br />
│:W　　　　　　　　　　│写入文件　　　　　　　　　　　│<br />
├───────────┼───────────────┤<br />
│:x　　　　　　　　　　│保存(如果当前文件修改过)并退出│<br />
├───────────┼───────────────┤<br />
│:q!　　　　　　　　　 │不保存文件，直接退出　　 　　 │<br />
├───────────┼───────────────┤<br />
│:q　　　　　　　　　　│退出vi　　　　　　　　　　　　│<br />
└───────────┴───────────────┘</p>
<p>VI常用技巧</p>
<p>VI命令可以说是Unix/Linux世界里最常用的编辑文件的命令了，但是因为它的命令集众多，很多人都不习惯使用它，其实您只需要掌握基本命令，然后加以灵活运用，就会发现它的优势，并会逐渐喜欢使用这种方法。本文旨在介绍VI的一些最常用命令和高级应用技巧。</p>
<p>一、基本命令介绍</p>
<p>&#8212;- 1．光标命令</p>
<p>k、j、h、l——上、下、左、右光标移动命令。虽然您可以在Linux中使用键盘右边的4个光标键，但是记住这4个命令还是非常有用的。这4个键正是右手在键盘上放置的基本位置。<br />
nG——跳转命令。n为行数，该命令立即使光标跳到指定行。<br />
Ctrl+G——光标所在位置的行数和列数报告。<br />
w、b——使光标向前或向后跳过一个单词。<br />
&#8212;- 2．编辑命令<br />
i、a、r——在光标的前、后以及所在处插入字符命令(i=insert、a=append、r=replace)。<br />
cw、dw——改变(置换)/删除光标所在处的单词的命令 (c=change、d=delete)。<br />
x、d$、dd——删除一个字符、删除光标所在处到行尾的所有字符以及删除整行的命令。<br />
&#8212;- 3．查找命令<br />
&#8212;- /string、?string——从光标所在处向后或向前查找相应的字符串的命令。<br />
&#8212;- 4．拷贝复制命令<br />
&#8212;- yy、p——拷贝一行到剪贴板或取出剪贴板中内容的命令。</p>
<p>二、常见问题及应用技巧</p>
<p>&#8212;- 1．在一个新文件中读/etc/passwd中的内容，取出用户名部分。<br />
&#8212;- vi file<br />
&#8212;- :r /etc/passwd 在打开的文件file中光标所在处读入/etc/passwd<br />
&#8212;- :%s/:.*//g 删除/etc/passwd中用户名后面的从冒号开始直到行尾的所有部分。<br />
&#8212;- 您也可以在指定的行号后读入文件内容，例如使用命令“:3r /etc/passwd”从新文件的第3行开始读入 /etc/passwd的所有内容。<br />
&#8212;- 我们还可以使用以下方法删掉文件中所有的空行及以#开始的注释行。<br />
&#8212;- #cat squid.conf.default | grep -v ^$ | grep -v ^#</p>
<p>&#8212;- 2．在打开一个文件编辑后才知道登录的用户对该文件没有写的权限，不能存盘，需要将所做修改存入临时文件。<br />
&#8212;- vi file<br />
&#8212;- :w /tmp/1 保存所做的所有修改，也可以将其中的某一部分修改保存到临时文件，例如仅仅把第20～59行之间的内容存盘成文件/tmp/1，我们可以键入如下命令。<br />
&#8212;- vi file<br />
&#8212;- :20,59w /tmp/1</p>
<p>&#8212;- 3．用VI编辑一个文件，但需要删除大段的内容。<br />
&#8212;- 首先利用编辑命令“vi file”打开文件，然后将光标移到需要删除的行处按Ctrl+G显示行号，再到结尾处再按Ctrl+G，显示文件结尾的行号。<br />
&#8212;- :23,1045d 假定2次得到的行号为23和1045，则把这期间的内容全删除，也可以在要删除的开始行和结束行中用ma、mb命令标记，然后利用“:a,bd”命令删除。</p>
<p>&#8212;- 4．在整个文件的各行或某几行的行首或行尾加一些字符串。<br />
&#8212;- vi file<br />
&#8212;- :3,$s/^/some string / 在文件的第一行至最后一行的行首插入“some string”。<br />
&#8212;- :%s/$/some string/g 在整个文件每一行的行尾添加“some string”。<br />
&#8212;- :%s/string1/string2/g 在整个文件中替换“string1”成“string2”。<br />
&#8212;- :3,7s/string1/string2/ 仅替换文件中的第3行到第7行中的“string1”成“string2”。<br />
&#8212;- 注意: 其中s为substitute，%表示所有行，g表示global。</p>
<p>&#8212;- 5．同时编辑2个文件，拷贝一个文件中的文本并粘贴到另一个文件中。<br />
&#8212;- vi file1 file2<br />
&#8212;- yy 在文件1的光标处拷贝所在行<br />
&#8212;- :n 切换到文件2 (n=next)<br />
&#8212;- p 在文件2的光标所在处粘贴所拷贝的行<br />
&#8212;- :n 切换回文件1</p>
<p>&#8212;- 6．替换文件中的路径。<br />
&#8212;- 使用命令“:%s#/usr/bin#/bin#g”可以把文件中所有路径/usr/bin换成/bin。也可以使用命令“:%s//usr/bin//bin/g”实现，其中“”是转义字符，表明其后的“/”字符是具有实际意义的字符，不是分隔符。</p>
<p> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.tisswb.cn/archives/73.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD系统下su:sorry的解决办法</title>
		<link>http://www.tisswb.cn/archives/72.html</link>
		<comments>http://www.tisswb.cn/archives/72.html#comments</comments>
		<pubDate>Tue, 24 Jun 2008 14:59:43 +0000</pubDate>
		<dc:creator>笨二十一</dc:creator>
				<category><![CDATA[Linux/Unix]]></category>
		<category><![CDATA[服务器]]></category>
		<category><![CDATA[FreeBSD]]></category>

		<guid isPermaLink="false">http://www.tisswb.cn/?p=72</guid>
		<description><![CDATA[　　在FreeBSD上要使用su命令成为root用户,不但要知道root的口令,还需要经过特别设置,否则就不能
成功使用这个命令.这是因为FreeBSD对执行su命令的用户进行了更严格的限制,能使用su命令的用户必
须属于wheel组(root的基本属组,组ID为0),否则就不能通过这个命令成为root用户.因此需要编辑组设
置文件/etc/group,将需要超级用户权力的管理成员加入到wheel组中.
　　可以使用如下命令给普通用户su -root的权力:
　　pw groupmod wheel -m
　　pw user mod -g wheel
　　或者直接修改/etc/group文件，把相应的用户加到wheel组就可以.
如：添加前：wheel:*:0:root
　　添加后：wheel:*:0:root,zheng
<span class="readmore"><a href="http://www.tisswb.cn/archives/72.html" title="FreeBSD系统下su:sorry的解决办法" target="_blank">阅读全文——共349字</a></span>]]></description>
			<content:encoded><![CDATA[<p>　　在FreeBSD上要使用su命令成为root用户,不但要知道root的口令,还需要经过特别设置,否则就不能</p>
<p>成功使用这个命令.这是因为FreeBSD对执行su命令的用户进行了更严格的限制,能使用su命令的用户必</p>
<p>须属于wheel组(root的基本属组,组ID为0),否则就不能通过这个命令成为root用户.因此需要编辑组设</p>
<p>置文件/etc/group,将需要超级用户权力的管理成员加入到wheel组中.<br />
　　可以使用如下命令给普通用户su -root的权力:<br />
　　pw groupmod wheel -m<br />
　　pw user mod -g wheel<br />
　　或者直接修改/etc/group文件，把相应的用户加到wheel组就可以.<br />
如：添加前：wheel:*:0:root<br />
　　添加后：wheel:*:0:root,zheng</p>
<p> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.tisswb.cn/archives/72.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
