2007年12月15日 星期六

Hardy Heron

刚发现blogspot竟然没有被水产,终于不要用梯子了~~

实在不能忍受本本上的伤心硬盘,拿着刚到手的工资买了个Hitachi的HTS541612J9AT00,貌似有什么垂直技术,反正看着比伤心的好多了,顺带买个Pioneer的DVDRW,实习期的钱是花的一分不剩。

瓦卡卡~咱也用120G了,现在想放什么就放什么。立马买票回家!

想了几种分区方案,最后还是这么分:

Windows
C:20GB
D:20GB
E:40GB

Linux
/:20GB
/home:13GB
swap:2GB

本来是装gentoo的,无奈智商不够,还是回Ubuntu

装Hardy的 alpha1 ,alternate安装,一路顺利,进去后发现还是老样子,不管,删OOo先,然后修改源update,完成后reboot。
reboot没问题,把启动的splash去掉,改[OK]为绿色:

修改/etc/lsb-base-logging.sh ,找到"echo [ok]",修改成:
printf '[ '
$TPUT setaf 2 # green
printf OK
$TPUT op # normal
echo ' ]'

然后安装915resolution,虽然xwindows已经能认宽屏了,但是这个915resolution还是得装,可以实现控制台下的宽屏。先下个lrmi,make之后执行vbetest,得到几个值,我这是354,再编辑grub中的menu.list,在kernel行中加入:

video=intelfb:mode=1280x768-24@60,mtrr,ywrap vga=866


完成后先不重启貌似从7.10开始,U默认把frame buffer关掉了,需要手动开启一下:
编辑 /etc/initramfs-tools/modules,加入
fbcon
vesafb
vga16fb

然后把 /etc/modprobe.d/blacklist-framebuffer 里面的vesafb和vga16fb这两行给注释掉,最后sudo update-initramfs -u。
最后改一下控制台的字体,还是喜欢瘦字体,
sudo vim /etc/default/console-setup
或者
sudo dpkg-reconfigure console-setup

reboot后应该可以看到支持widescreen的控制台了,剩下的就是按照wiki里的一步步做下去了。

2007年7月13日 星期五

弦动我心

十年前拥有第一部随身听——aiwa,听林忆莲,听小虎队,听张雨生……那时不知道什么是音乐;

三年后,还是aiwa,还是用原配的不知名的塞子,买10元一盒的磁带,听BackStreetBoys,听WestLife,听枪花……花家里的钱;

六年前,MD已经神话过了CD,和后劲的MP3打的不可开交;当别人开始MP3的时候我还在为选MD还是CD发愁……然而仅仅是一瞬的事,接踵而来的便是那万恶的1000天……;

三年前的那个夏天,封尘了卡带,取而代之的是那“方便”的USB口和iriver-395!开始听JAY,听王力宏,听孙燕姿……继续花家里的钱,对于未来充满幻想;

两年前,换掉了全部原配的耳塞,从生活费里省出了条MX500,开始听enya,听Yiruma,听Bandari……渐渐明白大学不是我想像中的那个样子;

一年前,Hi-MD被炒起来了,似乎要复活当年MD的王朝,于是开始淘碟,然后自己录歌,用$ONY的e888听王菲,听周蕙,听SHE……开始用所谓的“自己的钱”;

七个月前,厌烦了需要不断删减曲库的iriver395、麻烦至极的SS,于是我将所有的音乐连带心情都灌进了一个叫iPod的白盒子里!看着校园里行色匆匆的人群,感觉自己就像这iPod,平淡如水,没有激情却真实存在;

四个月前,用真正意义上自己的钱败了个OMX90,从此抛弃妖娆的e888和什么都好却不对味的MX500,开始听Paganini,听Beethoven,听Bach,听Mozart……开始平静,开始思考;

六天前,没有任何征兆的入UE的sf3,隔绝了外界的声响,感受到了自己心跳的声音,在这个夏天感受一抹清凉……

2007年4月24日 星期二

Install OMNeT++ under feisty


昨天被小杨同学叫去装软件,本以为很easy的东西,没想到从下午4点弄到晚上近7点,还没弄好!主要是长时间待在Ubuntu下人变得越来越懒,configure后一堆warning & erro都没心思看!不甘心,今天下午自己实验,仔仔细细的看了一遍config.log把错误一条条的找出来解决,经过两个小时的奋斗终于搞定!


1、首先要下载OMNeT++ 貌似现在最新的是3.4b2.将压缩包解压到用户目录下:
$ tar -C ~/ -xvzf omnetpp-3.4b2-src.tgz


