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

2011-10-20

你的Arch是什麼時候安裝的?



很多人都有有這樣的疑問
到底我的Arch是什麼時候安裝的?
在Windows我們可以在終端機下敲入systeminfo
來查詢系統的原始安裝日期

但我們在Linux一般查詢原始安裝日期比較麻煩
好在Arch上有個檔案從系統建立後
就會紀錄系統的原始安裝日期

敲入
head -1 /var/log/pacman.log

然後會返回
[2009-06-18 09:04] installed filesystem (2009.01-1)
其中2009-06-18 09:04就是系統的原始安裝日期
這個時間差不多是我寫ArchLinux推廣文的時間
2009.01-1,則是檔案系統的建立時間(應該)
(繼續閱讀...)

2011-05-25

新的kernek26-ck源

Photobucket

今年年初的時候寫過一篇
自行編譯BFS核心的文章
這種自編譯核心帶來的好處效果非常明顯
通過微調修改,我們可以針對自己的機器與需求
打造最適合自己的核心
但是對於沒有時間編譯或機器速度太慢的情況
我們該怎麼辦呢?



ArchLinux上我們可以很方便的由AUR進行編譯安裝
但是如果不想編譯,或機器編譯速度太慢的情況
AUR上kernel26-ck的維護者做了一個專門的源放上已經編譯好的二進制檔
方便了這些因為其他原因沒有辦法自己編譯的使用者

首先編輯/etc/pacman.conf
在源列表最下方加入
[kernel26-ck]
Server = http://home.comcast.net/~repo-ck/$arch

更新列表
pacman -Syy

安裝
pacman -S kernel26-ck

如果你使用nVidia的顯卡
還必須裝加裝驅動
pacman -S kernel26-ck nvidia-ck


另外你也可以根據自己的CPU類型
裝上針對處理器優化後的版本
詳細請參閱ArchWiki
(繼續閱讀...)

2011-05-20

ArchLinux 中文支援站開張!

2011年5月11日,這天不是世界末日更不是台灣末日
沒有地震也沒有海嘯,跟往常一樣是很平和的一天
而我選在這一天,開設了ArchLinux中文支援站


希望能夠集結ArchLinux在台灣的廣大用戶群
不管你是顯性的也好,隱性的也罷,我們都歡迎你加入這個正在發展與茁壯中的大家庭
因為ArchLinux中文支援站需要你的加入與支持!

ArchLinux 中文支援站:
http://www.archlinux-tw.ddns.info/bbs/index.php
(繼續閱讀...)

2011-01-16

BFS+BFQ+config_hz=10000+PAE

Photobucket

很多人都想在自己的linux上編譯高效能的核心
但如果只是下載源碼並重新編,那提升的效果是有限的
我修改了AUR上kernel26-ckconfig文件
將其改為config_hz為10000,I/O調度管理器為BFQ(CFQ可選)
經過高度優化的linux核心,我可以在多線make的壓力下
輕鬆的使用我的電腦做其它工作,不會像以前一樣
因為CPU被資源被強佔,造成其餘工作所分配到的資源不足
對流暢性有所影響!



首先必須先下載幾個檔案
linux kernel 2.6.37

BFS Patch:
for 2.6.37

BFQ Patch
for 2.6.37-001
for 2.6.37-002
for 2.6.37-003

config file:
config for 32bit
config for 64bit



依序將patch打上:
patch -Np1 patch-2.6.37-ck1
patch -Np1 0001-bfq_iosched-block-prepare_IO_context_code-v1-2.6.37.patch
patch -Np1 0002-bfq_iosched-block-add-cgroups-kconfig-and-build-bits-for-BFQ-v1-2.6.37.patch
patch -Np1 0003-bfq_iosched-block-introduce_BFQ-v1-2.6.37.patch



如果你使用Debian係的Linux發行版
可以用kernel-package幫助編譯及打包

sudo make-kpkg clean
sudo make mrproper
cp /boot/config-`uname -r` ./.config #如果需要本身的config的話
CONCURRENCY_LEVEL=4 fakeroot make-kpkg --initrd --append-to-version=-bfq kernel_image kernel_headers
sudo dpkg -i linux-image-2.6.3*.deb ; sudo dpkg -i linux-headers-2.6.3*.deb
sudo dpkg -i linux-image-2.6.3*.deb ; sudo dpkg -i linux-headers-2.6.3*.deb



如果不想用我改的config你也可以用自己的config
並在其內中加入以下兩段

#IO Schedulers
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_CFQ_GROUP_IOSCHED=y
# CONFIG_DEFAULT_DEADLINE is not set
# CONFIG_DEFAULT_CFQ is not set
CONFIG_DEFAULT_BFQ=y
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="cfq"
CONFIG_PREEMPT_NOTIFIERS=y
CONFIG_PADATA=y


#Config_HZ
CONFIG_HZ_10000=y
CONFIG_HZ=1500

到這裡,基本上你已經打造了一個高性能低延遲耐壓的linux核心
(繼續閱讀...)

2010-10-20

ArchLinux上Python已升級至Python3

最近這兩天,ArchLinux已經更新超過1g
很多套件全部都升級或重新編譯了一遍
剛剛在瀏覽rss時候,得知Firefox 3.6.11已經正式發佈
而我下載完source後正要來編譯卻發現在檢查代碼的時發生錯誤
這是一件很不尋常的事情,而我接著編譯mplayer-vdpau-svn
發現一樣會在同樣的地方出現錯誤
稍微看了一下error log後發現
我的編譯環境居然無法處理py腳本!



好在我都有留意ArchLinux NEWS Letter
造成這個問題的原因是Python從Ver.2更新到Ver.3了!
由於很多就軟體需要Ver.2,所以當你升級至Ver.3的時候就會出現
找不到家的情況發生,ArchLinux過於激進,所以相似的問題多到不勝枚舉

還好這些你只要有留意ArchLinux NEWS Letter,都很容易就可以解決
目前ArchLinux處理方式同時保留Ver.2與Ver.3
而目前更新之後的鍵聯為Ver.3
所以我們到終端下切換到/usr/bin目錄

敲入
ls -l python

收到
python -> python3

然後我們要把python的鍵聯改回到Ver.2
所以我們先刪除pyhone
sudo rm python

