顯示具有 Linux 標籤的文章。 顯示所有文章
顯示具有 Linux 標籤的文章。 顯示所有文章

2013年5月27日 星期一

Redmine 效能改進

在公司的虛擬機上安裝的Bitnami Redmine stack一直在新增與更新issue時會有等待很長時間的問題。在搜尋了一下,研究了一下。有以下兩種解法,此兩種可同時搭配:

  • Phusion Passenger module的問題
  • email send的問題
    •  此問題是因為Redmine預設使用同步的email發送機制,所以當連線mail server需要時間較久或連不上時,就會導致整個回應變慢。解決方法就是在configuration.yml裡將原本的:smtp改為async_smtp即可。可參考:Asynchronous Email Delivery

以上作法在修改後都必須重新啟動Redmine

2010年9月25日 星期六

在Ubuntu Server Edition上安裝GUI介面

想把server改成用Ubuntu Server,但是又不想只用command line的方式來管理與設定系統。所以就想到在Ubuntu Server上面裝上gnome...但是又不想安裝完整的gnome

在參考How to install GUI in Ubuntu Server之後,自己就試著用
sudo apt-get install x-window-system-core gnome-core
結果真的可以安裝很簡易版本的gnome...幾乎沒有任何GUI app...連synaptic都沒有,所以只好再用apt-get來安裝

2010年2月2日 星期二

令人沮喪的事實?!Firefox的CPU 使用率問題

因為今天在公司用MacBook Pro,原本之前電池都可以撐很久的,但是今天卻只撐了3小時左右。讓我覺得有點納悶...所以剛剛查了一下...發現...Firefox會一直有CPU usage,即使只有一兩個很簡單且沒有flash的page而已...

當然,到Google上去搜尋,也是得到類似的結論...元兇的話,plugins是一大因素,但是我也用safe-mode的方式去啟動Firefox,但是還是會有持續的CPU usage,只是比有啟用plugins來的少一點。

感覺很「冏」啊...Firefox的一大優點就是有豐富的plugins來幫助瀏覽,但是...現在卻也變成CPU使用率的大怪獸...也許會有人覺得:反正只是多耗一點點的CPU usage,現在CPU都那麼powerful,沒差啦...
但是如果是在筆電尚且使用電池的環境,這可就有很大差別了...因為持續不斷的CPU usage會讓系統處於busy的狀態...CPU就無法進入比較省電的模式了,自然電池就會很快用完....

嗯...真是兩難啊....看來如果用電池模式的話,可能不適合使用Firefox吧...使用Safari跟Google Chrome倒是都沒這種問題。

P.S: 除了發現Firefox有這問題,M$的Messenger for Mac也會在沒動作的情況有CPU usage,但是沒有像Firefox那麼嚴重

Update: 後來發現原本以為應該不會有動作的Google搜尋結果頁面,其實似乎也是有javascript在背後慢慢跑?!為何這麼說呢...因為在Safari、Chrome跟Firefox都發現同樣的情況...但是,結論還是沒有變,Firefox在CPU使用上還是偏高。在改用Safari跟Chrome之後,MacBook Pro的溫度明顯降低。

2009年3月14日 星期六

改進nvidia driver的2D速度

從網路上看來的...
  1. 修改xorg.conf,加入
    Option "PixmapCacheSize" "300000"
    Option "OnDemandVBlankInterrupts" "True"
  2. 在Console視窗執行(也可以在「作業階段」中加入項目,讓他在登入時執行):
    nvidia-settings -a InitialPixmapPlacement=2 -a GlyphCache=1
實際成效嘛...還沒有很明顯的感受...仍在測試中

P.S: 後來從Google上找出來的另一項可能改善Xserver的CPU usage的設定:設定一個環境變數__GL_YIELD="NOTHING"

2009年1月21日 星期三

Too many open file?!

之前一直都沒有注意Linux有開啟檔案數的問題,一直到不久前,在使用eclipse時常常會出現『Too many open files'的錯誤,導致eclipse無法正常運作。原本以為是Linux上的JDK的問題,在google之後才知道原來是Linux本身的設定問題。

想知道自己某個程式的開啟檔案數,可以用以下的指令察看:
lsof -p [pid of your process] | wc -l
如果想調大檔案開啟數,可以調整fs.file-max這個核心參數。如果memory夠大,可以將此值加大到65536,或是更大:調整的方式:
在/etc/rc.local中加入echo 65536 > /proc/sys/fs/file-max
或是
在sysctl.conf中加入fs.file-max=65536
不過單修改核心參數只能加大系統核心的上限,Linux本身還有針對每個user的每個程式本身的限制,因此還需要編輯/etc/security/limits.conf,並加入
* soft nofile 4096
* hard nofile 4096
修改完畢之後,重新開機即可!

