![启动时更改亮度](https://linux22.com/image/847976/%E5%90%AF%E5%8A%A8%E6%97%B6%E6%9B%B4%E6%94%B9%E4%BA%AE%E5%BA%A6.png)
我的联想 T440s 以最大亮度启动。在此之后线我曾尝试改变rc.local
,但没有效果。
当我执行命令时,cat /sys/class/backlight/acpi_video0/brightness
我得到了输出851
。然后我通过热键手动降低亮度并再次执行命令 - 它仍然显示851
。
这使我相信我无法通过简单地添加命令来以这种方式控制亮度rc.local
。
还有什么我可以尝试的吗?
这里是蛴螬内容
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT="0"
GRUB_HIDDEN_TIMEOUT="0"
GRUB_HIDDEN_TIMEOUT_QUIET="true"
GRUB_TIMEOUT="2"
GRUB_DISTRIBUTOR="`lsb_release -i -s 2> /dev/null || echo Debian`"
#GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_backlight=vendor"
GRUB_CMDLINE_LINUX=""
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL="console"
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE="640x480"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID="true"
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
GRUB_DISABLE_OS_PROBER="true"
以下是rc.local
内容
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
#echo 2 > /sys/class/backlight/acpi_video0/brightness
#echo 2 > /sys/class/backlight/intel_backlight/brightness
#xrandr --output eDP1 --brightness 0.3
rfkill block bluetooth
#echo 3 > /sys/class/backlight/thinkpad_screen/brightness
exit 0
答案1
您是否尝试过使用某些软件来避免手动处理 sys 文件系统?我建议使用 xbacklight。
xbacklight -set 10
此命令将屏幕亮度设置为 10%。您可以将其添加到 rc.local。
编辑:如果上述步骤不起作用,则内核和 bios acpi 之间可能存在一些问题。编辑文件:/boot/grub/menu.lst
在默认配置中添加以下参数:thinkpad-acpi.brightness_enable=1 acpi_backlight=vendor
默认行看起来应该是这样的:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash thinkpad-acpi.brightness_enable=1 acpi_backlight=vendor"
保存修改后的文件并运行:
sudo update-grub
重新启动并检查 xbacklight 是否正常工作
答案2
这显然是某些硬件的内核兼容性问题,我只是想让你尝试这个解决方法:
备份并打开蛴螬文件。打开终端(++ Ctrl)并输入:AltT
sudo cp /etc/default/grub /etc/default/grub.bak sudo gedit /etc/default/grub
您会在新打开的窗口中发现这一行:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
更改为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_backlight=vendor"
保存并关闭窗口并更新你的 grub:
sudo update-grub
重新启动系统:
sudo reboot
如果上述步骤不起作用,则重复相同的步骤,但这次尝试更改行第2步有了这个:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pcie_aspm=force"
如果出现问题,请回复。如果不起作用,请编辑您的问题并粘贴蛴螬文件内容:cat /etc/default/grub
答案3
如果你正在使用 Gnome 3 或 Unity -
从以下位置检出主分支https://github.com/ishanthilina/setBrightness。
如果你正在使用 Gnome 2 -
从以下位置检出 Gnome2 分支https://github.com/ishanthilina/setBrightness。
这是一个解决您的问题的python脚本。
启动应用程序中要给出的命令是“python ////setBrightness.py <亮度级别>”。
例如 python /home/ishan/.setBrightness/setBrightness.py 20
。如果您不指定亮度级别,脚本将根据一天中的时间更改亮度级别。如果是在上午 7 点到晚上 8 点之间,脚本将使亮度设置为 75。
如果是在晚上 8 点到早上 7 点之间,脚本将把亮度设置为 20。您可以通过分别更改变量 day_level 和 night_level 来编辑这些亮度级别。
答案4
然后我通过热键手动降低亮度并再次执行命令......
由于您可以使用 Hokeys 降低亮度,因此以下dbus
方法xdotool
应该有效
x背光
$ xbacklight +30% # increases brightness by 30 percent
$ xbacklight -30% # decreases brightness by 30 percent
dbus方式
$ dbus-send --session --print-reply \
--dest="org.gnome.SettingsDaemon" \
/org/gnome/SettingsDaemon/Power \
org.gnome.SettingsDaemon.Power.Screen.SetPercentage \
uint32:<percentage>
例子
将亮度设置为 30%:
$ dbus-send --session --print-reply \
--dest="org.gnome.SettingsDaemon" \
/org/gnome/SettingsDaemon/Power \
org.gnome.SettingsDaemon.Power.Screen.SetPercentage \
uint32:30
或者
降低亮度(~7)
$ dbus-send --session --print-reply \
--dest="org.gnome.SettingsDaemon" \
/org/gnome/SettingsDaemon/Power \
org.gnome.SettingsDaemon.Power.Screen.StepDown
增加亮度(~7)
$ dbus-send --session --print-reply \
--dest="org.gnome.SettingsDaemon" \
/org/gnome/SettingsDaemon/Power \
org.gnome.SettingsDaemon.Power.Screen.StepUp
如果出现以下提示,则可能是你的操作系统太旧了。然后使用xdotool
:
Error org.freedesktop.DBus.Error.UnknownMethod:
Method "SetPercentage" with signature "u" on interface
"org.gnome.SettingsDaemon.Power.Screen" doesn't exist
工具
增加亮度:
$ xdotool key XF86MonBrightnessUp
降低亮度:
$ xdotool key XF86MonBrightnessDown
成功测试上述方法后,您可以将其添加到/etc/rc.local
软件方式
如果您无法使用以下任何一种方法来调整硬件背盖亮度,请调整显示器的软件亮度。
xrandr --output OUTPUT --brightness VALUE
例如,
xrandr --output LVDS1 --brightness 0.9
您可以使用以下方法查找连接的显示器xrandr | grep connected