虚拟机使用笔记三:安装FreeBSD应用软件

安装完毕Freebsd,本来以为就万事大吉了,谁知道第一次安装apache22的时候就出现了问题,先是系统无法启动,提示:

No such file or directory: Failed to enable the ‘httpready’ Accept Filter

从网上查了查据说是apache22的一个bug,按照网上所说的#kldload accf_http并在 /boot/defaults/loader.conf 中加入下面 2 行,以便下次启动自动装载模块
accf_data_load=”YES”
accf_http_load=”YES”问题解决了,但接着虽然没有提示错误,但httpd却还是没有起来,查看了一下日志文件,提示:

httpd: apr_sockaddr_info_get() failed for apache

这个是为每个请求生成唯一的标识以便跟踪,网上有的建议在httpd.conf 里注析掉 unique_id_module,的确有效,但去除警告而禁用掉有效的功能模块的方法不是上策,后来看网上说主要是域名和ip地址设置的问题,但我的没有问题啊。

后来发现原来问题出在hosts文件里面,由于这个虚拟机我是通过拷贝复制的,虽然修改了ip地址,但却忘了修改hosts文件里面的信息,修改完毕,并将httpd.conf里面ServerName修改为本机的ip地址,问题解决,

然后安装php、mysql5(再也不用那该死的4.1版本了),感觉比较麻烦的还是需要手动添加AddType application/x-httpd-php .php,怎么安装php的时候不自动安装呢,估计是httpd配置文件各种系统版本不一样的缘故吧。

好了,一个完整的Freebsd系统算是准备好了,看看体积,略微清理后仍然将近3g,看来以后新建虚拟机的时候空间不能只留4G了。

虚拟机使用笔记二:安装FreeBSD折腾记

虚拟机平台搭建好了,首先安装的是自己最喜欢娥FreeBSD。

安装一切顺利,在此之前用vmware server 2的时候就已经安装过很多次了。安装之后重新编译内核,安装必要的服务之后发现问题来了,那就是安装完毕重新启动的时候感觉“死机”了!

如果直接通过虚拟机关闭Freebsd,重新启动后开机慢的要命,比当初的vmware server还要慢,而且每次都要重新检测硬盘。开始以为是安装的问题,于是重新安装,问题依旧。又以为是vmware不支持Freebsd7版本,于是换成6.3,无效。

整整折腾了一天,到了晚上实在是没有办法了,于是只好重新reboot,准备吃饭之后先安装debian,然后就出去买饭去了。回来发现在虚拟机的客户端上已经显示了Freebsd的待机login了。于是忙再次reboot,在等待了近5分钟之后系统终于开始重新启动。原来已经习惯Freebsd快如闪电的开关机,所以把这个漫长的等待当成死机了。

估计还是vmware对Freebsd支持不好(虚拟机类型里面归入其他),只不过2.0要好一点,所以原先感觉不那么明显的缘故吧。

于是安装编译内核,安装ports(通过网络安装速度也可以接受),一个基本的Freebsd系统就安装完毕了。

vmware server不支持复制虚拟机,免费的嘛。但这也难不倒我等,登陆虚拟机的主机,将Freebsd虚拟机的目录复制了一份,命名为Freebsd1,然后通过虚拟机的客户端软件选择打开虚拟机,找到Freebsd1的目录,打开相应的虚拟机文件,一个新的虚拟机就建成了,改个名字与原先的虚拟机以示区别。

OK,Freebsd系统已经算是大功告成了!

虚拟机使用笔记一:架设虚拟机

原先的时候安装、测试系统一直使用的是自己淘汰下来旧机器,但如果测试局域网的话单位里倒还好说,但回到家里的确就很无能为力了,后来看到网上一篇《搭建一个大型网站架构的实验环境(虚拟机篇)》,真是大开眼界,马上就动了学习实践的念头。

首先组装设备,本来主板从网上淘了一块泰安的am2接口的主板,但却遭受了淘宝以来的第一次挫折,主板拿来就是坏的,无奈只能退货。沮丧之余还是到科技市场买了一块微星的780V,价格不贵只是可惜只有两个内存插槽,扩展性差了一点,又衬着内存当时价格够低,买了两条2g的金士顿内存。开始的时候硬盘使用的是自己原先的ide80G硬盘。

操作系统使用的是ubuntu 8.10,虚拟机软件是用的vmware server2.0.当时参照的网上一篇文章,当时安装非常顺利。但通过客户端维护系统和最初使用1.x版本的情况不一样,是通过web管理。速度慢不说,而且非常不稳定。而虚拟机中的系统运行的时候在初始阶段也是非常慢,和死机差不多。换成1.x版本,安装的时候问题不少,但运行起来要比2.0稳定和快捷不少。(最近从网上看到之所以出现这种情况是因为vmware在开发2.0的时候在支持amd k8cpu的方面出现问题所以索性去除了这部分功能,不知是真是假)

恰巧今年冬天家里没有集中供暖,只能靠烧电暖气取暖,用电调度真是小心翼翼,唯恐哪一路电超负荷跳闸,所以虚拟机就暂且搁下了。