2、然后就是下载所依赖的包,好在这些包源里都有,直接apt得到:
$ sudo aptitude install bison byacc flex graphviz imagemagick tk8.4-dev doxygen giftrans blt-dev libxml2-dev blt-demo doxygen-doc doxygen-gui html2ps tcl8.4-doc tk8.4-doc bison-doc

3、设置环境变量:
$ vim ~/.bashrc
添加如下内容:
export PATH=$PATH:~/omnetpp-3.4b2/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/omnetpp-3.4b2/lib
export TCL_LIBRARY=/usr/lib/tcl8.4
保存后最好logout一次,偶一开始就是没有logout,结果在configure的时候报错,导致make不了!最好还是logout一下吧!

4、进入omnetpp-3.4b2目录下config & make
$ ./configure
根据输出来判断是否正确,如果缺少某些包的话会提示(Akaroa,、MPI除外) 直到没有出现erro,并且看见三个Good后说明成功!然后就是make了!

5、一般config没错误的话make也应该没问题的,make通过后就可以运行了!
$ cd ~/omnetpp-3.4b2/samples/dyna
$ ./dyna


Q:What is OMNeT++?

A:
"The fact that OMNeT++ is highly modular and well structured is a big advantage when it comes to implementing new protocols to be used in the simulator. The process of implementing MQTT for OMNeT++ was quite straightforward and convenient especially thanks to the NED language." Master's Thesis of Julio Perez, September 2005, IBM Zurich Research Laboratory, Switzerland. Section 4.1, pp25.



2007年4月8日 星期日

我们到底为什么用linux?

问题源自于fans上的新手们,为了让您少一点烦恼,请用ubuntu吧!

自从04年用linux以来,关于win和lin的争吵就没有停止过!偶尔愤青一下,过去瞎掰两句,也有和别人吵的面红耳赤的时候;但是这次看见的确是linux的窝里斗!争执起Distribution来了!

回顾一下偶的linux史,从asialinux->RedHat9->FC3->SUSE9->Ubuntu,用过的不多,但只有ubuntu才是最适合我的!linux仅仅是个工具罢了,而不是拿来炫耀的资本!

很多"老牌"的linuxer对于ubuntu这种傻瓜似的操作嗤之以鼻!认为那是丢弃了linux的本来面目!可是偶不禁要问:linux的本来面目是什么?成天无休止的下源码包编译、安装?还是为了那仅有的一点点所谓的速度就动不动make一下kernel?
看看论坛里的问题吧:什么显卡不显示了,声卡没声音了,网卡认不出了,SATA的盘没法装了……问一下
Distribution,结果来句RH7、FC2……试问在硬件发展如此迅速的今天这些tooooooold的Distribution还有什么意义?除了打击新手的信心还能干什么?为winfans提供辩论的证据?

Windows为什么成功?用户群是一方面,简单易用也是主要的问题!很多人曾经在论坛里跟我辨说linux不可能取代windows,因为她永远不会比windows易用!可是现在有个易用性和windows相当的ubuntu,linuxer们应该高兴才是,可是看看fans里面的反应!
linux是一个工具,不是少数所谓“高手”的玩具。 绝大多数人装完linux都希望无须太多配置就可以立即投入使用,而不是在那里查资料、捣鼓各种配置。
的确,运用最原始的方法去安装linux软件,去看linux的kernel,可以了解OS的机制!但是不是所有的人都是稿研究的,他们需要的是一个安全的、干净的操作环境!而不是在那跟人唠唠叨叨自己的OS是怎么工作的!

这些人不是在推广linux,而是在那拖linux的后退!他们以"高手"自居,以为自己会make一些software就很ZB?!恰恰相反,他们是linux界最大的SB!

2007年2月28日 星期三

原来ZB可以"如此简单"

今天拿到返校的票──T732,可以说是从上学以来最便宜的票了(15RMB)也是第一次学生票……又得辛苦两小时~~

前天在QQ两天碰到一个不是很熟的却自称跟偶特熟的熟人,瞎掰了两句问偶在做什么,他/她说最近在研究什么JSP还是ASP的,然后貌似很牛X的跟偶吹WEB2.0!偶也属于比较无聊的那种了,抄起一段codes发给他/她,然后很ZB的说了句"没事自己写OS玩"……对方沉默的3秒后发来一个"弓虽"然后就offline了。。。。

