2007/11/27

[Linux][軟體] Grub

GRUB 2 (有空再回頭來翻譯)

GRUB 2 is derived from PUPA which was a research project to investigate the next generation of GRUB. GRUB 2 has been rewritten from scratch to clean up everything for modularity and portability. A mailing list and a wiki have been setup for discussing the development of GRUB 2.

GRUB 2 targets at the following goals:
* 支援 script 寫做,可以做到狀況處理,迴圈﹑變數﹑及函式等的功能。
* 圖型化模式
* 動態載入 module ,可以延伸 build 時所沒有的功能
* 支援更多不一樣的裝置(可攜性)
* 國際化 (支援非 ASCII 碼)
* Real memory management
* Modular, hierarchical, object-oriented framework for file systems, files, devices, drives, terminals, commands, partition tables and OS loaders.
* 跨平台安裝。
* 救援模式的支援。 (同時中止 Stage 1.5)
* Fix design mistakes in GRUB Legacy, which could not be solved for backward-compatibility, such as the way of numbering partitions.

Multiboot Specification

Multiboot Specification is a protocol between a boot loader and an OS kernel. Because this specification is generic, you can use the protocol in your own boot loader and/or in your own OS freely. Follow this link, for more details.

2007/11/23

[軟體] 重新介紹 Opera 瀏覽器

下載點: Opera 9.50beta 版。
(目前建議使用這個版本 9.50b ,因為 9.24 顯然不如 9.50b 的好用,雖然它是 stable ,不過 9.50b 安東在 Ubuntu Linux/Windows XP 底下都沒看到使用上的問題。)


