天天看點

标題: 筆記本上使用Archlinux[zt]

标題: 筆記本上使用Archlinux

http://www.linuxsir.org/bbs/thread266584.html

轉自 http://arithboy.org/wiki/Laptop.html那裡的排版可能會好些~

近日購得二手筆記本一台,在其上運作linux的一些設定記錄如下:

型号為 ThinkPad T30

網絡環境的配置

近日購得二手筆記本一台,在其上運作linux的一些設定記錄如下:

型号為 ThinkPad T30

laptop-mode的配置

設定筆記本的待機

cpu自動降頻

監測硬碟,cpu,電池等

thinkpad筆記本的熱鍵設定

DPMS的使用

網絡環境的配置

首先添加udev規則,解決兩個網卡的順序問題.

編輯/etc/udev/rules.d/10-network.rules

代碼:SUBSYSTEM=="net", SYSFS{address}=="00:02:8a:47:f4:a5", NAME="wlan0"

SUBSYSTEM=="net", SYSFS{address}=="00:09:6b:06:a5:b4", NAME="lan0"筆記本上經常移動,需要多套網絡的配置.

編輯rc.conf

代碼:...

HOSTNAME="localhost"

lo="lo 127.0.0.1"

INTERFACES=(lo)

NET_PROFILES=(menu)

...将NET_PROFILES=(menu)打開,在/etc/network-profiles/中添加配置檔案.

例如檔案/etc/network-profiles/20-home

代碼:DESCRIPTION="home"

INTERFACE=lan0

HOSTNAME=localhost

IFOPTS="219.242.113.92 netmask 255.255.255.0 broadcast 219.242.113.255 hw ether 00132051A785"

GATEWAY=219.242.113.1

DNS1=202.112.144.30使用sudo /etc/rc.d/network restart則可更改網絡設定,/etc/resolv.conf的值會被更新.

當有多個配置時,檔案名以字典序排列,數字開頭則比較友善,數字最小的為預設網絡配置.

laptop-mode的配置

安裝 laptop-mode-tools 軟體包.

編輯檔案/etc/laptop-mode/laptop-mode.conf

預設設定已經能夠滿足需要了,隻要把CONTROL_開頭的打開即可,

裡面包含了硬碟,cpu等多方面的設定,能極大延長電池的使用時間, 推薦使用.

設定筆記本的待機

安裝acpid,機器待機時,背光仍然打開,主要是使用radeon的顯示卡可能會有這個問題.

詳細的描述見[1],使用radeontool(PKGBUILD附後)解決該問題,腳本[2]如下:

代碼:#!/bin/sh

# if launched through a lid event and lid is open, do nothing

echo "$1" | grep "button/lid" && grep -q open /proc/acpi/button/lid/LID/state && exit 0

# remove USB 1.1 driver

rmmod uhci_hcd

# sync filesystem and clock

sync

/sbin/hwclock --systohc

# switch to console

FGCONSOLE=`fgconsole`

chvt 6

/usr/sbin/radeontool light off

# go to sleep

sleep 5 && echo -n "mem" > /sys/power/state

# readjust the clock (it might be off a bit after suspend)

/sbin/hwclock --adjust

/sbin/hwclock --hctosys

# reload USB 1.1 driver

modprobe uhci_hcd

# turn on the backlight and switch back to X

radeontool light on

chvt $FGCONSOLE将腳本儲存在/etc/acpi/actions/sleep.sh,并chmod +x sleep.sh

修改/etc/acpi/handler.sh

按下sleep按鍵時(我這裡是Fn+F4)執行sleep.sh,進入待機

代碼:...

button/sleep)

case "$2" in

SLPB) #echo -n mem >/sys/power/state ;;

/etc/acpi/actions/sleep.sh;;#注釋掉上句,添加這句

...合上螢幕時,待機

代碼:...

button/lid)

#echo "LID switched!">/dev/tty5

/etc/acpi/actions/sleep.sh #添加這句

;;

...修改腳本以後,重起服務即可生效.

代碼:/etc/rc.d/acpid restart有個問題就是待機時usb口仍然供電,在windows下則無此現象.

cpu自動降頻

查找所需要的子產品

代碼:modprobe -l |grep cpufreq

/lib/modules/2.6.17-ARCH/kernel/drivers/cpufreq/cpufreq_powersave.ko

/lib/modules/2.6.17-ARCH/kernel/drivers/cpufreq/cpufreq_stats.ko

/lib/modules/2.6.17-ARCH/kernel/drivers/cpufreq/cpufreq_userspace.ko

/lib/modules/2.6.17-ARCH/kernel/drivers/cpufreq/cpufreq_ondemand.ko

/lib/modules/2.6.17-ARCH/kernel/drivers/cpufreq/cpufreq_conservative.ko

/lib/modules/2.6.17-ARCH/kernel/drivers/cpufreq/freq_table.ko

/lib/modules/2.6.17-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/longrun.ko

/lib/modules/2.6.17-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/powernow-k8.ko

/lib/modules/2.6.17-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/powernow-k7.ko

/lib/modules/2.6.17-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/powernow-k6.ko

/lib/modules/2.6.17-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/speedstep-smi.ko

/lib/modules/2.6.17-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/speedstep-lib.ko

/lib/modules/2.6.17-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/speedstep-ich.ko

/lib/modules/2.6.17-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.ko