2008年12月27日 星期六

Performance tuning for Ubuntu 8.10 by modifying kernel parameters

雖然Ubuntu一直在進步,但是在desktop環境上還是有點效能不滿意的感覺。在Google過後,看了一些文章跟討論,加上自己的實驗,得到以下的一些調整步驟跟心得:
  1. 編輯/etc/sysctl.conf:
    sudo nano /etc/sysctl.conf
  2. 加入以下核心參數設定:
    #
    # for kernel
    #
    kernel.sem = 250 32000 100 128
    kernel.shmall = 2097152
    kernel.shmmax = 2147483648
    kernel.shmmni = 4096
    fs.file-max = 65535
    vm.swappiness = 1
    vm.vfs_cache_pressure = 50
    vm.dirty_writeback_centisecs=1500

    #
    # For net connections
    #
    net.core.rmem_max = 16777216
    net.core.wmem_max = 16777216
    net.ipv4.tcp_rmem = 4096 87380 16777216
    net.ipv4.tcp_wmem = 4096 65536 16777216
    net.ipv4.tcp_no_metrics_save = 1
    net.ipv4.tcp_moderate_rcvbuf = 1
    # recommended to increase this for 1000 BT or higher
    net.core.netdev_max_backlog = 2500
    net.ipv4.tcp_rfc1337 = 1
    net.ipv4.ip_no_pmtu_disc = 0
    net.ipv4.tcp_sack = 1
    net.ipv4.tcp_fack = 1
    net.ipv4.tcp_window_scaling = 1
    net.ipv4.tcp_timestamps = 1
    net.ipv4.tcp_ecn = 0
    net.ipv4.route.flush = 1
  3. 重新讀取設定即ok:
    sudo sysctl -p
  4. 加上block device讀取參數的修改,來改善讀取的效能:
    修改/etc/rc.local
    sudo nano /etc/rc.local
    在最後的exit 0之前加上
    echo 1024 > /sys/block/sda/queue/read_ahead_kb
    echo 1024 > /sys/block/sda/queue/nr_requests
    其中,sda是指欲調整的磁碟代號,如果有多個磁碟想調整,則重複以上設定,但是將磁碟代號修改完欲調整的。
以上參數調整主要是針對在kernel memory跟cache設定,以及有關網路連線方面的設定,所以調整後應該會覺得在檔案讀取跟網路連線上有改善。其中,有關kernel的部份,建議最好在主記憶體>512MB時才調整。尤其在於fs.file-max、vm.swappiness、vm.vfs_cache_pressure此3個參數。(fs.file-max: 可開啟最大檔案個數;vm.swappines:kernel對於使用swap的情況,越小表示越不使用swap,預設值為60;vm.vfs_cache_pressure:kernel對inode的cache,預設為100,<100表示儘量保留在cache中,>100則反之)

以上的修改只是針對透過修改核心參數來達到提升效能的方式,事實上,還有很多其他部份可以調整。個人使用的感覺是還不錯,有蠻顯著的效果

2008年3月1日 星期六

手動安裝JDK與Eclipse