筆者感受到的優點有:
1. 比較快!!! (Firefox 已經比 IE 快了, Opera 更快!!在 Linux Desktop 上面感受更棒!!)
2. 內建廣告阻擋 (Firefox 的 Adblock-plus 不錯用,不過內建的比較快! IE 就讓它隨歷史風乾吧...)
3. 顯示設定 (Firefox 做字型大小的設定時是做字體的變動而已,很容易造成排版上的問題,字體一變更大小, Firefox 就整個亂掉了,這樣還是很『難看』啊... Opera 就整個放大,雖然要動到水平捲動,不過至少版面沒問題,你還可以很快的找到你想要的東西。)
4. 同步內建 (Firefox 要安裝 foxmarks 這個套件, opera 9.50b 內建同步化功能(需和 opera 官網相連),這點讓 opera 動作的又快又好。 (foxmarks 會拖累 firefox)
5. 快捷鍵操作方便。 (在 rss reader 上面快捷鍵補足了一些缺點)
6. 快速撥號選單介面清楚。 (還有縮圖功能也讓網站選擇可以即看即知的情況。)
7. 支援 BitTorrent 下載。 (在文字編碼處理上面沒有問題耶~)
8. Widget 功能擴充 (氣象的功能不錯用,雖然是雞肋)
9. Java VM 跟 plugin 與 mozilla/firefox 相容。 (相容優點)
10. emome 認證可以用。 (這是中華電信讓人 Orz 到不行的『優點』)
11. 內建筆記功能 (可惜也沒有在同步選項)

缺點是:
1. Ajax/JS 版本和 Firefox/IE 不同,網站相容性很差。(不過 9.50b 有改善,至少 Gmail/ Google Docs 有相容到)
2. 沒有 Firefox 的 RSS/Atom 即時書籤(這個 firefox 的功能安小東超喜歡的...)
3. RSS 處理明顯不如 Firefox (不過新聞訂閱用郵件方式處理的功能,也不見得是『差』,應該說它有它的想法,安小東覺得不必言之過早。)
4. 同步沒有包括新聞訂閱﹑筆記的部份。 (foxamarks 只要是書籤都可以同步)
5. 『中文字型名稱』處理有問題。 (只在 Linux 上面)
6. 和 SCIM 衝突。 (建議 Ubuntu user 改用別的輸入法, ex: gcin/oxim。)
7. QT_IM_MODULE 無效。 (請用 XIM 方式以 daemon 運行輸入法,並加上 XIM 需要的 XMODIFIERS 變數)
8. Close software (這點讓我沒辦法拿它當 box 的玩具,只能再看看 api 怎麼玩...)

目前看起來還是優點多於缺點,安小東已經使用一個多禮拜了,應該沒有問題的話都會繼續用下去。
--
我的 .xinput.d/zh_TW 內容:
export XIM=oxim
export XIM_PROGRAM=/usr/bin/oxim
export XIM_ARGS=""
export GTK_IM_MODULE=oxim # GTK_IM_MODULE 不需要用 xim 會比較有效率。
export QT_IM_MODULE=xim


在 .bashrc 裡面就下:
source $HOME/.xinput.d/zh_TW
就好。

2007/11/21

[Linux][軟體] mplayer 的 cursor 不會自已消失

解法應該是在 xorg.conf 的 screen section 加上
Option "sw_cursor"

當然,另外一個 option 也是存在的
Option "hw_cursor"


不知道為什麼會有這種問題。
--
參考連結:
滑鼠靈敏度問題
滑鼠移動速度問題
Option "Resolution" "400"

xset m 35/5
xset m 25/5
xset m 15/5
xset m 10/5
xset m 5/5

2007/11/20

[Linux] Kernel 有問題耶....

測試版本: Ubuntu 2.6.22-14-generic #1 SMP
測試項目:
USB storage device 快速插拔其中一支,(永遠保持還有一支以上插著)
結果會是

/dev/sda /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdh
/dev/sda /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdh
/dev/sda /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdh
ls: /dev/sdc: 沒有此一檔案或目錄
/dev/sda /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdh
/dev/sda /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdh


就是其中有短暫的 device node 全部消失的情況。

好慘... 這個是 linux kernel 的問題?

[Linux][軟體] mplayer 播 flv 檔案(stream 方式)有問題

出自這裡

patch是:
Index: libmpdemux/demux_lavf.c
===================================================================
--- libmpdemux/demux_lavf.c (revision 23739)
+++ libmpdemux/demux_lavf.c (working copy)
@@ -142,6 +142,8 @@
pos += stream->end_pos;
else if(whence == SEEK_SET)
pos += stream->start_pos;
+ else if(whence == AVSEEK_SIZE)
+ return stream->end_pos;
else
return -1;

[Linux] bootmisc

以下是打混的記錄:

每次登入 ubuntu 都會跑:
Linux antontw 2.6.22-14-generic #1 SMP Sun Oct 14 23:05:12 GMT 2007 i686

這種 鳥東西出來,當然,可以修改 /var/run/motd -> /etc/motd 來達成這個需求,不過下次開機卻會跑回來。 (有時會,有時不會)

這是為什麼呢?

原因在 /etc/init.d/bootmisc.sh 這個 script 裡頭做的事情:
uname -snrvm > /var/run/motd
[ -f /etc/motd.tail ] && cat /etc/motd.tail >> /var/run/motd


這樣,就用 sysvconfig 把這個 script disable 掉或直接修改 /etc/init.d/bootmisc.sh 把這一行 comment 起來,就可以了。

2007/11/15

[Linux][軟體] Firefox/Opera UTF8 多國語文處理有問題

// 先自首:我的蝦米表格 (= =!) 還在準備,已經把我家裡那台 notebook 丟上線來處理了。

不過今天不是來談 UNLiu 的問題的。
今天來談的是 Linux 平台在 firefox / opera 上面看 utf8 的中文字裡頭,有些字集的處理有嚴重的問題。

firefox 上面打出 𤒍 (4 bytes)這個字時,如果按 backspace 刪除這個字,你的 textarea 會立刻變成一片空白。(就跟 textarea 全空的是一樣的外觀)然後接著打任何字都不會顯示出來,但是如果 ctrl + a 再 cut & paste 就又跑出來了。

如果是在 opera 上面,則會留下一個問號。 (如圖)


opera 上面比較好,除了問號以外,並不會有任何後遺症。

看起來應該是在處理 4 bytes 的 utf8 char 時有問題。

[Linux][軟體] opera 字型設定補充

上次批評過 opera 不好用嗎? 之後,因為 opera 的看圖(羞)效能遠比 firefox 好太多,所以又持續在 opera 這個瀏覽器上作了不少 survey 的工夫。

因為就算把 工具->功能設定->進階->字型 底下的字型全都設成標楷體


也還是會看到:

1. google 的相關網頁還是用 "宋體" 或 "細明體" 的外觀。如下:


不清楚那是什麼原因,
以下是調整過 "個人樣式表" 後 blogspot 的外觀:


以下是我的個人樣式表,簡單的說,就是不管什麼 tag ,都把字體設到 cwTeXYen (吳老師的顏楷)
這是為了跳過中文字型名稱無法使用的一個選擇。


a,body,table,tr,th,td,div,input,span,div,b {
font-family: "cwTeXYen" !important;
text-decoration: none;
}


所以現在我的 opera 是勉強可以接受的了。
(當然 rss/atom 訂閱我還是受不了,所以會用 google reader 來補強,但是這個字型外觀又設定不到...)
(果然有一好沒兩好。)

2007/11/12

[軟體][Linux] Opera 不好用嗎?

Opera 9.2 剛推出 Stable 不久就跑去下載了。當然,因為新出來的關係,所以有很多地方有問題, 像:

1. 輸入法不能用
2. 字型取代不好看
3. Gmail 不能用

前面的 1. 2. 我都已經解決了:

1. 把 scim-qt 或 QT_IM_MODULE 設好就可以了。

update:
呃... 這邊經我驗證,只要設好 QT_IM_MODULE 就可以。然而,跟 scim 或 qt_immodule 沒有關係的是, opera 還不吃 qt immodule 的樣子。所以,所有的 QT_IM_MODULE 請 export 成 xim。

意即:
1. 請 export QT_IM_MODULE="xim"
2. 請在 opera 運行前,執行 scim -d 或 oxim 或 gcin 等其它 ime 。

2. 下載 opera 的 language pack 之後再來調整會比較快。(不過中文字型名稱是亂碼的問題沒有解決),另外修改 個人樣式表,加入像下面的樣式,可以解決一些 default 字型上的問題。
a,body,td,div {
font-family: "cwTeXYen" !important;
text-decoration: none;
}


不過第三個問題 Gmail 的部份,試過下載 9.50beta + basic html view 也不行。
3. 無解。

update:
我非常困惑了...
因為在家裡的確是不行的,同樣的版本﹑ language pack。
在公司卻 okay 了。 (雖然看起來 js 的部份還是有很嚴重的問題)


不過基本上
1. opera 在IE only 的網站上相容性比較好
2. opera 速度比 firefox 快

光這兩點今天晚上讓我動心很多次。

然, Gmail 是我的民生必須品,字型的部份我看久一點就受不了。
所以,我還是把 opera 重新打入冷宮。

update:
如果 Gmail okay 的話,其實我會重新考慮 opera。

--
相關連結:
opera mini: http://www.operamini.com/
opera linux download
opera linux 中文輸入法無法使用的問題 (不完全啦,不過這個解答是可以用的)(當然 ctrl + space 的 shortcut 記得要拿掉)
Opera Linux 中文字型名稱無法顯示

2007/11/08

[Programming] C++ 語言學習參考連結

我對"席佳佳"的在這一個多月以來的興趣一直在成長中。晚上作夢還會夢到她(誤)。

不過今天要在作書籤的摘要的頁面不是別的網站,正是維基百科全書上的說明:
C++剛開始推廣時作出「在這12年裡,C++使用者人數大約每七個月半增加一倍」的結論,並成為許多C++相關文件必引的一段話。然而,時至今日新語言層出不窮,使用者人數已不太可能以如此速度增長。

分析機構EvansData定期對開發人員展開調查,其調查結果與Stroustrup提出的C++正在擴張的說法相違背。EvansData的資料顯示,以C++為工具的開發人員在整個開發界所佔的比例由1998年春天的76%下降至2004年秋的46%。

Forrester最新的調查顯示,C++、微軟VisualBasic和Java是眾多公司產品體系的首選語言。對100家公司的調查顯示,C/C++、VisualBasic和Java在產品體系中的使用比例分別是59%、61%和66%。


這個頁面裡還有很多像是 c99 STL 等等名詞的解釋也都是我想做筆記的 :) (我太沒常識了...)。