/lib/modules/2.6.17-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/p4-clockmod.ko

/lib/modules/2.6.17-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/cpufreq-nforce2.ko

/lib/modules/2.6.17-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/gx-suspmod.ko

/lib/modules/2.6.17-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/speedstep-centrino.ko我的cpu是P4M1.6GHZ,選擇speedstep-ich.ko,同時需要cpufreq governors:

我這裡顯示有5個可以選擇 userspace, powersave, ondemand, conservative, perform

ance.

cpu降頻的軟體包有cpufreqd和cpufrequtils,後來發現laptop-mode-tools裡面直接可以控制cpu頻率和throttling.推薦使用這個.

需要在rc.conf中添加speedstep-ich和ondemand

監測硬碟,cpu,電池等

arch中監測支援smart硬碟溫度軟體有smartmontools和hddtemp,第一個監測的功能很多,我們使用第二個,

代碼:[[email protected] proc]$ sudo hddtemp -n /dev/hda

51

監測cpu頻率,溫度,電池等.

這些資訊都在/proc/acpi中,一般視窗管理器裡面自帶腳本/插件都可以監測,若沒用的話,使用某個腳本語言,用正規表達式抓取資料也是很容易的.

conky可以将資料輸出到桌面.

thinkpad筆記本的熱鍵設定

主要使用 ibm_acpi子產品,其它品牌筆記本不适用.

添加ibm_acpi到rc.conf中的MODULES,在/etc/modprobe.conf

添加

代碼:options ibm_acpi hotkey=enable,0xffff experimental=1指定加載子產品時的參數,hotkey=enable,0xffff指明使用盡可能多的快捷鍵,experimental=1打開一些在測試中 的功能,如控制cpu風扇等,啟用hotkey功能後,Fn+F4組合鍵将不産生sleep的acpi的事件,而是ibm/hotkey事件.

這樣運作 acpi_listen後,可以監測Fn+F1-F12中那些組合産生acpi的事件,我這裡是

F3,F4,F7,F8,F12.我将F3設定為開關螢幕,F4為待機,F7為切換顯示器,F8為關閉bay(用來熱拔插光驅或第2塊電池),F12設定為關機.

我們使用 radeontool來切換,它沒有監測lcd狀态的功能,可以使用腳本來簡單判斷lcd的狀态.

/etc/acpi/actions/lcd_switch.sh

代碼:#!/bin/sh

flag=/tmp/thinkpad_lcd_off

if [ -e $flag ]; then

/usr/sbin/radeontool light on

rm -f $flag

else

/usr/sbin/radeontool light off

> $flag

fi注意要chmod +x lcd_switch.sh

切換顯示器使用

代碼:echo video_switch > /proc/acpi/ibm/video關閉bay使用

代碼:echo eject > /proc/acpi/ibm/bay修改handler.sh

代碼:...

ibm/hotkey)

case "$2" in

HKEY)

case "$4" in

00001003) #echo "f3" >/dev/tty5

/etc/acpi/actions/lcd_switch.sh

;;

00001004) #echo "f4" >/dev/tty5

/etc/acpi/actions/sleep.sh

;;

00001007) #echo "f7" >/dev/tty5

echo video_switch > /proc/acpi/ibm/video

;;

00001008) #echo "f8" >/dev/tty5

echo eject > /proc/acpi/ibm/bay

;;

0000100c) #echo "f12" >/dev/tty5

/sbin/halt

;;

esac

;;

*) logger "ibm_acpi undefined:$2";;

esac

;;

...使用tpb可以在螢幕上顯示音量等資訊,還可以設定thinkpad等熱鍵.

DPMS的使用

修改xorg.conf在Section "Monitor" 中添加 Option "DPMS",在 Section "ServerLayout" 中添加

代碼:

Option "StandbyTime" "20" # Turn off screen in 20 minutes

Option "SuspendTime" "30" # Full hibernation in 30 minutes

Option "OffTime" "40" # Turn off DPMS monitor使用xset dpms force standby可以立即檢視效果.

我這裡dpms一直無法使用,将驅動從"versa"換為"radeon"(軟體包為 xf86-video-ati)後dpms正常,但是它與/proc/acpi/ibm/video沖突.具體就是不能使用上面Fn+F7來切換顯示器. 後發現使用laptop-mode-tools 可以控制dpms,驅動還是使用"vesa"較友善.

#radeontool

radeontool的PKGBUILD

代碼:pkgname=radeontool

pkgver=1.5

pkgrel=2

pkgdesc=

url="http://fdd.com/software/radeon/"

license=GPL

depends=('pciutils')

makedepends=()

backup=()

source=( http://fdd.com/software/radeon/$pkgname-$pkgver.tar.gz)

md5sums=(8065eebe5a2b163e43b40461bfe49a56)

build() {

cd $startdir/src/$pkgname-$pkgver

make || return 1

mkdir -p $startdir/pkg/usr/sbin

cp $pkgname $startdir/pkg/usr/sbin

}[1] http://www.thinkwiki.org/wiki/How_to_configure_acpid

[2] http://www.thinkwiki.org/wiki/How_to...#Action_Script

__________________

[Archlinux]=the stability and simplicity of Slackware and the speed of Gentoo

Welcome to my WiKi

http://arithboy.org/wiki/

轉載于:https://blog.51cto.com/axlrose/1292660