2010年12月23日 星期四

在 Ubuntu 下安裝 pureadmin 管理 pure-ftpd

以 Ubuntu Lucid 為例安裝 pureadmin 管理 pure-ftpd

安裝 pureadmin , 一併會安裝 pure-ftpd 等需要套件
sudo apt-get install pureadmin

安裝完後預設只會使用 PAM 認証也就是系統有的一般使用者。如果要使用虛擬的帳號,就必須進行下列設定。

1) 新增虛擬使用者所要對應的系統使用者(ftpuser)與其家目錄
sudo adduser --system --home /home/ftpuser --shell /dev/null --disabled-password  --disabled-login ftpuser

2) 新增虛擬使用者
sudo pure-pw useradd user01 -u ftpuser -d /home/ftpuser
如果要不同使用者有不同家目錄需在 -d 指定且新增其家目錄, 如
sudo mkdir /home/ftpuser/joe; sudo chown -R ftpuser /home/ftpuser/joe
sudo pure-pw useradd joe -u mis91 -d /home/ftpuser/joe
預設會新增在 /etc/pure-ftpd/pureftpd.passwd 中,或使用 pure-pw -f your.passwd.file 指定

3) 建立 db 並確認 /etc/pure-ftpd/conf/PureDB 中資料為 /etc/pure-ftpd/pureftpd.pdb
sudo pure-pw mkdb /etc/pure-ftpd/pureftpd.pdb -f /etc/pure-ftpd/pureftpd.passwd
加入 DB 認証模式至設定中
sudo ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/45puredb

4) 確認幾項設定
* 確認 /etc/pure-ftpd/conf/UnixAuthentication 中指有字串 no
* 確認 /etc/pure-ftpd/conf/MinUID 中的數值比 ftpuser 的 UID 還小(如: adduser --system 的 UID 通常會預設值) , 不然虛擬帳號無法登入

5)重新啟動 pure-ftpd service
sudo /etc/init.d/pure-ftpd restart

其他常用到的幾個設定,檔案都需寫在 /etc/pure-ftpd/conf 下
* ) echo "yes" > ChrootEveryone (使用者被限制在家目錄下)
* ) echo "no" > PAMAuthentication (不使用 PAM 認証:一般用者無法用 pure-ftpd 登入)
*) echo ",9188" > Bind (設定 ip/port )
* ) echo "yes" > KeepAllFiles (這個應該是不允許用戶端刪除文件)
* ) echo "yes" >DontResolve (不解釋主機名,可以加快登錄速度)

設定允許 symbolic links :
1) 編輯 /etc/default/pure-ftpd-common
將 VIRTUALCHROOT=false 改為 VIRTUALCHROOT=true
2) Restart service

設定允許 匿名登入
1) echo "no" > /etc/pure-ftpd/conf/NoAnonymous
2) sudo adduser --system --home /home/ftpuser --shell /sbin/nologin --disabled-password  --disabled-login  ftp
3) Restart service

設定 Passive mode
1) echo "29799 29899" > /etc/pure-ftpd/conf/PassivePortRange

 設定最多 clients 數量
1) echo "50" > /etc/pure-ftpd/conf/MaxClientsNumber

設定 Pureftp + TLS (先確認已安裝 openssl)
1) echo "1" > /etc/pure-ftpd/conf/TLS
("2" : If you want to accept TLS sessions only (no FTP))
("0" : To not allow TLS at all (only FTP), either delete /etc/pure-ftpd/conf/TLS)
2) Creating The SSL Certificate For TLS
sudo openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
sudo chmod 600 /etc/ssl/private/pure-ftpd.pem
3) Restart service

Reference:
http://ubuntuforums.org/showthread.php?t=91052
http://www.ivankristianto.com/os/ubuntu/howto-install-ftp-server-with-user-management-in-ubuntu/1181/
http://wiki.ubuntu.org.cn/index.php?title=Pure-ftpd%E6%9C%8D%E5%8A%A1%E5%AE%89%E8%A3%85%E8%AE%BE%E7%BD%AE&variant=zh-tw

2010年11月22日 星期一

Pidgin MSN 無法登入的問題 (無法驗證憑證)

最近遇到 Pidgin 上 MSN 出現憑證無法驗證的問題。解決如下:

  • Pidgin 上安裝 msn-pecan
sudo apt-get install msn-pecan
  • 在 MSN 的帳號上變更通訊協定為 WLM

  • 關於 msn-pecan :
http://tetralet.luna.com.tw/index.php?op=ViewArticle&articleId=207&blogId=1


Reference :
http://plog.longwin.com.tw/my_note-unix/2010/11/19/pidgin-msn-ssl-error-2010

2010年11月1日 星期一

臺灣小吃英譯

很實用的小吃英譯表
  • 小吃
  • 甜點
  • 早餐
  • 飯類
  • 麵類
  • 其他
Reference:
http://blog.udn.com/kenshin/782203

Install Broadcom NetXtreme II 10 Gigabit Driver on Centos4.8

記錄如何在 Centos 4.8 下安裝 Broadcom NetXtreme II 10 Gigabit NIC。
因為在原生 Centos 4.8 上所提供的核心 (2.6.9-89.31.1.EL) 模組版本為

