Archive

‘Linux 進階操作技巧’ 分類過的Archive

於GNOME中添加HDAPS-Applet

2010年1月19日 4 則評論

在KDE4的plasmoid中有HDAPS專屬的監控程式,但在GNOME中目前尚未提供套件可以使用,因此需要另外安裝,若有需要的朋友可以參考下列說明:

(1) 下載 gnome-hdaps-applet-20081204.tar.gz 原始碼

(2) 編譯與安裝 gnome-hdaps-applet

Figaro-NB:~ # mkdir /tmp/hdaps-applet
Figaro-NB:~ # cd /tmp/hdaps-applet
Figaro-NB:hdaps-applet # tar -zxvf ../gnome-hdaps-applet-20081204.tar.gz
Figaro-NB:hdaps-applet # gcc $(pkg-config –cflags –libs libpanelapplet-2.0) -o gnome-hdaps-applet gnome-hdaps-applet.c

( 編譯時需要安裝 gtk-devel 與 gnome-applets相關套件)

編譯完畢後,在將編譯出來的 gnome-hdaps-applet 複製到 /usr/bin目錄內,然後將目錄中所有的 .png 圖片檔案複製到 /usr/share/pixmaps/gnome-hdaps-applet/目錄內(這個目錄必須先行建立),最後在將 GNOME_HDAPS_StatusApplet.server 複製到 /usr/lib64/bonobo/servers目錄下(32位元改複製到 /usr/lib/bonobo/servers目錄),這樣便大功告成。

(3) 如圖片所示,安裝好後,便可以從新增元件這邊找到 hdaps-applet 元件,只要添加上去便可以運作 ~

ThinkPad R400解決Linux中 Mute 按鍵失效問題

2010年1月19日 尚無評論

預設安裝好 OpenSUSE Linux後,ThinkPad上的快速鍵基本上都可以正常運作,但唯獨這個靜音按鍵卻是失效的,解決方法如:

(1) 編輯 /boot/grub/menu.lst 或是 /boot/grub/grub.conf,於啟動核心選項後添加 acpi_osi=Linux 便可以解決此問題

title Desktop — openSUSE 11.2 – 2.6.31.8-0.1
root (hd0,0)
kernel /vmlinuz-2.6.31.8-0.1-desktop root=/dev/disk/by-id/ata-ST9320423AS_5VH0K2VK-part2 resume=/dev/disk/by-id/ata-ST9320423AS_5VH0K2VK-part3 splash=silent quiet showopts vga=0x317 acpi_osi=Linux
initrd /initrd-2.6.31.8-0.1-desktop

於SUSE Linux中啟用 ThinkPad 的 HDAPS 功能

2010年1月19日 尚無評論

ThinkPad 電腦中有一個 HDAPS 機制可以用來保護硬碟的安全,預設安裝的 SUSE Linux 核心中並未完整添加此功能,因此當你載入 hdaps.ko 模組時,可能會出現下列錯誤訊息:

[ 5682.465305] hdaps: supported laptop not found!
[ 5682.465313] hdaps: driver init failed (ret=-19)!

解決方式如下所示:

(1) 首先,請先下載 tp_smapi-kmp 原始碼,然後執行:

Figaro-NB:~ # rpm -ivh tp_smapi-kmp-0.40-3.5.src.rpm
Figaro-NB:~ # cd /usr/src/spec/
Figaro-NB:~# rpmbuild –bb tp_smapi-kmp.spec

這樣便會產生對應你目前核心版本的 tp_smapi-kmp 模組 RPM 安裝檔案。

(2) 安裝 tp_smapi-kmp-xxxx.rpm

(3) 接著,編輯/etc/modprobe.d/99-local.conf 模組組態檔案,添加下列資訊 (若是T400/R400要添加):

#
# please add local extensions to this file
#
options thinkpad_ec force_io=1

(4) 編輯 /etc/sysconfig/kernel 中將 tp_smapi 與 hdaps 模組設定在開機時載入,請修改下列行內容:

MODULES_LOADED_ON_BOOT= ” tp_smapi hdaps ”

(5)手動載入模組測試狀態:

Figaro-NB:~ #modprobe tp_smapi
Figaro-NB:~ #modprobe hdaps

接著,你應該可以從dmesg中看到下列敘述:

[ 6400.876049] thinkpad_ec: thinkpad_ec 0.40 loaded.
[ 6400.880832] tp_smapi 0.40 loading…
[ 6400.882067] tp_smapi successfully loaded (smapi_port=0xb2).
[ 6407.857197] hdaps: initial mode latch is 0x05
[ 6407.857321] hdaps: setting ec_rate=250, filter_order=2
[ 6407.857541] hdaps: device successfully initialized.
[ 6407.857608] input: ThinkPad HDAPS joystick emulation as /devices/virtual/input/input16
[ 6407.857739] input: ThinkPad HDAPS accelerometer data as /devices/virtual/input/input17
[ 6407.857801] hdaps: driver successfully loaded.

(6)接著,我們可以安裝一個hdapsd服務程式於系統背景監控硬碟狀態,檔案可以從此下載,記得透過chkconfig設定為開機啟動

這樣變大功告成啦~

ThinkPad R400 RTL-8172 無線網路卡解決方法

2010年1月18日 6 則評論

ThinkPad R400 裡面所使用的無線網路卡 Realtek Semiconductor Co., Ltd. Device 8172 目前在 OpenSUSE 11.2中的 2.6.31 核心無法驅動,網路上有許多前面提供透過載入 Windows Driver 的方式來解決,有碰到同樣痛處的朋友們可以透過下列方式來編譯核心模組來啟用這張無線網路卡,操作方式如下所示:

(1) 首先,你必須先確認系統已經安裝 kernel-source 、gcc、make這些編譯程式
(2) 接著,前往 Reltek 官方網站下載 rtl8192se_linux_2.6.0013.1204.2009.tar.gz 驅動程式原始碼
Figaro-NB:/tmp/figaro # tar zxvf rtl8192se_linux_2.6.0013.1204.2009.tar.gz
Figaro-NB:/tmp/figaro # cd rtl8192se_linux_2.6.0013.1204.2009/
Figaro-NB:/tmp/figaro/rtl8192se_linux_2.6.0013.1204.2009 #make ; make install
Figaro-NB:/tmp/figaro/rtl8192se_linux_2.6.0013.1204.2009 #modprobe r8192se_pci
Figaro-NB:/tmp/figaro/rtl8192se_linux_2.6.0013.1204.2009 # ifconfig wlan0
wlan0 Link encap:Ethernet HWaddr 00:26:5E:ED:5B:19
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Interrupt:17 Memory:ffffc900054f8000-ffffc900054f8100

於OpenSUSE Linux添加 IPv6 網路配置

2009年12月22日 尚無評論

剛好最近有些朋友的服務單位開始使用 IPv6 網路配置了,因此把配置方式留下紀錄,新版本的 OpenSUSE 11.2 已經可以直接透過 YaST2 控制中心中的網路裝置來直接設定 IPv6 網路,不過我這邊還是以文字介面為主,讓大家比較容易知道是如何運作的,這次會修改的檔案一共有兩個,分別為:

  • 網路組態檔案:/etc/sysconfig/network/ifcfg-ethX

    首先在這個檔案內需要添加上取得的 IPv6位址資訊於檔案的尾端:

    LABEL_0=’0′
    IPADDR_0=’IPv6位址’
    PREFIXLEN_0=’64’

  • 路由組態檔案:/etc/sysconfig/network/routs

    在檔案尾端添加上IPv6的路由位址,資訊如下:

    default IPv6路由位址 – –

設定完畢後可以直接透過 rcnetwork restart,然後進行下列測試,若可以得到回應變表示已經可以正常運作了。

