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

2016-02-21

LinuxMint 官網被駭 安裝 ISO 被植入後門


LinuxMint 上個月底的時候被發現未授權侵入
安裝 ISO 被置入後門
所以這陣子你剛好從官網下載了 ISO 並安裝
還輸入了你的慣用密碼
記得在系統斷網後
把該備份的東西備份後
重置你在這系統上所有輸入過的密碼
(繼續閱讀...)

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-11-17

用chroot拯救你的Linux

一般我們在使用Windows作業系統的時候
遇到一些不可預期錯誤所導致的系統損毀
對電腦基礎比較不熟悉的人,可能會全部格式化重灌Windows
有經驗的使用者就可能會採取主控台修復的方式

而在Linux上我們爾偶也是需要這樣的工具
這裡我簡單介紹一下如何使用chroot修復你的Linux系統!



通常我們可以用Live CD等隨身繫統開機
然後我們必須先搞清楚必須掛載的分區
所以第一步我們必須先把分區給mount上

mount /dev/root (根目錄)/mnt
mount /dev/boot /mnt/boot
mount /dev/home (如果採獨立分區,切需要資料救援的話)/mnt/home

將分區掛載好,開始進行修復
chroot /mnt /bin/bash
/etc/rc.d/net start (如果需要網路的話)
umount /dev/boot || umount /dev/root
reboot


很簡單,我是建議把這張學起來會比較好
尤其是我之前曾經寫過Arch的安裝教學
很多都卡在系統安裝失敗,以致於需要一直重複安裝
其實這些問題用chroot就可以修復了
(繼續閱讀...)

2009-10-02

羽量級桌面環境的套裝選擇:CrunchBang Linux



前陣子我在部落格上介紹了羽量級桌面環境的打造
雖然輕量的的桌面環境可以獲得更好的速度與更多的可用資源
但設定上卻不太人性化,雖然我們已經有了以LXDE為主要桌面環境的
Debian還有Ubuntu分歧的Lubuntu

但是LXDE雖然好用方便,但與Gnome還有KDE相比
它不是主流桌面環境,再加上LXDE的樣式可能不太好看
這裡我要介紹一個非主流中的非主流
同樣也是羽量級桌面環境的發行版:CrunchBang Linux



CrunchBang Linux它基於Ubuntu,桌面環境使用OpenBox還有Tint2 panel


CrunchBang在一些細節上處理的不錯,桌面上已經幫你設定好了Conky
ObMune也幫你設定好了,軟體上的選擇也很"輕量化"
例如htop、GPiceView、PCManFM、XTerm等等
這些都是打造輕量化桌面環境時經常選用的軟體!

也由於CrunchBang基於Ubuntu,所以使用上對原本就是Ubuntu或Debian系的人
不用重新學習和適應,如果你喜歡這種"黑客風格"
但卻又懶的自己動手的人來說,無疑提供了很大的方便,因為它都幫你設定好了
相信那些喜愛羽量級桌面環境的人應該會很喜歡CrunchBang Linux!


(以下圖片取材自CrunchBang Linux官方網站)










(繼續閱讀...)

2009-09-30

為什麼那麼在意安裝的"滑鼠點擊數"?



這是一個很有趣的現象
大約從微軟發佈Vista那段時間開始
陸續有評測網站會將作業系統安裝時的"滑鼠點擊數"
加入評測項目,並用"滑鼠點擊數"來評估
一款作業系統的安裝過程是否友善



不過我相信絕大部分的人,並不會一天到晚反覆安裝自己的作業系統
對我而言,用"滑鼠點擊數"評判安裝友好度
根本不該是重點項目

一個系統安裝引導是否優秀
應該從它的過程是否簡潔還有說明是否清晰明瞭來判斷
而不應該只是靠"滑鼠點擊數"來決定!

在Unix界中知名的評測網站Phoronix
卻經常做這類的測試,而且Linux代表都是用Ubuntu

Linux發行版何其多,不管是性能測試還是其它什麼測試
只要有跟其它OS一起評比的,那Linux代表一律為Ubuntu
Ubuntu以來一直以來並不是一個以性能為重點的發行版
它們對新手友好,帶領對不懂的Linux新手用戶有很大的吸引作用
但性能跟方便,並不是Ubuntu強項!


就拿安裝時需要的滑鼠點擊數來說好了
我拿另一個Linux發行版"DreamLinux"來說明
同樣是安裝,在大部份的Linux發行版上
你絕對無法在同一個頁面就做完所有的設定

在Ubuntu上則是先檢測硬體接著、選擇所在地、建立用戶、分割磁碟等等
每一個步驟都是一個click,但是在DreamLinux上卻不用那麼多步驟
僅僅一個步驟,它就讓用戶完成了所有設定,並完成安裝




就算是號稱最簡單易用的MAC OS也沒有如此簡潔的安裝引導
Linux發行版百花齊放,雖然Ubuntu在佔有率上市其中的佼佼者
但它卻未必是一個十項全能樣樣階金牌的運動選手!
(繼續閱讀...)

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-06-04

Fedora 11 is Leak!



原本預計要在本月9號發佈Fedora 11
目前已經提前洩漏出境像站,想用的人目前已經可以下載了!



想要嘗鮮或升級的人可以從kernel.org的mirror取得新版iso

Fedora 11特性包括更快速的開機時間、將ext4作為預設檔案系統、指紋身份認証、更好的音量控制等

