LinuxSir.Org  
| 网站首页 | 注册账号 | 论坛帮助 |

欢迎来到LinuxSir.Org!
您还未登录,请登录后查看论坛,或者点击论坛上方的注册链接注册新账号。


发表新主题 回复
 
主题工具
旧 06-01-06, 11:04 第 1 帖
超级用户 帅哥
 
超级用户 的头像
 
 
注册会员  
  注册日期: Mar 2003
  我的住址: …祖籍山东…出生地南京…志愿者生活陕西…目前工作地上海…
  帖子: 2,028
  精华: 1
 

标题: Debian + IBM-R40(迅驰)


本文打造(一个滥俗的词,哈哈)笔记本下的完美Linux。
很简单,抄袭的。
1.内核,建议自己弄一下。因为象IBM/ACER等牌子的本本有很多特殊的按钮或者组合键,内核里有他们的驱动,也许其它笔记本的驱动可以单独下载吧,谁知道。
ACPI,CPUFreq(如果支持)等模块必选啊!

2.acpid
这个守护进程专门从事监听ACPI事件,并根据配置执行相应的操作。
在我的IBM笔记本上,如果没有弄ibm_acpi的曾强内核补丁则只有几个组合能产生acpi事件。如果加上的话,就基本全了(而且还多了两个!!哈哈)。所以内核一定要自己弄。

用“acpi_listen”这个小程序可以先看一下,本本键盘上的特殊按钮是否能够产生acpi事件,以确定驱动安装成功。
然后就可以配置acpid啦!
我的配置是:
Fn+F3 --->未定义事件(本来应该是关闭屏幕,认为无用,就让它响一声)
Fn+F4 --->立刻进入休眠状态
Fn+F5 --->打开/关闭 无线网卡的切换
Fn+F7 --->未定义事件 (本应是在CRT/DVI/LCD之间的转换,认为无用,就让它响一声)
Fn+F9/F8/F12 --->为定义事件 (F12本应该是挂起到硬盘,因为我的内核没有实现,所以就让它响一声;F8/F9键盘上没有标注什么,但是也能产生acpi信号,暂时也让它响一下吧,以后用)
具体配置文件如下:
root@loveIBM:/etc/acpi# ls
events instWiFi.sh powerbtn.sh tosleep.sh
root@loveIBM:/etc/acpi# cat undefine.sh
#!/bin/sh
echo 12 > /proc/acpi/ibm/beepundefine.sh

root@loveIBM:/etc/acpi# cat powerbtn.sh
#!/bin/sh
if ps -Af | grep -q '[k]desktop' && test -f /usr/bin/dcop
then
dcop --all-sessions --all-users ksmserver ksmserver logout 0 2 0 && exit 0
else
/sbin/shutdown -h now "Power button pressed"
fi

root@loveIBM:/etc/acpi# cat tosleep.sh
#!/bin/sh
#echo "See you later..."

echo eject > /proc/acpi/ibm/bay
echo mem > /sys/power/state

root@loveIBM:/etc/acpi# cat instWiFi.sh
#!/bin/sh
#echo Feel Freedom,using WiFi!
if lsmod |grep -q 'ipw2100'
then rmmod ipw2100 ieee80211 ieee80211_crypt
else modprobe ipw2100
fi

/etc/acpi/下有几个脚本,这些脚本是对与事件的,事件的定义在/etc/acpi/event下,看看我的:
root@loveIBM:/etc/acpi/events# ls
fn3 fn7 fn8 fn9 fnstoragetodisk powerbtn softsleepbtn turnoffbtn wifikey

比如wifikey这个文件
root@loveIBM:/etc/acpi/events# cat wifikey
event=ibm/hotkey.HKEY.00000080.00001005
action=/etc/acpi/instWiFi.sh
里面的第一行,写的是对应的事件名称(用acpi_listen可以看见)
第二行就是当发现这个脚本时,应该执行的脚本。


3.cpufreqd
笔记本最强的是什么?省电!
怎么省?!
守护京城cpufreqd,根据内核里的cpufreq驱动,调整CPU的工作频率。我的机器可以在600MHz到1300MHz之间改变。
LOOK!
/etc/cpufreqd.conf
这个配置文件分3个部分
[General]和[Profile]和[Rule]
通用配置只能有一个,策略和规则可以有多个。
×通用配置用来配置cpufreqd本身。
×策略规定CPU的工作频率范围和监听方法
×规则确定在什么时候调用什么策略
这个配置好了,绝对比windows下的能源管理程序好100倍!
我给出我的。
[General]
poll_interval=5
pm_type=acpi
verbosity=3


[Profile]
name=fullFreq
minfreq=600000
maxfreq=1300000
policy=ondemand

[Profile]
name=highUP
minfreq=800000
maxfreq=1300000
policy=ondemand

[Profile]
name=lowDOWN
minfreq=600000
maxfreq=1000000
policy=conservative


[Rule]
name=normal-ac
ac=on
cpu_interval=1-100
profile=fullFreq