重新鍵聯回Ver.2
sudo ln -s python2 python


如此一來問題就解決了!
等過渡期過後,我們在把它鍵聯回Ver.3就可以了
很方便吧!
(繼續閱讀...)

2010-01-10

AUR上kernel26-bfs成為孤兒之後..



blog很久沒有更新了,因為我現在正在國軍Online中
我的運氣不錯,剛下部隊就接了營政戰文書
這是一個人人稱羨的"爽缺"
而且我下部隊到現在,還沒跑過操場,也沒有進行任何操練
就連上課也只上過兩三次而已,跟其他同梯相比,我運氣真的很好
不但不用戰備,對我這個菜鳥而言居然還能夠正常休聖誕還有跨年
就連過年我也是排休正常梯,這讓其他同梯非常羨慕與忌妒!
好了,言歸正傳!!



AUR上的kernel26-bfs已經停止更新很久了
最近原維護者也放棄維護,所以目前kernel26-bfs是公開認想的狀態..


What is it?

BFS is the Brain Fuck Scheduler. It was designed to be forward looking only,
make the most of lower spec machines, and not scale to massive hardware. ie
it is a desktop orientated scheduler, with extremely low latencies for
excellent interactivity by design rather than "calculated", with rigid
fairness, nice priority distribution and extreme scalability within normal
load levels.

BFS最初是由Con Kolivas所提出的一種桌面應用的提速計畫
他的patch可以降低系統延遲,提升桌面應用的操作性
甚至還可以些微提升系統性能!
我個人本身使用上BFS有一段時間了
使用的反應上還有開啟程式的速度上,加速非常明顯
我個人非常推薦將Linux作為桌面應用的用戶都打上這個patch

只是後來在我當兵的期間,發現它很長一段時間沒有更新
到現在維護者也放棄維護了!
不過我們還有另外一個選擇!
那就是kernel26-ck
用的都是Con Kolivas的bfs patch,只是名稱換成Con Kolivas名字的簡稱!

不過這個kernel26-ck目前使用上有一些問題
不會安裝標頭檔,這會讓一些驅動或者是VirtualBox之類的一些軟體發生問題
所以我們編譯前最好修改一下PKGBUILD
修改方式非常簡單!
我們先找到conflicts=('kerenl26-ck-headers')
將它註釋成為#conflicts=('kerenl26-ck-headers')
再編譯安裝,就會正常安裝表頭檔

最後建議使用gcc 4.X的穩定發佈版編譯
不建議使用gcc 4.5等開發版編譯
可能會出現不可預期的錯誤問題而影響穩定性!
(繼續閱讀...)

2009-09-24

打造自己的Linux羽量級桌面環境



幾個月前曾經寫過KDEMod在Arch上的安裝教學
但是有鑑於不是每個人都喜歡KDEMod這種龐然大物
也不是每個人都喜歡LXDE的簡潔與單調
所以我特別介紹一下我平常的桌面環境






首先我們先來看一下上面這張圖
我捨棄了了大部分GNOME或KDE的應用程式
轉而選擇更為輕量的GTK替代軟體,這些替代軟體分別為:

視窗管理器
Openbox

工作列:
PyPanel
fbpanel

終端機:
ROXTerm

檔案管理器:
PCManFM

壓縮前端:
Xarchiver

文字編輯器:
LeafPad

桌布管理:
Feh


這些都是非常輕量的替代軟體,雖然說是替代軟體
但功能上卻不見得就比GNOME跟KDE上的那些來的弱

ROXTerm這個終端機,我自己本身就很愛用
它除了輕量外,還支援分頁功能,作為一個替代軟體
ROXTerm可以說一點也不遜色,而且相當強憾!

再來是PCManFM,它原本是LXDE的主件之一
原本檔案管理器我原本是打算也用ROXFM的
但是比較過後,發覺PCManFM比較符合我個人的需求
它除了基本的分頁功能外,也支援Samba的瀏覽
而且它跟KDE上的Konsole一樣
F4後可以直接呼叫終端機到你正在操作的資料夾
對我來說,經常有事半功倍之效!

桌面最上方的工作列我使用fbpanel,它的優點有高度的自訂性
還有比Lxpanel更低的系統資需求,而且LXDE的Lxpenal也是由fbpanel修改而來

而桌面最下方的那個工作列就是Pypanel
我用它作目前已開啟的應用程式切換列


Ubuntu上的安裝相當簡單
建議使用F6自訂安裝或Ubuntu-Server
先裝好基礎系統,然後根據我前面提供的網址
加入源,或者直接搜尋並安裝套件庫
搜尋方式例如:
apt-cache search openbox


Arch上的安裝,只需要敲入:
pacman -S pypanel fbpanel openbox openbox-themes obconf feh pcmanfm roxterm leafpad

根據需求還可以使用slim作為登入管理員取代GDM或KDM
pacman -S slim

如果你不需要登入管理員
還可以直接建立.xinitrc,並加入以下內容讓你startx直接進入Openbox
exec openbox-session


都安裝完後,第一次啟動我們先選擇OpenBox-Session
這個時候的桌面應該是空空如也,我們先按滑鼠右鍵開啟終端機
首先來編輯Openbox的autostart.sh
sudo leafpad /etc/xdg/openbox/autostart.sh


首先我們必須在開啟Openbox的時候同時開啟Pypanelfbpanel
我們在autostart.sh的最下面加入這兩行
pypanel &
fbpanel &

再次啟動Openbox後,可以發現兩個工作列都出現了
不過你們看到的狀況可能是兩個工作列互相重疊的情況
再來我們先後來編輯fbpane與Pypanel的設定檔

先建立屬於自己的fbpanel設定檔
sudo mkdir -p ~/.fbpanel
sudo cp /usr/share/fbpanel/default ~/.fbpanel/
sudo leafpad ~/.fbpanel/default

然後根據自身需求照官方文件作修改
或者直接套用我的設定檔



pypanel可以直接參考Arch官方Wiki
~/.pypanelrc進行編輯
或者直接套用我的設定檔



兩個工作列都設定好了之後,重新啟動Openbox
應該就會看到跟我圖中的佈置差不多的兩個工作列
再來是桌布問題,我使用feh來管理桌布
並用以下指令更換桌布
feh --bg-scale 桌布路徑

