4/01/2010

[GNOME]OAFIID:Gnome_ClockApplet

前几天遇到一个奇怪的问题,Gnome-panel 上显示时间的Clock 不见了,我从"Add to Panel"重新添加Clock 则报错:"OAFIID:Gnome_ClockApplet",我用的是Gentoo,自然想当然的运行revdep-rebuild,但rebuild 之
后问题依旧,上网搜了一下,也没有具体给出解决办法。于是搜ClockApplet,终于找到Clock 程序的配置文件
:/usr/lib/bonobo/servers/GNOME_ClockApplet_Factory.server,打开后,第三行指出了具体的库文件:location="/usr/lib/gnome-panel/libclock-applet.so",这下就好办了。

ldd /usr/lib/gnome-panel/libclock-applet.so

果然,大部分链接都没问题,但出现以下结果:
    libssl3.so.12 => not found
    libsmime3.so.12 => not found
    libnssutil3.so.12 => not found
    libnss3.so.12 => not found
   
然后运行: qfile libssl3.so.12 libsmime3.so.12 libnssutil3.so.12 libnss3.so.12

dev-libs/nss (/usr/lib/libsmime3.so.12)
dev-libs/nss (/usr/lib/libnssutil3.so.12)
dev-libs/nss (/usr/lib/libnss3.so.12)
dev-libs/nss (/usr/lib/libssl3.so.12)

这样就找出了有问题的库文件对应的包名称,赶紧 emerge -q dev-libs/nss 吧,完成之后再次添加Clock 程
序就正常了 :-)

3/26/2010

PHY 与 MAC

网卡工作在OSI model 的最后两层,物理层(Physical Layer )和数据链路层(Data Link Layer)。

物理层的芯片称之为PHY。物理层定义了数据传送 与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层设备提供标准接口。

以太网卡中数据链路层的芯片称之为MAC控制器, 数据链路层则提供寻址机构、数据帧的构建、数据差错检查、传送控制、向网络层提供标准的数据接口等功能。

MAC和PHY之间的关系是PCI总线接MAC总 线,MAC接PHY,PHY接网线(当然也不是直接接上的,还有一个变压装置),很多网卡的这两个部分是做到一起的。

PHY和MAC之间互连的界面是IEEE定义的标准:MII/GigaMII(Media Independed Interfade,介质独立界面)。MII界面传递了网络的所有数据和数据的控制。

参考:http://en.wikipedia.org/wiki/PHY_%28chip%29

3/09/2010

公元纪年换算成花甲纪年

老祖宗的东西,别忘了。

  公元纪年与花甲纪年之间有着固定的对应关系,根据其对应关系可以发现一定规律,找出换算方法。
花甲由十天干和十二地支两部分组成,那么我们换算的过程也分两步。在此之前请先记住一个中国人 很敏感的数字"4"。
  
第一步:确定天干。找出将换算成花甲纪年的公元年份的尾数,如1982年尾数为2,1984年 尾数为4。那么尾数
  有0至9共十个数字,正好和天干数目相等。将4与甲对应、5与乙对应、6与丙对应……0与庚对 应、1与辛对应、
  2与壬对应、3与癸对应,可确定天干。

第二步:确定地支。我们将公元年份除以12取余数,可得出0至11共十二个数字,正好与地支数 目相等。将4与
  子对应、5与丑对应、6与寅对应……10与午对应、11与未对应、0与申对应、1与酉对应、2 与戌对应、3与亥对
  应,可确定地支。
  如1982年尾数为2,除以12余2,为壬戌年;1984年尾数为4,除以12余4,为甲子 年;2038年尾数为8,除以12余
  10,为戊午年。

3/02/2010

udev 升级到151之惊魂记

昨天我的笔记本升级系统,顺便把udev 升级到151,重启机器之后hda 设备找不到了,ls /dev/hd* 也没东西,顿时一惊,硬盘没mount 上来,我啥也做不了啊,怎么办?心想应该是udev-151搞的鬼,于是在另外一台机器上搜索udev-151的ChangeLog, 才知道udev-151 remove remaining support for CONFIG_SYSFS_DEPRECATED,再检查我的笔记本的kernel config 中CONFIG_SYSFS_DEPRECATED 选项,居然还是选中的,赶紧去掉重新编译,可是 boot 分区没办法mount 啊,怎么把这个编译出来的新kernel 复制过去呢? 找到一张linux 启动光盘,然后mount 这个boot 分区不就OK 了?我正是这么做的,之后就很顺利了,现在笔记本又启动正常了 :D

2/10/2010

emerge error: "libGL.la" No such file or directory

今天系统sync 之后发行ibus 和ibus-pinyin都有更新了,于是开始更新ibus,谁知编译到一半说找不到libGL.la,这是哪个包里面的呢?
运行:qfile libGL.so
结果:media-libs/mesa (/usr/lib/opengl/xorg-x11/lib/libGL.so)

于是重新emerge -q media-libs/mesa,结果还是不行,在网上搜了一圈没解决问题,于是到mesa 的portage 目录一看,该 media-libs/mesa/files/lib 下面有:
libGL.la和 libGLU.la 两个文件,原来libGL.la 这个文件藏 在这儿,唉!~

估计是安装media-libs/mesa的脚本出问题了,忘记复制libGL.la 到/usr/lib/下面了。





1/22/2010

无线网络安全问题

今天在网上搜wpa_supplicant 以及 AP 的加密方式等资料,发现网上有很多讲破解无线网络的文档,其中提到了破解需要的工具,这里记录一下:

系统: BackTrack
网卡:卡王(台湾Wifly-City的产品)
AP: SMC-WTVG(选用这款的原因是便携,而且功能是非常强大,结合无线路由器(54M)、VoIP网络电话、无线AP、客户端、无线网卡等.)

我还是第一次听说BackTrack 系统,引用 wikipedia(http://en.wikipedia.org/wiki/BackTrack)的说明:

BackTrack is a Linux distribution distributed as a Live CD which resulted from the merger of WHAX (previously Whoppix) and the Auditor Security Collection, which is used for penetration testing.

虽然BackTrack 是Linux 发行版,但是它最大的区别就是它是 Monolithic kernel,翻译成中文是单内核,有空一定要装装看。

交叉编译 openssl

前段时间做过 WiFi的项目,现在功能基本正常,但是目前只支持WEP,对 WPA1/WPA2等不支持,所以需要考虑后续改进的问题。
对于 WPA1/WPA2,在Linux下一般通过wpa_supplicant 来连接AP,而wpa_supplicant 认证过程使用了openssl 的库,因此需要先交叉编译openssl,这里做个笔记 :)

./Configure --prefix=../openssl-arm os/compiler:arm-none-linux-gnueabi-gcc

make 编译之后如果直接make install 的话会报错:
making install in crypto...
make[1]: Entering directory `/wireless/openssl-0.9.8l/crypto'
cp: cannot create regular file `../openssl-arm/include/openssl/crypto.h': No such file or directory
chmod: cannot access `../openssl-arm/include/openssl/crypto.h': No such file or directory
cp: cannot create regular file `../openssl-arm/include/openssl/tmdiff.h': No such file or directory
...

所以我没有 install,反正编译wpa_supplicant 时只需要openssl 的 libssl.a、 libcrypto.a以及 include/openssl/ 下的头文件