雖然說Sun後來有推出for Ubuntu的Java相關套件(JDK, JRE, Glassfish, NetBeans),但是官方套件庫裡的套件更新似乎很慢。所以想要用最新的Java環境,還是自己手動安裝比較快。以下是我自己參考網路上各偏的作法而整理出來的手動安裝步驟,我個人預設的Java環境的安裝路徑都是在/opt下,此範例使用的是jdk-6u10-ea-bin-b12-linux-i586-19_feb_2008:
  1. 安裝JDK
    1. 先去Sun網站抓取jdk檔案,Ubuntu的話抓取bin檔,不要抓取RPM檔。抓完之後,將賦予檔案「執行」的權限。然後在Console視窗下執行,就可以解出jdk的資料夾(jdk1.6.0_10)。
    2. 在Console視窗下用chown將jdk資料夾的擁有者與群組更改為root:
      sudo chown -R root:root jdk1.6.0_10
      ,然後將jdk資料夾搬移到/opt下:
      sudo mv jdk1.6.0_10 /opt

    3. 在/opt下建立一個符號連結,讓它指向jdk資料夾,如此一來以後更新jdk時,只要讓符號連結指向新的jdk資料夾即可:
      sudo ln -s /opt/jdk1.6.0_10 /opt/jdk6
    4. 修改/etc/environment檔案,設定JAVA_HOME環境變數:
      JAVA_HOME=/opt/jdk6
      ,注意:此處的jdk路徑必定要指向剛剛建立的符號連結;然後修改/etc/profile,在檔案最後加上:
      export PATH=$JAVA_HOME/bin:$PATH
      ,這樣系統在尋找Java執行環境時,就可以我們手動安裝的為優先了
    5. 為了讓Swing/AWT的Java app可以正常顯示中文,我們必須到jdk資料夾(/opt/jdk6)中的jre/lib/fonts中作一些必要動作:
      sudo mkdir fallback
      cd fallback
      sudo ln -s /usr/share/fonts/truetype/arphic/uming.ttf
      sudo mkfontdir
      sudo mkfontscale
      ,此處的第三步驟的字型可以選用自己想要的
    6. 在Console視窗中輸入:
      sudo ln -s /opt/jdk6/jre/plugin/i386/ns7/libjavaplugin_oji.so /usr/lib/firefox/plugins
      ;如果使用的是Swiftweasel而非firefox,則最後的目標資料夾改為/usr/lib/mozilla/plugins
    7. (Optional)在Console視窗中輸入:
      sudo gedit /usr/share/applications/java_control_panel.desktop
      ,並且編輯檔案內容為:
      [Desktop Entry]
      Encoding=UTF-8
      Name=Java Control Panel
      Comment=Java Control Panel
      Exec=jcontrol
      Icon=sun_java.png
      Terminal=false
      Type=Application
      Categories=Application;Settings;Java;X-Red-Hat-Base;X-Ximian-Settings;
      然後將/opt/jdk6/jre/plugin/desktop/sun_java.png複製到/usr/share/icons下,然後就可以發現在「系統」->「偏好設定」中會出現「Java Control Panel」的選項
    8. 完成以上設定之後,重新開機就可以正確的使用我們手動安裝的jdk了
  2. 安裝Eclipse
    1. 去Eclipse的官網抓目前最新版的eclipse壓縮檔
    2. 將eclipse壓縮檔解開,設定擁有者與群組為root,並且賦予適當的存取權限:
      sudo chown -R root:root eclipse
      sudo chmod -R 777 eclipse
      sudo chmod +x `sudo find eclipse -type d`
      ,在此處我們給予eclipse資料夾(包含子資料夾)全部權限,如此才能在線上更新時進行寫入動作
    3. 將設定好的eclipse資料夾搬移到/opt之下:
      sudo mv eclipse /opt
    4. 在/usr/bin下建立一個名為eclipse的啟動shell script,並賦予正確的權限:
      sudo gedit /usr/bin/eclipse
      sudo chmod 755 /usr/bin/eclipse
      ,而該shell script的內容為:
      #!/bin/sh
      #export MOZILLA_FIVE_HOME="/usr/lib/mozilla/"
      export ECLIPSE_HOME="/opt/eclipse"

      $ECLIPSE_HOME/eclipse $*
    5. 建立一個GNOME的選單項目:
      sudo gedit /usr/share/applications/eclipse.desktop
      ,而eclipse.desktop的內容為:
      [Desktop Entry]
      Encoding=UTF-8
      Name=Eclipse
      Comment=Eclipse IDE
      Exec=eclipse
      Icon=/opt/eclipse/icon.xpm
      Terminal=false
      Type=Application
      Categories=GNOME;Application;Development;
      StartupNotify=true
    6. 完成以上設定之後,就可以在「應用程式」->「軟體開發」中找到「Eclipse」的選項了
以上就是手動安裝jdk跟eclipse的過程。
優點:可以安裝最新版本的jdk與eclipse
缺點:無法透過系統的套件管理程式來更新或是移除、重新安裝等的管理

2008年2月22日 星期五

使用mplayer來產生影像檔的縮圖

在Gnome的桌面環境中,Nautilus也有類似Windows檔案總管的縮圖功能,而且也是都支援圖檔跟影像檔。但是由於Nautilus是透過Totem來產生縮圖,而Totem目前有兩個版本:一個是透過GStreamer,一個則是透過xine來播放。xine版本支援度跟效率似乎好一點,但是最近新的update之後,似乎會無法對rmvb檔產生縮圖。而GStreamer版本則是對某些rmvb檔無法產生縮圖。因此我就上Google找了一下,發現有可以透過mplayer來產生縮圖的方式。mplayer在Linux中算是相當不錯的播放軟體,所以試了一下,感覺還不錯。步驟主要是參考在ubuntu下如何實現全視頻文件預覽(使用mplayer 預覽):
  1. 由於需要透過mplayer跟imagemagick來產生縮圖,所以開啟Synaptic來安裝mplayer與imagemagick兩套件;若已經安裝,則可以跳過此一步驟
  2. Ravinder Rathi's Web Page 下載Mplayer-video-thumb
  3. 將下載回來的Mplayer-video-thumb解壓縮,然後進入解壓縮的資料夾中,開啟console視窗執行:
    chmod 755 setup.sh
    sudo ./setup.sh
    ./gconf.sh
    ,這樣就完成安裝
  4. 然後執行以下指令來刪除舊的縮圖:
rm -rf $HOME/.thumbnails/large/
rm -rf $HOME/.thumbnails/normal/

rm -rf $HOME/.thumbnail/fail/gnome-thumbnail-factory/
然後重新開始有影像檔的資料夾,就可以看到新的縮圖了

心得:透過mplayer來產生影像檔縮圖的效率還算不錯,不過似乎對某些mpg檔或是rm檔會無法產生,不過此類情況很少,不像Totem-GStreamer那麼嚴重

2008年1月31日 星期四

幫Opera安裝flash plugin

雖然說在Ubuntu Linux上用Firefox已經相當好用了,但是有些時候可能還是有些問題,此時或許可以用Opera來替代,但是預設安裝的Opera並沒有安裝flash plugin,所以必須手動安裝。之前網路上有一些安裝方法,不過有些似乎在Ubuntu 7.10就無效了。以下是我看到並且測試ok的新方法:
  1. 先去adobe官網下載最新的flash plugin for Linux,請抓.tar.gz的版本
  2. 解壓縮並執行flashplayer-installer.sh。此時,應該會將新的flash plugin安裝到~/.mozilla/plugins
  3. 到/usr/lib/opera/plugins下執行:
    sudo cp ~/.mozilla/plugins/libflashplayer.so .
    將flash plugin複製到Opera的plugins中
  4. 重新啟動Opera,應該就可以看到flash的播放了

2007年12月24日 星期一

更換Ubuntu的Boot Usplash

Ubuntu boot usplash就是指開機時所看到的那個進度條的畫面。預設就是用Ubuntu的那個橘色進度條。以下是從網路上參考來的修改方法:
  1. 通常進度條的畫面都是以.so的檔案存在。所以把要更換的.so複製到/usr/lib/usplash
  2. 用以下指令來替換symbolic link:
    sudo ln -sf /usr/lib/usplash/[要替換的usplash].so /etc/alternatives/usplash-artwork.so
  3. 用Startup manager修改開機畫面的解析度與color depth。注意:解析度與color depth務必符合所選用的usplash,否則將無法顯示
  4. 用以下指令更新GRUB:
    sudo dpkg-reconfigure linux-image-$(uname -r)
  5. 替換完畢之後,可以用
    sudo usplash
    查看是否替換成功。如果觀看完畢,可以按下Alt + F7切換回Xwindow。
方法雖然簡單,但是問題最大的還是在於選擇正確的解析度與color depth。所以更換完畢之後物必要查看一遍。

2007年12月17日 星期一

安裝類似Mac OS的Dock

Mac OS的Dock軟體一直都可以說是Mac OS的特色之一,在Windows平台上也有不少仿製品,雖然也都還不錯,但是畢竟還是做的不夠好。而在Linux上,之前試用過Kiba-Dock跟AWN,不過都覺得不是很好用,穩定性跟功能性都不理想,所以就放棄使用。不過最近看到還不少人推薦使用AWN的,所以又安裝一次,果然是變得很不一樣了。AWN全名為Avant Window Navigator,在Ubuntu上要安裝還蠻簡單的,以下是參考網路上其他人的安裝方法加上自己的心得的安裝步驟:
  1. 到Synaptic中的「套件庫」裡加上以下兩個套件庫網址:
    deb http://download.tuxfamily.org/syzygy42/ gutsy avant-window-navigator
    deb-src http://download.tuxfamily.org/syzygy42/ gutsy avant-window-navigator
  2. 然後下載套件庫所需的金鑰
    http://download.tuxfamily.org/syzygy42/reacocard.asc
    並且在Synaptic中匯入,完成以上兩個設定之後,進行套件庫的「重新載入」
  3. 然後安裝avant-window-navigator-bzr與awn-core-applets-bzr兩個套件,這兩個套件會有另外兩個相依的套件也需要安裝,所以總共是安裝4個套件