然後將該指令寫到Openbox的aurstart.sh
這樣子每次啟動Openbox桌布就會自動顯示出來


而Openbox選單的設定,我就不寫了
LinuxToy已經有一篇相當詳細的Openbox中文設定教學
基礎到進階的修改看Toy寫的右夠了!


最後大致應該都差不多了
有些人可能會覺得滑鼠游標移動的速度不符合需求
我們同樣也可以在Openbox的autostart.sh內加入以下:
xset m 3

敏感度範圍1~10都可以試試

目前我自己的Web Server就用這樣自己打造的桌面環境
比用Gnome還有KDE更輕盈,也更快速
如果你的電腦硬體等級本身就不高
使用Arch加上如此的自訂環境
速度會比那些重量級桌面環境快的非常明顯喔!
(繼續閱讀...)

2009-08-07

KDE 4.3發佈了 來看一下Arch上面的情形



KDE.org在三天前正式發佈了KDE 4.3
相較於KDE 4.2來說,KDE 4.3的改動還蠻大的
詳細介紹與修改可以參考KDE.org上的發佈訊息



而在Arch上最近最夯最多人爭論的話題就是KDEMod VS Arch KDE了!
事情是這樣的,Arch官方在KDE 4.0發佈後
建了一個獨立的套件庫,專門放KDE 4.X後的套件
到了現在KDE 4.3發佈後,Arch卻宣佈KDE 4.3將會進行"拆包"

這嚴重威脅了KDEMod,有些人認為這是溝通上的不良
這些人認為Arch應該直接請KDEMod來做這些事情
因為如果只是拆包,那顯然不必你拆我也拆
大家都來用KDEMod就好了,不必如此浪費時間做相同的事情
而且Arch正在做與KDEMod很早之前就正在做的事情
目前從套件品質上來看似乎是還不如KDEMod,畢竟他們做很久了

而且Arch"分裂"KDE 4.3的行為
顯然有違K.I.S.S原則,雖然Arch認為沒有違背
因為Arch一向講求"原汁原味"套件
任何套件都是直接從源碼編譯再打包
不會像大部份主流發行版那樣
很多套件都做了"適合自己"的修改
Arch拆包KDE雖然不至於不好
但對某些有潔癖的人來說
就不是那麼好了


再來看看KDEMod
他們究竟還有沒有存在的必要?
就目前來看他們還是可以繼續下去
因為他們有自己的發行版,也就是那個Chakra Project
Chakra Live CD提供圖形化的安裝工具
讓你可以很容易的就完成Arch + KDEMod的安裝
就算他們不提供源給Arch用戶
還可以發展自己的KDEMod發行版
完全與Arch自己的拆包後的KDE不衝突


而Arch的使用者可以自由選擇使用split KDE 4.3或KDEMod
如果你喜歡KDEMod的主題,還有它優化過的套件
雖然也不少人認為所謂的優化不太具優勢
但我還是會建議你使用KDEMod
因為KDEMod的套件還是多於Arch官方
使用上在目前問題也比較少
雖然Arch自己的split KDE也沒有什麼大問題
都是一些拆包後沒有處理好的依賴關係而已


如果你沒有特別偏好KDEMod,或者你想要更快速的升級
使用split KDE也不會出現像KDEMod
那樣與core/extra庫一樣的套件衝突
雖然那些衝突都很很容易解決
就算自己等不及KDEMod更新
自己手動解決也相當容易
雖然出現機率很低
但對某些人來說
確實是有些麻煩


所以對某些用戶來說
Arch自己的split KDE我想會比較好一點
因為KDEMod這次的KDE 4.3仍然在測試中
雖然我使用上沒有出現什麼問題
但還是不太建議原本也是KDEMod的使用者去升級它


如果你是一個Arch新手可以參考這篇Arch官方Wiki
方便你瞭解拆包後的套件名稱與群組
然後定製你自己的KDE 4.3桌面環境
再參考Arch官方Wiki安裝split KDE


如果你跟我一樣是KDEMod的用戶
也跟我一樣迫不及待就想嘗鮮KDE 4.3
那你可以開啟testing

編輯pacman.conf
sudo vi /etc/pacman.conf


註釋掉原本的[kdemod-core],然後加入
[kdemod-testing]
Server = http://chakra-project.org/repo/testing/i686

然後升級,完畢!


注意!
kdemod-corekdemod-testing同一時間只能有一個存在
如果你使用Arch自己的split KDE
請勿與kdemod-extragearkdemod-playground
這些KDEMod套件庫同時使用,可能會有嚴重的衝突發生
所以用split KDE的請勿混著使用KDEMod!
不過KDEMod卻可以很好的相容Arch自己或其它的KDE套件


安裝玩就可以開始體驗KDE 4.3帶來的華麗與便利了
做為次世代的桌面環境,KDE目前的表現算是相當不錯的
(繼續閱讀...)

打造你自己的ArchLinux編譯環境

前陣子我寫過ArchLinux推廣安裝教學
曾經說過ArchLinux的無縫升級與快速更新等特點
現在我再來簡單介紹一下同樣也很吸引人的ABS



ABS既"Arch Build System",也就是Arch的編譯系統
跟FreeBSD還有Gentoo的ports一樣
ABS提供源碼讓我們可以在本地編譯安裝各種軟體
如此我們可以編譯出針對自己硬體最佳化的操作平台


那要怎麼用呢?
首先我們必須先安裝ABS
sudo pacman -S abs


安裝完我們先編輯abs.conf
sudo vi /etc/abs.conf


如果你有開testing,那你就把testing的禁用去掉
如果沒有就保持禁用,如下:
REPOS=(core extra community !testing)


安裝完後,我們必須取得"目錄樹"(ABS Tree)
sudo abs


然後ABS會將取得的PKGBUILD存放在/var/abs底下
目錄結構會按照源裡的分類,如testing、core、extra等


接下來就是要找到你想要編譯的套件了!
接著我們來安裝懶人工具,幫助你尋找你要的套件位置
sudo pacman -S pkgfile



裝完之後,假設我要來找Firefox的PKGBUILD
只需要在終端底下敲入:
[lawliet@Archi ~]$ pkgfile firefox
extra/firefox


它就會返回這樣的一個訊息
照著這個位置去找就可以取得firefox的PKGBUILD了
然後你就可以直接makepkg編譯打包了!