s1:~ # ping6 ipv6.google.com
PING ipv6.google.com(tx-in-x68.1e100.net) 56 data bytes
64 bytes from tx-in-x68.1e100.net: icmp_seq=1 ttl=52 time=12.9 ms
64 bytes from tx-in-x68.1e100.net: icmp_seq=2 ttl=52 time=12.2 ms
64 bytes from tx-in-x68.1e100.net: icmp_seq=3 ttl=52 time=14.2 ms

FreeBSD帳號移轉至Linux腳本程式

2009年10月29日 尚無評論

由於 FreeBSD 和 Linux 在帳號密碼格式上略有差異,若再轉換系統時,可能會面臨帳號移轉上的困擾,這個腳本程式是簡單的進行帳號轉移與建立於Linux系統上,有需求的朋友可以參考使用。

#########################################################################
######                                                            #######
######                                                            #######
######    使用者帳號自 FreeBSD 移轉 Linux 大量建立腳本程式 v0.1      #######
######                                                             #######
######                 Figaro Yang (figaro AT neo-info DOT net)    #######
#########################################################################
#!/bin/bash

user_num=`cat /root/passwd | cut -d: -f1 | wc -l`
user_passwd=`cat /root/master.passwd | cut -d: -f1,2`
useradd=/usr/sbin/useradd

echo -n “本次共要移轉 $user_num 個使用者帳號自FreeBSD系統,確認請輸入(Y)”
read ans

if [ “$ans”=”Y” -o “$ans”=”y” ]; then

for i in $user_passwd
do
username=`echo $i | cut -d: -f1`
password=`echo $i | cut -d: -f2`
echo “目前正在建立使用者 $username …. 請稍候”
$useradd -m -p “$password” -s /sbin/nologin “$username”
echo “使用者 $username 建立成功”
done
else
echo “感謝您使用本轉換程式”
fi

GPG KEY 產生錯誤排除

2009年3月26日 2 則評論

今天在測試GPG KEY建置時,一直出現問題,底下把排除的方式記錄下來,下次再使用就可以簡單的許多:

閱讀全文…

如何在 RHEL 中取得 Kernel Sources

2008年12月17日 尚無評論

剛才有朋友在問,新版的RHEL似乎沒有再提供 kernel-sources這個套件了,因此如果要針對某一些特殊功能 patch 時,非常不方便。我記得之前部落格上有分享取得的方式,不過剛才搜尋一下,發現文章好像已經不見了,因此重新發了一篇,操作步驟如下:

1. 取得kernel.xxx.src.rpm檔案

2. rpm -ivh kernel.,xxx.src.rpm 安裝上這個 source rpm 檔案

3. 切換工作路徑到 /usr/src/redhat/SPECS 內

4. rpmbuild -bp –target=$(uname -m) kernel-2.6.spec 此時大約需要 3~5分鐘左右,你便可以在/usr/src/redhat/BUILD路徑下找到處理好的kernel source嚕

RHEL5 DNS伺服器故障排除 – 查詢被拒 ( Query REFUSED )

2008年12月17日 3 則評論

太久沒碰小紅帽系統了,呼 ~ 有時候越測試越累人,每個發行版本都會進行一些調整或是變化,越來越發現YaST的美好 ( 噗~ 懶人想法 )。如果你也是使用RHEL5 來架設DNS伺服器時,應該會發現一個小問題,那就是為什麼我們利用以往的”經驗”所建置出來的DNS伺服器會無法被其他用戶端查詢呢?

閱讀全文…

openSUSE Linux 中的磁碟分析工具 – Baobab

2008年12月8日 尚無評論

剛在  susegeek.com 那邊看到的一個分享,如果你希望在 openSUSE Linux 中進行磁碟狀態的檢查或是確認的話,可以使用 Baobab 這個工具來完成,這工具的介面有點相似微軟Winodws系統中的磁碟檢查重組的工具,介面如下:

baobab7

有興趣的朋友可以前往 susegeek.com 閱讀全文