• emerge world又杯具了

    日期:2009-10-28 | 分类:Linux

    好吧,我实在是无聊到死了,看着gnome 2.26终于在portage树里面stable,手痒痒从半年前的x86~测试分支切回会稳定分支,包括不少升级和降级,然后,餐具就发生了。

    先是emerge到1/3断掉,说编译器已经不能产出可执行文件了。运行gcc-config又失败,连/etc/init.d/functions.sh都找不到了。再后来,ls也报错,source /etc/profile也报错。 I'm doomed! 要知道明天不是周末!

    尝试etc-update把所有配置都更新了(好在还能运行),/etc/profile报的错就没了,看来是什么DIRCOLOR之类的变更了。后来得知/etc/init.d/functions.sh是在baselayout里面,重新安装baselayout又不行,编译器根本不正常工作,到底是先有鸡还是先有蛋?

    仔细看一下,make的错误是'as' 不能被execlp,忘记as命令是做什么的了,google找as真是徒劳,因为是常用词,完全被忽视了。后来找到那些编译工具藏身的地方,ls -l /usr/i686-pc-linux-gnu/bin/,全部软链丢失,终端一片血红,

    然后找这些丢失的ar,ld之类的程序,知道都是属于binutils这个包,仔细看这些软链指的路径/usr/i686-pc-linux-gnu/binutils-bin/2.19/..., 原来是binutils降级成2.18之后,软链路径没有更新,sigh~

    最后把那些软链更正,emerge -1 baselayout,成功脱困。

    都是无聊惹的祸阿,虽然这次不算是杯具收场。

  • 超高负载环境下的sendmail设置

    日期:2009-08-01 | 分类:Linux

    RHEL4

    在/etc/sysconfig/sendmail中设置

    Queue=5s
    SENDMAIL_OPTARG="-OQueueLA=200 -ORefuseLA=0"

    Queue是命令行参数-q的数值,意为5s跑一次Queue Runner。QueueLA和RefuseLA是sendmail.cf里面的参数,分别是Queue Runner运行时load上限,和拒绝投递的上限。部分参数在sendmail.cf里面设置的话会不起作用,比如QueueLA,不知道是不是bug。我们有台机器Load会达到180,最小时也在50多,这些参数默认值低得很,根本不能工作。

    ps:不要误解,运行sendmail不是用来做邮件服务器,因为要用mail这样的命令来发送邮件,只是要一个MTA来保证第一次投递失败会有人帮你继续投递而已。

  • dbus policy

    日期:2009-06-26 | 分类:Linux

    又一次ugrade newuse world,烦人的dbus policy...

    pulseaudio不能工作了,如果syslog报告因为dbus access denied的话看 http://pulseaudio.org/ticket/582

    如果gnome-volume-properties也告诉你无权限了,也是由于dbus策略的缘故,那是因为你不在plugdev组里头。

    总之,policy多了就是烦人,况且这种dbus policy偶觉得还是强加给用户的。程序必须有一个策略才能用dbus通信。现在我已经属于十多个组了。

  • eselect

    日期:2009-01-17 | 分类:Linux

    Gentoo的eselect是一个多用途的配置工具,比如切换不同的implement,配置fontconfig的conf.d等等。

    今天才知道emerge完nvidia-drivers还不够,因为用nvidia驱动的话必须要用nvidia自己的libGL才有3D加速,但装完之后它的ebuild会自动把openGL的implement自动切回X11的openGL实现。所以要用eselect重新切到nvidia的实现才有driect rendering。

  • 让人无语的流量测试

    日期:2008-12-07 | 分类:Linux

    用nload不加参数启动,当看到cur 0.xxKBit/s时,实际上应该是0.xxMBit/s,而当流量涨到MBit/s以上的时候读数又正确了,又或者启动就指定-u k|m|K|M就是正常的。

    另外,我用在一台笔记本上用tcpreplay -M 100发包只能达到0.3Mbps,可是启动iftop后立即上涨到 16 M,关掉iftop又降回来了。

    先前用iftop看到的收包流量不准,实际上是由于用tcpreplay发了有问题的udp包,但至于怎么有问题法,用tcpdump出来又看不出头部有什么区别。

    打流还是用测试仪来打比较靠谱,毕竟有那价格做信心保证。

    ------------

    ps: tcpreplay实际出来的速率要比参数指定的小不少,看它的代码,其实是计算速率之后跑个循环,至于为什么算错就不知道了。反正最后搞了一台8核服务器,打1300的大包,-M1之后加了好几个0,差一点点接近千兆线速了,ctrl+C之后得到准确发包数。