關於我自己

我的相片
Taiwan
別拿我跟一般人比,我是有人生終極目標的!(看不順眼我說的話嗎?那你可以滾了!)

2009年5月28日 星期四

X200下的HDAPS妖魔鬼怪

ThinkPad系列的其中一項安全功能,HDAPS,用來在硬碟在劇烈晃動的時候park讀取裝置,可以降低壞軌的機會。在Ubuntu 9.04下,其實該功能在kernel是有內建支援,不過據我了解在我的x200不太能用。Google了半天,嘗試了千百種方式,卻最後是給T400用的方式成功(雖然晶片應該都是同一種)。

今天拎背背痛,不能去夜店,就花點時間寫下來拎背安裝的步驟,讓你們這些笨蛋參考。

拎背ㄟ uname -a … 2.6.28-11-generic … x86_64 GNU/Linux (也就是說,這是我的環境。不過,就算環境跟我一樣,以下步驟造成出事,自己負責。)

以下是 機勒 的中譯內容與整理出來的一些其他內容綜合。
下載下面三個套件 (最好是進入頁面,尋找最新版本)
第一個是tp_smapi,基本功能是用來控制電池的充電與提供更多的電池資訊,也額外包括了HDAPS的driver在裡面。
第二個hdapsd,顧名思義,就是控制hdaps的妖魔(daemon)了。
第三個,在gnome桌面下可以顯示hdaps狀態的applet,就是跟windows右下常駐的那個一樣。(平常是play符號,硬碟搖動會變成pause符號。)用KDE的傢伙們,呃,拎背不知道,自己去找。
然後每一個都用 tar xvfz 解開。

再來,刪除或更名原有的三個modules:($KVER是使用kernel版本)
  • /lib/modules/$KVER/kernel/ubuntu/misc/thinkpad_ec.ko
  • /lib/modules/$KVER/kernel/ubuntu/misc/tp_smapi.ko
  • /lib/modules/$KVER/kernel/drivers/hwmon/hdaps.ko
先進入tp_smapi資料夾,嘗試輸入:
$> make load HDAPS=1 FORCE_IO=1 (前面可以加sudo)
看看有沒有出現「drivers successfully loaded」,任何步驟有錯誤出現的話,就跳過這一篇,請google其他方式。
再來,
$> make install HDAPS=1 FORCE_IO=1 (前面也可以加sudo)
安裝好driver。
打開 /etc/modules 這個檔案加入下面三行,來指定開機要load的modules(應該是吧)
thinkpad_ec
tp_smapi
hdaps
打開 /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
(雖然我不知道為什麼要給他invert?我在hdaps-gl顯示的轉動方下xy軸就變反的,不過我還是加了。)

$>lsmod | grep hdaps
hdaps 20612 0
thinkpad_ec 15896 2 hdaps,tp_smapi
出現類似以上,確定成功載入modules。
如果沒有,
$> sudo modprobe thinkpad_ec tp_smapi hdaps (手動載入,不然要重開機也行。如果重開機還沒有,那就放棄這篇。undo上面步驟。)

$> sudo apt-get install hdaps-utils hdapsd (安裝hdaps相關功能)
之後,你可以輸入
$> hdaps-gl
會出現3d的thinkpad,這時候你可以反轉你的電腦,來測試hdaps有沒有安裝成功。(像這樣)

還沒完!hdaps妖魔還沒真的有用。

進入 hdapsd-20090401/(或更新版本)目錄,安裝他。如:
$> cd Desktop/hdapsd-20090401/
$> ./configure --prefix=/usr/
$> make
$> sudo make install
然後,
$> sudo hdapsd -d sda -s 15 -a -v -y
會跑出一堆內容,這時候如果你晃動你的電腦,上面一直跑出來的數字會有改變,那就是安裝ok。

不過還沒完!!!

(這邊我就不太懂為什麼)
以下要重新下載另一個hdapsd,並安裝。
$> wget http://www.unet.univie.ac.at/~a0604095/hdapsd
$> sudo chmod 733 hdapsd
$> sudo cp hdapsd /etc/init.d/
下載的hdapsd,owner跟group可能會是你自己的帳號,雖然我不知道會不會有影響,所以我還是改成root
$> chown root hdapsd
$> chgrp root hdapsd

最後,
$> sudo /etc/init.d/hdapsd start
啟動hdapsd。