[Rule]
name=normal-bat
ac=off
battery_interval=10-100
profile=lowDOWN

[Rule]
name=when-compiling-ac
ac=on
programs=gcc,g++,make
cpu_interval=20-100
profile=highUP

[Rule]
name=when-compileing-bat
ac=off
programs=gcc,g++,make
cpu_interval=30-100
battery_interval=30-100
profile=highUP

完啦!完美笔记本出来啦!







__________________
Intel CentrinoDuo T2400
DELL INSPIRON 6400
ATi X1400
1024MB@667MHz
TrueLife-1280x800-LCD + SyncMaster940BW-1440x900-LCD

Intel CentrinoDuo2 T8100
DELL XPS 1530
nVidia 8600m GT
dual 1024MB@667MHz
TrueLife-1440x900-LCD

我是东南毕业的,我爱大学。
我是志愿者,我爱祖国。
我是别人的儿子,我爱我家。
我是某人的老公,我爱她。
但最重要的是,
我是LinuX用户,我爱Debian!
  超级用户 当前离线   回复时引用此帖
旧 06-01-06, 11:25 第 2 帖
PiPiDou
 
PiPiDou 的头像
 
 
注册会员  
  注册日期: Nov 2005
  帖子: 180
  精华: 0
 

这也能叫完美?看你STR的脚本就知道有多粗糙
  PiPiDou 当前离线   回复时引用此帖
旧 06-01-06, 11:39 第 3 帖
dlz_cn
 
dlz_cn 的头像
 
 
注册会员  
  注册日期: Apr 2003
  我的住址: 杭州
  帖子: 414
  精华: 0
 

root@loveIBM:/etc/acpi# cat tosleep.sh
#!/bin/sh
#echo "See you later..."

echo eject > /proc/acpi/ibm/bay
echo mem > /sys/power/state

我不相信你这个能用
不是 scsi 设备,你直接 eject, kernel 会发疯一样寻找你的 hdc 的。
应该用 hotswap 来 unregister hdc 这个设备。然后在 eject







__________________
BLOG
http://blog.linuxfire.com.cn/optical
Debian On T42
http://linuxfire.com.cn/~optical/Debian_On_T42/html/
  dlz_cn 当前离线   回复时引用此帖
旧 06-01-06, 12:46 第 4 帖
超级用户 帅哥
 
超级用户 的头像
 
 
注册会员  
  注册日期: Mar 2003
  我的住址: …祖籍山东…出生地南京…志愿者生活陕西…目前工作地上海…
  帖子: 2,028
  精华: 1
 

哈哈,见笑啦!
二楼的朋友,STR是什么意思啊?
糙是糙了点儿,但是所有西西工作正常啊! ^_^

三楼的朋友:
echo eject > /proc/acpi/ibm/bay
echo mem > /sys/power/state
我每次合上笔记本屏幕,计算机就自动执行啊。
这个是ibm-acpi的接口文件,没有问题的。
这个笔记本的光驱是可以“温拔插”的。

此帖于 06-01-06 12:51 被 超级用户 编辑.
  超级用户 当前离线   回复时引用此帖
旧 06-01-06, 14:32 第 5 帖
dlz_cn
 
dlz_cn 的头像
 
 
注册会员  
  注册日期: Apr 2003
  我的住址: 杭州
  帖子: 414
  精华: 0
 

上 thinkwiki 查了一下,原来 R40 的是 ultrabay plus。
和我的 ultrabay slim 还不一样。
代码:
UltraBay Plus devices should be handled by the USB subsystem, but if the devices are not known.
怪不得直接 eject 没有问题。
  dlz_cn 当前离线   回复时引用此帖
旧 06-01-06, 17:13 第 6 帖
超级用户 帅哥
 
超级用户 的头像
 
 
注册会员  
  注册日期: Mar 2003
  我的住址: …祖籍山东…出生地南京…志愿者生活陕西…目前工作地上海…
  帖子: 2,028
  精华: 1
 

so much kind of 'bay' !!!
^_^

此帖于 06-01-06 17:16 被 超级用户 编辑.
  超级用户 当前离线   回复时引用此帖
旧 08-01-15, 02:15 第 7 帖
flytigerboy
 
 
 
注册会员  
  注册日期: Jan 2008
  帖子: 17
  精华: 0
 

内核那块要怎么整啊?新手,麻烦楼主写下详细步骤啊。
  flytigerboy 当前离线   回复时引用此帖
发表新主题 回复


主题工具

发帖规则
您 [不可以] 发表新主题
您 [不可以] 回复主题
您 [不可以] 上传附件
您 [不可以] 编辑您的帖子

已 [启用] BB 代码
已 [启用] 表情符号
已 [启用] IMG 代码
已 [禁用] HTML 代码
[论坛跳转…]


所有时间均为[北京时间]。现在的时间是 13:57


Powered by vBulletin 版本 3.6.8
版权所有 ©2000 - 2010, Jelsoft Enterprises Ltd.
官方中文技术支持: vBulletin 中文
版权所有 ©2002 - 2009, LinuxSir.Org