$ sudo /sbin/modinfo bnx2x
filename:       /lib/modules/2.6.9-89.31.1.EL/kernel/drivers/net/bnx2x.ko
parm:           debug:default debug msglevel
parm:           poll:use polling (for debug)
parm:           use_inta:use INT#A instead of MSI-X
parm:           disable_tpa:disable the TPA (LRO) feature
version:        1.45.23-1 7A1BF1713BBB0BA1125A3D6
license:        GPL
description:    Broadcom NetXtreme II BCM57710 Driver
author:         Eliezer Tamir
alias:          pci:v000014E4d00001650sv*sd*bc*sc*i*
alias:          pci:v000014E4d0000164Fsv*sd*bc*sc*i*
alias:          pci:v000014E4d0000164Esv*sd*bc*sc*i*
depends:        libcrc32c
vermagic:       2.6.9-89.31.1.EL gcc-3.4


1. 下載原廠提供之 driver source

1.1 至Broadcom原廠下載並解開
http://zh-tw.broadcom.com/support/ethernet_nic/netxtremeii10.php
下載 Linux 部分: linux-5.2.55.zip

1.2 解開 zip
$ unzip -d ~/tmp linux-5.2.55.zip

2. 安裝 compile 需要工具
$ sudo yum install rpm-build gcc kernel-devel.x86_64

3. 用 src.rpm進行編譯與安裝

3.1安裝 src.rpm
$ cd ~/tmp/Server/Linux/Driver/ ; sudo rpm -ivh netxtreme2-5.2.55-1.src.rpm
   1:netxtreme2             ########################################### [100%]

3.2 編譯與安裝
$ cd /usr/src/redhat/ ; sudo rpmbuild -bb SPECS/netxtreme2.spec

確認沒錯誤訊息後,在 /usr/src/redhat/RPMS/x86_64/下應該會編譯完成  netxtreme2-5.2.55-1.x86_64.rpm . 確認並安裝
$ sudo rpm -ivh RPMS/x86_64/netxtreme2-5.2.55-1.x86_64.rpm

4.載入並確認版本

