2007年2月25日星期日

怀念在碧花园的日子

按计划是明天要开课了,初五就回来开始备课。怎么说呢,毕竟是第一次上讲台,尽管当初培训的时候有Teaching Practice,然而面对真正的学生,而不是我们自己所熟悉的同学们,课程是否会真的那样的顺利:Set Context->Elicit->Target Lanuage->Practice(CP, LCP, FP),并且全英文,西式的教学环境是否真的会被大家接受,我现在仍然有些怀疑。然而,这样的教育理论是比我们传统的教学方式更加合适于语言教学,特别是以听说交流为侧重点的语言学习。

最近好忙,才备了刚够一周讲的内容;而手里的软件项目也压得紧,还有另外的一些琐事占用时间,老觉得时间不够用。今天看了看以前的照片,看到某些时会对着屏幕傻笑;开始怀念在碧花园和同学们一起接受培训的日子,尽管也忙,但是遇到了如此多的朋友们!现在他们是不是也在忙着呢,本职工作+兼职教员。

Posted by Picasa

2007年2月11日星期日

随便转了转,居然中招了

最近在Windows下工作,今天用上了Windows Live Message 8.1,跟着弹出的广告页上了MSN Space(当然用的是IE),好久没有上MSN Space了,突然想看看,以前有几个同学在上面开了空间。点开一篇热门的帖子,啊,不得了,下面得评论全部是广告,并且是色情广告信息。看到此,我非常庆幸自己没有在这里见开博客,否则不被烦死才怪。除此之外,我还不喜欢国内很多博客社区的气氛,很多人其实是为增加点击量而"博",居然还有"收费抢沙发",搞笑!还有很多所谓的名博,实际上都没有什么内容!
有一个热门的帖子讲的是关于现在据说很热门的一个记录片视频,跟着其中的链接进去,kao,发现诺顿弹出一个窗口,不动了,我感到不妙,连忙查看进程,发行多了好多jts.exe,xxs.exe的进程。赶快搜了下信息,看看中了什么了,然后启动到安全模式下处理掉。天了,其实用了这么多年电脑,中病毒的次数只有几次,除了大多数时候用的是linux之外,在windows下不怎么乱上网站,所以也不知道如何中招是啥滋味:)。我之前对于IE,windows所传言的不安全性没有概念。然而今天,几乎什么都不干,开个网页居然也能让病毒木马进来?呵,这次有概念了。看来以后还是保持好习惯吧,别用IE乱上网!

2007年2月10日星期六

对update-grub的理解

硬盘被重新Fdisk过,但是记得分隔分区的扇区位置,重新建立分区表并不会影响系统的运行,也就是说分区还是跟以前一样的。
但是这个过程/dev/hda的序号号变了。比如以前linux根分区是/dev/hda8, 现在变成了/dev/hda6, 尽管在物理硬盘中是同一块区域没有变。
但是之后却发现安装自己编译的内核包之后,自动配置的menu.lst还是把启动项中的root设为了/dev/hda8,而不是/dev/hda6,要手动改到/dev/hda6才是
正确的,才可以启动。用dpkg-reconfigure效果也一样。由于南方电信的网络访问gentoo源的问题,所以从gentoo转来使用ubuntu,对debian(ubuntu)
的这种自动配置的机制不了解,有什么办法能让自动设置正确吗?是否这个reconfigure有个模板一样的东西存在,在第一次安装好系统之后,这个东西就定
了?上午google了很久找不到,下午继续研究这一问题,得到了答案。
 
原来之前想错了方向,原来总想可能deb包中有一个脚本会根据某个设置的情况来做此设置,但是实际的情况是这个postinst调用的就是update-grub,
#/etc/kernel-img.conf
do_symlinks = yes
relative_links = yes
do_bootloader = no
do_bootfloppy = no
do_initrd = yes
link_in_boot = no
postinst_hook = /sbin/update-grub #调用update-grub
postrm_hook = /sbin/update-grub
 
也就是说直接运行update-grub就可以自动的更新menu.lst设置。
而update-grub是根据什么来自动生成menu.lst呢?
答案很简单,但是容易让人忽略,实际上就是/boot/menu.lst,当menu.lst文件不存在时,update-grub将会生成一个新的menu.lst,但是可能不正确。
有则直接根据之前的menu.lst模板生成新的实际的menu.lst,老的进行备份。
 
所以要解决我提出来的情况,就是修改menu.lst模板就可以了,然后重新运行update-grub即可。修改menu.lst如下:
59 ## default kernel options
60 ## default kernel options for automagic boot options
61 ## If you want special options for specific kernels use kopt_x_y_z
62 ## where x.y.z is kernel version. Minor versions can be omitted.
63 ## e.g. kopt=root=/dev/hda1 ro
64 ## kopt_2_6_8=root=/dev/hdc1 ro
65 ## kopt_2_6_8_2_686=root=/dev/hdc2 ro
66 # kopt=root=UUID=a764e67f-e242-4d6e-b874-3f5ffcf30bfc ro
67 # kopt_2_6=root=/dev/hda6 ro
68
69 ## default grub root device
70 ## e.g. groot=(hd0,0)
71 # groot=(hd0,5)
改变以单个#的行中间的值即可,比如我改为了 kopt_2_6=root=/dev/hda6, groot=(hd0,5)
引申开去,如果要给内核加其他的启动选项,也可以加到这个模板当中,那么下次安装内核时,那些选项就不会被去掉了,比如vga=792等等内核参数。具体
的,请建menu.lst中间的注释

2007年2月7日星期三

Ubuntu终于认出两个CPU了

今天又开始在Linux下工作了,可以我的ubuntu一直是跑在386的模式下,让我很不舒服;但是没有办法,如果用686(generic)的内核,键盘和鼠标会死掉,一直也不知道什么原因。今天决定再来研究一下这个问题。先找了ubuntu下怎么编译内核的方法,看样子也只有重新编译内核才有得救,不过以前没有在ubuntu下做过。gentoo下简单阿,一个emerge就可以了,从网上找到了相关的资料,照着做了一下,发现debian(ubuntu)的这种make-kpkg的机制其实也挺好的。很简单。不过要注意的是,从软件库里面用apt-get等直接下来的源代码,往往不能编译成功,最好是下载kernel.org的内核,上一次编译内核不成功,也是因为用了软件库中间的内核源码。如果是从pool中通过浏览器等下载的该发行版支持的内核版本,那么直接用make-dpkg编译也是不行的,源码术当中的debian/control要做修改,偷懒的办法是直接删掉debian那个文件夹,让其在make-dpkg时自动生成,这样不会有多于信息,不会提示说control文件当中有重复的条目。

两条命令就可以完成内核的编译:
make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image
kernel_headers
之后完成内核的安装,用dpkg -i。

最后一个问题是nvidia的驱动,我安装好内核之后只能用xorg的nv驱动,效果不让人满意。不过能够用P4 CPU和SMP的选项编译成功,并且得到/proc/cpuinfo中有两个CPU的信息已经让我狂喜了。我一直担心这个问题。然而,看到一篇文章上直接用从nvidia网站上下来的驱动安装的方法,让我从执着于怎么从ubuntu的代码库中搞出能用的nvidia驱动的想法解脱了出来,我原来甚至想再编译一个和6.10默认内核版本相同的内核出来,以使用它的restricted-modules。说实话,从nvidia官方网站上下驱动来直接安装我之前都不知道!被gentoo宠坏了:).不过这个方法确实很简单,并且奏效。

至此,所有问题解决:Ubuntu 6.10用支持P4 smp的内核,用nvidia驱动,再没有
键盘鼠标不响应的情况了。