今天下午又是这个人,又开始海侃,反正偶也没事干,瞎吹呗!最后还带有意思挑衅的口吻问"你的OS什么时候能写好阿?让我来运行一下嘛!"崩溃……于是翻课件,找了段最简单的用VHDL描述的门电路,当然不忘在里面加点垃圾代码一并发给他/她,再次偶认为很ZB的说:"偶的OS不是运行在x86构架上的,所以只能先自己弄个CPU出来,然后在这块CPU上跑……"

原来ZB是可以如此简单的^_^!以后要是再有人问偶"最近在忙什么"的时候,偶一定会这样给他们说:"没事干,无外乎就是给自己写个OS,顺带造个CPU,都是小把戏!"

2007年2月16日 星期五

SB了一次……

在erji.com里潜水N月之久,两次长时间一言不发被踢……

估计全国90%的HiFi米人都在erji吧?!偶身上这点装备都不好意思拿出手~~一直关注着iPod+Lineout的输出是否真的那么强,得到N多人的证实后下了狠心花了100个RMB从某位烧友手中购得一个发烧级的Pocketdock,比起apple的来说是便宜的了=_=!(这里先来赞一下张扬!东西好,人也不错!)由于不想随身带着二房,所以特地作了个母头的方便接耳塞/机;也正是这个极端SB的想法使偶的888彻底报废!

偶低估了lineout的输出,音量不是一般的大!!由于不经过iPod内部本身的放大电路而是直接输出,所以iPod那独有的促模式音量调节没了用处!一开始就选了张韶涵的《梦里花》,那种独特的高音直接把e888枪毙掉了,那个$ONY引以为豪的生物震膜被震裂了…………没办法,只能在iTunes里把音量降低90%,再接麻叉五洞洞开最小量才勉强入耳。在erji里问了N多人,得到的回答都是一样的:iPod+lineout不接二房的话就是浪费,声音在某些塞子上甚至比phoneout还要惨……刚又试着推了一下M11,发现M11只要开一点量就可以了,而以前偶都是开最大才能听清的!仔细看了看M11的参数:10kΩ的阻抗~~崩溃……凝固……看来888是彻底没救了!

难道真的要弄个二房?!

最近和监控对上了……

以前对NB运行状态的监控一直就是在Panel上加个System Monitor就OK了。可是最近看Snowz在弄CACTI做服务器的监控,手痒就也装了一个,结果就变成了cacti+mrtg+conky……

先来看看MRTG吧~基本要放弃了!每次重启后就没用了!
安装还是比较简单的,所有的包都apt-get,主要是依赖snmp这个协议,按照wiki的说明配了一下apache,接着就是修改一下snmp的配置:
sudo vi /etc/snmp/snmpd.conf
查找到类似的行,修改为:
# sec.name source community
# com2sec paranoid default public
com2sec readonly default public
#com2sec readwrite default private

重启snmpd服务: sduo /etc/init.d/snmpd restart

生成mrtg的配置文件: sudo cfgmaker public@localhost > /etc/mrtg.cfg

生成mrtg的主页: indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html

安装CPU负载监视: sudo apt-get install sysstat
建立CPU脚本:
sudo mkdir /opt/mrtg
sudo vim /opt/mrtg/mrtg.cpu
#!/bin/bash
cpuusr=`/usr/bin/sar -u 1 3 | grep Average | awk '{print $3}'`
cpusys=`/usr/bin/sar -u 1 3 | grep Average | awk '{print $5}'`
UPtime=`/usr/bin/uptime | awk '{print $3""$4""$5}'`
echo $cpuusr
echo $cpusys
echo $UPtime
hostname

使脚本可以执行: sudo chmod 755 /opt/mrtg/mrtg.cpu

修改 /etc/mrtg.cfg 在文件最后加入cpu项目
Target[cpu]: `/opt/mrtg/mrtg.cpu`
MaxBytes[cpu]: 100
Options[cpu]: gauge, nopercent, growright
YLegend[cpu]: CPU loading (%)
ShortLegend[cpu]: %
LegendO[cpu]: CPU us;
LegendI[cpu]: CPU sy;
Title[cpu]: CPU Loading

PageTop[cpu]: CPU Loading

重新生成索引页面: sudo indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html


内存使用监视:
建立RAM脚本:
sudo mkdir /opt/mrtg
sudo vim /opt/mrtg/mrtg.ram
#!/bin/bash
# run this script to check the mem usage.
totalmem=`/usr/bin/free |grep Mem |awk '{print $2}'`
usedmem=`/usr/bin/free |grep Mem |awk '{print $3}'`
UPtime=`/usr/bin/uptime | awk '{print $3""$4""$5}'`
echo $totalmem
echo $usedmem
echo $UPtime
hostname

