新一轮折腾记之二:安装Ubuntu+VirtualBox

机器安装完毕,算是搭好戏台,下一步该系统登场了。

此次重新折腾的目的就是为了搭建虚拟机,此前在单位的HP淘汰机器上已经测试成功过Vmware的Esxi5.5和XenServer6.1,都算初步运转正常,而VirtualBox只是在windows机器上安装运转,而在Linux系统下几次都没有成功,所以就先从VirtualBox下手。

首先安装Ubuntu14.04,机器没有光驱,先用Universal-USB-Installer将下载的iso镜像文件安装到U盘上,再用U盘安装系统,非常顺利,系统安装完毕后更新了apt的源,此次使用的是搜狐的源,并按照网上的在源文件的最后添加了最新的VirtualBox的官方源:

deb http://download.virtualbox.org/virtualbox/debian trusty contrib

然后获取 public key

wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add –

但之后犯了一个低级错误,更新之后忘了apt-get update,这就导致了后面安装的VirtualBox并非官方的最新版本,而且不提供我此次重点要学习的VBoxHeadless。浪费一些时间后,索性重新安装系统,apt-get update之后,因为是最新的系统,不需要再安装linux-headers,只是

apt-get install virtualbox-4.3 dkms

安装VirtualBox和dkms保证VirtualBox系统的正常运转。

然后安装VirtualBox的扩展包,查看VirtualBox的版本后,下载并安装相应的扩展包

cd /tmp
wget http://download.virtualbox.org/virtualbox/4.3.14/Oracle_VM_VirtualBox_Extension_Pack-4.3.14–95030.vbox-extpack
sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.3.14–95030.vbox-extpack

一切顺利,VirtualBox极其扩展包安装完成后,就可以进行下一步设置通过phpvirtualbox来进行Headless管理了。

首先新建一个进行管理的用户,因为VirtualBox在安装的时候新建了用户及组vboxuser,新建用户也要加入这个组,才能管理VirtualBox并使用usb设备,

useradd -m vbox -G vboxusers

使用-G表示用户除了自己组之外还加入vboxuser,但我按照此设置之后后续安装中无论是phpvirtualbox还是ftp总有一些麻烦,所以后来索性先用useradd添加用户,然后再用usermod把用户添加到vboxuser里面,这样一切才正常。

新建文件vi /etc/default/virtualbox,将VBOXWEB_USER=vbox添加到文件中,告诉系统,vbox用户来运转vboxwebsrv,同时update-rc.d vboxweb-service defaults,让系统开机自动运行vboxweb服务。

安装完VirtualBox,该搭建web平台,现在已经无视Apache了,直接安装Nginx、php-fpm,设置一番后,进入Nginx的html文件目录,下载最新的phpvirtualbox

wget http://downloads.sourceforge.net/project/phpvirtualbox/phpvirtualbox-4.3-1.zip
unzip phpvirtualbox-4.3-1.zip
mv phpvirtualbox-4.3-1 phpvirtualbox

进入phpvirtualbox目录,将配置文件更名

cp config.php-example config.php

然后修改文件中的用户名和密码

[…]
/* Username / Password for system user that runs VirtualBox */
var $username = ‘vbox’;
var $password = ‘secret’;
[…]

这个用户是上面设置的运行vboxweb的,而不是管理phpvirtualbox的用户,管理phpvirtualbox默认用户名和密码是admin,结果为了这个简单的问题,害得我半天进不去,而系统提示也是五花八门,而网上解释几乎清一色让安装一个windows系统的清理软件,那破软件还赶不上360之流的,还厚着脸皮要注册才能完全使用,真是天下水军一般黑啊。

使用默认用户名登录后,漂亮简洁的用户管理界面出现在眼前,对VirtualBox的好感顿时增添几分。

无标题

新一轮折腾记之一:组装自己的“服务器”

原先的“服务器”用的是d2500的主板,2G内存,160G的淘汰硬盘,运转网站、pt、samba足够了,但要是运转虚拟机可就难当大用了,再者电源使用的是台式机的250W电源,虽然台达的静音做的非常不错,但是毕竟还是浪费,初步准备使用dc-atx的主板+小机箱。