安裝結束即完成整個Avant Window Navigator的安裝。要啟動AWN的話,是必須從
「應用程式」->「附屬應用程式」->「Avant Window Navigator」
來啟動;設定的話則是到
「系統」->「偏好設定」->「Awn manager」

軟體優點:
  1. 介面很特別、很漂亮
  2. 操作上也還算蠻方便的,雖然不是完全相似Mac OS的Dock,但是也還算蠻接近了(個人還蠻喜歡那種Shortcut也可以當成是開啟的task的這種呈現方式)
缺點:
  1. 穩定度還是欠佳(不過已經比以前好了)
  2. memory使用量偏多:因為它的applet跟幾乎都是獨立的process,所以雖然本身使用量可能不多,但是加上applet的使用量,那就很驚人了
  3. applet的數量與實用性偏低。core-applets雖然看起來有不少,但是實際比較有用的卻不多
整體來說,我還是給予蠻正面的評價的!不過使用上,由於他會與下方的taskbar的panel重疊到,所以會建議把下方的panel整個刪除,如果真的想拿來用的話。

2007年9月27日 星期四

Install nVidia VGA card driver in Ubuntu

自己之前在自己的notebook上安裝過數次Ubuntu,從6.06~7.04,所以深知ATI的顯示晶片在Linux上的支援度並不理想。之前就有聽說nVidia的卡就要好的多,所以這次利用空的HDD在我的desktop上安裝Ubuntu 7.04,不過似乎跟我想像的不太一樣,也是碰到不少麻煩。最後發現, 安裝nVidia顯示卡driver有兩大方式:
  1. 安裝套件庫內的driver:
    1. 這是最簡單的方式,可以使用synaptic或是在console視窗內使用apt-get來安裝。一般而言,最新的顯示卡是安裝nvidia-glx-new或是nvidia-glx;較舊的則是nvidia-glx-legacy。詳情可以參考:HOWTO: Latest NVIDIA drivers - Method 1
  2. 手動安裝官方driver: 套件庫裡的drvier雖然比較好安裝,但是由於版本比較舊,所以比較可能有問題,對於最新的顯示晶片(Geforce 7xxx,8xxx系列)的支援也可能比較不夠。個人在參考過HOWTO: Latest NVIDIA drivers - Method 2Installing NVIDIA Linux graphics drivers on recent distributions (FC, Ubuntu, etc)之後,大概發現只要完成幾個步驟就可以很輕鬆的安裝完成:
    1. 將需要的相關套件更新到最新版:
      sudo apt-get install linux-headers-generic build-essential gcc xserver-xorg-dev pkg-config
      ,其中linux-headers請根據安裝的kernel種類來安裝,如lowlatency的kernel就必須安裝linux-headers-lowlatency
    2. 移除目前安裝的nVidia driver:
    3. 修改/etc/default/linux-restricted-modules-common,確定有以下內容:
      DISABLED_MODULES="nv nvidia_new"
    4. 刪除以下檔案
      1. /etc/init.d/nvidia-glx
      2. /etc/init.d/nvidia-kernel
      3. /lib/linux-restricted-modules/.nvidia_new_installed
    5. sudo /etc/init.d/gdm stop
      按下Ctrl+Alt+F1切換到console mode,然後登入後輸入
    6. 以sudo執行下載的nVidia官方driver安裝檔,所有的選擇都選擇Accept或是Yes,除了要求連線下載符合目前kernel的預先編譯好的driver。(若是只是更新driver,則最後的修改xorg.conf檔的部份也可以選擇No)
    7. 完成安裝後,可以輸入
      sudo /etc/init.d/gdm start
      來重新啟動X-Window,或是重開機。若是安裝成功,則會看到X-Window的登入畫面。
    8. 進入X-Window之後,在console視窗輸入
      sudo gedit /usr/share/applications/NVIDIA-Settings.desktop
      ,然後填入以下內容之後存檔:
      [Desktop Entry]
      Name=NVIDIA Settings
      Comment=NVIDIA X Server Settings
      Exec=nvidia-settings
      Icon=
      StartupNotify=true
      Terminal=false
      Type=Application
      Categories=Application;System;
      ,然後就可以在「應用程式->系統」中找到nVidia的X server設定程式了(若是更新driver,則不需重複進行此步驟)
    9. 啟動nVidia X server設定程式,然後設定自己需要的設定
基本上需要注意的事項也是不少,不過整體來說還不算太難安裝,有一點必須注意的是,在安裝driver之前一定要關閉gdm,否則也會導致安裝失敗。
另外,有幾個常用的option可以設定在xorg.conf的Device or Screen區段內:
  1. Option "NoLogo" "true" ---- 關閉進入X-Window時顯示的nVidia logo畫面
  2. Option "AddARGBGLXVisuals" "true" ---- 避免在使用Compiz-fusion or Beryl時有視窗邊框消失的問題
  3. Option "Coolbits" "1" ---- 啟動超頻選項
