星期六, 12月 15, 2012

Tails - Matthew Van Fleet

Tails furry,

Tails spiny,

Tails rainbow-hued and shiny.

 

Tails stand up,

Tails drag,

Tails frisky - wag, wag, wag!

 

Tails fluffy,

Tails stringy,

Scaled tails strong and clingy!

 

Tails long,

Tails stumpy,

Pulling tails makes snoozers grumpy!

 

Tails old,

Tails new,

Bumpy tails are fun to chew!

 

Tails cool,

Tails hot,

Tails swishing - swat, swat, swat!

 

Tails broad,

Tails slinky,

Tails sometimes can be stinky!

 

You've seen some tails large and some very small.

Now here's just one more - The BIGGEST tail of all.

 

Tamarin

Chipmunk

Weasel

Beaver

Porcupine

Boar

Peacock

Tiger

Alligator

Pig

Skunk

Raccoon

Pangolin

Fox

Panda

Bush Baby

Whale

星期二, 12月 04, 2012

Ubuntu 12.04 底下用 apt 安裝 Eclipse

昨天在 Ubuntu 12.04 底下用 apt 安裝 Eclipse,結果一執行卻出現錯誤訊息。看了一下記錄的 log 內容,顯示

java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons:

    no swt-gtk-3740 in java.library.path

    no swt-gtk in java.library.path

    Can't load library: /home/btman/.swt/lib/linux/x86/libswt-gtk-3740.so

    Can't load library: /home/btman/.swt/lib/linux/x86/libswt-gtk.so

看字面上的意思是指沒有 SWT 的程式庫,找了一下網路資料,果然是和 SWT 有關,不過不是沒有安裝,而是 Eclipse 找的路徑沒有,所以就直接
ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86/
把 SWT 的程式庫連結到 ~/.swt/lib/linux/x86 底下,重新執行就正常了。
 
Good!!

 

星期二, 11月 06, 2012

Linux 掛載 Samba(網芳) 的方式

文章內容:http://opensuse.swerdna.org/susesambacifs.html

Samba HowTo: Mount a CIFS Network Share [Mapped Drive] in openSUSE

This tutorial shows how to mount shares as network drives on a Linux client and also how to set up shares on a Linux server that are suitable for mounting on Windows and Linux clients.

Versions: openSUSE 11.x [should also work in openSUSE 10.2 & 10.3]

雖然內容是 openSUSE來示範,不過其它的套件(Debian, Ubuntu) 應該也可以。

星期三, 10月 10, 2012

Ubuntu 更新完後,視窗的標題列就不見了

今天更新 Ubuntu(12.04)之後,重新開機就發現每個視窗的標題列就不見了,上網查了一下,果然有人也遇到這個問題,直接按【ALT+F2】,輸入「unity  --reset」,約過15秒,就回復正常了!

 

PS: 由於一開始是開 gnome-terminal 時發現這個問題,一度以為是 gnome-terminal 的問題,還把它先移除再重新安裝,想不到是 unity 的問題!

星期五, 9月 21, 2012

GPG KEY 解決方式

有時手動把  source 加入 source.list 的時候,會提示沒有 KEY,雖然也可以手動上網搜尋資料,不過,還是把它記下來,下次就可以找自己的文章來看了

方法1:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <key number>

方法2:

gpg --keyserver subkeys.pgp.net --recv <key number>
gpg --export --armor 6AF0E1940624A220 | sudo apt-key add -

星期四, 8月 02, 2012

[Ubuntu] 遠端登入 Ubuntu Server 後,中文日期無法正常顯示

利用 putty 遠端登入 Ubuntu Server (12.04) 後,發現用 「ls -l 」之後,檔案日期無法用中文正常顯示,由於小弟原本都是設定英文語系,所以平常很少遇到這個問題,檢查系統的語系設定:

 

LANG="zh_TW.UTF-8"

LANGUAGE="zh_TW:zh"

LC_NUMERIC="zh_TW"

LC_TIME="zh_TW"

LC_MONETARY="zh_TW"

LC_PAPER="zh_TW"

LC_NAME="zh_TW"

LC_ADDRESS="zh_TW"

LC_TELEPHONE="zh_TW"

LC_MEASUREMENT="zh_TW"

LC_IDENTIFICATION="zh_TW"

UTF-8 設定與 putty 連線時的編碼相同,照理說應該正常才對,所以直接透過 putty 打中文,可以正常顯示。

 

不死心,又再試一次「ls  -l」,結果一樣有問題;這個問題困擾了我二、三天,今天又上網找了一下資料,香港網友提到「LC_TIME=zh_HK.UTF-8」,我就把它改成「LC_TIME=zh_TW.UTF-8」,結果就好了!

星期三, 6月 06, 2012

隨身碟開機時,BIOS無法識別新的隨身碟

之前都說只要用 HP的格式化工具就可以讓電腦可以用隨身碟來開機!不過,最近出了點問題!