通常Arch內建的編譯參數都比較鬆
你可以根據自己的機器做些調整,獲得最大的性能
這裡先編輯/etc/makepkg.conf
sudo vi /etc/makepkg.conf


這個參數是我自己的,這裡僅供參考,使用AMD處理器的人應該略過!
其它處理器的參數查詢可以參照Arch Wiki,內有詳細的清單
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=core2 -O3 -msse -msse2 -msse3 -pipe -fomit-frame-pointer"
#CFLAGS="-march=core2 -O2 -pipe -fomit-frame-pointer"
#CFLAGS="-march=prescott -O3 -pipe -fomit-frame-pointer"
#CFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer"
#CFLAGS="-march=i686 -O3 -pipe -fomit-frame-pointer"
#CFLAGS="-march=i686 -O2 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
#LDFLAGS="-W1,O1,--as-need"


然後找到MAKEFLAGS="-j3"
這裡是使用的處理器核心數量
"通常都是核心數再+1"
如果你是雙核心那就是-j3
四核心就是-j5



再來如果你跟我一樣是重度編譯者,經常反覆編譯同一個套件
例如Firefox我一天大約需要編譯五到十次不等
其它這類需要經常編譯的東西例如git或svn這類每天或三天兩頭就一個版本的套件
我們可以使用Ccahe這個套件進行加速編譯的動作

Ccache,它可以把"再次編譯"的速度
提高五到十倍左右,也就是原本需要編譯兩個鐘頭的套件
使用Ccache後,再次編譯它最快只要12分鐘而已!
加速非常明顯,強烈建議經常需要編譯同一個套件的人使用,效果非常明顯!


安裝Ccache:
sudo pacman -S ccache


編輯makepkg.conf
sudo vi /etc/makepkg.conf


找到這段,並去掉禁用
BUILDENV=(fakeroot !distcc color !ccache !xdelta)



不管你是要二進制還是編譯
在ArchLinux進行這些動作都非常方便!

接下來稍微說一下gcc的編譯與版本切換
為什麼要切換gcc的版本呢?
因為有的時候我們可能會遇到gcc自己本身的問題
造成源碼編譯不過去,或者是源碼本身就不嚴謹
因為容錯過寬或太窄導致編譯到最後很容易會出現問題
所以一般經常編譯的人都會準備兩個版本以上的gcc

像我自己就經常在gcc 4.4.1跟gcc 4.5之間作切換
就我的編譯經驗,gcc 4.5或許不能比gcc 4.4.1提高多少性能
但gcc 4.5卻能把不少gcc 4.4.1編譯不過去的都編譯完成
不過gcc 4.5還在開發中,建議不要用它來編譯核心或是系統重要套件!

一般來說gcc應該保持穩定,同樣一份源碼的gcc用-O3跟-O2對結果會有很大的不同
我一開始以為用-O3可以加快不少編譯速度,事實上編譯速度確實是提高不少
但是編譯出來的東西幾乎不太能用,不穩定或根本無法執行!
後來自己重編穩定版本後才發現原來是參數的問題!

另外在本機編譯新版gcc通常需要編譯兩次
例如我用gcc 4.4編譯gcc 4.5,然後安裝gcc 4.5
再用gcc 4.5再編譯一次gcc 4.5,這樣子新版本的gcc才能發會自己的特性
而不會受限於舊版gcc所造成的特性無法發揮或不正常發揮等問題!



gcc版本切換方法:

查詢當前gcc版本
[lawliet@Arch]$ gcc -v
使用內建 specs。
目的:i686-pc-linux-gnu
配置為:../configure --prefix=/usr --enable-shared --enable-languages=c,c++,fortran,objc,obj-c++ --enable-threads=posix --mandir=/usr/share/man --infodir=/usr/share/info --enable-__cxa_atexit --disable-multilib --libdir=/usr/lib --libexecdir=/usr/lib --enable-clocale=gnu --disable-libstdcxx-pch --with-tune=generic
執行緒模型:posix
gcc version 4.4.1 (GCC)


我的做法通常會將目前gcc版本做個備分
cd /usr/bin


調出有gcc檔名的檔案
[lawliet@Arch bin]$ ls -l gcc*
lrwxrwxrwx 1 root root 13 2009-08-07 14:00 gcc -> gcc-4.4
-rwxr-xr-x 1 root root 209932 2009-07-03 04:44 gcc-4.4
-rwxr-xr-x 3 root root 212480 2009-08-06 20:02 gcc-4.5
-rwxr-xr-x 1 root root 16058 2009-07-24 10:26 gccbug
-rwxr-xr-x 1 root root 16141 2009-08-06 20:02 gccbug-4.5


備份當前gcc版本
sudo cp gcc gcc-bak


把gcc連結到新版gcc上
sudo ln -s gcc-4.5 gcc


檢查是否正確連結
[lawliet@Arch bin]$ gcc -v
使用內建 specs。
目的:i686-pc-linux-gnu
配置為:../configure --prefix=/usr --enable-shared --enable-languages=c,c++ --enable-threads=posix --mandir=/usr/share/man --infodir=/usr/share/info --enable-__cxa_atexit --disable-multilib --libdir=/usr/lib --libexecdir=/usr/lib --enable-clocale=gnu --disable-libstdcxx-pch --with-tune=generic --disable-werror --enable-checking=release --program-suffix=-4.5 --enable-version-specific-runtime-libs
執行緒模型:posix
gcc version 4.5.0 20090723 (experimental) (GCC)


之後如果需要換到其它版的gcc,一樣修改gcc連結既可
(繼續閱讀...)

2009-07-30

在ArchLinux上搞定高清播放平台



VDPAU是nVidia在Unix上實現能夠讓
G84以上GPU能夠硬體加速高清視訊解碼的API
能夠加速MPEG-1、MPEG-2、MPEG-4 AVC (H.264)、VC-1 和WMV3/WMV9



在Linux上我們一般需要編譯由nVidia維護的mplayer-vdpau
過程可能會有些麻煩,也不一定會編譯成功
但是Arch有AUR,讓我們可以在Linux輕鬆編譯出mplayer-vdpau
我自己是用AUR上smplayer-svnmplayer-vdpau-nogui這兩個套件