[軟體][Linux] 能播放 DVD Menu 的 DVD player

在 Linux 上面最好用的影片播放軟體應該算是 mplayer了,不過這個軟體不能處理 DVD Menu 的這個缺點直到今天都還沒有補強上去,讓很多 DVD 影片的愛好者感到不便。

雖然我之前有寫過 DVD ISO 在 Linux 上面怎麼看的文章,不過要看個 DVD 要搞成這樣,說實話,還蠻累的。

所以就找了一下,感謝 Wilson 提供的資訊,在 Ogle 這個軟體上面看到 DVD Menu 的應用了。 (Ubuntu 使用者可以用 apt-get install ogle 直接下載)看起來還蠻不錯的,也有 gui 可以用。

--
註:之前的 DVD ISO 應用時少補一點『如何找出 sid 』
我的解法是: 用 mplayer -identify DVD.iso 先去看一下 sid 有哪些,再去試。通常我手上的繁中會在 128, 129

--
更新 (2007-11-21):
1. 謝謝下面回應的朋友, VLC 是可以播 DVD Menu 的。
2. VLC 不能播 real media 的討論在這裡,簡單的說, VLC 開發小組認為 VLC 不能使用跟 mplayer 一樣的方式去用動態連結 dll 支援 realmedia 的格式。他們認為這是違反 GPL 的規範,這點在 GPL 的認知上有不同的意見,所以 mplayer 雖然也是 GPL ,但是 VLC 開發小組不肯做,而 mplayer 做了。(也許未來會有問題, VLC 堅持自已的原則,在還沒有判例情況下,這應該是值得嘉許的。)