使脚本可以执行: sudo chmod +755 /opt/mrtg/mrtg.ram

修改 /etc/mrtg.cfg 在文件最后加入ram项目
Target[ram]: `/opt/mrtg/mrtg.ram`
#Unscaled[ram]: dwym
MaxBytes[ram]: 2048000
Title[ram]:Memory
ShortLegend[ram]: &
kmg[ram]:kB,MB
kilo[ram]:1024
YLegend[ram]: Memory Usage :
Legend1[ram]: Total Memory :
Legend2[ram]: Used Memory :
LegendI[ram]: Total Memory :
LegendO[ram]: Used Memory :
Options[ram]: growright,gauge,nopercent
PageTop[ram]:Memory

重新生成索引页面: sudo indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html


硬盘读写监视:
建立硬盘读写脚本:
sudo mkdir /opt/mrtg
sudo vim /opt/mrtg/mrtg.disk
#!/bin/bash
hd=sda
disk=/dev/$hd
UPtime=`/usr/bin/uptime |awk '{print $3""$4""$5}'`
KBread_sec=`iostat -x $disk|grep $hd |awk '{print 8$}'`
KBwrite_sec=`iostat -x $disk|grep $hd |awk '{print 9$}'`
echo $KBread_sec
echo $KBwrite_sec
echo $UPtime
hostname

使脚本可以执行: sudo chmod +755 /opt/mrtg/mrtg.disk

修改 /etc/mrtg.cfg 在文件最后加入硬盘读写
Target[disk]: `/opt/mrtg/mrtg.disk`
Title[disk]: Disk HDA I/O Utilization Report
#Unscaled[disk]: dwym
MaxBytes[disk]: 10240000
PageTop[disk]:
Disk I/O Utilization Report
kmg[disk]: KB,MB,GB
LegendI[disk]: Disk I/O KBread/sec
LegendO[disk]: Disk I/O KBwrite/sec
Legend1[disk]: Disk I/O KBread/sec
Legend2[disk]: Disk I/O KBwrite/sec
YLegend[disk]: Megabytes
ShortLegend[disk]: &
Options[disk]: growright,gauge,nopercent

重新生成索引页面: sudo indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html

只要
sudo env LANG=C mrtg /etc/mrtg.cfg运行一下mrtg的配置文件,再访问: http://localhost/mrtg/就可以看到机器运行状态。

不过偶现在碰到的最大问题是一旦关机或者重启后mrtg就不再运行了?!重新运行:
sudo env LANG=C mrtg /etc/mrtg.cfg 后一直提示:
"ERROR: Creating templock /var/lock/mrtg/_etc_mrtg.cfg_l_10391: No such file or directory at /usr/bin/mrtg line 1761."
到底问题出在哪呢?在论坛上发的贴也是石沉大海……


再来看看CACTI,用到现在还是蛮稳定的。

cacti是一套PHP程序,它用snmpget来采集数据,再用rrdtools绘图,功能和MRTG类似,不过貌似更强大点,不过就是要用到MySQL~~
本着能懒则懒的原则,所有相关包都去apt-get,然后先按照wiki的方法架apache+MySQL+PHP的环境,再按照cacti上的指南开始操作,结果问题来了;建好一个cacti表后竟然找不到SQL文件,然后就是cacti的配置文件config.php竟然是空的?!!百思不得其解??Google了好久都没什么结果,最后用最原始的方法:下源码包装,把

cacti直接放到apache的web目录下,然后编辑cacti的数据库连接文件:
sudo vim /var/www/cacti/include/config.php
如下这段根据你的数据库设置更改
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "beetle";
$database_password = "*******";
$database_port = "3306";

还要修改/etc/crontab,给cacti的数据抓取添加一个定时Job:
*/5 * * * * root php /var/www/cacti/poller.php > /dev/null 2>&1
然后登录http://localhost/cacti/ 第一次进入会让你进行一个简单的配置,主要是一些工具的路径,如果系统找不到,还要手动指定。第一次登录的密码默认是admin,登录后会让你更改密码。

直到后来才发现为什么一开始一直不对,原来apt自作聪明了,她把这些软件按照系统的一贯要求全部拆开存放到各个文件夹下,寻找起来还是比较麻烦的……


最后来瞄瞄conky,一个桌面级的监控程序。ubuntu的源里有,直接apt就可以了,偶也就不贴图了,把配置文件放上来share一下,感觉比System Monitor强大,唯一不解的是启动比较慢~~

.conkyrc