终于渡过了这个超长的冬天。于是又开始未完成的工作。同时也新添了一些新的装备准备好好学习一场,硬盘换成500G的,机箱也换成一个新的,这样虚拟机主机也可以同时作为家里的视频、照片的服务器。

这次安装的是vmware server1.09,1.x的安装问题不少,但参照2.0的安装,首先安装编译环境:

1、sudo apt-get install linux-headers-`uname -r` libx11-6 libx11-dev x-window-system-core x-window-system xspecs libxtst6 psmisc build-essential,linux-headers-`uname -r`这个避免出现新内核识别问题。

2、sudo apt-get install ia32-libs这个是避免后面输入授权码的时候不能识别

3、sudo apt-get install xinetd 这个是1.x里面必须的

4、下载vmware server最新版,后开始安装,开始肯定会失败的,因为对linux的新内核不能识别,要打一个vmware-update-2.6.27-5.5.7-2.tar.gz 补丁,所以先正常安装到Do you want this program to try to build the vmmon module for your system?到这里要输入 “no”退出安装,再安装补丁程序,到了这一步再选择yes就可以了。

5、这次安装的时候出现了新问题:

Unable to get the last modification timestamp of the destination file
/etc/vmware/ssl/rui.key.

这在之前是从来没有遇到的,估计是原先安装的时候ssl已经解决了这个问题,安装网上的介绍

sudo touch /etc/vmware/ssl/rui.key
sudo touch /etc/vmware/ssl/rui.crt

如此下来就可以顺利完成安装了。

安装完毕后,使用VMware Server Console连接虚拟机,新建了一个freebsd7.1的虚拟机,一起顺利,算是一个比较完美的一个开始了。

Turbo Delphi+Firebird内嵌服务器版的发放

使用免费的Turbo Delphi开发程序虽然不能使用第三方控件,但是连接Firebird数据库可以使用Dbexpress中的ib控件连接,这样也足够了。

在默认的情况下编写程序完毕需要发放到其他机器上的时候需要下载Firebird的内嵌服务器,解压之后得到一个文件包,先把里面的doc文件夹删除(里面是一些鸡肋文档),然后将fbembed.dll文件改名为gds32.dll,如果在程序中已经修改过,那么这一步也可以省略。这样Firebird内嵌服务器就设置好了。但如果程序要正常运转,还需要拷贝dbexpress的驱动程序dbxint30.dll到该目录下。

这样一个Firebird内嵌服务器的环境就设置好了,10M的体积在现在的硬盘状况下真是微不足道了。

delphi中数组的上下标的应用

delphi中数组应用起来很灵活,自定义的数组下标也可以自己根据需要定义,不一定从0开始。

有的时候数组中的数据获取后的数量是不一定的,比如题库的多项选择的答案等,这时候可以使用low(数组名)获取下标值,而用high(数组名)得到上标值,这样就可以明确数组中有效数据。

MSS使用手记七:升级Mldonkey至2.96版本

使用Mldonkey已经20多天了,速度很是稳定,但唯一遗憾的就是不能下载超过4G的视频文件,所以按照http://blog.orz101.net/node/342的说明下载了mldonkey 2.9.6 for MIPSEL (Static Version) with UTF-8 单独执行文件进行升级。

运行了几次才发现这个其实就是一个类似windows下的绿色文件,使用root登陆执行解压后的文件mlnet.byte.static,第一次的时候会在执行的目录下生成相应的文件夹,之后只要执行mlnet.byte.static &就可以启动mldonkey了。

升级或者说是重新安装之后,还需要修改相应的配置文件,而sancho也要进行重新配置。配置之后已经能够解决文件大小的限制了。

dede升级到5.31版本

升级到dede5.1版本后,用起来感觉问题少了,但操作感觉有些繁琐,恰好到dede支持论坛看到最新的版本5.31已经出了正式版,据说内核进行了全面升级,所以便下载了升级版本进行升级。

按照升级说明,原网站除了原先的附件所在目录和html文件所在目录,其他目录都可以删除,看来改进的确很大。上传了升级文件,进行升级,但很奇怪到了最后一步,出现了空白页面无法完成。直接输入管理页面的网址,同样也是空白页面。

开始以为是数据库的问题,于是进入服务器,将备份的数据库恢复,重新升级,问题依旧。

没有办法,只好使用原先的老办法,重新安装一遍5.31版本的dede,然后修改数据库,但这次发现dede的数据库信息已经改变了配置文件,所以只好再次修改数据库,将新安装的数据库改名后,将原先升级后的数据库改为新安装系统的数据库名称,然后重新启动系统,网站可以正常使用,从此来看,这个问题并非论坛中所说的数据库问题,应该是升级程序的问题。

使用起来,感觉5.31版本的确改进很大,内核且不说,就是界面来看颇有当初dede 3.1lit的风采,少了5.0的华而不实的繁琐,发表一篇文章还有切换页面。的确不错,这方面已经更是远远超过了帝国。