不過這兩個套件存在依存性問題,如果你直接yaourt -S是無法正常安裝的
所以我們必須去掉smplayer-svn中mplayer的依賴
如果你使用KDEMod,那你還必須再去掉QT的依賴

至於mplayer-vdpau-nogui如果你跟我一樣是自己裝nVidia官網上的驅動
而不是由源裡直接pacman -S nvidia的驅動,那你還得再去掉nvidia的依賴
這樣子才可以正常安裝,並相安無事的為你工作著!
如果你不想編譯,我這裡有已經編譯好的32bit binary


套件安裝完成我們要對SMPlayer進行一些設定
先開啟SMPlayer,開啟偏好設定
然後將解碼去改為VDPAU




然後到進階找到選項,加入以下讓mplayer強制使用這些decoder
這個地方在我這裡可加可不加,mplayer會自動調用VDPAU
如果你播放上有問題,請自行加入強制調用VDPAU
-vc ffmpeg12vdpau,ffwmv3vdpau,ffvc1vdpau,ffh264vdpau,




然後我分別開啟刺客聯盟跟沈沒的羔羊
它們的格式分別為H.264跟MEPG2
我們可以清楚的看到mplayer有正確調用VDPAU
對視訊進行硬體加速







大致上到了這裡就告一段落了,其它支援VDPAU的播放器
還有XBMCMythTVXineBoxee
前兩者還可以讓你打造基於Linux核心的媒體中心

(繼續閱讀...)

2009-07-29

自編譯Linux kernel for ArchLinux



之前我曾經寫過一篇推薦Linux桌面
建議使用RealTime核心的文章
後來有人跟我反應,編譯上出現問題
無法享受到RT核心帶來的便利
所以我把自己編譯的分享出來



我參照AUR上的PKGBUILD做了些修改
並使用最新的RT Patch下去編譯,提供開啟big memory
只要你的機器支援,最高可以管理達64g的系統記憶體


目前先釋出32bit Core2版,支援intel Atom, Pentium 4/6XX,
Core/2 Solo/Duo/Quad, Xeon, Prescott
Pentium D, Celeron D,指令集支援到SSE3




之後有需要我會再編譯其它版本
(繼續閱讀...)

2009-06-30

建議:Linux桌面應用應該改用RealTime核心



RealTime核心是Kernel.Org裡其中一個核心計劃
它可以對一些專業上的應用,例如為音效錄音提供超低的延遲
為一些工業環境上提供更好的工作效率



ReakTime(以下簡稱RT)核心在的概念在Windows上也同樣存在
在Windows XP/VISTA上預設設定為"程式"
意既給當前正在操作的應用程式最多的系統資源
而Windows Server 2003/2008預設為背景服務
意既將系統資源均分給背景服務




簡單的說,RT可以讓我們正在操作的前景程式
獲得最大系統資源,而不會像通用核心那樣
把系統資源均分給每一個應用程式
在Linux桌面實際使用上,可以降低前景應用程式呈現灰色的情況
證明RT核心對一般桌面應用可以更有效率的分配系統資源
所以我推薦一般將Linux做桌面應用的人,可以改用RT核心

而什麼樣的人才適合用通用核心?
如果你的Linux是用來做伺服器
需要讓背景程式與服務均分系統資源
那你才應該繼續使用通用核心
已確保你的背景服務不會出現延遲


如果你是Arch用戶,可以直接透過AUR自行編譯出RT核心


如果你是Ubuntu用戶可以透過新立得
以"-rt"做關鍵字安裝RT核心




如果你對Ubuntu本身的核心有疑問,我稍微簡單解釋一下
Ubuntu的核心預設是用通用核心,如果你選擇Ubuntu Studio安裝
那預設核心就已經是RT核心了,而Ubuntu Server的Server核心
其實與通用核心最大的差異就是Server核心還另外開啟了Big memory support
這些核心之間參數或許不太一樣,但比較顯著的差別差不多就是這樣
(繼續閱讀...)

2009-06-12

在Arch上安裝AntiVir很容易!



還記得以前在Ubuntu上要安裝AntiVir不是一件容易的事情
因為除了AV本身的安裝外,我們還要另外安裝Dazuko這個虛擬裝置
幫助kernel可以讓AntiVir在Linux上實現即時監控等重要的相關功能



最早時Dazuko我們需要自己將Dazuko編譯進kernel
後來比較好,還有deb可以用,但是由於Dazuko更新時常跟不上潮流
所以在以前要把Dazuko編譯進核心要靠一些運氣,加上煩瑣的安裝步驟
很多人都改用avast,而無法正常使用AntiVir


可是在ArchLinux上卻是相容安裝!
因為那些煩瑣的步驟,別人都幫你處理好了
只需要移到命令,然後等待一段時間後就自動安裝完成了
yaourt -S antivir


安裝完再將你的帳號加入群組確保有使用權
sudo gpasswd -a 你的帳號名稱 antivir



察看命令
$ ls /usr/bin |grep antivir
antivir
antivir-gui









使用圖形操作大致上就跟windows版差不多,就連設定方面也是一樣的方式
另外安裝avast也只需要一道指令就可以安裝,不過avast的安裝在Ubuntu上
本來就不難,但avast並不像AntiVir也提供即時監控就是了,如果你有此需求avast較為不適合
yaourt -S avast






(繼續閱讀...)

2009-04-24

ArchLinux 推廣教學起跑!(09.7.5更新)



不久前Ubuntu 9.04剛發佈,雖然我已經很久不用Ubuntu了
比起別人我算是幸運的!轉換到ArchLinux沒有遇過什麼問題
對Ubuntu有興趣的朋友可以參閱我以前所撰寫的Ubuntu 8.10推廣文



ArchLinux與Ubuntu相比它的優點有:


1.快速

ArchLinux使用i686編譯的套件庫比Ubuntu普遍都是i386套件在執行速度上要來的快
不過如果你選擇的是x64的版本,兩者執行速度上的差異就幾乎不存在了
因為在x64上,每家廠商幾乎都用一樣的參數下去編譯

再來ArchLinux套件的相依性較為自由,Ubuntu在這一部份的處理沒有ArchLinux來的好
常常裝了一堆用不到卻不能移除的套件,假如今天我要打造一個輕量級的作業系統
ArchLinux可以做的比Ubuntu還要來的小巧很多!