有兩、三支32G隨身碟,想在Acer M6 上利用隨身碟開機,在BIOS 的選單中卻找不到,但是在新電腦(如:Acer L480),卻可以正常讀取,就算利用 HP工具格式化之後,也是一樣的情況,這個問題讓我覺得蠻困擾的,所以上網找資料,做了點功課,發現如果將隨身碟格式化時將它以類似硬碟的方式來分配 Head 和 Sector 的話,大部分的 BIOS 好像都可以將隨身碟識別為 USB-HDD,這時開機也就正常了!

網路上有支免費的程式蠻好用的,大家可以試試 --- Partition Guru Free

星期六, 5月 05, 2012

家裡的桌機從 11.10 升級到 12.04

直接從「更新管理員」中點選升級到 12.04,然後就一連串等待了,由於是晚上做的,所以做到一半,有些步驟因為需要手動輸入(如:mysql server 密碼),所以有些延宕,不過加總起來應該不超過 2 個小時,升級完之後,重新開機......

嗯!還蠻順利的,感覺還不錯,不過,還是有些小地方值得提醒大家。

1. gcin 沒有作用,查了一下網路,似乎是 gcin 沒有人維護,所以被拿到 unstabe 去了,所以 /usr/share/gcin/table 裡除而自行複製的 noseeing.gtab 之外,空無一物。

解法:可以使用 gcin 分支出來的 hime,用法,設定幾乎和 gcin 一樣,只不過目錄名稱換成 hime。

sudo apt-get install hime

2.上方的工作列沒有顯示輸入法的圖示,這個問題是由第一個問題衍生出來的,因為 ubuntu 自 11.10 開始,使用 unity 管理介面,上方的工作列稱為 indicator,不是以前的 applet,要顯示的話,目前我只知道可以用指令做設定,不曉得有沒有GUI 介面的設定方式。

解法:利用 gsettings 這支程式來做 unity 的設定。

gsettings get   com.canonical.Unity.Panel   systray-whitelist

顯示結果 ==> ['JavaEmbeddedFrame', 'Mumble', 'Wine', 'Skype', 'hp-systray', 'scp-dbus-service', 'gcin', 'shutter']

 

gsettings set com.canonical.Unity.Panel    systray-whitelist   "['JavaEmbeddedFrame', 'Mumble', 'Wine', 'Skype', 'hp-systray', 'scp-dbus-service', 'gcin', 'hime', 'shutter']"

原本在 11.10 中有設定 gcin 出現圖示,但是12.04 的時候,輸入法換成 hime,因為名稱不同,所以就沒有顯示,把它加入後重新開機就OK了!

 

3. Unity 的快速選單不會自動隱藏;也許是因為目前都是寬螢幕的關係,所以在左方的快速選單並不會自動隱藏,但是我的電腦接了二台螢幕,所以同時出現兩個快速選單就覺得怪怪的,所以還是想辦法把它設為自動隱藏,設定的方式因為有圖形介面,所以也蠻簡單的。

(1) 按 Super 鍵(Window Key),然後輸入 「ccsm」(CompizConfig Settings Manager),執行 Compiz 特效管理員。

(2)  

設定完之後,Unity 的快速選單就會自動隱藏,需要時,可將滑鼠移至螢幕左方邊緣,或是按下 Super 鍵,就會出現選單。

 

星期四, 5月 03, 2012

python 實用模組(2) - ZSI

這個模組用來開發 Web Service

https://www.ibm.com/developerworks/cn/opensource/os-cn-pythonws/

python 實用模組(1) -- pexpect

pexpect 把 expect 實作出來,可以用來做與機器之間的互動,之前我做的linux版的網路外掛磁碟就是用到這個模組。

網路上對這個模組的介紹頗多,把幾個看到的網址記下來,供參考!

http://pexpect.sourceforge.net/doc/

python expect模塊pexpect簡單應用

IBM - 探索 Pexpect,第 1 部分:剖析 Pexpect
IBM - 探索 Pexpect,第 2 部分:Pexpect 的實例分析

用pexpect執行ssh及應用

星期五, 4月 27, 2012

Ubuntu 12.04 圖形介面下自動取得 IP 後,resolv.conf 的設定跑掉了

上次提到 Ubuntu 12.04 的 resove.conf 這個檔案已經被改成用 resolvconf 這支程式來做管理,如果利用 /etc/network/interfaces 來做網卡設定時比較沒有問題,可以在裡頭順便指定 dns,但是如果是在 Gnome 底下,網卡的設定是由 NetworkManager 這支程式在負責(預設是走 DHCP),所以這時就沒有辦法在  /etc/network/interfaces  指定。

我的解決辦法有2種:

1. 直接在 NetworkManager 裡設定該網卡只抓 IP,但是 DNS 手動設定。

 

2. 另一種則是利用 resolvconf 這支程式的機制,來手動增加 DNS (nameserver) 的設定

步驟一:開啟 /etc/resolvconf/resolv.conf.d/head

sudo vi /etc/resolvconf/resolv.conf.d/head

步驟二:在檔案的最底下加上一行 nameserver 的設定

nameserver 168.95.1.1

 

 

 

 

這樣一來,該行 nameserver 就一定會被加到 resolv.con 的開頭了

