尝试安装笔记本电脑模式工具时未处理的内核版本错误

Ton*_*iro 2 11.10

嗨,我在 Oneiric Ocelot 中安装笔记本模式工具后第一次尝试运行时出现此错误:

Unhandled kernel version: 3.0 ('uname -r' = 3.0.0-12-generic)
Run Code Online (Sandbox Code Playgroud)

所以我的笔记本电脑模式工具是 1.57-1ubuntu1,我在启动板中看到 Ubuntu 团队正在准备 1.58-3ubuntu1,它包含对内核 3.0 的支持。

但是,我在 apt-cache showpkg notebook-mode-tools(仅列出 1.57)中找不到 1.58-3ubuntu1,所以我无法升级我的 notebook-mode-tools。

我尝试将内核 PPA 添加到我的存储库缓存和 apt-get 更新中,并且在 apt-cache showpkg linux-headers 中仅显示 3.0.0.12-generic。所以我也不能降级我的内核。

我希望笔记本模式工具与 Oneiric 一起使用,因为我在笔记本电脑上,你们建议我做什么?我是一个绝对的初学者,所以请轻松回答。我可以使用包,但不能使用补丁/编译等。

sag*_*ise 5

根据此错误中的建议,我在 notebook-mode-tools 脚本中添加了内核版本。所以你应该添加“3.0”);; 到文件 /usr/sbin/laptop_mode 大约第 506 行,因此其内容如下:

case "$KLEVEL" in
 "2.4" ) ;;
 "2.6" ) ;;
 "3.0" ) ;;
 *)
  log "ERR" "Unhandled kernel version: $KLEVEL ('uname -r' = '$(uname -r)')" >&2
  exit 1
  ;;
Run Code Online (Sandbox Code Playgroud)

如果您想完全避免使用笔记本电脑模式工具,您可以在其中添加以下脚本/etc/pm/power.d/并将其命名为powersave. 它的作用类似于笔记本电脑模式。您可能需要根据您的硬件调整脚本。

#!/bin/sh
# A script to enable laptop power saving features for #! & Debian GNU+linux.
# http://crunchbanglinux.org/forums/topic/11954

# List of modules to unload, space seperated. Edit depending on your hardware and preferences.
modlist="uvcvideo"
# Bus list for runtime pm. Probably shouldn't touch this.
buslist="pci spi i2c"

case "$1" in
    true)
    # Enable some power saving settings while on battery
       # Enable laptop mode
        echo 5 > /proc/sys/vm/laptop_mode
       # Less VM disk activity. Suggested by powertop
        echo 1500 > /proc/sys/vm/dirty_writeback_centisecs
       # Intel power saving
        echo Y > /sys/module/snd_hda_intel/parameters/power_save_controller
        echo 1 > /sys/module/snd_hda_intel/parameters/power_save
       # Set backlight brightness to 50%
        echo 3 > /sys/class/backlight/acpi_video0/brightness
       # USB powersaving
        for i in /sys/bus/usb/devices/*/power/autosuspend; do
            echo 1 > $i
        done
       # SATA power saving
        for i in /sys/class/scsi_host/host*/link_power_management_policy; do
            echo min_power > $i
        done
       # Disable hardware modules to save power
        for mod in $modlist; do
            grep $mod /proc/modules >/dev/null || continue
            modprobe -r $mod 2>/dev/null
        done
       # Enable runtime power management. Suggested by powertop.
        for bus in $buslist; do
            for i in /sys/bus/$bus/devices/*/power/control; do
                echo auto > $i
            done
        done
    ;;
    false)
       #Return settings to default on AC power
        echo 0 > /proc/sys/vm/laptop_mode
        echo 500 > /proc/sys/vm/dirty_writeback_centisecs
        echo N > /sys/module/snd_hda_intel/parameters/power_save_controller
        echo 0 > /sys/module/snd_hda_intel/parameters/power_save
        echo 12 > /sys/class/backlight/acpi_video0/brightness
        for i in /sys/bus/usb/devices/*/power/autosuspend; do
            echo 2 > $i
        done
        for i in /sys/class/scsi_host/host*/link_power_management_policy
            do echo max_performance > $i
        done
        for mod in $modlist; do
            if ! lsmod | grep $mod; then
                modprobe $mod 2>/dev/null
            fi
        done
        for bus in $buslist; do
            for i in /sys/bus/$bus/devices/*/power/control; do
                echo on > $i
            done
        done
    ;;
esac

exit 0
Run Code Online (Sandbox Code Playgroud)

来源

或者虽然我没用过,但很多人推荐使用jupiter小程序来省电。您可以从 ppa 安装它:

sudo add-apt-repository ppa:webupd8team/jupiter
sudo apt-get update
sudo apt-get install jupiter
Run Code Online (Sandbox Code Playgroud)

来源