2007年11月30日

gnome的小技巧

來自Ubuntu 正體中文站 討論區 的"ㄚ小"
GNOME應用技巧:
1、視窗最大化時,直接拖標題欄,可立刻縮小視窗,如果不松手,再拖回桌面邊緣,又可馬上恢復最大化。
2、快速拖動視窗:按住 Alt 鍵,然後在任一視窗拖動鼠標左鍵,即可拖動視窗。
3、在桌面或文件管理器中直接安 / 就可以輸入地址,打開nautilus文件管理器。
4、快速搜索:在 vi 或 Firefox 中直接按 / 即可進入搜索狀態。
4、如果文件夾裡面很多文件,比如/usr/bin下面,則可以直接輸入文件名快速定位。
6、可在 工作區切換器 中直接將一個視窗從一個桌面拖到另一個視窗。
7、工作區切換:a、在 工作區選擇 圖標上滑動鼠標滑輪。 b、先同時按住 Alt + Ctrl 鍵,再按鍵盤上的左 右方向鍵。
8、切換視窗:a、先按下 Alt鍵,再按 Tab 鍵。 b、任務欄滾動鼠標滑輪。
9、修改目錄圖標:可將文件管理器中的圖片直接拖到文件夾屬性所在的圖標上。
10、鼠標中鍵直接單擊 滾動條 的空白處,屏幕即滾動到那處。
11、快速粘貼:先在一個地方選中文字,在欲粘貼的地方按鼠標 中鍵 即可。
12、等效中鍵:a 、按下滑輪等效於中鍵。 b、同時按下鼠標 左右鍵,等效於中鍵。
13、壓著shift拖動視窗可以讓視窗吸附在屏幕的邊緣。
14、快速重啟X服務: 同時按下: Alt + Ctrl + Backspace 三個鍵。
15、打開「運行」視窗: 同時按下 Alt + F2 鍵。
16、螢幕照相 全屏:直接按下 PrtScr 鍵。 當前視窗:同時按下 Alt + PrtScr 鍵。 延時照相:在 終端 或 「運行」視窗中輸入命令: gnome-screenshot --delay 3 ,將延時 3 秒後照相。
17、純字符終端滾動屏幕: 同時按下 Shift + PageUp 或 Shift + PageDown。
18、終端命令補全: 輸入命令的前幾個字符,再按 Tab 鍵兩次,可顯示所有與輸入字符前身匹配的命令。
19、快速呼出視窗欄菜單: 同時按下 Alt + 空格鍵 ,可顯示視窗欄菜單。
20、scim 下快速切換中英文狀態: 單獨按 Shift 鍵。
21、在nautilus的地址欄裡輸入」" fonts:/// "就可以查看本機所有的fonts
22、nautilus中中鍵按兩下文件夾是打開在新視窗,和shift+左鍵同等效
23、ctrl+滾輪是縮放圖標
24、直接將 文件管理器 中的文件拖到 GNOME終端 中就可以在終端中得到完整的路徑名。
25、網站鏈接和圖片可直接拖放到桌面或者目錄,可以馬上下載。(無名不行 無名請右鍵view page info 找到圖片 再按save)

以上功能有些在kde中也是共用的,可以試試看

結論是在linux裡中鍵還真好用 哈哈
要是沒有寫到的請幫忙補充 謝謝

2007年11月26日

IBM的num lock

最近買了一台二手的IBM X31,因為希望可以輕便攜帶,看到X32,X41好像都是用1.8"的硬碟,對於網路上批評效率不彰早有所聞
X31的雖然不完全符合centrino,不過畢竟是pentium m的cpu(是130nm製程orz),又有無線網路,於是就挑上了他
帶回家就是重新format安裝,我可不知道對方會在電腦裡面留下啥東西,format來的比較安心啦,因為二手,還原區早就不見了