更詳盡的Option設定,可以參閱nVidia官網上的資料

基本上,Nvidia對於Linux的支援真的是比ATI好太多了!透過AIGLX來跑Compiz-fusion的感覺就是不一樣,不但效率很好,也比較不吃resource。據說ATI也在開發支援AIGLX的driver,只是會是怎樣....很難想像啊...

2007年9月15日 星期六

Google Desktop Search for Linux

Google desktop在Windows一直是蠻有名的軟體,而在前一陣子,他也終於推出for Linux的版本了。除了可以透過連到google的網頁去安裝以外,也支援apt的安裝方式,以下是安裝的步驟:
  1. 開啟console視窗並輸入# sudo wget http://dl.google.com/linux/linux_signing_key.pub -O- | sudo apt-key add -來匯入憑證
  2. 然後打開Synaptic,進到[設定]->[套件庫]->[Third party software],加入 deb http://dl.google.com/linux/deb/ stable non-free
  3. 然後按下重新載入,然後就可以用搜尋找到Google desktop了
不過,有點可惜的是這個版本只有提供search的功能,沒有像Windows版那樣有很多豐富的小軟體可以使用

2007年9月13日 星期四

Ubuntu字型設定

原則上是參考中文 fontconfig 設定檔裡的設定,但是由於這裡面的設定有些部份不是很喜歡,所以又自行修改了某些地方:
  1. 有關所有字型的AA、hinting、autohint:
    <match target="font">
    <edit name="antialias" mode="assign">
    <bool>true</bool>
    </edit>
    <edit name="hinting" mode="assign">
    <bool>true</bool>
    </edit>
    <edit name="autohint" mode="assign">
    <bool>false</bool>
    </edit>
    </match>
  2. 關閉英文小字AA:
    <test name="pixelsize" compare="less">
    <double>8</double>
    </test>
  3. 關閉中文字體小字AA:
    <test name="pixelsize" compare="less_eq">
    <double>16</double>
    </test>

切換Touchpad開關

NB的Touchpad預設是一直開啟的,這對於喜歡使用滑鼠的我來說其實是種困擾。從google上找了一些資料之後,可以透過一些方式來做到類似Windows下的切換:
  1. 首先在/etc/X11/xorg.conf中找到以下區段:
    Section "InputDevice"
    Identifier "Synaptics Touchpad"
    然後在該區段裡面加上
    Option "SHMConfig" "on"
    ,之後重啟xwindow
  2. 可以在console視窗輸入
    synclient TouchpadOff=1
    就可以關閉touchpad,
    synclient TouchpadOff=0
    則是開啟;或是執行
    /etc/acpi/asus-touchpad.sh
    ,系統會自動切換開啟狀態
  3. 可在Compiz-fusion中設定熱鍵呼叫asus-touchpad.sh,效果更佳
P.S: 目前此作法沒辦法透過插拔滑鼠來切換touchpad的開關

2007年9月10日 星期一

Replace Nautilus

Ubuntu預設是使用Gnome,而在Gnome裡預設是以nautilus作為file manager,但是nautilus比較肥大、比較慢。因此,也開始有更多light-weight file manager被開發,像是很有名的PCManFM即是其中之一。不過礙於Gnome的設計,是沒辦法直接更換file manager,必須用特別方式去更換。
在這篇Changing the Default File Manager in Gnome中,介紹如何將nautilus替換成thunar或是Konqueror、Krusader,也有提供還原的方法,算是相當的簡單容易。不過可惜的是,裡面並未提供替換為pcmanfm的方法。

個人是選用thunar,因為使用了pcmanfm之後,發現pcmanfm雖然速度很快,但是某些設計與功能感覺沒有thunar好用。不過thunar也有些不便之處與小問題:
  1. 不支援smb://這類的網址路徑,所以無法直接瀏覽網芳與ftp。(據說可以透過fusesmb來達到效果,不過我沒試過)
  2. 某些應用程式在透過thunar去開啟檔案再關閉之後,該程式會留下zombie,必須等到所有的thunar關閉之後會被清除。(不過似乎也不會對系統有不良影響)
  3. thunar與nautilus兩者不能互相進行檔案的copy & paste
不過即使如此,thunar還是一個蠻輕量級而且功能的file manager!而且thunar在自訂action的部份與設定檔案開啟的預設程式部份也是蠻簡單的