安裝最後一個套件,進入gnome-hdaps-applet目錄,
$> sudo apt-get install libpanel-applet2-dev (安裝一堆有的沒的)
$> 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/
重開機後(或登出登入),就可以加入hdaps applet在面板上。然後來搖晃你的電腦,看看有沒有用。

如果想改變hdapsd的設定檔,編輯 /etc/default/hdapsd。我自己認為,敏感度15太敏感了,所以調成25。

來確認是否真的hdaps真的有鎖定讀取頭:(沒有smartctl,自己sudo apt-get install)
$> sudo smartctl -a /dev/sda | grep Load_Cycle
會出現類似:
193 Load_Cycle_Count 0x001a 099 099 000 Old_age Always -
3488
這個3488就是你讀取頭鎖定的次數。再來,搖晃你的電腦,再重新檢查一次,看鎖定次數有沒有增加,有知道有沒有成功。

基本上,一個硬碟的讀取頭鎖定(park)次數大概在60萬次左右,之後壽命就差不多了,每次關機會增加一次。用電池的時候,會常常鎖定來減省電力,幾小時可能到上百次,來保護磁頭。所以你不希望沒事就狂搖晃你的電腦,除非你有錢到用SSD。這時候你就可以嘗試拿hdaps來玩電動

2009年5月10日 星期日

XMind 用自己的jre



XMind 一個看起好像很屌的「brainstorm」製圖軟體,對老子感覺再有新構想的時候好像還不錯用。

登入了網站下載了ubuntu x64 deb安裝,…蝦密?!要安裝open jre,切,不要!改下載portable版本。
點開資料夾進到 XMind for Linux 64bit\
$>./xmind
蝦密,找不到jre!(沒有仔細看錯誤訊息)
找遍程式目錄,就是沒找到可以設定jre目錄的設定檔。(他媽的,平常的話早就不用了!)

拎背今天心情好,所以再看了一次錯誤訊息。原來,程式只會固定找XMind for Linux 64bit目錄下的jre folder。切,怪方式!
∴ $XMindPortableHome\XMind for Linux 64bit\ 下面建個 symbolic link到jre就好了....($> ln -s /$javaHome/jre jre)

最後記得要把 xmind.ini 裡面的相對路徑改成絕對路徑(如放在主選單目錄),否則用絕對路徑啟動的時候會有找不到class的錯誤!

2009年5月6日 星期三

新x200電腦包


很多人對我的叉楞霸的新電腦包很有意見。

「很難看耶!」
「會撞壞耶!」
「送的包包不用,幹麼用這個!」
之類的...
我說:
「屁勒!」
「叉楞霸都防彈了還會怕撞壞!」
「原廠送的targus才叫難看!」

2009年5月3日 星期日

在firefox下手動加上java plugin有多難!(in amd64 machine)

超級難!因為x86跟amd64版本的firefox java plugin位置名稱與檔案名稱根本不一樣(not even close)!java.sun.com寫得只有x86版本的加入方法!這整整花掉我2小時!

請在 $JAVA_HOME/jre/lib/amd64/libnpjp2.so 找到這天殺的傢伙!
然後分別在下面三個地方加入 symbolic link 指向那個so檔案。
  • /usr/lib/firefox/plugins/
  • /usr/lib/mozilla/plugins/
  • ~/.mozilla/plugins/
然後重起firefox,網址輸入 about:plugins 就可以觀看已載入plugs相關資訊。

(2009 07 29 註)
要讓firefox支援jnip,同上目錄找到「libjavaplugin_jni.so」,同樣加到那三個目錄。
升級到firefox3.5可能要重作一次。

Ubuntu 9.04 x200 track point(小紅點) scrolling解決方法

Create a new file called /etc/hal/fdi/policy/mouse-wheel.fdi typing:

sudo gedit /etc/hal/fdi/policy/mouse-wheel.fdi

And fill it with this code:

<?xml version="1.0" encoding="UTF-8"?>

<match key="info.product" string="TPPS/2 IBM TrackPoint">
<merge key="input.x11_options.EmulateWheel" type="string">true</merge>
<merge key="input.x11_options.EmulateWheelButton" type="string">2</merge>

<merge key="input.x11_options.XAxisMapping" type="string">6 7</merge>
<merge key="input.x11_options.YAxisMapping" type="string">4 5</merge>
<merge key="input.x11_options.ZAxsisMapping" type="string">4 5</merge>
<merge key="input.x11_options.Emulate3Buttons" type="string">true</merge>

</match>

重開機

source