[Linux Ubuntu] 给我的ThinkPad X200在Ubuntu上加入APS的支持
转载本站文章请注明,转载自:扶凯[http://www.php-oa.com]
本文链接: http://www.php-oa.com/2009/05/20/thinkpad-x200_ubuntu_aps.html
近来才发现IBM的APS保护功能很不错,哈哈,很象iPhone的重力感应.呵呵,不过,我想没有人会拿x200来玩重力感应.
APS技术的工作原理,当笔记本电脑硬盘工作时,硬盘磁头在磁盘上方运动,进行数据读取,当撞击力在持续2毫秒内小于200G时,一般可以靠 ThinkPad本本本身的外壳与防震设计来减震,避免对硬盘造成损害.而当撞击力在持续2毫秒内超过200G后,损害将会随着撞击能量的加大而加大,但硬盘处于非工作状态时,磁头处于停止区,硬盘在1毫秒内最大可以承受800G的冲击.当撞击超过800G/1毫秒后,损害将会随着撞击能量的加大而加大(见图右边的函数图).也就是说如果可以及时将硬盘磁头归位到停止区,则硬盘可以忍受比在工作状态下更大的冲击而不受损害.IBM APS技术就是基于上述原理,在预测到有可能发生撞击后,及时地将磁头移动到停止区以保护硬盘.

要支持aps,有几点
要使用hdaps驱动程序,从硬件传感器读取数据(内核内置此驱动,但不要使用,推荐使用tp_smapi 提供的驱动),所以先用下面的方法先删除原来的.
#sudo rm /lib/modules/`uname -r`/kernel/ubuntu/misc/thinkpad_ec.ko
#sudo rm /lib/modules/`uname -r`/kernel/ubuntu/misc/tp_smapi.ko
#sudo rm /lib/modules/`uname -r`/kernel/drivers/hwmon/hdaps.ko
然后下载所需要的软件
* tp_smapi-0.4 from here: http://sourceforge.net/project/showfiles.php?group_id=1212&package_id=171579
* hdapsd-20090401.tar.gz from here: http://sourceforge.net/project/showfiles.php?group_id=138242&package_id=308030
* gnome-hdaps-applet-20081204.tar.gz from here: http://www.zen24593.zen.co.uk/hdaps/
解压到桌面
#tar xvfz hdapsd-20090401.tar.gz
#tar xvfz tp_smapi-0.40.tgz
#tar xvfz gnome-hdaps-applet-20081204.tar.gz
开始安装tp_smapi之类相当模块
#cd Desktop/tp_smapi-0.40
测试着load那个mod
#sudo make load HDAPS=1 FORCE_IO=1
如果上面显示"drivers successfully loaded",你就可以进行下面的安装
#sudo make install HDAPS=1 FORCE_IO=1
以后要自动加载模块的话
#sudo gedit /etc/modules
加入下面几行
thinkpad_ec
tp_smapi
hdaps
在打开
#sudo gedit /etc/modprobe.d/local.conf
# enable thinkpad_ec
options thinkpad_ec force_io=1
# option to correctly set tilting through hdaps sensor
options hdaps invert=1
检查
现在查看是不是有hdaps的mod.
lsmod | grep hdaps
如果没有的话
sudo modprobe thinkpad_ec tp_smapi hdaps
你有可能要安装
sudo apt-get install hdaps-utils hdapsd
测试
现在就可以打开测试一下,呵呵
hdaps-gl
移动一下你的电脑看看,是不是在动?
如果hdapsd不能工作,就编译一下他吧
cd Desktop/hdapsd-20090401/
./configure –prefix=/usr/
make ; sudo make install
好了,可以使用命令来测试一下
sudo hdapsd -d sda -s 15 -a -v -y
如果你移动时上面的数据改变,就行了
自动启动和APS图标监控
为了让hdapsd能系统启动就启动,还要进行下面的事情
wget http://www.unet.univie.ac.at/~a0604095/hdapsd
sudo chmod 733 hdapsd
sudo cp hdapsd /etc/init.d/
sudo /etc/init.d/hdapsd start
以上命令启动
sudo cp hdapsd /etc/default/hdapsd
默认启动
现在安装gnome-panel-applet,这样可以在系统上面显示个小图标,来显示状态,就知道是否工作正常了
sudo apt-get install libpanel-applet2-dev
cd Desktop/gnome-hdaps-applet-20081204
gcc $(pkg-config –cflags –libs libpanelapplet-2.0) -o gnome-hdaps-applet gnome-hdaps-applet.c
sudo cp gnome-hdaps-applet /usr/bin/
sudo mkdir /usr/share/pixmaps/gnome-hdaps-applet/
sudo cp *.png /usr/share/pixmaps/gnome-hdaps-applet/
sudo cp GNOME_HDAPS_StatusApplet.server /usr/lib/bonobo/servers/
这样你就算安装成功了,在面板上添加附件能看到hdapsd的图标.



















我的是T400,也可以吗?
可以
动驱动我总是惊惊地,有过一次显卡驱动装错后进不去系统的情况~~~
顺便问一下,为什么T400进Ubuntu时总会将CMOS->Config->Display 设为Switch呢?开始不知道的时候就觉得很奇怪为什么回到XP后分辨率就变低了,后来才发现,是因为Ubuntu没有独显示驱动的原因吗?
想请问如何保护多个硬盘呢?我的T60安装了第二硬盘,现在只能保护其中一个,不知道怎么设置才能同时保护,网上搜索了一下,好像说将来会支持。。。。。。。。
好热闹