本来已经相中了网上的1037系列主板了,有的主板还除了具备dc-atx还直接配备了笔记本硬盘的接口,价格在450左右,而我正准备购买一款配备esata接口的精英主板的时候,英特尔的Bay Trail-D处理器系列宣传铺天盖地而来。

为了那赛扬四核还有最大内存能扩充到16G内存,我最终决定还是选用主流的J1900主板。但唯一遗憾的是初期上市,带atx-dc功能的主板少而且贵的要死,(而1037系列的主板受Bay Trail-D影响,价格是一降再降,估计深圳厂商此前进了不少1037的货,心里要骂死Intel了),所以最后一狠心买了映泰的J1900NH2主板。没有选择价位更低的华擎此类主板的原因,一是因为华擎主板网上似乎对支持8G还是16G内存说法不一,再就是映泰主板内存是平行安装,为了以后风道顺畅,所以选择了映泰。

T2Z6A8XLhXXXXXXXXX_!!37763985选择了主板,就必须选择带dc-atx模块的机箱了,恰好搜到一款思科的机箱。说是机箱,其实应该是一款路由器的机壳,但里面居然带有原装的dc-atx模块和光驱,光驱无所谓,但是模块正是我需要的,价格不贵,只要80,但运费就花了30,心疼啊。机箱到手,很小巧结实,立马就有再买一台的冲动,但看看运费,以后再说吧。

T2QJybXmFcXXXXXXXX_!!48344382

打开机箱,拆掉44针接口的光驱,机箱里面顿时宽敞了不少。装好主板,发现机箱的开关是固化专用的,还好老板不错,提供了power、reset等跳线的顺序。发挥多年不用的动手能力,从一台旧机器上面剪下跳线,然后把思科开关跳线一一从固化的开关上取下来,安装顺序插进标准机器的跳线开关里面,安装到主板上,一次开机成功。

开机是成功了,但发现机箱的风扇电源线太短,根本插不到主板上。好在J1900功耗低,很多笔记本都不用风扇,我这机箱更用不着了。安装上8G内存(真怀念那190一条的时代啊),500G笔记本硬盘,自己的“服务器”组装成功了。

 

 

新一轮的折腾基本结束

时间过的真快,离上次申请花生壳域名和美国虚拟主机已经转眼间过去了快3年了。

本来自从进入今年以来,无论是学习还是网站管理都进入了停滞期。工作上的烦乱影响着学习的心境,但后来静下心来想想,自己所学会的和所能学的就是这些了,既然学习了这么久,也就不在乎现在有没有用了,自己学了就是学到了,有没有用就是看老天的了。

于是从7月初开始重新调整开始了新一轮的折腾,本来不想在在家里设置网站,想转到阿里云主机,好在那价格还能够接受,但一申请才发现那个备案系统不是我等平民所能折腾的,同时也对虚拟机有了更大的兴趣,所以决定还是在家里准备一台“服务器”,自己学习方便,顺便将学习所得记录在网上。

经过一个多月的折腾,自己的服务器终于开始运转了,记录一下,也自己激励一下。

开始学习jquery,的确方便

经过一段时间对javascript的学习,对此有了一定的了解,准备开始修改原先的程序,前端使用js,后台使用php。

但现在的脑子真是比不上先前了,为了效率更高,准备使用jquery的框架。还是用submit学习测试,jquery名不虚传,的确高效方便,一条语句就可以解决原先js需要配合css的很多语句。但期间也费了很多周折,最后解决问题还是得靠书本上靠谱的基础知识,网上那你转我转的的资料实在是不靠谱。

对php5.4不止是郁闷,简直是愤怒了

单位上网进行限制,反而是好事,虽然博客很久没有更新了,但可以整出更为整装的时间来做事情。

工作之余,在单位已经建好的freenas服务器的作为存储的基础上,把一台硬盘有故障的i3hp台式机做了一台虚拟机主机,准备搭建一个单位的文件管理平台。

首先建了一个ubuntu12.10的虚拟机,没有网络的确不方便,只能安装默认的apache,而apache对codeigniter的支持真的没有nginx方便,但在上网机和自己工位机器来回跑了几趟之后总算解决了。