星期四, 3月 29, 2012

Ubuntu 12.04 LTS 發佈時程表

 

  • 2011.12.01 Alpha 1
  • 2012.02.02 Alpha 2
  • 2012.03.01 Beta 1
  • 2012.03.22 Beta 2
  • 2012.03.29 Beta 2
  • 2012.04.19 Candidate(預覽版)
  • 2012.04.26 Final (最終版 - 正式版)

星期六, 3月 24, 2012

Stack Overflow 上網友對於 python gui 技術的比較

python - Pygtk VS Pyqt VS WxPython VS Tkinter - Stack Overflow

I can't really say which one is the most used, but here are some feature comparisons:

Tkinter:

  • Built in to Python
  • Not native-looking GUIs by default before Python 2.7
  • Simple, easy to learn
  • In Python 2.7, ttk support was added (themed widgets)
  • Some GUI designers, but they aren't really as functional as those for other toolkits (but the simplicity of Tkinter alleviates this)

PyGTK:

  • Focused on Linux, works on Windows but can be a pain (thanks to detly for pointing this out)
  • Has a GUI designer, Glade
  • More functionality/weight than Tkinter
  • LGPL

PyGObject (GTK3, will replace PyGTK):

 

  • Still focused on Linux
  • Basically the same, but access is done through GObject
  • Relatively new, but will replace PyGTK

     

    New users wising to develop Python applications using GTK are recommended to use the GObject-Introspection features available in PyGObject. Existing authors of PyGtk applications are also recommended to port their applications to PyGObject if they wish to take advantage of new features appearing in GTK-3 and beyond.

-- http://article.gmane.org/gmane.comp.gnome.gtk%2B.python/15449

 

wxPython:

  • Cross-platform
  • Native widgets on each platform
  • More functionality/weight than Tkinter
  • GUI designers like wxGlade and others
  • wxWindows license (similar to LGPL)

PyQt:

  • Cross-platform
  • Native (or at least native-looking) widgets on each platform, styleable with CSS
  • More functionality/weight than Tkinter (probably the most here: JavaScript, QML...)
  • GPL licensed (commercial licenses available)
  • QtDesigner (made by Nokia) and utilities to convert to Python

PySide:

  • Python Qt binding (like PyQT) but LGPL
  • Cross-platform
  • API is almost the same as PyQT, but it only supports the "new-style" PyQT API.

PyQt, wxWidgets, and PyGTK all support OpenGL.

All three have Webkit bindings, though PyQt's/PySide's seem to be the easiest to use (it is integrated, after all).

Tkinter is the simplest, but least feature-complete. wxPython and PyQt are probably the most powerful in terms of what's built in (as far as I know), but PyGTK is also good, especially if you're targeting Linux. New apps using GTK should use GObject rather than the old PyGTK interface.

All are cross-platform. (PySide also supports MeeGo.)

All support Python 3, except for PySide and wxPython, whose support is forthcoming (0,1).

Some links: Developing user interface in Python - TkInter Vs PyQt

link|edit

星期三, 3月 21, 2012

[Ubuntu] 命令列下掛載網芳分享的作法

1. 不需密碼

# mount -t cifs //winserver/myshare /mnt

2. 需要帳號密碼

# mount -t cifs //winserver/myshare -o username=<username>,password=<password> /mnt

星期三, 3月 14, 2012

Ubuntu 12.04 Server beta1 開機後 resolv.conf 會重設?

最近安裝了一台 Ubuntu Server 12.04 beta 來試用,準備一切就緒後把 10.04 這個 LTS 版本升級到 12.04。

不過,今天連線更新時,重新開機後,居然無法對外連線,檢查了 /etc/resolv.conf 之後,發現裡面沒有任何 dns 的設定,所以,我就開心的寫下

nameserver 163.20.174.1
nameserver 168.95.192.1

 結果重新開機後,剛剛在 resolv.conf 裡的設定通通不見了,仔細一看,它在開頭的地方寫著:

 

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)

# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

 

看起來的意思是說,resolvconf 這支程式會動態產生 nameserver 的資料,所以不要直接修改 /etc/resolv.conf。

利用 「man resolvconf」看了一下說明,原來,nameserver 的設定都移到 /etc/network/interface 這個檔案裡了,直接在設定 ip 的時候,指定 dns 的資訊,簡單的用法如下:

dns-nameservers 203.27.153.5  168.95.192.1

dns-search slps.ntpc.edu.tw

 

星期二, 3月 13, 2012

介紹:Google Apps 管理介面 - Google Apps Manager

在練習 Google API 的時候發現這支程式,剛好蠻符合我的需求,可以用來管理 Google Apps 內的帳號。它可以用來

1.新增/刪除 帳號

2.停用/啟用 帳號

3.重設密碼

4.強迫登入後變更密碼

5.使用者清單/排序

下載位址:http://code.google.com/p/gappsmmc/downloads/list

操作步驟:

1. 安裝 gappsmmc 。

2. 執行「mmc」,開啟一個空的主控台。

3.點選「檔案/新增移除嵌入式管理單元」。