比較奇怪的新特性還有mulitseat(多座支援)
這可以讓同一台機器可以支援多個螢幕、滑鼠、鍵盤等輸入設備
然後讓不同的用戶可以同時登入並使用系統,有點類似於Windows上的"再生系統"
只是Windows上的可能需要花錢買相關的設備,而在Fedora上則不用
(繼續閱讀...)

2009-06-01

Sabayon Linux 4.1 預覽



我在plurk上這樣寫道:Sabayon是第一個讓我覺得世界可以被改變的Linux發行版!



為什麼我會這樣說呢?
大部分的Linux發行版幾乎均會在自己的領域持續發展
並互相保持著一定的平衡,各個發行版都有自己擁護者
彼此看似相同,但卻有些不一樣,因為這些差異性的存在
造就了今天Linux發行版的多樣化,用戶擁有更多選擇的對象


Sabayon是我前兩天在Ubuntu CN看到的,很快的它便吸引了我的目光
Sabayon它是一個基於Gentoo的發行版
並且在Live DVD內預裝了大量的應用軟體,它的Live DVD幾乎可以滿足所有人的需求
就好像食神裡的經典台詞:全部都摻在一起做爆漿撒尿牛丸!一樣

Sabayon借鑑了不少Linux發行版的特點,將其融合在一起發行
它除了Live System外,它還提供Live XBMC
如果要進行安裝還可以選擇KDE4Fluxbox






要不然單純只安裝XBMC也不是不行,這些全部都是在同一張Live DVD完成
安裝時如果你不喜歡KDE4跟Fluxbox這兩個桌面環境
還可以選擇只安裝Core System,然後自己再透過Entropy或者portage進行安裝




不管是由二進制檔安裝或編譯安裝,它都俱備相當大的彈性
完全可以滿足不同方向的極端使用者!

而且最讓我感到驚訝的還不只如此,而是Sabayon它把Gentoo變得平易近人
系統安裝完,除了我們需要再針對中文環境做些設定跟改變外
它甚至把Ubuntu沒有做到的也做到了!Sabayon的易用性相當好
它的Live DVD也很炫,因為它居然有開機歌曲!
是一首還不錯聽的英文搖滾樂曲,下面YouTube影片中的第一首就是
或按我進行線上收聽!




由於Live DVD容量本身有1.8G的大小,所以啟動的速度並不快
進入到桌面視硬體等級不同可能需要五分鐘左右的時間
我猜大概是希望我們等待Live DVD啟動時不至於太無聊
才放入這個啟動歌曲,個人覺得這點還頗俱創意!
可以感受到Sabayon團隊的用心

因為Sabayon包含了受限驅動,跟Mandriva ONE一樣
在Live System內就可以開啟Compiz特效體驗3D桌面的威力!




進入桌面後其實可以發現Sabayon的美工相當精緻
不論是桌布還是安裝精靈,Sabayon都表現的相當優秀
看來連SUSE最炫麗Linux發行版的頭銜也快要易主了!




安裝過程其實相當久,比用Live CD安裝ubuntu還要來的更久
差不多耗費30分鐘以上的時間,由於安裝時我不在機器旁
也不曉得是否因為網路安裝的關係才讓時間變這麼久




安裝過程我們還可以選擇是否安裝Samba服務
如此可以方便XBMC的媒體資料作分享
我覺得這是很好的一個特色,安裝完Samba也幫你設定好了




進入桌面後的模樣
感覺還不錯,我下載的是Sabayon Linux 4.1 K
K代表著KDE桌面環境,如果選擇"Sabayon Linux 4.1 G",那就是GNOME桌面環境




Sabayon有內建一個叫做World of Goo的遊戲,不明白怎麼玩






Sabayon有一點相當直得讚許,它把很多桌面應用幾乎是必備的套件
全部裝上了,就類似台灣人自己的維護的B2D一樣,大量預裝了很多應用軟體
例如FlashPlayer,打開我的blog後側邊的Labels Cube顯示正常
不會有提示少這個少那個情況發生




接著我進入內建的XBMC媒體中心
Sabayon使用XBMC作為它的媒體中心
不論是視覺效果或是操作及易用性,都明顯好過Mythtv
實際用它來撥放一些影片來測試它的撥放效果




首先我們必須先設定來源
我這裡選擇從Samba來撥放多媒體檔






撥放格式的支援在Live System上可能因為版權的關係
沒有將Real的rmvb、rm等加入支援,撥放這些格式時只有聲音沒有影像
但這並不是一個問題,可以自己另外安裝相關的decode就可以解決了




如果選了一個含有可支援的媒體資料夾又跳出
XBMC還會在主選單上自動以影面內容取代原本內建的影片過場效果




這是撥放葉問DVD的情形






字幕顏色跟語言可以自己另外修改,使用上感覺還不錯
剩下的就只差一支遙控器了!


最後找了一部HD DVD影片來撥放
片名是沉默的羔羊,由安東尼霍普金斯主演
格式為MPEG2 TS 1920x1080,機器硬體為E6300@3G + GeForce 8800GT
可以正確並安穩的撥放高清影片,XBMC不確定是否有使用
nVidia驅動提供的VDPAU作硬體解壓縮,不過就算是軟解
在目前的主流的CPU應該都不是什麼問題了




Sabayon不論功能或者實用上,都是相當到位的一個Linux發行版
它僅僅在一片Live DVD,就讓幾乎讓所有的需求一次滿足!
而且它居然能夠把Gentoo變的如此簡單易用,更是讓我覺得相當不可思議的地方!


如果想要體驗Sabayon Linux可以從官方進行下載:
Sabayon Linux x86/x86-64 4.1 GNOME
Sabayon Linux x86/x86-64 4.1 KDE
(繼續閱讀...)