但使用过程中发现了一个问题,那就是时区问题,时间晚了8小时,原先我设置里面是空的,但如果在设置中选择+8,那么时间就提前了8小时,改成+0后问题就解决了。

感觉不错,于是开始升级自己的第二个网站,本来以为这个原版的5.1版本网站不会有问题,但结果和第一个一样:白屏。

而这次我偏偏没有备份数据库,没有办法使用原先的办法,于是按照论坛上说的方法,修改了include/commin.inc.php,将第二行的注释去掉,这样就会显示安装的错误,果然不再是白屏,而是提示data目录下的config.cache.inc.php文件中的第47行中的数值为空,而这个数值是$cfg_cli_time = 正是市区的设置,设为+0后升级成功。

这个应该是5.0的遗留问题的,当初5.0的时区问题当时就不好解决,我当时是修改了系统的php.ini配置解决的,而现在反而成为升级的一个障碍。

MSS使用手记六:安装使用mldonkey

因为最近开始使用虚拟机,很久没有使用MSS了,但年前为了储备过年期间的电影节目,开始通过电驴下载高清影片,看起来效果的确不错,但就是下载起来的确费时间,于是又想起了MSS。

开始的时候是参考网上介绍的关于通过MSS自带系统来安装电驴软件mldonkey的,但我安装了几次但总是不能成功,于是直接通过MSS中的debian系统安装。安装参考的是http://hi.baidu.com/renws/blog/item/755a5f956458620c7bf480e0.html中的介绍,安装的版本为mldonkey2.81版本,安装完毕之后可以启动,但是如果重新启动linux系统,则mldonkey无法自动启动,需要手动启动,不知何故。

安装完毕,又安装了为win32版本的sancho来进行管理,不知道这个sancho如何得罪了政府,官方网页无法访问,通过第三方才下载成功,但安装之后却又无法启动,原来网上有介绍说是与xp的sp3有冲突,只好使用windows2000的兼容模式来启动,可以成功进入,但退出的时候总是提示出错,而且mss中的mldonkey server也会随之出现一些问题,后来发现,只要将sancho设置中的“退出sancho时停止core”不选择就可以了。

开始下载一些影片还算正常,但只要文件一超过4G则没有反应,从网上看是版本的问题,但通过apt安装的话2.81已经是最新版本(和postgresql一样),据说新版本中文支持一般,只好暂且作罢,过几天再安装新的版本实验。

运行2天来看,倒也稳定,但速度一般,总量下载速度稳定在30-70k之间,但也不会太快,好处是可以24小时下载了。

Mysql的新管理软件

自从MyDB studio开始收费后,我一直在使用ems的mysql管理软件的lite免费版本,由于mysql本身的简易性,对管理软件要求比firebird要低不少所以一直用着,但最近使用2007版本的时候麻烦来了,那就是mysql最为麻烦的一个方面–字符集。

通过ems新建数据库后,即便已经设置好gbk字符集,但在他的管理界面下输入中文,无论是ems中还是mysql客户端下都显示为两个?。需要在连接数据库注册的时候进行一番设定才能正确显示汉字。

恰好在网上发现了一款免费的SQLyog管理软件,他有两个版本,企业版和社区版,社区版是免费的,虽然没有ems那么易用,但在字符集方面设置很简单,而且sql使用起来感觉和FlameRobin比较相似,但没有FlameRobin那么人性化,比较起来还是不错的。

FireBird的几个管理软件

通过近期对firebird的使用,真是越来越喜欢它了。虽然几次在linux安装不成功,但在windows单机下,firebird作为一个高速低耗的数据库还是很称职的。

firebird的字符管理功能较差,就我来言还不如mysql,所以一般管理都是通过管理软件来管理,网上最受欢迎的是IBexpert,使用起来的确简单明了功能强大,但毕竟是破解版,和开源firebird搭配有些不爽。

免费的管理软件可以使用ems的SQL Manager Lite for InterBase & Firebird,lite版本的有安装版和单文件版本,使用起来虽然没有ibexpert简易,但的确也够用了,但是最新的2008版本有个问题,那就是对中文支持不好,如果连接的数据库中包含中文字符,超过一定长度则会出现i/o错误,估计很多网上流传的firebird对中文路径支持不好和使用管理软件有关。但如果换成2005版本,则对firebird2.1版本支持不好。

ems SQL Manager Lite 版本还有一个缺陷就是没有数据库的备份、恢复功能。虽然菜单里面有,但使用起来没有反应,估计是免费版本的缘故。

后来在网上看到有介绍FlameRobin管理软件,下载使用,发现界面非常简单,甚至可以称得上简陋了,没有上面两个的建库、数据修改的直观的所见即所得的界面,都需要使用sql语句来实现,但这却是他的特色或者最大的优点,因为他的sql管理器是非常方便和人性化,可以在里面测试sql语句,快速修改数据库,不需要再使用ssh文字界面来管理,效率非常高。

如果结合起来使用,那么建库、直接修改表中数据可以使用ems的lite版本,直观简单,日常维护、查询则可以使用FlameRobin效率高。