2007/11/07

[Linux] SecurityFS

話說,雖然根據 spec 上說, 2.6.14 就開始包含 securityfs 進來了,不過我還是等到 Ubuntu 7.10 release 了才知道這個 fs type 的存在。而 lwm 上的簡介:

Some observers might well believe that the kernel has accumulated plenty of special-purpose virtual filesystems. Even so, 2.6.14 will include yet another one: securityfs. This filesystem is meant to be used by security modules, some of which were otherwise creating their own filesystems; it should be mounted on /sys/kernel/security. Securityfs thus looks, from user space, like part of sysfs, but it is a distinct entity.


哼... 看完了我還是不知道它在說什麼:

譯作:
有些人可能觀察到了 kernel 裡面已經累積了好些不同用途的 virtual fs 進來了。即便如此,在 2.6.14 還是會再加進來另外一個新的成員: "securityfs". 這個 fs 是用來做某些安全模組的使用;像是一些會另外開他們自已的 fs 的安全模組。 securityfs 會在 /sys/kernel/security 上面 mount 。 securityfs 顧名思義,有點像是 sysfs 一樣,在 user space 裡,不過他確實是一個獨立的整體.

靠... 這段一點都沒提到『為什麼一定要用到 securityfs 』,或著 securityfs 會確切用在哪些模組上面。不過 lwm 那個討論串後面接了一大堆討論... (= =) 好煩... 這顯然不是真正拿來查詢的地方。

[Linux] Bash_completion

tpxc 這位對岸的同學的 blog 裡頭看到的:
如何添加 flv 到 kaffeine 的 bash 補全呢?

sudo vi /etc/bash_completion

編輯 /etc/bash_completion,使用哪個編輯器不要緊,只要能搜索『kaffeine『就行了。

更改的內容用粗體表示

complete -f -X '!*.@(mp?(e)g|MP?(E)G|wma|avi|AVI|asf|vob|VOB|bin|dat|vcd|ps|pes|fli|flv|viv|rm|ram|yuv|mov|MOV|qt|QT|wmv|mp3|MP3|ogg|OGG|ogm|OGM|mp4|MP4|wav|WAV|asx|ASX|mng|MNG|srt)』 xine aaxine fbxine kaffeine

重啟終端,現在 kaffeine 的 bash 補全支持 .flv了。


他的 blog 裡頭有蠻多 bash script example 的。可以參考。 (有些地方可能要修一點點而已)

[軟體][Linux] Xmms 選單亂碼問題

其實是看到大陸那邊的論壇上有解法才知道的。

台灣這邊就:
ln -s /etc/gtk/gtkrc.zh_TW /etc/gtk/gtkrc.zh_TW.utf-8

就可以解決了。

真是不曉得之前為什麼要抓 xmms 的 source 下來檢查這麼麻煩...

2007/11/06

[軟體] Samba 有安全問題??

昨天跟 Wilson 在玩 samba 的時候才發現 samba server 對 symbolic link 的處理在 windows 跟 linux 上面不大一樣。

就是 linux mount samba 進來, symbolic link 就還是 symbolic link ,windows 上就直接變成實體檔案了。

所以我們玩了一個把戲,在 Linux 上面 ln -s / ./ 再到 Windows 上面去檢查...

呃... 果然是很危險的把戲。

不過今天早上 Wilson 又跟我 update 了一項訊息:
echo 0 > /proc/fs/cifs/LinuxExtensionsEnabled

這樣在 Linux 上面就可以直接做到跟 Windows 一樣的效果

嘿嘿嘿... 不過 samba 還是很危險

2007/11/01

[軟體] Pidgin 2.2.2 還是有問題啊...?

:~/Community/pidgin-2.2.2$ pidgin
pidgin: symbol lookup error: pidgin: undefined symbol: purple_core_ensure_single_instance


嗯,看起來又是有東西沒弄好。最近 pidgin 的穩定度有蠻大改進的空間。

先搞 amsn 出來好了。

[Windows] git-bash 底下的工具

因為工作轉到 Windows 平台上的關係,所以很多工具改到 Windows 上面運作,跟著在 TortoiseGit 底下使用 git-bash 來維護自己的專案原始碼。結果就是裝了前面提過的 auto-hotkey 使用熱鍵來提昇自己的平台操作速度; 但除了 hotkey...