4.1 載入 bnx2x 模組(若必要的話,要先移除)
$ sudo /sbin/rmmod bnx2x ; sudo /sbin/modprobe bnx2x
4.2 確認目前driver 版本
$ sudo /sbin/modinfo bnx2x
filename:       /lib/modules/2.6.9-89.31.1.EL/updates/bnx2x.ko
parm:           debug: Default debug msglevel
parm:           mrrs: Force Max Read Req Size (0..3) (for debug)
parm:           poll: Use polling (for debug)
parm:           dropless_fc: Pause on exhausted host ring
parm:           int_mode: Force interrupt mode other then MSI-X (1 INT#x; 2 MSI)
parm:           disable_tpa: Disable the TPA (LRO) feature
parm:           num_queues: Number of queues for multi_mode=1 (default is as a number of CPUs)
parm:           multi_mode: Multi queue mode (0 Disable; 1 Enable (default))
cvs_version:    $Revision: #6 $
version:        1.52.15 0A1AEAFC7BDD926F8D5C780
license:        GPL
description:    Broadcom NetXtreme II BCM57710/57711/57711E Driver
author:         Eliezer Tamir
alias:          pci:v000014E4d00001650sv*sd*bc*sc*i*
alias:          pci:v000014E4d0000164Fsv*sd*bc*sc*i*
alias:          pci:v000014E4d0000164Esv*sd*bc*sc*i*
depends:       
vermagic:       2.6.9-89.31.1.EL gcc-3.4

2010年10月28日 星期四

How to install DRBL on RHEL version

本篇說明如何在 RHEL 環境上安裝DRBL 環境
以 Centos 4.8 為例(RHEL 4.8 應是相同) 使用 drblsrv-offline 來替換原先 drblsrv -i
分四步驟。(安裝前建議把系統的套件更新到最新的狀態,RHEL 亦然)

1. 下載有支援 drblsrv-offline 的版本 1.7.3-1 或之後,並安裝
2. 先行安裝需要之套件
3. 執行 /opt/drbl/sbin/drblsrv-offline
4. 執行 /opt/drbl/sbin/drblpush -i


1. 下載 drbl 相關套件

1.1  安裝 GPG-key
$ rm -f GPG-KEY-DRBL; wget http://drbl.nchc.org.tw/GPG-KEY-DRBL; sudo rpm --import GPG-KEY-DRBL

1.2 下載有支援 drblsrv-offline 的版本(1.7.3-1 之後)與相關套件,並安裝。以(drbl-1.9.6-35 為例)
cd ~/tmp
lftp http://free.nchc.org.tw/drbl-core/x86_64/RPMS.drbl-stable/ -e "mirror -r "

1.3 安裝drbl 主程式
$ sudo rpm -ivh drbl-1.9.6-35.i386.rpm
警告:only V3 signatures can be verified, skipping V4 signature
準備中...                ########################################### [100%]
   1:drbl                   ########################################### [100%]
警告:only V3 signatures can be verified, skipping V4 signature

2. 安裝需要之套件

2.1 安裝剛 mirror 的套件,
$ for i in `ls *.rpm`; do sudo rpm -ivh  $i; done
(因為 clonezilla 會有相依其他套件,所以第一次執行會有錯誤問訊息,執行第二次則會全部安裝)

2.2 檢查需要哪些套件
$ sudo /opt/drbl/sbin/drblsrv-offline -r

*****************************************************.
你的作業系統版本: CentOS 4.8
*****************************************************.
這些來至於此GNU/Linux套件的程式是必要的(更詳細的資料請查你的套件的儲藏庫):
dhcp tftp-server nfs-utils ypserv ypbind yp-tools mkinitrd firstboot iptables wget dialog initscripts rsync parted tcpdump bc dos2unix curl lftp openssh-server openssh-clients coreutils gzip bzip2 nc file ethtool net-tools syslinux zip unzip iproute binutils
*****************************************************.
這些來至於DRBL計劃的套件是必須的[更詳細的資料請查http://drbl.sf.net (英文) 或是 http://drbl.nchc.org.tw (中文)], rpm或是deb的套件可以在http://free.nchc.org.tw/drbl-core or http://drbl.sf.net/drbl-core找到:
clonezilla mkswap-uuid drbl-partimage partclone drbl-chntpw drbl-lzop pigz pbzip2 mkpxeinitrd-net udpcast drbl-etherboot gpxe freedos drbl-ntfsprogs
*****************************************************.
這些套件如果可以在儲藏庫中找到,建議您安裝:
lvm2 ntfs-3g genisoimage mkisofs lshw hwinfo aoetools vblade dmidecode lzma xz xz-utils pxz lzip plzip hfsutils hfsprogs dmsetup dmraid kpartx device-mapper tofrodos dos2unix unix2dos
2.3 第一項的套件需要自行補上;第二項在 2.1 已完成;第三項套件可以的話就補上

3. 執行 /opt/drbl/sbin/drblsrv-offline 進行相關服務配置

$ sudo /opt/drbl/sbin/drblsrv-offline -s `uname -r`
Ps:
1. 過程中會檢查必要的相關套件,若有缺少而中斷則需要補完
2. -s client 的 kernel 採用 server 上現行 kernel
3. 若不想檢查則可加入 -c 強制不檢查

4. 執行 drblpush
$ sudo /opt/drbl/sbin/drblpush -i


後記:
目前已知 Centos 4.8 上使用 dcs 會因為 dialog 工具而有問題。
將 /etc/drbl/conf/drbl.conf中的
if type whiptail >/dev/null 2>&1; then
DIA="whiptail"
else
DIA="dialog"
fi
改成
if type whiptail >/dev/null 2>&1; then
DIA="dialogl"
else
DIA="dialog"
fi

2010年10月2日 星期六

利用 network-manager 設定 VPN 連線

在 Ubuntu Lucid gnome 下使用 network-manager (NM) 設定 VPN 並進行連線
  • Step 1: Install network-manager-pptp
sudo apt-get install network-manager-pptp
  • 點選 NM icon 並下拉至 VPN 連線-> 設置 VPN
  • 確認在 VPN tag 中,點選『加入』,選 PPTP 類型
    (VPN 常見類型有 IPSec、PPTP、SSLVPN,這些通常應用在 PC to Site 或 Site to Site 的連線模式)
    設定連線相關資訊:
    gateway:140.110.22.100
    username: c00xxx00
    password: Bee....
    Advanced Authorization:


    • 只選 PAP
    • Disable 'use tcp header compression' 
    IPv4 設定(Optional: 針對 DNS,若內網有非公開 FQDN 對應,建議設上 )
    下拉選單選 只自動vpn位址
    設定dns: 140.110.16.1
  • Reference:
http://www.libthomas.org/~thomas/wp/?p=705
http://netherlandsdaniel.blogspot.com/2007/08/ubuntuvpnwindows.html

2010年9月29日 星期三

Windows Locale Codes Sorted by Locale ID (LCID)

As defined by Microsoft, a locale is either a language or a language in combination with a country. See Microsoft definitions of locale(http://msdn.microsoft.com/en-us/goglobal/bb964662.aspx).

Locale Language
code
LCID
string
Decimal Hexadecimal Codepage
Afrikaansafaf10784361252
Albaniansqsq10521250
Amharicamam1118
Arabic - Algeriaarar-dz512114011256
Arabic - Bahrainarar-bh153611256
Arabic - Egyptarar-eg30731256
Arabic - Iraqarar-iq20498011256
Arabic - Jordanarar-jo112651256
Arabic - Kuwaitarar-kw1331334011256
Arabic - Lebanonarar-lb1228930011256
Arabic - Libyaarar-ly409710011256
Arabic - Moroccoarar-ma614518011256
Arabic - Omanarar-om819320011256
Arabic - Qatararar-qa1638540011256
Arabic - Saudi Arabiaarar-sa10254011256
Arabic - Syriaarar-sy1024128011256
Arabic - Tunisiaarar-tn71691256
Arabic - United Arab Emiratesarar-ae1433738011256
Arabic - Yemenarar-ye921724011256
Armenianhyhy1067
Assameseasas1101
Azeri - Cyrillicazaz-az20921251
Azeri - Latinazaz-az10681254
Basqueeueu10691252
Belarusianbebe10594231251
Bengali - Bangladeshbnbn2117845
Bengali - Indiabnbn1093445
Bosnianbsbs5146
Bulgarianbgbg10264021251
Burmesemymy1109455
Catalancaca10274031252
Chinese - Chinazhzh-cn2052804
Chinese - Hong Kong SARzhzh-hk3076
Chinese - Macau SARzhzh-mo51241404
Chinese - Singaporezhzh-sg41001004
Chinese - Taiwanzhzh-tw1028404
Croatianhrhr10501250
Czechcscs10294051250
Danishdada10304061252
Divehi; Dhivehi; Maldiviandvdv1125465
Dutch - Belgiumnlnl-be20678131252
Dutch - Netherlandsnlnl-nl10434131252
Edo1126466
English - Australiaenen-au30811252
English - Belizeenen-bz1024928091252
English - Canadaenen-ca410510091252
English - Caribbeanenen-cb922524091252
English - Great Britainenen-gb20578091252
English - Indiaenen-in163934009
English - Irelandenen-ie615318091252
English - Jamaicaenen-jm820120091252
English - New Zealandenen-nz512914091252
English - Phillippinesenen-ph1332134091252
English - Southern Africaenen-za71771252
English - Trinidadenen-tt112731252
English - United Statesenen-us10334091252
English - Zimbabween1229730091252
Estonianetet10614251257
Faroesefofo10804381252
Farsi - Persianfafa10654291256
Filipino1124464
Finnishfifi10351252
French - Belgiumfrfr-be20601252
French - Cameroonfr11276
French - Canadafrfr-ca30841252
French - Congofr9228
French - Cote d'Ivoirefr12300
French - Francefrfr-fr10361252
French - Luxembourgfrfr-lu51321252
French - Malifr13324
French - Monacofr61561252
French - Moroccofr14348
French - Senegalfr10252
French - Switzerlandfrfr-ch41081252
French - West Indiesfr7180
Frisian - Netherlands1122462
FYRO Macedoniamkmk10711251
Gaelic - Irelandgdgd-ie2108
Gaelic - Scotlandgdgd1084
Galiciangl11104561252
Georgianka1079437
German - Austriadede-at30791252
German - Germanydede-de10314071252
German - Liechtensteindede-li512714071252
German - Luxembourgdede-lu410310071252
German - Switzerlanddede-ch20558071252
Greekelel10324081253
Guarani - Paraguaygngn1140474
Gujaratigugu1095447
Hebrewhehe10371255
HID (Human Interface Device)1279
Hindihihi1081439
Hungarianhuhu10381250
Icelandicisis10391252
Igbo - Nigeria1136470
Indonesianidid10574211252
Italian - Italyitit-it10404101252
Italian - Switzerlanditit-ch20648101252
Japanesejaja1041411
Kannadaknkn1099
Kashmiriksks1120460
Kazakhkkkk10871251
Khmerkmkm1107453
Konkani1111457
Koreankoko1042412
Kyrgyz - Cyrillic10884401251
Laololo1108454
Latinlala1142476
Latvianlvlv10624261257
Lithuanianltlt10634271257
Malay - Bruneimsms-bn21101252
Malay - Malaysiamsms-my10861252
Malayalammlml1100
Maltesemtmt1082
Manipuri1112458
Maorimimi1153481
Marathimrmr1102
Mongolianmnmn2128850
Mongolianmnmn11044501251
Nepalinene1121461
Norwegian - Bokmlnbno-no10444141252
Norwegian - Nynorsknnno-no20688141252
Oriyaoror1096448
Polishplpl10454151250
Portuguese - Brazilptpt-br10464161252
Portuguese - Portugalptpt-pt20708161252
Punjabipapa1094446
Raeto-Romancermrm1047417
Romanian - Moldovaroro-mo2072818
Romanian - Romaniaroro10484181250
Russianruru10494191251
Russian - Moldovaruru-mo2073819
Sami Lappish1083
Sanskritsasa1103
Serbian - Cyrillicsrsr-sp30981251
Serbian - Latinsrsr-sp20741250
Sesotho (Sutu)1072430
Setsuanatntn1074432
Sindhisdsd1113459
Sinhala; Sinhalesesisi1115
Slovaksksk10511250
Slovenianslsl10604241250
Somalisoso1143477
Sorbiansbsb1070
Spanish - Argentinaeses-ar112741252
Spanish - Boliviaeses-bo163941252
Spanish - Chileeses-cl133221252
Spanish - Colombiaeses-co92261252
Spanish - Costa Ricaeses-cr51301252
Spanish - Dominican Republiceses-do71781252
Spanish - Ecuadoreses-ec122981252
Spanish - El Salvadoreses-sv174181252
Spanish - Guatemalaeses-gt41061252
Spanish - Honduraseses-hn184421252
Spanish - Mexicoeses-mx20581252
Spanish - Nicaraguaeses-ni194661252
Spanish - Panamaeses-pa61541252
Spanish - Paraguayeses-py153701252
Spanish - Perueses-pe102501252
Spanish - Puerto Ricoeses-pr204901252
Spanish - Spain (Traditional)eses-es10341252
Spanish - Uruguayeses-uy143461252
Spanish - Venezuelaeses-ve82021252
Swahiliswsw10894411252
Swedish - Finlandsvsv-fi20771252
Swedish - Swedensvsv-se10531252
Syriac1114
Tajiktgtg1064428
Tamiltata1097449
Tatartttt10924441251
Telugutete1098
Thaithth1054
Tibetanbobo1105451
Tsongatsts1073431
Turkishtrtr10551254
Turkmentktk1090442
Ukrainianukuk10584221251
UnicodeUTF-8065001
Urduurur10564201256
Uzbek - Cyrillicuzuz-uz21158431251
Uzbek - Latinuzuz-uz10914431254
Venda1075433
Vietnamesevivi10661258
Welshcycy1106452
Xhosaxhxh1076434
Yiddishyiyi1085
Zuluzuzu1077435


  • Reference
http://www.science.co.il/language/Locale-Codes.asp

2010年9月28日 星期二

Use WebATM with Ez-100PU on Ubuntu 10.04

  • 安裝讀卡機相關工具 (pcscd , pcsc-tools)
$ sudo apt-get install pcscd pcsc-tools
  •  安裝  Ez-100PU Linux 驅動程式 
wget http://www.casauto.com.tw/db/pictures/modules/PDT/PDT060207001/200910202021270555.gz -O EZUSB_Linux_x86_v1.4.9.tar.gz 
tar zxvf EZUSB_Linux_x86_v1.4.9.tar.gz
cd EZUSB_Linux_x86_v1.4.9/driver_ezusb_v1.4.9/

確認系統環境
./check_env
 
若都沒有出現error 或 file not found訊息,再執行安裝驅動程式指令
 sudo ./install 
  • 重新起動 pcsc daemon
sudo /etc/init.d/pcscd restart

使用前可以使用 pcsc_scan差詢讀卡機狀態,應該會有下列的顯示
$ pcsc_scan 
PC/SC device scanner
V 1.4.16 (c) 2001-2009, Ludovic Rousseau 
Compiled with PC/SC lite version: 1.5.3
Scanning present readers...
Waiting for the first reader...found one
Scanning present readers...
0: CASTLES EZ100PU 00 00

Tue Sep 28 15:07:40 2010
 Reader 0: CASTLES EZ100PU 00 00
  Card state: Card removed, 


備註:
    • Reference 
    http://jackden-diary.blogspot.com/2010/01/webatm-on-ubuntu-910-use-ez-100pu.html
    http://trac.nchc.org.tw/grid/wiki/jazz/UNR_Tuning

    2010年9月26日 星期日

    幾個跟 udev 相關的文章收錄

    • dev 撰寫規則
    http://www.reactivated.net/writing_udev_rules.html
    • udev , 出自DebianWiki
    http://www.debian.org.tw/index.php/udev
    • Udev (正體中文)
    http://wiki.archlinux.org/index.php/Udev

    Install Windows relative programs over wine on Ubuntu Lucid

    • Install wine and download winetricks
    $ sudo apt-get install wine ; wget http://www.kegel.com/wine/winetricks
    • Execute winetricks to install programs
     $ sh winetricks
    Then it should pop up a box with tools you can install and simply select IE8 or other goodies to choose from
    • Start up IE
    $ wine "C:\Program Files\Internet Explorer\iexplore"
    • Reference
    http://blog.sidmitra.com/install-ie-on-ubuntu-lucid#
    http://stream-recorder.com/forum/install-internet-explorer-7-ie7-ubuntu-10-t6721.html?s=33fba047c64110a0fe151c2e0e82d4be&

    HowTo - Linux 下如何從 flv 取出聲音成 mp3

    • Use  mplayer
    Lets begin with mplayer. To extract audio from video files, use -dumpaudio option and specified the output filename with -dumpfile

    $ mplayer -dumpaudio nodame_theme.flv -dumpfile nodame_theme.mp3

    Then check out the output:

    $ file nodame_theme.mp3

    Output:

    MPEG ADTS, layer III, v2,   8 kBits, 22.05 kHz, Monaural

    • Use ffmpeg
    $ ffmpeg -i nodame_theme.flv -ab 128 -ar 44100 nodame_theme.mp3
    or 
    $ ffmpeg -i video.flv -f mp3 -vn -acodec copy carsounds2.mp3

    -i is to specified input file, -ab audio bitrate, -ar audio sampling frequency

    Let say what file tells you.

    MPEG ADTS, layer II, v1, 128 kBits, 44.1 kHz, Monaural
    • How about record online stream?
    First, find an online radio cast to try, you can have plenty of it from shoutcast.
    $ mplayer -dumpstream http://64.236.34.97:80/stream/1005 -dumpfile smoothjazz.mp3
    or
    $ ffmpeg -i http://64.236.34.97:80/stream/1005 -ab 128 -ar 44100 smoothjazz.mp3

    • Reference
    http://linux.byexamples.com/archives/229/extract-audio-from-video-or-online-stream/

    使用 Sound Juicer 將 CD 轉成 MP3

    • Install
    $ sudo apt-get install sound-juicer gstreamer0.10-plugins-ugly-multiverse
    (instead gstreamer0.10-lame in Ubuntu 10.04) 
    • Configuration for MP3 encoder
    Basic one:
    audio/x-raw-int,rate=44100,channels=2 ! lame name=enc ! id3mux
    Add bit-rate setting:
    audio/x-raw-int,rate=44100,channels=2 ! lame name=enc vbr=0 bitrate=128
    Advanced one:
    audio/x-raw-int,rate=44100,channels=2 ! lame name=enc mode=1 vbr=4 quality=1 preset=1001 vbr-max-bitrate=320 ! xingmux ! id3v2mux
    The meat and potatoes of this line is preset=insane, which tells Lame to use the Insane quality preset, and will give you a fixed-bitrate MP3 file at CBR 320Kbps. This preset will usually be overkill for most people and most situations, but if you must have the absolute highest quality with no regard to filesize (as do I), this is the way to go. This is the highest preset quality available. Of course, there are other presets available–all of them variable bitrate (VBR):

    preset=medium

    This preset should provide near transparency to most people on most music. The resulting bitrate should be in the 150-180kbps range, according to music complexity.

    preset=standard

    This preset should generally be transparent to most people on most music and is already quite high in quality. The resulting bitrate should be in the 170-210kbps range, according to music complexity.

    preset=extreme

    If you have extremely good hearing and similar equipment, this preset will provide slightly higher quality than the “standard” mode. The resulting bitrate should be in the 200-240kbps range, according to music complexity.
    • More detail configuration for gstreamer-lamp
    $ gst-inspect-0.10 lame

    • Reference
    http://wiki.ubuntu-tw.org/index.php?title=HowtoGripMusic
    http://www.calebscreek.com/2008/09/howto-enable-mp3-ripping-in-sound-juicer-2220/

    Use pdftk to Merge/Split/Rotate PDF files

    !!! 注意:PDF 檔名不能有中文 !!!

    • Merge Two or More PDFs into a New Document 
    pdftk 1.pdf 2.pdf 3.pdf cat output 123.pdf
    • or (Using Handles):
    pdftk A=1.pdf B=2.pdf cat A B output 12.pdf


    or (Using Wildcards):

    pdftk *.pdf cat output combined.pdf

    • Split Select Pages from Multiple PDFs into a New Document

    pdftk A=one.pdf B=two.pdf cat A1-7 B1-5 A8 output combined.pdf

    • Rotate the First Page of a PDF to 90 Degrees Clockwise

    pdftk in.pdf cat 1E 2-end output out.pdf

    • Rotate an Entire PDF Document's Pages to 180 Degrees

    pdftk in.pdf cat 1-endS output out.pdf

    • Reference
    http://www.accesspdf.com/pdftk/

    LPI模擬試題

    • LPI - Exam Emulation
    http://www.linux-praxis.de/lpisim/lpi.html

    • LPI 101 Certification Practice Test
    http://gnosis.cx/publish/programming/exam101.html

    • LPI 102 Certification Practice Test
    http://gnosis.cx/publish/programming/exam102.html

    • ICE:ICE(home)
    https://certify.torolab.ibm.com/ice/displayPage/en;jsessionid=PDGDAUJ3LZ1FUN3MI331RGY

    • Linux (LPI, RHCE..) 認證討論區
    http://phorum.vbird.org/viewforum.php?f=7&sid=1c6030b4edc5ac482b894f351cb6d06e

    在 Linux 中新增一個 PDF 虛擬印表機的方式

    1. 上安裝 cups-pdf 套件
    sudo apt-get install cups-pdf

    2. 至[系統]->[管理]->[列印] 修改相關屬性

    • Reference
    http://www.ubuntu-tw.net/modules/newbb/viewtopic.php?topic_id=3509&forum=7&post_id=12141

    在 initrd 中如何判斷多張網卡狀態

    遇到網路卡兩張,initrd中沒有ethtool的狀態下dhcp client沒有優先去用有插上線的網卡來查詢

    解法:
    可以查
    /sys/class/net/eth0/operstate
    只要是up or unknown,就是有連線,而沒連線就是down.
    不過查詢/sys/class/net/eth0/operstate之前,要先
    ifconfig eth0 0.0.0.0
    先把網路卡叫起來一下,才能判斷,要不然/sys/class/net/eth0/operstate會是
    空的。
    這樣修改的mkpxeinitrd-net就會優先由有連線的網卡去要IP address了。

    [Archive]ubuntu 8.04 從原始碼來編譯安裝pidgin 2.5.2/Pidgin-Encryption

    1. prepare :Install necessary packages:
    sudo apt-get install libnss3-dev libnspr4-dev libgtk2.0-dev libxml2-dev \
    gettext libgstreamer0.10-dev

    Install optional packages:
    sudo apt-get install  libmeanwhile-dev libgtkspell-dev libstartup-notification0-dev \
    libxss-dev libdbus-glib-1-dev network-manager-dev libperl-dev tcl8.4-dev tk8.4-dev \
    libavahi-client-dev libavahi-glib-dev

    2. Download source , configure , compile , install
    * Download source form http://www.pidgin.im/download/source/ , unpack tarball:
    tar jxvf pidgin-2.5.2.tar.bz2
    cd pidgin-2.5.2

    * Configure
    ./configure --prefix=/opt/pidgin

    * compile
    make ; sudo make install

    --------------------------------------------------------------
    1. Download Pidgin-Encryption source code :http://pidgin-encrypt.sourceforge.net/ , unpack
    tar xzvf pidgin-encryption-3.0.tar.gz
    cd pidgin-encryption-3.0


    2. Configure , compile
    ./configure --prefix=/opt/pidgin-2.5.2/
    make

    3. Install
    sudo make install

    ----------------------------------------------------------
    3. 移除 complie 需要的 libs /dev
    sudo apt-get remove --purge  libnss3-dev libnspr4-dev libgtk2.0-dev libxml2-dev gettext \
    libgstreamer0.10-dev libmeanwhile-dev libgtkspell-dev libstartup-notification0-dev libxss-dev \
    libdbus-glib-1-dev network-manager-dev libperl-dev tcl8.4-dev tk8.4-dev libavahi-client-dev libavahi-glib-dev

    再清乾淨一點
    sudo apt-get autoremove;sudo apt-get autoclean;sudo apt-get clean

    • Reference:
    http://jhcore.com/2007/06/04/install-pidgin-in-ubuntu/
    http://blog.yam.com/lijohnson/article/15805391

    HowTo - Linux 下如何批次 resize/rotate 圖檔

    • 方法一 :Use imagemagick
    $ sudo apt-get install imagemagick
    • 可使用 mogrify
    $ mogrify -resize 640 *.jpg
    or
    $ mogrify -resize 640×480! *.jpg
    較方便

    • 方法二 :使用 convert 轉換整個資料夾的檔案
    $ for i in `ls *.jpg`; do convert -resize 1200x900 -verbose $i $i ; done
    • 方法三 :Use nautilus-image-converter
    $ sudo apt-get install nautilus-image-converter

    2010年9月19日 星期日

    如何轉換VMWare 的硬碟檔讓 Virtualbox 使用(convert vmdk to vdi)

    • 所需套件 : qemu, virtualbox
    sudo apt-get install qemu, virtualbox
    • 如果原有的 vmdk 不是單一檔案,先進行轉換
    vmware-vdiskmanager -r source_multiples.vmdk -t 0 single_file.vmdk

    • 利用 qemu 轉換成 .bin 檔
    qemu-img convert  single_file.vmdk  single_file.bin
    • 將 .bin 轉換為 vdi 檔
    VBoxManage convertfromraw  single_file.bin single_file.vdi

    英文餐廳菜單選集

    Ubuntu下大量轉換ID3之編碼 : python-mutagen

    • 安裝 python-mutagen
    sudo apt-get install python-mutagen

    • 執行
    cd ~your-mp3-folder; mid3iconv -e big5 *.mp3


    or 配合 find 轉換目前目錄下所有子目錄的 mp3 :

    find . -iname "*.mp3" -execdir mid3iconv -e big5 {} \;

    Reference:
    http://david50.pixnet.net/blog/post/22253957

    PDF 處理工具 : pdftk

    !!! 注意:PDF 檔名不能有中文 !!!
    • Merge Two or More PDFs into a New Document
    pdftk 1.pdf 2.pdf 3.pdf cat output 123.pdf

    or (Using Handles):
    pdftk A=1.pdf B=2.pdf cat A B output 12.pdf

    or (Using Wildcards):
    pdftk *.pdf cat output combined.pdf
    • Split Select Pages from Multiple PDFs into a New Document
    pdftk A=one.pdf B=two.pdf cat A1-7 B1-5 A8 output combined.pdf

    • Rotate the First Page of a PDF to 90 Degrees Clockwise
    pdftk in.pdf cat 1E 2-end output out.pdf
    • Rotate an Entire PDF Document's Pages to 180 Degrees
    pdftk in.pdf cat 1-endS output out.pdf

    Reference:
    http://www.accesspdf.com/pdftk/

    2010年9月3日 星期五

    GPT vs MBR : use parted 切 gpt 分割區

    Create a GPT partition via parted
    • 確認要切割的為 /dev/sdb
    cat /proc/partitions
    major minor  #blocks  name

       8     0  142577664 sda
       8     1   11719386 sda1
       8     2          1 sda2
       8     5   48829536 sda5
       8     6   82027858 sda6
       8    16 5855465280 sdb
    • run the follow in parted ( sudo parted /dev/sdb)
    • 確認空間與單位數
    print free
    Model: LSI MegaRAID SAS RMB (scsi)
    Disk /dev/sdb: 5996GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt

    Number  Start   End     Size    File system  Name  Flags
            17.4kB  5996GB  5996GB  Free Space   
    • 使用 GPT格式並分割一塊 xfs 的分割區
    mklabel gpt
    mkpartfs primary xfs 0 5996G
    • 離開,並格式化
    quit
    sudo mkfs.xfs /dev/sdb1
    • Done


    GPT(GUID Partition Table)

    一、定義簡說
    二、OS支援
    三、GPT、NTFS轉換
    四、問題、應用

    一、定義簡說

    由於使用上的限制,Intel+Microsoft在2004年合作開發EFI(Extensible Firmware Interface)計畫,算是一種主機板、儲存磁碟的升級方案,GPT(GUID Partition Table)為計畫裡的一部分,不過,並非一定要搭配EFI才能用,搭配一般BIOS也能用,只是不能作為開機系統。

    MBR磁碟的Partition資料,存放在Master(我們俗稱第0軌)
    GPT磁碟的每個Partition資料,都有各自的GUID,此為主要差異。

    GPT磁碟有保護區,小小佔用空間,依照作業系統不同:
    • Windows:128MB
    • MAC:200MB

    支援分割區單一分割區最高容量
    MBR(Master Boot Record) 4(延伸分割不計) 2TB
    GPT(GUID Partition Table) 沒有限制,但是Windows只能128個 18TB

    二、OS支援(Windows)
    1.一般支援:
    • Windows XP 64 Bit
    • Windows 2003 Server + SP1
    • Windows Vista
    以後的皆有支援,此處支援,乃指『可辨識、存取』,不包含開機(作為系統磁碟)

    2.開機支援(作為系統磁碟):
    主機板必須支援EFI

    三、GPT、NTFS轉換

    在Windows環境,磁碟系統GPT轉換回NTFS的指令:
    diskpart
    選項:
    • list disk 列出目前磁碟
    • select disk n 選擇目標,n為代號
    • clean all 清除所有分割資料,之後,即可重新分割

    如果是新的磁碟(超過2TB,包含RAID),自然會顯示出『GPT磁碟』選項,無須另外處理

    Reference:
    http://en.wikipedia.org/wiki/GUID_Partition_Table
    http://bigcandy.blog.ithome.com.tw/post/2158/72554

    2010年9月2日 星期四

    鎖定套件避免 apt 升級部份套件的方法

    Q: 如何避免 apt 雞婆的更新部份你想要裝 或 不想要更新的套件呢?
    A: 修改 /etc/apt/preferences 就好了,內容會像是:
    Package: PACKAGE_NAME
    Pin: PIN
    Pin-Priority: PIN_PRIORITY
    以 syslinux 為例
    Package: syslinux
    Pin: version 3.8*
    Pin-Priority: 100
    所以優先順序填成下面的值,會造成不同的結果:

    1001 # 永不更新,如果現存的版本比較新(優先順序比較低)還會作降級的動作
    1000 # 跟 1001 一樣,不過 apt 不會作降級的動作
    990 # 如果有比較高的版本用 "APT::Default-Release" 標示的會昇級
    500 # 比 0.8* 還高的版本就會昇級,不過 0.8* 還是較低版本裡面的第一選擇
    100 #syslinux 裡面有更高的版本就會不管 0.8* ,但如果沒有其它的版本先安裝了的話,就會先裝 0.8*
    -1 # 避免裝 0.8* 這個版本

    Reference:
    http://antontw.blogspot.com/2009/06/linux-apt.html

    Linux清除ARP 暫存

    一、這樣可以清除單一IP的ARP緩存
    arp -d IP
    二、清除192.168.0.0網段的所有暫存

    for((ip=2;ip<255;ip++));do \
        arp -d 192.168.0.$ip &>/dev/null; \
    done

    三、清除所有ARP

    arp -n|awk '/^[1-9]/ {print "arp -d "$1}' | sh


    Reference:
    http://www.linuxzh.org/Linux/arp-clean.html

    2010年8月19日 星期四

    電腦各種符號英文唸法

    Reference: http://wuyy.idv.tw/blog/index.php/computer-sign-english-read/

    電腦各種符號英文唸法


    Symbol 符號

    Description 說明 Chinese 中文/中式說法

    ~
    Tilde 取代符號/毛毛蟲

    !
    Exclamation point 驚歎號

    @
    At sign, at At符號/小老鼠

    #
    Number sign 數字符號/井號

    Pound sign 英鎊符號

    $
    Dollar sign 錢符號

    %
    Percent, percent sign 百分比,百分比符號

    ^
    Caret 脫字符號/小三角

    &
    Ampersand And符號

    *
    Asterisk 星號/米字號

    (
    Open parenthesis 左括號

    )
    Close parenthesis 右括號

    Dash 破折號

    Double dash 雙破折號

    _
    Underscore 底線

    +
    Plus, plus sign 加,加號

    =
    Equals 等號

    |
    Vertical bar 垂直線/直線號

    \
    Backslash 反斜線

    {
    Open brace 左大括號

    }
    Close brace 右大括號

    [
    Open bracket 左方括號

    ]
    Close bracket 右方括號

    :
    Colon 冒號

    ;
    Semicolon 分號

    Quote 雙引號

    Single quote 單引號

    ,
    Comma 逗號

    .
    Period, dot 句號,點

    >
    Greater than 大於

    <
    Less than 小於

    ?
    Question mark 問號

    /
    Slash 斜線

    //
    Double slash 雙斜線

    Ellipsis 省略符號/點點點

    -
    Hyphen 連字號

    特殊符號

    Reference:
    http://www.twbbs.net.tw/676361.html
    http://w13.loxa.edu.tw/ctjh930220/
    http://devika.pixnet.net/blog/post/3928908

    How to install HP hpacucli package in Debian lenny

    1. get lastest Support Pack CD from HP official site:
    http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareIndex.jsp?lang=en&cc=us&prodNameId=3288144&prodTypeId=15351&prodSeriesId=1121486&swLang=8&taskId=135&swEnvOID=4033

    2. Mount the iso file and add as a local repository
    sudo mount -o loop HP_ProLiant_Value_Add_Software-8.25-19-12.iso /media/tmp
    echo "deb file:/media/tmp/ lenny/8.25 non-free " >> /etc/apt/sources.list

    3. update and install packages
    sudo apt-get update; sudo apt-get install hpacucli

    4. check all logic drivers of controller slot number 5
    hpacucli controller slot=5 logicaldrive all show status

    2010年8月17日 星期二

    Install Thunderbird 3.1.1 via Ubuntu PPA Repository

    You could easily install Thunderbird 3.1 in Ubuntu using Ubuntuzilla, but that was only available for 32bit users.

    A PPA repository is now available which provides the latest Thunderbird 3.1.1 (final, not daily builds) for Ubuntu Lucid - both 32bit and 64bit.

    To add the PPA and install Thunderbird 3.1.1 in Ubuntu Lucid, simply paste the following commands in a terminal:
    sudo add-apt-repository ppa:ricotz/ppa && sudo apt-get update
    sudo apt-get install thunderbird
    Reference:
    http://www.webupd8.org/2010/07/thunderbird-31-ubuntu-ppa-repository.html

    2010年8月16日 星期一

    幾個 OpenOffice 提到的復活節彩蛋

    Reference:
    http://wiki.services.openoffice.org/wiki/Easter_Eggs

    2010年8月1日 星期日

    幾個微調 gnome 環境的設定

    選錄幾個在 gnome 環境下常用的微調設定, 多是用 gconftool 來變更設定

    • Nautilus預設要輸入路徑,需要按Ctrl+L才會顯示位置列
    gconftool-2 --type=Boolean --set /apps/nautilus/preferences/always_use_location_entry true

    2010年7月29日 星期四

    幫社大作個 Live USB

    利用 mkinitramfs , Tux2live 幫社大作個 Live USB
    • Ubuntu Lucid base, kernel version : 2.6.32-23

    2010年7月28日 星期三

    Ubuntu - 解決 gedit 亂碼的問題

    預設配置下,用 Ubuntu 的文本編輯器(gedit)打開 BIG5/GB18030/GBK/GB2312 等類型的中文編碼文本時,將會出現亂碼。出現這種情況的原因是,gedit 使用一個編碼對應列表,只有在這個列表中的編碼才會進行匹配,不在這個列表中的編碼將顯示為亂碼。您要做的就是將需要的編碼方式加入這個列表。

    Ceasar's Photo

    www.flickr.com