2.無縫升級

ArchLinux採用無縫升級,所以它沒有週期性升級,隨時都保持在最新
像Ubuntu它每一個版本都有自己獨立的套件庫,一些軟體像是OpenOffice.org
除非遇到很緊急的問題,否則絕大多數的軟體都不會經常或者完全不升級

而ArchLinux對於軟體的更新通常都在24小時左右的時間會有所反應
它的套件庫每天都在更新,相較於Ubuntu每次只要出了新版本
舊有的版本很快就變成了孤兒,雖然有Ubuntu LTS長期支援版
但這僅限於安全更新,對一般桌面應用來說,想要新軟體就必須自己找來源
所以在這一點上,ArchLinux的理念才是比叫迎合一般人的口味


3.高度的自訂性

ArchLinux沒有特定的樣子,像Ubuntu就有各種不同桌面環境的分歧
而ArchLinux安裝完後只有基礎系統,接下來就看自己的發揮
沒有沉重與多餘的套件,除了簡單(easy)還是簡單(simple)
每一個人都可以打造完全屬於自己一個人的Linux系統



安裝開始(按小圖賞大圖)

ArchLinux安裝ISO在官網上有兩種
一個是Core另一個是FTP,差別在Core可以在一開始就安裝完基礎系統
而FTP本身檔案比較小,它透過網路來安裝所有的套件
這裡我使用FTP版,因為ArchLinux的更新太頻繁了
通常過了一兩個月,你的基礎系統套件幾乎全更新了
所以像現在我們選擇由FTP安裝其實還比較快一點!

按我由官網下載安裝ISO


開機後輸入arch或是root登入
再輸入/arch/setup進入安裝程式




由於我是用網路安裝,這裡我們必須選擇FTP/HTTP安裝模式




安裝程式主選單
項目請由上到下

先設定網路使用模式
在設定網路的過程,會詢問要由哪個鏡像站更新
我們使用美國鏡像站進行安裝,速度會快很多
http://archlinux.unixheads.org/$repo/os/i686

如果是64bit就輸入
http://archlinux.unixheads.org/$repo/os/x86_64


調整或新增硬碟分區




記住!如果你的硬碟裡有重要的資料在
請勿選擇項目1!它會自動幫你格式化以及規劃磁碟分配




選擇要操作的硬碟




規劃磁碟分區,不會用的可以參照我之前的B2D Linux推廣文




如果記憶體夠大可以不用SWAP也沒有關係




設定檔案系統,我這張圖是舊,新的可以選擇EXT4
不過/boot必須掛在EXT4以外的分區,否則GRUB無法引導進入系統




想清楚了之後再決定要不要格式!




回到主選單,選擇安裝套件




這裡我們照預設就好






回到主選單選擇開始進行安裝套件




選擇NO,因為之後可能還會再用到




回到主選單,我們繼續設定系統檔




詢問要不要偵測硬體,這裡選擇Yes




詢問是否會由USB裝置開機,這裡我選擇NO




選則你會用的文字編輯器,這裡我選vi




編輯/etc/rc.conf,這是一個很重要的檔案

ArchLinux大部份的設定都是在這裡完成
進入後先按i才可以編輯




設定時區(TIMEZONE)
語言(LOCALE)建議保持預設英文,稍候才修改




設定主機名稱(HOSTNAME)




設定網路:

如果你跟我一樣用網路安裝,那一開始就會設定了
如果不是你才需要設定上網的方式
最後要離開時請先按ESC然後再:wq!