接著因為兩台電腦,我一班都是遠端到X31,免得兩邊跑(在不同地點),結果當我到X31面前的時候,我竟然無法登入,仔細一看是num lock
我遠端用的是一般桌機的鍵盤,所以num lock是打開的,這點應該不難,我就是找fn+num lock應該就可以解決~晴天霹靂,沒有.....
再網路上找了好一下子,終於發現,他是shift+num lock~就是這個害我用好久Orz,IBM你竟然大方的作出num scroll lock等等,就不差一個num lock吧
雖然一般人用不大到,我也是因為桌機遠端才會有這個問題,唉~~~
找到了,shift+NumLk就可以了

X31的小紅點真好,穩定性好,也不用擔心不小心安到touch pad(根本沒有),目前如果只是要暫時出門報告,帶著這台出門,比以前的輕鬆許多
雖然是二手,不過電池還有兩個多小時哩,螢幕老化的狀況也還好,希望她起碼可以陪伴我兩年,因為畢竟已經很老了
會買這台的原因,因為現在沒有一台滿意的輕薄機種(主要都是價格太貴啦>.<),有些重量足夠輕盈,不過續航力就差了
繼續等待我的下一台X31

2007年11月23日

降低CPU速度for NB

來自~http://slowlymouse.blogspot.com/2007/11/ubuntu-cpu.html
實在了不起,Linux愈作愈好,慢慢貼近使用者,不過我沒膽子試驗Orz
為了保險起見,我把文章複製過來~自己備份一下
==================================================================
目前以中高階notebook而言,搭載雙核心處理器早已不足為奇,但是『雙』核心也意味謂著運作時將產生更多的廢熱,尤其當兩個核心工作滿載,更可以達到 80幾,將近90度的高溫(左圖有真相),其散熱鰭片孔所排出來的熱風,足以媲美寒冬裡溫暖妳手心的7-11關東煮,如果你願意拿它來烘手的話!

  如果再加上 ThinkPad X61右手掌底下動輒50幾度的無線網卡,這下雙手真的可以不用畏懼冬夜裡的寒風了,但是,這麼貼心的設計可只有『冬日限定』,問題是臺灣的冬天,只有短短三個月阿!

  高溫是所有電子元件壽命的殺手,特別是小巧的Notebook,不過當電話那頭的老闆十萬火急的要著上次meeting的結果,而實驗室裡卻 只有一臺老古桌機可以用,這時候逼不得已讓筆電也站上火線!而為了筆電的壽命著想,需降低CPU全速運作時所產生的高熱,只好修改過於保守的CPU電壓 (voltage )預設值,不過網路上有關Linux系統上調整CPU電壓的資訊並不多( for XP 多到不行),辛好Linux-PHC 提供了非常完整的修改方法,過程也不難,只要到Linux-PHC Files下載適用的Patch,並且按照Howto的步驟就能輕鬆的降低CPU溫度。

  以下節錄自Linux-PHC官方文件『Howto undervolt a Core 2 Duo (and maybe Core Duo and Core processors)』,並加入簡單的註解。

主要步驟如下:
  • 下載 kernel-sources
  • Patching kernel-sources
  • 重新編譯部份modules
  • 覆寫舊modules
  • 更改cpu預設電壓
【下載kernel-sources】
  1. 使用Ubuntu 7.10版本,可以從apt下載 2.6.22-kernel source
  2. 在apt執行安裝完畢後,以下動作皆需要登錄為root身份。
  3. 進入目錄 /usr/src/ 下,解壓縮檔案 "linux-source-2.6.22.tar.bz2"。
  4. 進入新的子目錄"linux-source-2.6.22"下。
 command:

$ sudo apt-get install linux-source-2.6.22
$ sudo bash
# cd /usr/src
/usr/src# tar -xjf linux-source-2.6.22.tar.bz2
/usr/src# cd linux-source-2.6.22
【Patching the kernel】
  1. 執行patch前,需先安裝名為patch的程式。
  2. 將下載到桌面的phc-patch複製到kernel的子目錄底下( 記得將fallen改為你的使用者名稱 )。
  3. Patch 所下載的kernel-source。
  4. 複製ubuntu下的設定檔(kernel configuration)到目前的目錄底下。
  5. prepare kernel(準備kernel?)。
 command:

/usr/src# sudo apt-get install patch
/usr/src/linux-source-2.6.22# cp /home/fallen/Desktop/linux-phc-0.3.0-pre1/kernel-patch/linux-phc-0.3.0-pre1-kernel-vanilla-2.6.22.patch .
/usr/src/linux-source-2.6.22# patch -p1 <>
官方wiki提到,接下來系統『應該』會詢問有關cpu頻率和電壓的問題,如果有的話也只能答yes囉!不過,在我安裝的過程中並沒有看到任何對話框!

【重新編譯cpufreq modules】
  1. 輸入make prepare
  2. 輸入make scripts
  3. 重新建利modules(wiki說,要我們不用怕!)
 command:

/usr/src/linux-source-2.6.22# make prepare
/usr/src/linux-source-2.6.22# make scripts
/usr/src/linux-source-2.6.22# make M=./arch/i386/kernel/cpu/cpufreq
接下來會有一個 module.symvers 遺失的警告,不過 Linux-PHC Wiki 告訴我們"nothing in this world is perfect",這應該是無關緊要的意思吧,囧rz。

【安裝 patched module】
  1. 置換新module
  2. 移除程序裡的舊cpufreq module
  3. 下次啟動時系載入新的cpufreq module
 command
/usr/src/linux-source-2.6.22# cp arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.ko /lib/modules/$(uname -r)/kernel/arch/i386/kernel/cpu/cpufreq
/usr/src/linux-source-2.6.22# rmmod acpi-cpufreq
/usr/src/linux-source-2.6.22# modprobe acpi-cpufreq
Linux-PHC Wiki 並未提到接下來需不需要重新啟動,但是安裝時發現如果這個步驟沒有重新開機,會找不到部份的設定。

【變更電壓設定】
  如果過程中沒出錯的話,到這邊應當可以修改對應頻率(FIDs)的電壓值(VIDs)。不過kenel所提供的頻率與電壓單位,並非常用的GHz與Vlot. (伏特)而是採用相對應的整數。
先進入cpufreq目錄底下,列出相關設定檔案;
 command:

/usr/src/linux-source-2.6.22# cd /sys/devices/system/cpu/cpu0/cpufreq/
/sys/devices/system/cpu/cpu0/cpufreq# ls
可以發現phc-patch新增了下列六個檔案:
  • phc_controls
  • phc_default_controls
  • phc_default_vids
  • phc_vids
  • phc_fids
其中 phc_controls & phc_vids 是可以任意更動設定值的設定檔,檢視一下預設值,
 command:

/sys/devices/system/cpu/cpu0/cpufreq# cat phc_vids
以Core 2 Duo T7100為例,顯示"45 37 18 11",這4 個數字代表cpu有4個step可以變換,每一個step會對應一個電壓值,其中數字愈小表示電壓電壓愈低,Linux-PHC Wiki 也給了一個intel的網址 (http://developer.intel.com/design/mobile/datashts/314078.htm),可以查詢這些數字代表的意義,不過,有看沒有懂。

  更改電壓只需要下echo,例如將4個 step 的電壓更改為"18 18 11 11":
 command:

/sys/devices/system/cpu/cpu0/cpufreq# echo "18 18 11 11" > phc_vids
若要檢視是否更改成功,用cat再去讀一次phc_vids 就行了,如何找出適用於CPU的電壓設定,請參考下一篇(還沒寫完 XD)

『注意』:調整cpu工作電壓具有硬體損壞之風險,且需由個人所承擔,即使同為 Core 2 Duo T7100 也不一定適用同一組cpu電壓。

Server model下執行Virtual Box

自從接觸到 VirtualBox 後,一直想要把它的 Guest OS 當成 Host OS 中的服務來使用,因為這樣子,我就可以在 Linux Server 中再跑一個 Windows Server 。會這麼作的原因是要使用 MS Office API 來出 .doc 檔。

那麼該如何在 Linux Server 中,令它在一啟動時,即啟動 Windows Server Service 呢?其實很簡單,在你的 /etc/rc.local 中加入一行

VBoxVRDP -startvm WinXP &

這 樣就夠了, WinXP 是 Guest OS 的名稱。這種啟動方式,讓你不須要跑一個 X window 環境來秀出 Windows Server 的視窗,它會啟動在背景中,如果你有設定 Guest OS(WinXP) 可以遠端顯示的話,你可以在別台電腦以 rdp 連線來控制 Guest OS(WinXP) 。

設定好了以背景方式啟動 Guest OS 後,再設定外部連線可以轉到 Guest OS port 。設定指令如下:

# VBoxManage setextradata "WinXP" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/Protocol" TCP

# VBoxManage setextradata "WinXP" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/GuestPort" 80

# VBoxManage setextradata "WinXP" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/HostPort" 8080

上述指令只須設定一次即可,設定後,請重新開啟 VirtualBox 軟體。這樣別人就可以從 http://x.x.x.x:8080/ 來瀏覽你的 Windows Server 的網頁伺服器了。

出自http://hoamon.blogspot.com/2007/11/virtualbox-guest-os-host-os-linux.html

2007年11月22日

Ubuntu的調校

其實Ubuntu預設在安裝完畢之後,有些東西需要調整,當然新手一開始推薦使用LazyBuntu去作一些基本的安裝
之後在開始調整,當然也有人寫了一些Tweek的程式,可是本身我並不大想使用,如果你是一個懶惰的人可以考慮看看
系統=>管理=>服務開始關閉跟開啟一些必要的service,比方說如果你是IDE的硬碟,就要打開hdparam,這對速度非常有幫助的

接著有一些可以選擇性的開啟,比方說藍芽這個對電量是相當有影響的cupsys,如果你不常常要用印表機,這是可以關閉的;如果你不在意log檔案(你根本不會去看的話),可以試著把他們關閉,apport也是看個人意願,avahi-daemon這東西好像不大需要XD也可以關閉

我是使用NB,我機器上基本沒有藍芽Orz,所以我打開了hdparam,關閉了cupsys、藍芽、apport、avahi-daemon,其餘就是保持預設的樣子

接著有興趣的話,可以去安裝powertop,看看你機器是哪邊耗電量比較大,這個對於NB比較有幫助,呵呵;還有記得對於OpenOffice要作一些優化的管理,請參考我之前的文章,還有就是compizconfig-settings-manager,去除你不必要的部份特效,我想一堆人應該是跟我一樣手癢就想裝CompizFusion來玩玩吧,其實我覺得有用的就是那幾樣而已,我可不想讓一堆特效托慢我的速度,還搞得我眼花撩亂

如果有人是使用小黑的,可以看一下這裡http://yurinfore.blogspot.com/2007/10/x31-ubuntu-710.html
倒是蠻有趣的~他X31個改進喔

2007年11月21日

google blog的tag

Google阿,tag真的是不需要樹狀結構嗎?你可以人性化思考一點嗎?看著日益膨脹的tag,我真的有點無言
雖然說有時候一篇文章的分類是一個tag,可是google blog好像沒有tag的管理的樣子?(待會研究一下),這樣要修改都很難吧
一堆tag,有時候還是要群組一下比較好管理吧,有些老舊的tag,如beryl跟CompizFusion想整合成一個也沒辦法~唉~我這篇blog的結構就跟tag一樣~

找到了,在"張貼"=>"修改文章"=>這裡可以對文章作tag的批次管理;不過tag很多,不好瀏覽的問題還是在

在console mode下顯示中文(尚未成功)

或許一些比較老的玩家比較會想要這個功能,就是按下alt-ctrl+F1,2,...切換到console mode的時候,不能看到中文,總是有些不爽XD
可是接著看著wiki的文件,有兩種方式可以顯示中文,一個是zhcon,另外一個是jbfterm,前者感覺不大適應,我就想用後者
看著wiki寫著要支援framebuffer,我就開始網路上尋找如何啟動這東西,因為他想來是個module,一堆介紹從新編譯kernel Orz

終於讓我找到了,節錄如下
首先,編輯你的/etc/initramfs-tools/modules文件
sudo vi /etc/initramfs-tools/modules
加入如下三行內容
fbcon
vesafb
vga16fb
然後更新一下。
sudo update-initramfs -u

最重要的一步,要把文件/etc/modprobe.d/blacklist-framebuffer裡面的vesafb和vga16fb這兩行給註釋掉。
sudo vi /etc/modprobe.d/blacklist-framebuffer
接著可以用hwinfo --framebuffer參考可以支援的參數,其實可以直接注意/boot/grub/menu.lst的註解就可以了

不過不知道是不是因為我用vmware裝alternative cd(我想直接來試驗看看commend model的模式安裝,容量小),整個爛掉
更不幸的事情是~jfbterm無法啟用,說啥打不開/dev/fb0~唉唉~看來對中文還是有點無緣

2007年11月18日

安裝apache2

已經很久沒有接觸apache了,上次使用apache約在1.3左右,雖然說apache當時已經出來,不過基於為穩定的狀況,沒有使用
現在apache2基本上應該已經很穩定了,用ubuntu裝apache2, php, myssql向來都不是很困難的事情,不過麻煩的是後續設定
果然~apache2大搬風,設定檔的架構大改,不再是過去單一個設定檔,或幾個設定檔案include過來include過去

先改使用者目錄,我一直不喜歡public_html這樣的名字,喜歡用www
vim /etc/apache2/mods-enabled/userdir.conf
在這下面可以找到

apache2也多了不少設定跟增加的指令,對於虛擬主機的管理也是加強不少,應該是順應潮流吧,一堆東西也模組化
若要增加 virtual host
則要在 /etc/apache2/sites-avaible 下新增設定檔
用 a2ensite / a2dissite 啟動/關閉設定檔

修改完畢apache2之後開始對mysql動手腳,反正現在開始推utf8,當然要順應潮流囉,不要搞得"萬碼奔騰"
vim /etc/mysql/my.cnf
在 [client] 下增加
default-character-set=utf8
在 [mysqld] 下增加
default-character-set=utf8
default-collation=utf8_general_c
大致上來說是這樣,待會在看看有沒有必要裝PEAR,我真的離這東西太遠了,之前還在PHP4,轉眼已經到了PHP5,然後大家開始用PEAR
想來PEAR是學習perl作法吧,反正我沒有太多語言情節,好的作法大家就是要倣傚,然後流傳下去,程式語言過個十幾年換新的很正常

2007年11月6日

在Linux類似Matlab的Octave

Octave我對他也不熟悉,只有看過幾次,不過ㄋㄟ,為何要提到這個,我覺得這個是一些考研究所學生的"必備"軟體
怎麼說呢?因為很多工程科系的需要考線性代數這樣的一個科目,線性代數裡面有些題目充滿了matrix operations
如果只是在做考古題(常常沒有答案,或者懷疑作者算錯),在長長的matrix operations做完還可以保證正確的事情,沒多少人可以
我本人就這樣一個算三次,三次不一樣答案的天兵=.=!,有了Octave可以幫我們作matrix operation,這樣一來就剩下輸入跟作法的正確性了

底下先介紹一個好站http://scicomp.math.ntu.edu.tw/~scc/linear_algebra/content.htm
這位老師文筆不錯,呵呵~寫的還蠻好玩,蠻簡單的

在console輸入octave後就可以開始操作,要定義matrix,就是直接打入變數名稱等於多少,如
M=[1,2,3]
這個就是一個1x3的矩陣,接著如果要定義一個2x3,就用分號分開每一個row,如
M=[1,2,3;2,3,4]
接著一些基本的矩陣操作如轉置(Transport)M寫作M',如果要求invers就寫M^-1,底下是我們最熟悉的最小平方解的公式,在octave就寫成
x=(M'*M)^-1*M'*b
輕輕鬆鬆就得到解答,我還在試驗如何使用中,歡迎討論~呵呵
P.S.晚上了,腦袋昏昏,先寫到這裡