但后面的事情就没有那么简单了,程序开始编写就不顺利,表单提交按钮上面的中文不能显示,只能用英文,开始以为是apache的问题,但怎么修改也没有发现问题,而直接用html显示是没有问题的,那就是php的问题,但总也找不出设置的问题。这我也忍了,但后面form_input怎么也显示不出内容来,回到家里用自己家里的机器测试没有任何问题,后来吧input内容改为英文,结果就显示出来了。

回到家里搜索了一下,原来在PHP5.4中,string htmlspecialchars ( string $string [, int $flags = ENT_COMPAT | ENT_HTML401 [, string $encoding = ‘UTF-8’ [, bool $double_encode = true ]]] )
PHP 从 5.4.0 版本开始第三个参数字符串编码的默认值改成了 UTF-8,而GBK版本跟现在的默认参数不一致,所以会出现经 htmlspecialchars 转义后的中文字符串为空的问题。因为我用的字符集是gbk的,这就是按钮没有中文,input也显示不出中文的原因。

对这个结果我已经不是郁闷,而是愤怒了。apache不用我可以用nginx,可以用lighttpd,但既然进了php的大门,总不能改换门庭吧?!

树莓派也许只有英国人做的出来

用了一段时间,树莓派的确是一个好东西。
其实这个东西很多厂家都能够生产推广的。之所以树莓派这么火只能说英国人更理想化一些,或者说白了就是更“傻”一些。之前有很多类似的产品比如硬盘盒子、云存储盒子等。这些产品性能相比树莓派性能都不差,但那些厂家要“精”的多,都砍掉了一个主要的功能–视频输出。这样一来,产品就缩小了使用范围,不会影响到其他产品,不会牺牲pc产品的销路。而树莓派做的非常彻底,除了性能差一些,就是一个标准的电脑,这就断了很多同类产品的财路,这也许只有英国人做的出来。

FreeNas8.3初步安装成功

年初的单位重要工作终于在今天基本完成了,于是把放下一段时间的Freenas抓紧时间完成了,过程还算顺利。

首先安装机器,经过前段时间使用该机器作为虚拟机测试,经过了考验倒还稳定,使用8GU盘作为安装盘,用3块硬盘组成raid-z,安装过程一切顺利,只是在设置网卡的时候安装提示实在是弱智,按取消两次后,终于成功。

进入管理界面后,相比原先使用淘汰的旧机器,发现新机器还是快啊。

首先安装的是Iscsi,参照的是http://blog.csdn.net/mirkerson/article/details/7707030这篇博文,安装非常顺利,倒是在通过xp连接的时候无法通过chap验证,后来根据错误提示进行纠正,成功连接。挂载格式化后把自己1G的资料拷贝进去,速度非常满意,基本和本地拷贝速度差不多。

下午又开始调试CIFS,这个和原先0.6X时代的Freenas差别很大,根据http://blog.sina.com.cn/s/blog_719d315801017otm.html这篇博文进行设置,只要是将“允许访客访问”取消就可以按照文中的介绍设置好权限。

可能是有一定基础,而且准备充分,此次安装Freenas倒也非常顺利。下一步就开始应用了。

html5真的有些花哨

学习应用html5有段时间了,水平有限,本不敢评论,但使用过程来看,html真的有些花哨,充其量是对原先html应用的一个归集整理和改良,是原先html技术的延续而已。

比如htnl5新增的不少表单元素,比如input等的验证,本来使用起来很方便,但支持的浏览器不多,支持最多的是opera。这几天开始学习javascript,发现在使用button替代submit后,虽然也是提交,但是因为是通过js提交submit,所以这时候验证功能就失效了,估计这也是主流浏览器对这些花哨功能不感冒的一个原因。

默认配置,realvnc和tightvnc差别太大了

今天测试了一下虚拟机,很遗憾esxi5下不支持声卡的安装,使用远程桌面连接的话,可以通过客户机的声卡播放声音,但是如果使用vnc软件,则提示未安装声卡,无法播放音乐。从网上查询,目前的资料是由于服务器设定的原因,目前尚没有解决办法。

顺带测试了一下vnc软件,原先一直用的是TightVNC,因为不死心,又使用RealVNC试着连接,依然无声。同时发现在默认配置下,realvnc连接速度还是显示速度和tightvnc差别太大了。所以很快就把realvnc删除了。