有關以pcmanfm來替換nautilus,可以參考回覆: 請問 pcmanfm 取代 nautilus

2007年9月9日 星期日

好用的media player

在Ubuntu裡,有很多meida player可以使用,其中最有名的應該是mplayer。但是,mplayer的設定並不容易,我也曾經吃過不少苦頭,所以也有不少軟體套件是用來作為mplayer的front-end。

之前,看到網路上一些人的推薦,就抱持著實驗的心態去安裝一套叫做smplayer,這個套件並不存在於官方的Repository裡,但是在GetDeb網站上找的到。而目前官網上最新的版本是0.5.46。安裝此套件之前必須先安裝mplayer以及相關的codec。

使用心得:操作介面比原本的mplayer還要親切順手,執行效率也還不錯。個人認為透過smplayer來使用mplayer是目前在Ubuntu上最棒的多媒體播放器(當然是指播放video)

P.S:有一點很特別,在使用Xgl + Beryl(or Compiz-fusion)的環境裡,原本用mplayer是無法設定video driver為xv, 但是在smplayer卻可以?!

2007年9月1日 星期六

解決amsn的傳檔問題

在Ubuntu裡有很多MSN client可以使用,但是各有各的優缺點。而個人試用過後,覺得amsn 0.97RC1以後的版本,不管在功能與介面跟MSN Messanger都很相似,使用起來也比較順手。amsn 0.97RC1目前只有source package可以安裝,所以必須自己手動compile跟install,而為了解決中文輸入的問題,需要的Tcl/Tk也必須安裝8.5以上版本。相關的安裝方式在網路上已有人詳述。但是,amsn 0.97RC1有一個問題,就是傳輸稍大的檔案時,會很容易無故斷線。為了解決這個問題,必須將Tcl/Tk升級到最新版的8.5a7,另外amsn也必須使用最新的svn版的source code來編譯。以下是安裝步驟的簡單紀錄:
  1. 先安裝svn client與cvs client:
    sudo apt-get install subversion
    sudo apt-get install cvs
  2. 由於Ubuntu 7.04內建的Tcl/Tk為8.3,而amsn在編譯階段會檢查版本,所以必須先安裝8.4版
  3. 安裝必要相依套件:
    sudo apt-get install libxft-dev
    sudo apt-get install imlib11 sox libpng12-0 docker tcltls python libc6 libgcc1 libice6 libjpeg62 libsm6 libstdc++6 libx11-6 zlib1g
  4. 下載cvs版的Tcl/Tk
    1. Tcl:
      cvs -z3 -d:pserver:anonymous@tcl.cvs.sourceforge.net:/cvsroot/tcl co -P tcl
    2. Tk:
      cvs -z3 -d:pserver:anonymous@tktoolkit.cvs.sourceforge.net:/cvsroot/tktoolkit co -P tk
  5. 安裝Tcl cvs版:
    1. 進入下載的cvs版Tcl的unix目錄
    2. 執行以下指令:
      ./configure --with-x --enable-xft --enable-threads
      make
      sudo make install
      sudo ln -f -s /usr/local/lib/tclConfig.sh /usr/local/lib/tcl8.5/
  6. 安裝Tk svc版:
    1. 進入下載的cvs版Tk的unix目錄
    2. 執行以下指令:
      ./configure --with-tcl=/usr/local/lib/tcl8.5/ -with-x --enable-xft -enable-threads
      make
      sudo make install
      sudo ln -f -s /usr/local/lib/tkConfig.sh /usr/local/lib/tk8.5/
      注意:一定要加–enable-xft參數,否則在字型的顯示與切換會有問題
  7. 設定amsn的執行環境:由於amsn是透過Tcl的wish模組來執行,所以也必須在安裝完新版的Tcl/Tk時,設定好新的wish路徑。先用
    whereis wish
    找出最新版的wish的位置,一般來說Ubuntu應該會是在/usr/local/bin/wish8.5,然後用以下指令設定路徑
    sudo ln -f -s /usr/local/bin/wish8.5 /usr/bin/wish
  8. 編譯amsn:
    1. 下載svn版amsn:
      svn co https://amsn.svn.sourceforge.net/svnroot/amsn/trunk/amsn
    2. 進入下載的amsn目錄,並用以下指令編譯:
      ./configure --with-tcl=/usr/local/lib/tcl8.5/ --with-tk=/usr/local/lib/tk8.5/
      make clean
      make
      編譯完成之後,可以用
      sudo make install
      安裝,或是用
      make deb
      來產生.deb檔,再用deb檔安裝,詳細的安裝資訊可以參考INSTALL.TXT
  9. 安裝完畢之後,可以安裝libsnack2套件來增加Tcl/Tk對於聲音功能的支援;另外在啟動的時候,如果遇到需要安裝TLS套件的錯誤訊息,請安裝tcltls套件,並在安裝後修改 /usr/lib/tls1.50/pkgIndex.tcl。將裡面的1.5改成1.50,然後存檔再重新啟動amsn。
