Ubuntu 升级到 10.04 lucid

本来能够直接从 9.04 升级上来的,但由于我启用了 sshfs,而 mount 在网络启动之前执行,所以系统升级完启动后就挂在 mount sshfs 那里不动了,一开始不知道,以为不行了,就直接重新安装了 10.04,也好,4、5年了,该重装一会了。

启用 Ctrl+Alt+Backspace 快捷键重启 X

System->Preferences->Keyboard->Layouts->Options,打开 Key sequence to kill the X server 并选中 Control+Alt+Backspace,立即生效,或者执行命令:

$ setxkbmap -option terminate:ctrl_alt_bksp

这个是每次启动 X 之后执行才生效。

设置系统默认输入法

System->Administration->Language Support 中,Install/Remove Languages 中装上中文语言支持,安装 fcitx,然后在 Keyboard input method system 里选上 fcitx,重启 X。

Mysql 服务启动的问题

无法启动或者重启,修改 /etc/init/mysqld.conf,在 start on (net-device-up 后面添加内容如下:

start on (net-device-up IFACE=eth0

如果提示 Can't create test file 类似的信息导致无法启用,是由于用户变更了 datadir,而系统没有赋予 mysql 读写那个目录的权限所致。修改 /etc/apparmor.d/usr.sbin.mysqld 添加下面的内容:

/your new datadir/ r,
/your new datadir/** rwk,

/etc/init.d/apparmor restart 后 mysql 就能启动了。注意上面的 datadir 如果是 ln 指向,需要填写真实路径。

mysql 还有个烦人的问题,就是 bind-address 默认只是本机,如果想改成 ip 或者 0.0.0.0 代表所有地址,还不能着急,先 bind 127.0.0.1 启动一会,然后停止服务修改 bind-address,不然 sudo service mysql 脚本又会出现问题。

好像 mysql 的自动启动取消了?在 /etc/rc.local 中加一句 service mysql start

启动时检查完磁盘就没有反应的问题

多半是由于 fstab 中有挂载 cifs/smbfs/sshfs 的行为,其实这个时候磁盘还没有检查完,而且永远也检查不完,因为网络还没有启用,那些需要网络挂载驱动器的行为就陷入了永远的等待状态,昏死的设定。

显卡驱动安装参考

Openoffice.org 字体列表中不显示中文字体名称

只显示为英文,这个需要修改 /etc/environment

LANG="en_US.UTF-8"
LANGUAGE="en_US:en_GB:en"
LC_CTYPE="zh_CN.UTF-8"

如果输入法又变成 ibus,sudo im-switch -s fcitx 后重启 X 即可。openoffice 是根据当前环境来决定是显示字体的中文名称还是英文名称的。

Samba 共享中的 symbolic link 无法被访问

需要在 /etc/samba/smb.conf 中添加下面几句内容:

[global]
    follow symlinks = yes
    wide links = yes
    unix extensions = no

一点使用感觉

  • 很多操作都是在窗口模式下实现,反而用 cli 不知该怎么作了。
  • 易用性倒是好多了,却同时搞得一些复杂操作麻烦或者出问题了,比如 mysql 服务启动的问题,比如 fatab 里面加上个 sshfs 就无法启动的问题等等。

参考

Ubuntu升级到9.04 Jaunty的变化和遇到的问题

  • 长按键盘自动连续击键的间隔缩短了。
  • 显卡驱动没有问题,终于能够摆脱8.10里像涂了墨水一样的中文字乱码了。
  • Firefox的速度好像也快了不少,或许也是显卡驱动的原因?
  • Fluxbox apps文件中Position设置LOWERLEFT/BOTTOMLEFT原来时从屏幕最下方算间距,现在时从工具栏上方开始算,所以原来的值要减去工具栏的高度(25)。
  • 消失很久的启动时的Splash屏又回来了,不过是Xubuntu的小老鼠(我用的WM是Fluxbox),想取消的话,删掉usplash及其相关的包即可。

如果在没有正式发布的时候就升级了,每天的更新比正式发布后要多得多,每天都要下载一大堆包升级,得考虑好,当然你也可以忍着不频繁升级。

Fluxbox任务栏上当前聚焦的窗口和其他窗口的风格是一样的,区分不开了,更换任何styles都无效。

Firefox窗口的标题栏里中文字显示为方块

先这个是Gnome的问题,所有窗口标题栏中包含中文时都是方块,而Fluxbox工具栏上是能够正确显示中文的。尝试更换不同的fluxbox styles发现menu.title.font设置为dejavu字体时窗口标题栏就能正常显示中文了,其他的窗口内容、网页中文全部显示正常。

终于让我找到原因了,又是一个哭笑不得的问题,在我自定义风格里,使用了dejavusans这个字体,而这个字体现在好像在系统中找不到了,因此它就像出错后就不再往下执行了一样,导致后面overlay里定义的新字体也不生效,窗口栏上的中文就成方块了。换其他style之所以能正常显示窗口标题栏上的中文,是因为他们没用dejavusans这个字体。最后的解决方案,把这个自定义style里的dejavusans替换成dejavu -_-!

字体大小dpi优化

字体DPI设置会根据显示器进行优化,而不再局限于默认的96DPI,还可以在System → Preferences → Appearance → Fonts → Details里自行定义。原来是在.Xresources里设置的Xft.dpi:96,不知道还有用没。目前发现的问题是窗口标题栏中的文字比以前大了一些。

我的Fluxbox还遇到了一个问题,屏幕尺寸、位置计算出现了错误,原先我是/etc/gdm/Init/Default中用xrandr -s 1024x768强制重设分辨率,现在把这行禁用后发现桌面的“尺寸”比1024大,鼠标移动到屏幕边缘后会自动移动,但显示不全。

	$ xdpyinfo |grep resolution
	  resolution:    78x78 dots per inch

78是显示器真正的dpi数,但按这个设置又显得字太小了。最后,把xorg.conf里大于1024的分辨率都删掉,这样就可以去掉上面xrandr那句了,显示也正常了,dpi仍然用的是96。

上某些网站中文字模糊(像粗体字那样的模糊)

打开/etc/fonts/conf.d/44-wqy-zenhei.conf,找到下面这行:

	<edit name="antialias" mode="assign"><bool>true</bool></edit>

把true改成false后重启X即可。

Ctrl+Alt+Backspace关闭X的组合键被禁用了

编辑/etc/X11/xorg.conf,在最后加上:

	Section "ServerFlags"
		Option "DontZap" "no"
	EndSection

Mysql升级到5.1后库升级失败的问题

一台 mysql 5.0 服务器,升级到 5.1 后,发现原来有个 database 名字变成了 #mysql50#t-2008-zbb ,刚开始没在意想直接 RENAME DATABASE ,结果这个语法由于过渡危险已经取消了,改用ALTER DATABASE db_name UPGRADE DATA DIRECTORY NAME,结果执行错误:

mysql> ALTER DATABASE `#mysql50#db_name` UPGRADE DATA DIRECTORY NAME;
ERROR 1450 (HY000): Changing schema from '#mysql50#db_name' to 'db_name' is not allowed.

原来这里面还有个 BUG ,刚刚修正过来,发行版中肯定还没有呢。幸好,从中得到了提示,因为 View 的存在导致库无法升级的,删掉所有视图后 UPGRADE 成功:

mysql> ALTER DATABASE `#mysql50#db_name` UPGRADE DATA DIRECTORY NAME;
Query OK, 0 rows affected (0.08 sec)

这台服务器还作了双向同步,我还得手工重置同步状态,又是麻烦一连串儿的事情,幸亏这次操作的是测试服务器,下次升级正式服务器之前,记得先把所有 View 删掉,升级完成后再重新创建。

另外 RENAME DATABASE 实在是危险,我执行过程中出错终止了,结果一部分表在新库里、一部分表在旧库中,不小心把未转完的目标库删掉了(不然后面的正常 ALTER DATABASE 无法继续),结果就丢失了这些表的数据。

升级到8.10 intrepid过程中libc6依赖性死循环问题的解决

依然是采取从源升级的方式,不过却遇到了依赖性死循环:

fwolf@svr6:~$ sudo apt-get install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run `apt-get -f install' to correct these.
The following packages have unmet dependencies:
  libc6: Depends: findutils (>= 4.4.0-2ubuntu2) but 4.2.28-2 is installed
  libc6-dev: Depends: libc6 (= 2.5-0ubuntu14) but 2.8~20080505-0ubuntu7 is installed
  libc6-i686: PreDepends: libc6 (= 2.5-0ubuntu14) but 2.8~20080505-0ubuntu7 is installed
E: Unmet dependencies. Try using -f.

使用-f参数也无济于事:

fwolf@svr6:~$ sudo apt-get install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
  findutils libc6-dev libc6-i686
Suggested packages:
  mlocate locate slocate glibc-doc manpages-dev
The following packages will be upgraded:
  findutils libc6-dev libc6-i686
3 upgraded, 0 newly installed, 0 to remove and 362 not upgraded.
5 not fully installed or removed.
Need to get 0B/5077kB of archives.
After unpacking 1561kB of additional disk space will be used.
Do you want to continue [Y/n]? y
E: Couldn't configure pre-depend libc6 for findutils, probably a dependency cycle.

看到没,libc6依赖findutils 4.4以上,而升级findutils又依赖libc6,所以陷入死循环,可以尝试这样解决,前提是相关的deb包都已经用apt下载到了本地cache里:

fwolf@svr6:~$ cd /var/cache/apt/archives
fwolf@svr6:/var/cache/apt/archives$ sudo dpkg --force-depends --install libc6_2.8~20080505-0ubuntu7_i386.deb findutils_4.4.0-2ubuntu3_i386.deb

强制直接安装这两个冤家包,然后是libc6相关的这两个重要包:

sudo aptitude install libc6-i686 libc6-dev

然后,再进行其它upgrade就都正常了。

参考

coreutils and debianutils dependency cycle on reinstall command

[MediaTemple]从(dv)3.0升级到3.5

从(dv)3.0升级到(dv)3.5,其实我理解最大的差别就是php5, centos5了,其它的也有一些,包括硬件上的,不管怎样,新的应该好,升级之。

升级主要依据KB里的这篇文章:(dv) HOWTO: Using the Plesk Migration Manager,英文好的直接去看,不用听我唠叨了。

升级之前

升级的准备条件:要知道旧主机的域名(废话),有旧主机的root权限(早有了),超过50%的磁盘剩余空间(这个没问题,我们用得比较省)。

升级之前,要通过support request申请新的(dv)3.5主机,为什么要通过support request而不是直接下订单购买呢?我也不知道。新主机不能和旧主机使用同样的域名,可以用个假的,比如new.fwolf.com,升级完成后可以调过来。申请的时候,我还要了2个新ip,打算把旧ip全部换掉。

可能是周末的原因,反应速度稍微慢一些,将近12个小时之后才得到消息,先是一个回复说已经添加了新的主机方案(默认一年,可以调整成按月的),然后另外一个回复说ip已经添加完毕,另外还有一封Service Activation Letter邮件,告知新主机的登录信息。

由于我们并没有使用主机上的DNS,所以DNS部分的调整略过。

备份资料

首先是备份旧主机上的资料,主要是文档和数据库。

文档就是把/var/www/vhosts打包下载即可,虽然我们并没有使用太多的空间,但打包之后还是有1.5G,下载得花点时间,早知道我就在等待新主机的时候作了。

然后就是备份数据库了,这个用脚本会方便些:

# mysql -u admin -p -e "show databases;" > mysql_backup.sh

然后用vi加工一下这个文件,删掉第一行标题Database,然后用正则替换:

:%s/^\(.*\)$/mysqldump --add-drop-table --default-character-set=utf8 --user=admin --password=your_passwd --extended-insert=false \1 > \1.sql

加上可执行属性之后,就可以运行这个脚本了,会在当前目录下生成一堆sql文件,打包下载到本地即可。这个文件终于小一点,才17M。

设置新的主机

按照MT Service Activation Letter中的登录信息,登录新的主机,完成主机设置。

plesk setup step 1

hostname、默认ip都不用动,所有ip改为shared类型,并更改管理员密码。

plesk setup step 2

这些都是联系信息,按照KB中的说明,I would like to create a default client account要选中。

完事之后,简单对比了一下新、旧主机,发现除了centos和plesk有升级之外,硬件居然还略微下降了一点点,这个是旧主机的:

mediatemple old vps

这个是新主机的:

mediatemple new vps

用unixbench算了一下,果然要差一些:

Start Benchmark Run: Sun Jul 13 02:52:13 PDT 2008
 02:52:13 up 1 day,  3:19,  3 users,  load average: 0.07, 0.12, 0.05

End Benchmark Run: Sun Jul 13 03:02:39 PDT 2008
 03:02:39 up 1 day,  3:30,  3 users,  load average: 14.05, 6.09, 2.71


                     INDEX VALUES            
TEST                                        BASELINE     RESULT      INDEX

Dhrystone 2 using register variables        376783.7 10407496.2      276.2
Double-Precision Whetstone                      83.1     1363.3      164.1
Execl Throughput                               188.3     3177.3      168.7
File Copy 1024 bufsize 2000 maxblocks         2672.0    70892.0      265.3
File Copy 256 bufsize 500 maxblocks           1077.0    17388.0      161.4
File Read 4096 bufsize 8000 maxblocks        15382.0   376396.0      244.7
Pipe-based Context Switching                 15448.6   224834.4      145.5
Pipe Throughput                             111814.6   619968.9       55.4
Process Creation                               569.3    11806.2      207.4
Shell Scripts (8 concurrent)                    44.8      270.9       60.5
System Call Overhead                        114433.5   280994.4       24.6
                                                                 =========
     FINAL SCORE                                                     131.3

原来得分是207.1的,只好阿Q一下,希望MT不同配置的硬件所带的vps数量不同,另外软件上的优化也能弥补一些差距。

开始升级

左边菜单里点Server,然后在右边页面的Services组中选择Migration Manager,然后点Start a new migration开始新的服务器转换:

plesk migration step 1

由于磁盘空间足够,可以一次转换,所以很方便,填上原主机名称和登录信息即可。不小心还发现/使用的是reserfs,并且默认安装耗费4%的空间,也就是大概600M。

确认之后,plesk自动到旧主机上查出信息:

plesk migration setp middle

plesk migration setp 2

当然要选择Migrate all clients and domains,同时还看到plesk还能从其它主机管理软件,比如从cPanel转换数据。Advanced里还有一些选项,包括旧主机的空间占用信息,一般不用动的:

plesk migration step 2-1

确认之后:

plesk migration step 3

设置新、旧主机上的ip对应关系,我们旧主机上有2个ip(虽然显示3个,有一个其实已经退掉了),新主机上打算大多数人用一个ip,管理后台用单独的一个,免得被封了之后连后台都进不去(plesk通过代理登录总有问题)。

下一步:

plesk migration setp 4

Mysql设置,没什么好设置的,直接继续,就可以喝茶等机器干活儿了,先备份信息:

plesk migration step 5

然后拷贝文件:

plesk migration step 5-1

传输速度10MB/s左右,基本上相当于100M局域网对拷了。拷贝完成后再逐个进行部署:

plesk migration step 5-2

最后,终于完成,不过发现了错误:

plesk migration error

好像是因为plesk没有装中文语言包,不是很严重的错误,到Parallels下载一个语言包,在plesk -> Server -> Interface Prefenences -> Add Locale里上传语言包。网站上显示有错误,简体中文实际上是链接向荷兰语的,繁体中文链接是指向简体中文的。上传成功后又发现无法启动,原来Maximum number of language packs只有1,难道新的主机方案只能安装一个语言包?大家只能暂时都用英文界面了。

升级回顾、检查、补漏

plesk的migration只是把所有client、domain的设置和文件都压缩、拷贝、解压部署到了新主机上,其余的东西还得自己动手:

  • root账号没有开,developer tools没有安装,这两个可以在account center里作;
  • Virtuozzo -> System Services里的服务大部分都和旧主机一样,有一点不同,手工修改了;
  • root目录下的文件都需要手工拷贝过来;
  • 用户$HOME下除系统自建目录之外的文件都没有转过来,需要手工处理,比如.bashrc, .vimrc
  • chroot环境里原来配置的可执行文件都没了,需要重新配;
  • plesk中的client模板也没转换过来,需要自己重新新建;
  • Apache配置文件/etc/httpd/conf/httpd.conf,php配置文件/etc/php.ini,mysql配置文件/etc/my.cnf,需要手工处理;
  • 原来手工更改为PHP5的用户,需要参照KB: Reverting PHP5 for (dv) 3.0 after migrating to a (dv) 3.5进行修改,删除原来添加的PHP5 fcgi处理部分,然后/usr/local/psa/admin/sbin/websrvmng -a -v即可;
  • 为了安装其他东西方便,这回我先装个yum,从这里下载,i386的;
  • denyhosts还是要装的,从这里下载;
  • ssl证书,虽然是没有公信力的,但还是自己的看着舒服;

vi里中文乱码,需要编辑/etc/sysconfig/i18n,把里面的4行原来注释了的取消注释,原来没注释的加上注释,即:

# cat /etc/sysconfig/i18n 
LANG="en_US.UTF-8"
SUPPORTED="en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
#LANG="C"

这个需要重启生效。这个好像只对root有效,jail的ssh用户仍然不行,取消了chroot之后就好了;

另注:我migration的时候,虽然大部分文件都过来了,但因为语言包的原因失败了,所以有些内容可能是因为这个原因没有migration过来。

后记、感想

  • 下次再升级之前,一定把自己修改过的脚本备份打包,便于修改新主机上的配置;
  • migration的范围如果能扩大到系统配置,然后系统配置不是覆盖,而是像svn那样能智能merge就好了;
  • plesk功能虽然丰富,可速度是那么得慢,慢到我可以一边等待一边写这些记录,时不时的操作一下对写作思路还有干扰。不止我一个人这么说哦:使用plesk的感想
  • 现在的web服务器选择真是太多了,我知道的除了apache还有lihttpd和nginx,鼓捣php的时候还发现同一种服务还有N种实现方式,学无止境阿。

升级之后

升级结果信息总体保存在/usr/local/psa/PMM/var/2008-07-11-20.05.45.106523,这个目录下面有个archives子目录,是升级时旧服务器上打包的所有文件,确认升级没问题后,可以删掉以节省控件。如果升级完全成功,应该会自动删除这些文件吧。

还得停掉原来的旧主机,可以在Account Center里自助进行:billing > request to close,比如:

plesk migration: close old service

注意并不是一申请就立刻关闭,而是按整月计的,比如:我的旧主机是2007年7月19号租下的,migration到新主机后,新主机将从2008年7月19号开始计算日期;同时我申请关闭旧主机的时候,也只能选择在7月19号、8月19号、9月19号等没有19日关闭,也就是凑够整月。

这个简单的问题疑惑了我很久呢,嘟噜嘟噜问了客服N回,后来自己点点这个功能试试,一切就都清楚了。如果不关闭的话,下一年的账单可又是$500哦。

参考

Update @ 2008-07-20

补充说明一下,刚才看了一下账单,旧主机的“时间”并没有“续”到新服务器上,新服务器的钱是另外单算的,但时间确实是以19号为期限。即:旧主机不动,新主机从2008-07-11到2008-07-18还要收$11,之后才是从2008-07-19到2009-07-18的年费$500。另:ip一年是$12,应该还算便宜吧。

Update @ 2008-07-22

MT还不愿自动关闭旧主机,都21号了,我怕再出什么变故,提交了一个support request询问了一下,今天才“正式”被关闭了。我在想,如果我不要求关闭,会不会一直开下去,还不收钱呢。。。?

关闭之后再访问旧主机页面,好嘛,已经被“升级”到dv 3.5了,这次手可够快的,哼哼。

Update @ 2011-07-16

今天将主机又升级到了 DV4,再用 Unix Bench 算一下,速度大增啊,赚了:

BYTE UNIX Benchmarks (Version 4.1-wht.1)
System -- Linux fwolf.com 2.6.18-028stab091.2 #1 SMP Fri Jun 3 00:02:40 MSD 2011 x86_64 x86_64 x86_64 GNU/Linux
/dev/vzfs             30000000   8393836  21606164  28% /

Start Benchmark Run: Sat Jul 16 05:26:18 EDT 2011
 05:26:18 up  2:57,  1 user,  load average: 0.16, 0.11, 0.03

End Benchmark Run: Sat Jul 16 05:36:23 EDT 2011
 05:36:23 up  3:08,  1 user,  load average: 17.75, 7.10, 3.02


                     INDEX VALUES            
TEST                                        BASELINE     RESULT      INDEX

Dhrystone 2 using register variables        376783.7 27501042.5      729.9
Double-Precision Whetstone                      83.1     1779.1      214.1
Execl Throughput                               188.3     6382.8      339.0
File Copy 1024 bufsize 2000 maxblocks         2672.0   280904.0     1051.3
File Copy 256 bufsize 500 maxblocks           1077.0    65361.0      606.9
File Read 4096 bufsize 8000 maxblocks        15382.0  2573713.0     1673.2
Pipe-based Context Switching                 15448.6   164684.0      106.6
Pipe Throughput                             111814.6  3194647.9      285.7
Process Creation                               569.3    20258.7      355.9
Shell Scripts (8 concurrent)                    44.8     2845.5      635.2
System Call Overhead                        114433.5  2355994.7      205.9
                                                                 =========
     FINAL SCORE                                                     424.3

Ubuntu从Gutsy升级到Hardy,php5-sybase又掉链子

升级非常简单,/etc/apt/source.list中的gutsy替换为hardy,然后aptitude updateaptitude safe-upgradeaptitude dist-upgrade,下载一大堆包安装半天就完事了,不过和以前几次升级一样,hardy中自带的php5-sybase 5.2.4-2ubuntu5.1还是不支持sybase:

[12-Jun-2008 09:13:13] PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20060613+lfs/sybase_ct.so' - /usr/lib/php5/20060613+lfs/sybase_ct.so: cannot open shared object file: No such file or directory in Unknown on line 0

没办法,再修改源,降级回Gutsy中的5.2.3:

$ sudo aptitude install php5-sybase=5.2.3-1ubuntu6.2 php5-gd=5.2.3-1ubuntu6.2 php5-mysql=5.2.3-1ubuntu6.2 php5-tidy=5.2.3-1ubuntu6.2 php5-sqlite=5.2.3-1ubuntu6.2

我试过,装上这个5.2.3的sybase,也就是sybase_ct.so,是不能配合php 5.2.4使用的,只能保持php暂时不升级。

另外,这样弄了以后,php的tidy扩展不可用了,好在tidy不是必须的。

烦人的sybase。

Update @ 2008-06-13

LG未来窗775FT显示器被正确识别成了LG 775FT,不过fluxbox中默认的高分辨率可受不了,在gdm的init中用srandr设一下分辨率,修改/etc/gdm/Init/Default,在末尾的exit 0前面加上:

xrandr -s 1024x768

Gnome、GDM的分辨率一般可以在/etc/X11/xorg.conf中调整,不过fluxbox不认,只能用xrandr。

这次换了块GeForce4 MX 440 with AGP8X显卡,安装省事多了:

sudo aptitude install nvidia-glx
sudo nvidia-xconfig

驱动启用之后的logo也有变化,原来是白底色的,现在是灰色底色,反而不如以前的好看。

由于换了内核,virtualbox也要升级,并且前提是内核的header包要安装,不然vbox模块编译失败,软件能启动虚拟机却是无法启动的:

sudo apt-get install build-essential linux-headers-`uname -r`

另外由于pulseaudio的原因,目前还是个聋子。。。不过家里电脑升级后alsa一点也不受影响,原因复杂而又未知 🙁

Update @ 2008-06-14

changelog里查到关于sybase_ct的两处变更:

-- dAniel hAhler <ubuntu@thequod.de>  Wed, 19 Dec 2007 10:48:04 +0100
php5 (5.2.4-2ubuntu1) hardy
* Fixes sybase_ct for MS SQL (LP: #21995)

Bug #21995 in php5 (Ubuntu)

-- sean finney <seanius@debian.org>  Sun, 16 Sep 2007 14:46:06 +0200
php5 (5.2.4-1) unstable
* Switch php5-sybase to use the mssql extension instead of the sybase_ct
    extension.  Closes: #418734, #329065.

(后两个bug id是debian的:#418734, #329065,参见Debian Changelog php5

为什么总要把sybase和mssql往一起扯呢,分明是不一样的东东,再往下翻,和sybase有关的改动最早也是2004、2003年的了,要不说sybase可怜呢,不冤枉。经常看看这里,看什么时候才能把sybase_ct.so加上吧。

现在弄得php怪怪的,gregarius总是没法update: Segmentation fault,可能也是和版本混合有关系;升级到最新的5.2.4-2ubuntu5.1就好了,可这时sybase_ct.so又没了。

Update @ 2008-06-15

没有声音的问题终于解决了,绕了一大圈,先调了半天pulseaudio,后来没弄好,干脆卸载了,然后发现真正的问题是没有找到声卡硬件,即使这样,pulseaudio也不再装了,看网上兼容问题挺多了,还是先用alsa,等成熟了再用pa。

没有声卡硬件的问题,我的机器是Dell GX620:

00:1e.2 Multimedia audio controller: Intel Corporation 82801G (ICH7 Family) AC'97 Audio Controller (rev 01)

先怀疑是alsa的问题,按照HdaIntelSoundHowto重新编译了alsa,未果,后来从怀疑alsa转为怀疑声卡硬件,因为lsmod里面没有任何关于snd相关的内容,进而再转为怀疑内核,终于翻到了Ubuntu 8.04下AC97声卡驱动问题的解决,安装linux-ubuntu-modules-2.6.24-19-generic,重启,然后就好啦。804看来升级跨度有点大,用的新东西有点多,以前都不用安装ubuntu-modules包的。

php5-sybase的问题提交了个bug report,看有没有人搭理。

Update @ 2008-07-28

如上,如果声音有问题出不来的话,海内扎绵羊游戏会有问题,只见羊跑见不到扎中没扎中,也不出成绩板。装好ubuntu-modules后重启马上就好了。