<?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>Easy &#187; freebsd</title>
	<atom:link href="http://www.mpnew.com/wordpress/archives/category/freebsd/feed" rel="self" type="application/rss+xml" />
	<link>http://www.mpnew.com/wordpress</link>
	<description></description>
	<lastBuildDate>Mon, 12 Jul 2010 13:10:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>openwrt 修改/tmp分区大小</title>
		<link>http://www.mpnew.com/wordpress/archives/2010/197.html</link>
		<comments>http://www.mpnew.com/wordpress/archives/2010/197.html#comments</comments>
		<pubDate>Mon, 12 Jul 2010 13:10:39 +0000</pubDate>
		<dc:creator>easy</dc:creator>
				<category><![CDATA[freebsd]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[pfsense]]></category>

		<guid isPermaLink="false">http://www.mpnew.com/wordpress/?p=197</guid>
		<description><![CDATA[openwrt默认分配1/2 RAM给/tmp分区，可以通过修改：/lib/preinit/xx_essential_fs 文件(其只XX为启动优先级，默认为10，有可能会变)，在这个文件内找到pi_size=$(awk &#8216;/MemTotal:/ {l=5242880;mt=($2*1024);print((s=mt/2)&#60;l)&#38;&#38;(mt&#62;l)?mt-l:s}&#8217; /proc/meminfo)，直接改成：pi_size=xxxxxx 即可(单位为字节)。

$(awk &#8216;/MemTotal:/ {l=5242880;mt=($2*1024);print((s=mt/2)&#60;l)&#38;&#38;(mt&#62;l)?mt-l:s}&#8217; /proc/meminfo)
]]></description>
			<content:encoded><![CDATA[<p>openwrt默认分配1/2 RAM给/tmp分区，可以通过修改：/lib/preinit/<strong>xx</strong>_essential_fs 文件(其只XX为启动优先级，默认为10，有可能会变)，在这个文件内找到pi_size=$(awk &#8216;/MemTotal:/ {l=5242880;mt=($2*1024);print((s=mt/2)&lt;l)&amp;&amp;(mt&gt;l)?mt-l:s}&#8217; /proc/meminfo)，直接改成：pi_size=xxxxxx 即可(单位为字节)。</p>
<div></div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">$(awk &#8216;/MemTotal:/ {l=5242880;mt=($2*1024);print((s=mt/2)&lt;l)&amp;&amp;(mt&gt;l)?mt-l:s}&#8217; /proc/meminfo)</div>
]]></content:encoded>
			<wfw:commentRss>http://www.mpnew.com/wordpress/archives/2010/197.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreeBSD 下运行PHP 高负载下临时文件的加速</title>
		<link>http://www.mpnew.com/wordpress/archives/2009/119.html</link>
		<comments>http://www.mpnew.com/wordpress/archives/2009/119.html#comments</comments>
		<pubDate>Tue, 03 Nov 2009 07:39:24 +0000</pubDate>
		<dc:creator>easy</dc:creator>
				<category><![CDATA[freebsd]]></category>
		<category><![CDATA[nginx]]></category>

		<guid isPermaLink="false">http://www.mpnew.com/wordpress/?p=119</guid>
		<description><![CDATA[        最近有一台服务器经常发生500错误，紧急将部分服务转移走后对服务器进行了一段时间的观察，发现服务器对硬盘的IO操作非常频繁，这台服务器也是虚拟机结构，同一个物理服务器下有多台FreeBSD的WEB在运行，本身IO就非常慢，如果IO再如此频繁的话势必造成整台服务器性能低下。]]></description>
			<content:encoded><![CDATA[<p>最近有一台服务器经常发生500错误，紧急将部分服务转移走后对服务器进行了一段时间的观察，发现服务器对硬盘的IO操作非常频繁，这台服务器也是虚拟机结构，同一个物理服务器下有多台FreeBSD的WEB在运行，本身IO就非常慢，如果IO再如此频繁的话势必造成整台服务器性能低下。</p>
<p>通过分析确认要的IO存取都是由PHP的Session文件造成的，而FreeBSD的/var/tmp并非RAM盘，因此性能低下。最终把/var/tmp改成RAM盘后性能明显提升，操作如下，这里开启了一个256M的RAM盘。(以下代码可以直接放至/etc/rc.local中)。另外听同事说CentOS的/var目录本身就是RAM盘，所以使用CentOS不需要这样做，看来freeBSD真的太保守了。</p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 22px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">/sbin/mdconfig -a -t swap -s 256M -u 1</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 22px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">/sbin/newfs -U -i 512 -b 4096 md1</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 22px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">/sbin/mount /dev/md1 /mnt/md1</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 22px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">/bin/mkdir /mnt/md1/tmp</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 22px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">#/bin/ln -s -f /mnt/md1/tmp /var/tmp</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 22px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">/bin/mkdir /mnt/md1/fastcgi_temp</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 22px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">#/bin/ln -s -f /mnt/md1/fastcgi_temp /usr/local/nginx/fastcgi_temp</div>
<p>/sbin/mdconfig -a -t swap -s 256M -u 1</p>
<p>/sbin/newfs -U -i 512 -b 4096 md1</p>
<p>/sbin/mount /dev/md1 /mnt/md1</p>
<p>/bin/mkdir /mnt/md1/tmp</p>
<p>#/bin/ln -s -f /mnt/md1/tmp /var/tmp  (只需要执行一次)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mpnew.com/wordpress/archives/2009/119.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Freebsd 自带VI在远程编辑时方向键乱码问题</title>
		<link>http://www.mpnew.com/wordpress/archives/2009/107.html</link>
		<comments>http://www.mpnew.com/wordpress/archives/2009/107.html#comments</comments>
		<pubDate>Thu, 30 Apr 2009 07:57:03 +0000</pubDate>
		<dc:creator>easy</dc:creator>
				<category><![CDATA[freebsd]]></category>

		<guid isPermaLink="false">http://www.mpnew.com/wordpress/?p=107</guid>
		<description><![CDATA[虽然Freebsd带了一个ee编辑器，但是使用不是很习惯，经常还是会输入vi来编辑，但是当使用putty登录进入插入状态时方一按方向键就会插入ABCD这样的乱码。]]></description>
			<content:encoded><![CDATA[<p>虽然Freebsd带了一个ee编辑器，但是使用不是很习惯，经常还是会输入vi来编辑，但是当使用putty登录进入插入状态时方一按方向键就会插入ABCD这样的乱码。解决办法如下：<br />
1、编辑~/.vimrc文件<br />
vi ~/.vimrc<br />
2、增加一行：<br />
set nocompatible</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mpnew.com/wordpress/archives/2009/107.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>pfSense 灾难恢复</title>
		<link>http://www.mpnew.com/wordpress/archives/2008/94.html</link>
		<comments>http://www.mpnew.com/wordpress/archives/2008/94.html#comments</comments>
		<pubDate>Mon, 04 Aug 2008 04:20:57 +0000</pubDate>
		<dc:creator>easy</dc:creator>
				<category><![CDATA[freebsd]]></category>
		<category><![CDATA[pfsense]]></category>

		<guid isPermaLink="false">http://www.mpnew.com/wordpress/?p=94</guid>
		<description><![CDATA[pfSense故障后，如果恢复到缺省设置的话，外网无法通过Web访问，如果将pfSense使用在企业内部的话是没问题的，但如果pfSense位于远程或IDC的话，就会造成一但重设后，管理员就会被自己的防火墙拒之门外，因此只能通过FreeBSD命令来配置WANIP及相关规则来打开管理员大门。]]></description>
			<content:encoded><![CDATA[<p>不知道是我安装的这个版本问题，还是pfSense 1.2版的Traffic Shaper确实没有做好。在进行Traffic Shaper设置的时候不只一次的报告配置文件错误，严重的是在配置文件已经被Traffic Shaper程序破坏的情况下修改NAT或防火墙规则时就会造成规则失效。如果这台防火墙位于IDC，而远程控制的规则失效，问题是非常可怕的。</p>
<p>最近我管理的一台pfSense就遇到这种情况，因为我对Traffic Shaper不太熟悉，委托香港同事帮忙设置，结果Traffic Shaper抽风，造成很多NAT规则与虚拟IP都无效了。头痛的是恢复到上一次的配置也无法解决，而且重启pfSense后竟然Web及SSH都无法连接。解决办法如下：</p>
<p>1、使用远程KVM访问控制台，将pfSense恢复到默认设置</p>
<p>2、重启后Lan被恢复到192.168.0.1，因此首先设置Lan的IP，另外Wlan的IP被设置为DHCP，这时先不要管它，从控制台进入Shell后手动修改IP：<br />
1) ipconfig em1 WANIP netmask 255.255.255.x    ( WLANIP是IDC分配的IP地址。)<br />
2) route add default GETWAYIP   (GETWAYIP 是IDC的网关地址)<br />
3) 在/etc/resolv.conf 增加DNS服务器：nameserver x.x.x.x<br />
3、将之前备份的配置文件放在一台可以访问的服务器上，名为config.xml，如果之前没有备份配置文件的话，可以先在Vmware里建立一个pfSense，主要配置一下WLAN的IP,并建立一条允许访问WLAN的WebGUIPort的规则。然后将配置文件导出即可。需要注意的是如果Vmware里的网卡型号与真机上的不一样，需要修改一下config.xml内 interfaces-&gt;lan-&gt;if里的网卡名称。<br />
4、在pfSense主机上将配置文件下载下来：<br />
1)fetch -o /conf/config.xml  http://url/config.xml<br />
2)fetch -o /cf/conf/config.xml  http://url/config.xml<br />
5、重启防火墙，使用Web登录调整即可。</p>
<p>总结：pfSense故障后，如果恢复到缺省设置的话，外网无法通过Web访问，如果将pfSense使用在企业内部的话是没问题的，但如果pfSense位于远程或IDC的话，就会造成一但重设后，管理员就会被自己的防火墙拒之门外，因此只能通过FreeBSD命令来配置WANIP及相关规则来打开管理员大门。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mpnew.com/wordpress/archives/2008/94.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>编译VMware下最快的FreeBSD</title>
		<link>http://www.mpnew.com/wordpress/archives/2008/78.html</link>
		<comments>http://www.mpnew.com/wordpress/archives/2008/78.html#comments</comments>
		<pubDate>Fri, 11 Jul 2008 08:49:18 +0000</pubDate>
		<dc:creator>easy</dc:creator>
				<category><![CDATA[freebsd]]></category>

		<guid isPermaLink="false">http://www.mpnew.com/wordpress/?p=78</guid>
		<description><![CDATA[服务器的性能越来越强大，硬件成本也越来越低，相对的空间、电力、环境的成本则越来越高，因此服务器虚拟化越来越多的得到的企业的重视，它不仅可以降低企业投资成本，而且虚拟化的服务器环境也让硬件升级、服务器迁移等变得更加简单而快速。

对于FreeBSD或Linux这类开源操作系统，在虚拟机下重新编译内核是非常有必要的。通过编译并简单调整的FreeBSD系统在Vmware下不仅可以使启动速度提高1到2倍，内核的内存占用也可以大幅降低。]]></description>
			<content:encoded><![CDATA[<p><em><strong>原创内容，如需转载，请联系作者：easy@mpnew.com</strong></em><br />
服务器的性能越来越强大，硬件成本也越来越低，相对的空间、电力、环境的成本则越来越高，因此服务器虚拟化越来越多的得到的企业的重视，它不仅可以降低企业投资成本，而且虚拟化的服务器环境也让硬件升级、服务器迁移等变得更加简单而快速。</p>
<p>在初次使用的时候，您肯定会担心虚拟化本身也会浪费硬件资源，当然，这是肯定的，我没有很准确的数据，但据说在Vmware下每一个Vmware会损失1%~5%的性能，但这并不会阻止人们去使用虚拟化，因为CPU已经不是很严重的问题，不信你现在查看一下你所管理的所有服务器，能找到几台CPU占用超过50%的呢？</p>
<p>当然，我们对这种性能的损失也不能视而不见，特别是对于FreeBSD或Linux这类开源操作系统，在虚拟机下重新编译内核是非常有必要的。通过编译并简单调整的FreeBSD系统在Vmware下不仅可以使启动速度提高1到2倍，内核的内存占用也可以大幅降低。</p>
<p>FreeBSD的编译其实相当相当简单，你可以首先参考这里：http://www.freebsd.org/doc/zh_CN/books/handbook/kernelconfig-building.html，我最初也是根据这里的介绍完成第一次的编译工作。</p>
<p>一、准备：</p>
<p>１：运行 sysinstall， 选择 Configure， 然后是 Distributions、src， 选中其中的base 和sys。<br />
２：下载：<a href="/download/freebsd/FB4VM_by_easy">FB4VM_by_easy</a> ，将其保存至：/usr/src/sys/i386/conf<br />
3：进入/usr/src目录，然后执行：<br />
make buildkernel KERNCONF=FB4VM_by_easy<br />
make installkernel KERNCONF=FB4VM_by_easy<br />
４：编辑/boot/loader.conf　，在里面加上：kern.hz=100<br />
5：执行完成后就可以重启计算机，这个时候系统应当能够正常启动，并且启动速度也较之前快很多。<br />
6：清理无用文件,在确定系统无问题后就可以删除以下文件：<br />
/usr/src 下所有文件<br />
/usr/obj 下所有文件<br />
/boot/kernel.old 下所有文件。</p>
<p>通过以上简单几步就可以让Vmware下的FreeBSD变得非常节省资源，如果你还有其它运行在Vmware下的同版本的FreeBSD主机的话，并不需要每一台都重新编译，只需要将刚才这台主机上 /boot/kernel　目录下所有文件打包，替换掉其它主机上的对应文件即可。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mpnew.com/wordpress/archives/2008/78.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在FreeBSD上安装Nginx+PHP</title>
		<link>http://www.mpnew.com/wordpress/archives/2008/74.html</link>
		<comments>http://www.mpnew.com/wordpress/archives/2008/74.html#comments</comments>
		<pubDate>Fri, 11 Jul 2008 07:52:03 +0000</pubDate>
		<dc:creator>easy</dc:creator>
				<category><![CDATA[freebsd]]></category>
		<category><![CDATA[nginx]]></category>

		<guid isPermaLink="false">http://www.mpnew.com/wordpress/?p=74</guid>
		<description><![CDATA[由PfSense防火墙开始接触FreeBSD，感觉FreeBSD不仅功能强大，而且非常易用。特别是因为公司的需要，现在的业务都运行在虚拟机上，FreeBSD的轻巧也让我感到更加适合运用在Web环境中，特别是自己重新编译内核后整个系统启动超快，安装后不到200M的硬盘占用，内存占用也不到30M左右。

以下是以FreeBSD 7.0 环境为例：
注：建议安装FreeBSD是使用最小化安装，有时间我会介绍一下在Vmware环境下的最小化编译。

]]></description>
			<content:encoded><![CDATA[<p><em><strong>原创内容，如需转载，请联系作者：easy@mpnew.com</strong></em><br />
由PfSense防火墙开始接触FreeBSD，感觉FreeBSD不仅功能强大，而且非常易用。特别是因为公司的需要，现在的业务都运行在虚拟机上，FreeBSD的轻巧也让我感到更加适合运用在Web环境中，特别是自己重新编译内核后整个系统启动超快，安装后不到200M的硬盘占用，内存占用也不到30M左右。</p>
<p>以下是以FreeBSD 7.0 环境为例：<br />
注：建议安装FreeBSD是使用最小化安装，有时间我会介绍一下在Vmware环境下的最小化编译。<br />
一、安装nginx<br />
1：首先使用Sysinstall 安装PCRE Library<br />
2：configure   &amp;&amp;make &amp;&amp;make install<br />
Nginx安装依赖PCRE，其它都非常简单，最初我安装的时候都是自己编译相关依赖的库，最后发现FreeBSD安装盘带的版本也不低，而且相关库对性能也没什么影响，使用安装盘安装可以省下不少时间。另外在configure还有很多参数，但即使你不带任何参数，编译出一个稳定的nginx是没问题的。如果你需要SSL记得 ./configure &#8211;with-http_ssl_module。<br />
Nginx相关可参考：www.nginx.net</p>
<p>二、安装PHP<br />
1、使用Sysinstall安装以下组件：<br />
1):curl<br />
2):libiconv<br />
3):png/jpeg  (如果需要GD库支持png或jpeg的话)<br />
4):libxml2<br />
5):autoconf (如果不需要安装任何扩展可以不安装)<br />
6:perl (如果不需要安装任何扩展可以不安装/安装autoconf时自动安装)<br />
7:mysql-client (如果不需要mysql 扩展可以不安装)<br />
2、下载libmcrypt编译安装，我现在用的是libmcrypt-2.5.8 这个版本。<br />
3、配置PHP、编译、安装，推荐的配置：<br />
./configure &#8211;enable-force-cgi-redirect &#8211;with-mcrypt &#8211;enable-inline-optimization &#8211;with-curl &#8211;enable-fastcgi &#8211;with-zlib  &#8211;with-gd</p>
<p>4、安装需要的扩展：<br />
1)Mysql:如果需要Mysql扩展的话进入源码目录的ext/mysql，首先要执行：/usr/local/bin/phpize ，执行完成后就可以按通常的方法 ：./configure &amp;&amp; make &amp;&amp; make install</p>
<p>2)GD:如果需要GD库，同样的进入ext/gd，执行：/usr/local/bin/phpize，然后：./configure &amp;&amp; make &amp;&amp; make install<br />
3)安装Xcache加速扩展，Xcache可以从：http://xcache.lighttpd.net/ 下载。下载解压，安装方法与上面的扩展一样。</p>
<p>5、FastCGI启动代理：由于Nginx不能直接支持PHP，因此你需要自己管理FastCGI，一般常用的有两种办法管理，一种是使用Lighttpd里的spawn-fcgi，还有一种是使用PHP的fpm补丁，理论上使用fpm补丁后功能更加强大一些，不过我使用spawn-fcgi比较习惯。spawn-fcgi可以自己下载lighttpd编译后提取，不过你可以以直接下载我编译好的文件。</p>
<p>三、配置及脚本<br />
现在Nginx与PHP都已经安装好了，但要想正常使用还需要做一些配置才行。</p>
<p>Nginx的启动文件在：/usr/local/nginx/sbin下，配置文件一般建议放在/usr/local/nginx/conf下，自己通过命令管理nginx是比较麻烦的事，在这里我已经准备了一些脚本，你可以拿过去直接使用：<br />
1、下载：<a href="/download/nginx/nginx.conf">nginx.conf</a>到/usr/local/nginx/conf 下面。<br />
2、下载：<a href="/download/nginx/fcgi.conf">fcgi.conf</a>到/usr/local/nginx/conf下面。<br />
3、下载：<a href="/download/nginx/php.ini">php.ini</a>到/usr/local/nginx/conf下面。<br />
4、下载：<a href="/download/nginx/spawn-fcgi">spawn-fcgi</a>到/usr/local/nginx/sbin下面。<br />
5、下载：<a href="/download/nginx/fcgi.sh">fcgi.sh</a>到/usr/local/nginx/sbin下面。<br />
6、下载：<a href="/download/nginx/nginx.sh">nginx.sh</a>到/usr/local/nginx/sbin下面。</p>
<p>好了，记得把spawn-fcgi、fcgi.sh、nginx.sh的权限改为651，这个时候你可以执行：<br />
1、/usr/local/nginx/sbin/fcgi.sh start<br />
2、/usr/local/nginx/sbin/nginx.sh start<br />
执行完成后就可以使用http://server 来访问服务器了，网站存放在：/usr/local/www目录下，可以先放一个phpinfo页面查看效果，另外很多细节的配置分别是nginx.conf、fcgi.sh、nginx.sh几个文件里，建议在服务器能够正常运行后再做调整。<br />
目前了解nginx最好的网站就是：www.nginx.net ，如果有不了解的地方可以直接访问：http://wiki.codemongers.com/Main 。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mpnew.com/wordpress/archives/2008/74.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