心得:amsn svn版+Tcl/Tk 8.5a7 cvs版,目前的確可以解決傳大檔案斷線的問題,而且使用的記憶體也比之前的amsn 0.97RC1少蠻多的。
P.S: amsn 0.97RC1 + Tcl/Tk 8.5a7 cvs版會無法啟動

2007年8月17日 星期五

OXIM安裝心得

之前一直都是使用SCIM,因為它上面有新酷音,對於我這種只會注音類輸入法的人來說,是非常好用的。問題是SCIM並不是很穩定,有時後會有一些異常現象發生。之前有試用過GCIN,但是它對一些軟體的相容性不是很好,而且也沒有新酷音,個人又不是很喜歡詞音輸入法。偶然在Ubuntu正體中文站看到有人介紹OXIM,索性試了一下。其實還算蠻穩定的,也有新酷音。不過,1.1.1版會跟Flash plugin相衝,而又找不到有其他的更新的deb。所以只好自己下載source code來compile。
以下是簡單的步驟紀錄:
  1. 安裝qt3-dev-tools套件,以及相關的qt3的套件(像是libqt3-headers等等)。然後執行
    ./configure --disable-static --with-qt-dir=/usr/share/qt3
  2. 在執行完後,會顯示某些module的狀態是no,就去安裝相關的開發用套件(like gtk2, qt, chewing,libxpm-dev等等),然後再重新執行一次
  3. 當所有套件的狀態都是yes,此時執行
    sudo make
    。若是無錯誤訊息,再執行
    sudo make install-strip
    ,就安裝完成
  4. 在安裝完成之後,用
    sudo im-switch -s oxim
    ,將oxim設定為預設輸入法
  5. 在/etc/X11/Xsession.d中建立一個75custom_oxim_init,並包含以下內容:
    export XMODIFIERS="@im=oxim"
    export GTK_IM_MODULE="oxim"
    export XIM_PROGRAM="oxim &"
  6. 到系統->偏好設定->作業階段,選擇「初始啟動程式」,添增一個項目,並填入指令:
    oxim &
  7. 開啟console視窗,執行以下指令:
    sudo -s -h
    gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
  8. 完成之後,重新登入或是重新啟動即可
  9. 如果在使用im-switch去設定預設輸入法的時候,出現無法更新alternative的錯誤訊息時:
    1. 請安裝galternatives套件,並在console視窗以sudo galternatives來啟動
    2. 從左邊側邊欄中找出xinput-zh_TW的項目,然後按下右側裡的「新增」,之後輸入path為/etc/X11/xinit/xinput.d/oxim,並把priority調成60後按下確定。然後確認剛剛新增的項目是被選擇的。
心得:oxim的確是比較穩定,而且因為有新酷音,所以也是很好用。不過也是有幾個缺點:
  1. 中英文切換比較麻煩,一旦切換,所有編輯區的文字都會被送出
  2. 狀態顯示不太正常。原本在A視窗是切換到中文輸入法,但是切到B視窗時,會顯示為英文輸入模式,但是實際社仍為中文輸入模式,而且此時編輯區跟候選字區都無法正常顯示
以上幾個缺點說大也不大,只是還是有點不便就是。另外發現一件事,自行compile出來的程式無法用checkinstall包成deb檔來使用

Install Compiz-Fusion in Ubuntu 7.04

安裝方法可以參考:
7.04 Howto: 安裝Compiz Fusion特效 + Fusion Icon 管理器

其中有幾點必須注意:
1. Fusion-icon的安裝,我自己是無法利用網友包好的deb來安裝,但是直接使用git來下載source並compile的話,是OK
2. Mplayer在啟動時,可能會沒有視窗外框。amsn則是一定沒有視窗外框。解決方法:
系統->偏好設定->CompizConfig Settings Manager->Workarounds->Qt Window fix
將該選項取消即可
心得:
目前雖然Compiz-Fusion還在開發階段,但是穩定度已經比6月底的版本好很多了,甚至比Beryl穩體,效率也還不錯,資源的使用也比Beryl少。在特效上也比Beryl多。