接下來編輯/etc/locale.gen
把中文相關的zh_TWzh_CN取消註釋(去掉最前面的#)




以上是比較簡單的中文化法
如果你想要在終端下保有英文介面
在X又可以顯示正體中文
可以自己新建一個~/.xprofile
然後在裡面添加:
#Loacle
export LANG=zh_TW.Big5
export LANG=zh_TW.utf8
export LC_CTYPE=zh_TW.Big5
export MM_CHARSET=big5




回到主選單設定root密碼




安裝開機引導程式




選擇GRUB作為開機引導程式




選擇之後它會跳出fstab掛載的情況
離開同樣只要先按ESC再輸入:q!




詢問GRUB要裝在那
一般建議安裝在MBR,這裡我選擇裝在/dev/sda




繼續詢問是否使用軟體RAID
沒有就選NO




大致上告一段落了,跳回主選單離開安裝程式




輸入reboot重新開機





基礎系統安裝完後我們要建立自己的帳號

建立使用者帳號名稱
useradd -m -s /bin/bash 你的帳號名稱

設定該帳戶密碼
passwd 你的帳號名稱




安裝xorg
pacman -S xorg


安裝KDEMod 4:

KDEMod官方有五個mirror,選一個速度比較快的
建議選最後一個,在我這裡速度可以到500k/s以上

編輯pacman.conf
vi /etc/pacman.conf

依照你所安裝的版本加入正確的來源

x86:
[kdemod-core]
Server = http://chakra-project.org/repo/core/i686

[kdemod-extragear]
Server = http://chakra-project.org/repo/extragear/i686

x64:
[kdemod-core]
Server = http://chakra-project.org/repo/core/x86_64

[kdemod-extragear]
Server = http://chakra-project.org/repo/extragear/x86_64


不建議加入kdemod-playground,因為這是不穩定的測試套件
最後記得:wq!儲存


安裝KDEMod

安裝基本KDEMod(建議!)
pacman -Sy kdemod

安裝精簡KDEMod
pacman -Sy kdemod-minimal

安裝完整KDEMod
pacman -Sy kdemod-complete

這裡建議僅先安裝基本KDEMod就可以了


安裝語系支援:

安裝字體
pacman -S wqy-zenhei ttf-bitstream-vera ttf-arphic-uming ttf-arphic-ukai

正體中文
pacman -S kdemod-kde-l10n-zh-tw

簡體中文
pacman -S kdemod-kde-l10n-zh-cn



安裝驅動設備:

安裝輸入設備驅動程式
pacman -S xf86-input-mouse xf86-input-evdev xf86-input-keyboard



安裝顯示卡驅動程式:

nVidia用戶:

閉源驅動(建議)
pacman -S nvidia
開源驅動
pacman -S xf86-video-nv

ATi用戶:

開源驅動
pacman -S xf86-video-ati
閉源驅動(須先安裝yaourt)
yaourt -S catalyst

intel用戶
pacman -S xf86-video-intel

VIA用戶:(須先安裝yaourt)
yaourt -S xf86-video-via-git

SIS用戶:
pacman -S xf86-video-sis



驅動設備引導:

顯示卡驅動裝完後接著安裝HAL、dBus
pacman -S hal dbus


xorg.conf設定:

如果你安裝的是xf86-video的開源驅動
可以直接略過一個步驟,如果用nVidia閉源驅動可以適度參考

這裡我不用hwd產生xorg.conf
因為hwd現在已經被Arch移出套件庫了
我們改用nVidia內建的工具產生xorg.conf

nvidia-xconfig


重新編輯xorg.conf,用#註釋掉與顯示卡無關的部份
以下為我的xorg.conf(僅供nVidia顯示卡用戶參考!
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
Load "dpms"
EndSection

Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
HorizSync 50.5 - 180.0
VertRefresh 60.0 - 170.0
Option "DPMS"
EndSection

Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
Option "RenderAccel" "True"
Option "TripleBuffer" "True"
Option "BackingStore" "True"
Option "PixmapCacheSize" "300000"
Option "OnDemandVBlankInterrupts" "True"
EndSection

回頭編輯/etc/rc.conf,把hal加入到DAEMONS內
vi /etc/rc.conf




安裝音效驅動
pacman -S alsa-utils alsa-oss

將帳號加入音效使用權
sudo gpasswd -a 你的帳號名稱 audio

最後編輯/etc/rc.conf,將alsa加入到DAEMONS內



如果alsa無法驅動你的音效卡,還可以改用OSS
pacman -S oss

然後將oss加入到DAEMONS內就可以了



安裝sudo、gksu
pacman -S sudo gksu

將你的帳戶加入sudo
visudo

在空白的地方加入以下
你的帳號名稱 ALL=(ALL) ALL

如果要sudo不會提示需要密碼(不建議這麼做!)
你的帳號名稱 ALL=(ALL) NOPASSWD: ALL


準備進入桌面:

啟動hal、dbus服務準備測試能否進的了桌面
/etc/rc.d/hal start

然後測試X與驅動是否正確驅動:
startx

如果可以看到這樣的畫面,並且滑鼠鍵盤驅動正常
那表示應該沒什麼問題了,輸入exit離開X




進入KDEMod桌面環境
/etc/rc.d/kdm start

如果可以進入到桌面,表示已經完成基礎的安裝了
回頭編輯/etc/rc.conf,將kdm加入到DAEMONS內



軟體安裝:

Firefox 3.5.X
sudo pacman -S firefox firefox-i18n

Firefox 3.5 PGO(須先安裝yaourt)
yaourt -S firefox-pgo

Opera(須先安裝yaourt)
yaourt -S opera

FileZilla
sudo pacman -S filezilla

JRE
sudo pacman -S jre

FlashPlayer
sudo pacman -S flashplugin

壓縮格式支援
sudo pacman -S unrar unzip

GIMP繪圖軟體
sudo pacman -S gimp

K3B燒錄軟體
sudo pacman -S k3b
將帳號加入光碟設備使用權
sudo gpasswd -a 你的帳號名稱 optical

TVtime電視卡客戶端軟體
sudo pacman -S tvtime
將電視卡加入設備使用權
sudo gpasswd -a 你的帳號名稱 video

SMPlayer影音播放軟體
sudo pacman -S smplayer

OpenOffice.org辦公室文書軟體
sudo pacman -S openoffice-base openoffice-zh_tw

Go-OpenOffice(須先安裝yaourt)
yaourt -S go-oo-bin-base go-oo-bin-zh-tw


即時通訊軟體:

Pidgin
sudo pacman -S pidgin

Kopete
pacman -S kopete

aMSN
sudo pacman -S amsn

Skype
pacman -S skype

Galaxium(須先安裝yaourt)
yaourt -S galaxium

QQ For Linux(須先安裝yaourt)
yaourt -S linuxqq


P2P軟體:

KTorrent
sudo pacman -S ktorrent

Deluge
sudo pacman -S deluge

Azureus
sudo pacman -S azureus

rTorrent
sudo pacman -S rtorrent

aMule
pacman -S amule

Transmission
pacman -S transmission-gtk


安裝中文輸入法:

安裝gcin中文輸入法(建議)
sudo pacman -S gcin

再來編輯profile這個檔案
sudo kate ~/.xprofile

然後加入以下:
#gcin
export GTK_IM_MODULE=gcin
export QT_IM_MODULE=gcin
export LC_CTYPE=zh_TW.UTF-8
export XMODIFIERS="@im=gcin"
gcin &

重新登入後就可以使用gcin輸入中文了!


安裝SCIM中文輸入法

如果你不喜歡或者不習慣gcin
也可以改用SCIM這個Ubuntu的預設文字輸入工具
sudo pacman -S scim

同樣也需要編輯profile
sudo kate ~/.xprofile

然後加入以下:
#SCIM
export XMODIFIERS=@im=SCIM
export GTK_MODULE=scim
export QT_MODULE=scim
export G_FILENAME_ENCODING=@utf8
export XIM_PROGRAM="scim -d"
export LC_CTYPE="zh_TW.utf8〞
scim -d

重新登入後就可以使用SCIM輸入中文了!



安裝NTFS-3G:

我想應該很少人能夠真正拋棄Windows系統
因為實在有太多好玩的遊戲可以玩了
所以硬碟內或多或少都會有一兩個NTFS分區
在Linux下我們可以用NTFS-3G對其進行掛載

首先安裝ntfs-3g
sudo pacman -S ntfs-3g

然後我們要開始對分區進行掛載
這裡我用稍微複雜但更容易管理的UUID方式掛載

我們在終端機中輸入
sudo blkid

它會回饋類似這樣的一個訊息
[lawliet@ArchLinux ~]$ sudo blkid
/dev/sda1: UUID="92BCF961BCF93FF1" LABEL="System" TYPE="ntfs"

/dev/sdb1: UUID="9e8c9bc2-6e55-4869-bc9b-a4a84a3ce3f5" TYPE="ext4"

/dev/sdb5: UUID="6EBC4326BC42E863" LABEL="DATA" TYPE="ntfs"

我們從TYPE這項可以得知sda1與sdb5為ntfs格式
其中UUID就是那一長串英文與數字的組合

知道UUID後我們就可以開始掛載ntfs-3g了
編輯fstab
sudo kate /etc/fstab

加入這兩項
UUID=92BCF961BCF93FF1 /media/system ntfs-3g defaults,iocharset=utf8,umask=0,nls=utf8 0 0

UUID=6EBC4326BC42E863 /media/data ntfs-3g defaults,iocharset=utf8,umask=0,nls=utf8 0 0

記住!你的UUID絕對不會跟我的一樣
掛載自己的ntfs分區的時候記得要修改
儲存修改好的fstab開始進行掛載
sudo umount -a
sudo mount -a

到此你已經可以在ArchLinux上編輯NTFS磁區了



PacMan常用指令:

pacman它的操作邏輯幾乎與各大發行版套件庫指令一致
以Ubuntu做例子,我們要安裝軟體的時候輸入apt-get install 套件
在ArchLinux則為pacman -S 套件


更新套件庫與系統升級
pacman -Sy 更新套件庫
pacman -Su 升級所有的套件

指令富有彈性,以上兩件事可以一起完成
pacman -Syu 更新套件庫完接著進行升級

尋找軟體並安裝它
pacman -Ss 搜尋預尋找軟體套件庫資料
pacman -S 輸入你欲安裝軟體的名稱
pacman -Sf 強制安裝套件

刪除已經安裝的套件
pacman -R     刪除套件但不包含相依套件
pacman -Rs     刪除套件以及相依套件
pacman -Rd    強制刪除套件不檢查相依性
pacman -Scc 清除已下載的套件

更詳細可以參考官方WIKI
或者自己查詢本地的PacMan使用手冊
man pacman



安裝yaourt:

yaourt是ArchLinux的額外套件庫
任何人都可以參與維護,你可以將你打包好的套件上傳到AUR
或是下載別人打包好的軟體,yaourt可以根據PKGBUILD的需要
自動編譯並安裝,可以省去手動方式安裝的make、make install等步驟

使用了yaourt之後軟體會變得非常豐富,由於每個人都可以維護它
所以很多商業非開源軟體也可以在上面找到,例如adobe Reader或者VMWare WKS等


開始安裝yaourt

首先要編輯
sudo kate /etc/pacman.conf

在空白處加入以下來源
[archlinuxfr] Server = http://repo.archlinux.fr/i686

然後直接安裝yaourt
pacman -Sy yaourt


yaourt使用的指令與pacman一樣
一般使用可以完全取代pacman
而且套件庫還有版本資訊,還會用顏色做區隔
找軟體也可以上AUR官網查詢,使用上算是相當的方便


到這裡基本上算是完成安裝了




剛安裝完的KDEMod應該是英文的介面
從K功能表打開System>System Settings>Regional & Lanauage
或於終端下敲入:
systemsetting




按Add Lanauage加入中文支援




記得要套用設定





接下來就是一些不要緊的細節部份
可以自己衡量有沒有必要!


讓GTK程式能夠與QT程式擁有一樣的外觀:
sudo pacman -S kdemod-extragear-gtk-qt-engine qtcurve-gtk2 qtcurve-kde3 qtcurve-kde4

安裝完後重新登入,然後在系統>系統設定裡找到GTK Styles and Fonts
設定成下圖所示,重新登入之後GTK程式就不會看起來醜醜的了




同樣在外觀的部份,我們切換到字型的地方
把字體設定成文泉驛正黑體




或者安裝你自己喜歡的字型
退回上一頁,最下面有一個"字型安裝程式"
安裝方法跟在Windows上一樣,不必像在Gnome要在那裡複製過來複製過去
還要動手加開權限,KDE4在這方面實在是很方便




KDE4也有自己的3D特效,不需安裝Compiz Fusion就能夠實現!






3D效果:

視窗拖洩時的果凍特效




Desktop Wall




桌面圓筒效果





特效還有很多,有興趣自己慢慢摸索
雖然KDE4已經內建了3D特效,但如果你不喜歡
也可以改用Compiz Fusion


安裝Compiz 0.8.2
sudo pacman -S compiz-core ccsm compiz-decorator-kde ompiz-fusion-plugins compiz-fusion-plugins-extra compizconfig-backend-kconfig fusion-icon

最後將Fusion-icon加入到/etc/profile
這樣子開機後應該就會自動開動3D桌面特效了



如果這篇文章讓你對ArchLinux感興趣或喜愛用它
並打算自此之後都一直使用ArchLinux
強烈建議一定要訂閱官網套件更新RSS
才不會發生出了問題不知道如何解決的窘境!


最後歡迎Ubuntu的用戶跳槽,因為ArchLinux除了安裝過於麻煩
其它的部份可是一點也不拖泥帶水,連Ubuntu.cn都開了ArchLinux專區
可見其魅力不是網路上三言兩語就可意會的,趁著Ubuntu 9.04發佈之際
看能不能拉一些人過來ArchLinux,原本這篇文章是寫給不是初學的朋友看的
但寫到快完成時臨時改變主義,寫的儘量簡單截圖也增加不少
如此也方便一些新手朋友的加入


但最重要的是搭建ArchLinux要有耐心,通常第一次安裝都會失敗
有的人卡在網路不會設定,大部份人是卡在xserver的部份
通常選擇"正確的驅動"就已經成功一半了
尤其是顯示卡方面的問題會比較多!nVidia跟intel的顯示卡驅動還蠻好處理
幾乎沒什麼問題,ATi的驅動就比較難搞了,它在源裡有封閉驅動跟開源驅動
如果前面安裝的封閉驅動無法正常工作,可以移除改安裝開源驅動
pacman -S xf86-video-ati

由於我手邊均無ATi顯示卡的機器,所以如果安裝上出現問題
請參閱ArchLinux官方WIKI
如果要請求技術支援可以到Ubuntu.cn還有Linuxsir求助

如果是有關於KDEMode的問題也可到官方論壇以及官方WIKI尋求解答
這篇文章暫時就先這樣,不定期更新,想到什麼或有遺漏什麼會再加上來

Have a nice day! (繼續閱讀...)