解决ubuntu无法调整和保存屏幕亮度的问题
所谓的调整,方法为下面的其中一种:
1、Fn+左右的快捷键,亮度没有变化
2、在亮度与锁屏中拉动进度条亮度没有变化
原因:
fn调节的是/sys/class/backlight/acpi_video0/brightness文件,而I卡的文件是/sys/class/backlight/intel_backlight/brightness。
什么是i卡?
三种主要品牌显卡: Nvidia , AMD/ATI 和 Intel
Nvidia
提供最基本的仅支持 2D 的开源驱动(只提供闭源驱动)。但闭源驱动的性能非常好,与 Windows 上的性能几乎差不多。而且 Nvidia 的驱动更新很频繁,而且他们还会使用 VDPAU 加速 API 来提供快速视频加速,这个加速 API 功能仅被当前最新的 Adobe Flash beta 支持。所以,如果你经常观看全屏高清视频的话,一块 Nvidia 显卡加上他们的驱动应该是最佳方案了。但是 Nvidia 至今还不支持 Xrandr 协议,Xrandr 协议可以允许 X 来调整显示分辨率,或者扩展/克隆到外部显示器。
AMD/ATI
在 AMD 收购 ATI 之前,可以说在 Linux 上基本没有像样的 ATI 驱动。不过自从被 AMD 收购后,情况就变得大为不同。ATI 的闭源 Linux 驱动有了跨越式的发展,而且还支持 Xrandr 协议,这样你就可以完全使用 Ubuntu 内置分辨率调整工具了。而且在性能方面也非常好,也可以与 Wine 一起很好的工作。AMD 在 Linux 驱动方面确实贡献卓越。当然有一点与 Nividia 驱动相似的,那就是也不支持 KMS 。闭源的 AMD 驱动使用与 Nvidia 不同的视频 API ,而是唤作的
VA-API,不幸的是 Adobe 目前至今还没有支持它,所以基于 Flash 的高清视频受到一定的影响。另外与 Nvidia 相比欠缺的一点是,AMD 驱动需要花费更多的时间来支持新版内核及新的 X Server 版本,但对于 Ubuntu 用户来说并不是问题,因为它会默认搭载在 Ubuntu 发行版中。
Intel
可以说, Intel 是开源 Linux 图形卡驱动方面的王者,他们只发布 Linux 平台上的开源驱动,这也意味着你能体验到像 KMS 及 Xrandar 支持这样的所有功能。但 Intel 也并不完美,如果你拥有一块基于 GMA500 的卡的话,它基本上无法工作于 Ubuntu 上,因为这是英特尔购买了其他公司的芯片组后并更名了它,而且他们也不能为其开发开源驱动,虽然目前英特尔还在解决此问题。Intel 的另外一个最大缺点是他们的硬件性能远远不如 AMD 和 Nvidia ,并且对于游戏支持也不够好。
总结
如果对于你来说有开源驱动是非常重要的事,那么你可以用 Intel 或 AMD 的卡;如果你更关注性能,那么你可以用 AMD 或 Nvidia 的卡。总的来说, AMD/ATI 是更加前沿,更加值得推荐,因为他们在提供稳定开源驱动的同时,还提供了可靠快速的闭源驱动,堪称两全其美。
回来原来的问题
一种比较将就的方法就是刚开机的时候就按Fn+左右键,这样就可以改变亮度了。一旦进去之后就不可以改变了。
比较完美的方法如下:
首先,修改grub
roson@ubuntu:~$ sudo gedit /etc/default/grub
把GRUB_CMDLINE_LINUX=""改成GRUB_CMDLINE_LINUX="acpi_backlight=vendor"
roson@ubuntu:~$ sudo update-grub
查看grub.cfg,可以发现每个启动项都加入了"acpi_backlight=vendor"
PS:grub.cfg位于/boot/grub/grub.cfg
修改影响屏幕亮度的文件
roson@ubuntu:~$ sudo gedit /sys/class/backlight/intel_backlight/brightness
默认是976(这也是我们开机每次都是最亮的原因),改变数值,保存后屏幕亮度会发生对应的变化(0-976)
另外,可以输入下面的命令来直接改变其数值
echo 50 > /sys/class/backlight/intel_backlight/brightness
这样里面的数值就改成了50了,当然其他数值都是一样的。不过,这一命令要在root环境下
是不是每次都这样设定呢?太麻烦了
把echo 50> /sys/class/backlight/intel_backlight/brightness添加到/etc/rc.local 就能开机自动设定屏幕初始亮度了。(放到exit 0前面)
另外调节gamma值
root@ubuntu:/home/roson# xgamma -gamma .7
-> Red 1.000, Green 1.000, Blue 1.000
<- Red 0.700, Green 0.700, Blue 0.700
关于gamma:
gamma值是用曲线表示的,这是一种人的眼睛对光的一种感应曲线,其中包括了物理量、身理感官及心理的感知度。
如果一个显示器若要完整的表现出高度真实的画面(无论是高亮度的画面或低亮度的画面),则显示器的对比很少必须5000:1以上,而我们的显示器由于成本的考虑,我们只能做出500~1000:1时,我们就必须用gamma修正来作补偿,也就是在较暗的影片我们选择较高的gamma值(如2或3,甚至4),以牺牲部分亮部的层次来获取更多的暗部层次;相反的在一些较亮的影片(外景较多)则我们则选择较低的gamma值(如0,-1甚至-2)以牺牲部分的暗部层次,来使得亮部层次(如云层)能更分明。
PS:什么是显示器的对比?
所谓的对比,是指最亮除以最暗
在实际的景色环境中,您极少可能从很亮的画面瞬间进入很暗的画面,但在电影或电视和游戏画面上则我们经常会突然从很亮的画面进入很暗的画面,或从很暗的画面进入很亮的画面,因此正确的gamma曲线设定可以帮助我们获得最真实的视觉感受。
解决ubuntu无法调整和保存屏幕亮度的问题的更多相关文章
- 解决 Ubuntu 13.04 无法调节屏幕亮度的问题
13.04与12.04大部分步骤是相同的,只是12.04的方法在13.04中失败了,所以还是有必要说明一下.我到电脑是宏碁AS4750G,硬盘安装系统后电源亮度无法调节. 解决方法如下: 终端输入代码 ...
- ubuntu 12.04亮度无法调节和无法保存屏幕亮度解决办法(echo_brightness)
经过多次更改失败重装后终于在官网的answers找到了解决办法:原文链接 http://askubuntu.com/questions/3841/desktop-doesnt-remember-bri ...
- 教你在Ubuntu系统下保存屏幕亮度设置
本文保留屏幕亮度方法适合使用笔记本的朋友,大家都知道,过亮的屏幕不但刺眼而且缩短LCD屏幕寿命,不幸的是,Ubuntu默认关机后并不保存当前屏幕亮度配置数据,每次开机都要重新设置亮度,很不方便.本文 ...
- ubuntu13.04如何修改保存屏幕亮度
ubuntu13.04如何修改保存屏幕亮度 入手ubuntu两月有余,最初只是想装个ubuntu学习下linux,然后搞了个win7和ubuntu的双系统,最后干脆将win7干掉了,直接让ubu ...
- 如何让Ubuntu 14重启后,保存屏幕亮度的设置
每次重新启动后,系统的屏幕亮度都会被调节到最大值,挺烦人的!如何让它保存设置值呢? 首先,我们必须知道自己系统的屏幕亮度取值范围,打开终端,按照下面的步骤进行: 进入backlight这个目录 cd ...
- 联想Y450在Ubuntu下调节屏幕亮度
今天觉得ubuntu下编程时屏幕太亮,上网查了下怎样设置屏幕亮度,按住Fn 的同时调节,结果木有反应啊,杯催.... 继续搜索,最终解决了, happy... 1. 设置屏幕亮度初始值,解决reboo ...
- Mac屏幕亮度保存
关于保存屏幕亮度的方法,论坛上已有几种,搜索 NVRAM 会出来很多教程,在此不再详述,可以参考帖子http://www.idelta.info/archives/nvram_on_hackintos ...
- [置顶] C# WINCE调节屏幕亮度
在wince里面保存屏幕亮度的值保存在注册表HKEY_CURRENT_USER\ControlPanel\\Backlight\Brightness里面,值的范围是0-100,所以要改变屏幕的亮度,只 ...
- 解决ubuntu每次重启屏幕亮度都重置为最高亮度问题
很多朋友都会碰到这个问题,Ubuntu系统,每次通过系统设置修改了屏幕亮度,重启系统都会将屏幕亮度调成最大值,很是苦恼. 上网搜索一番发现,修改屏幕亮度的文件是:/sys/class/backligh ...
随机推荐
- media type和media query
media type media type是CSS2的重要属性,通过它,可以针对不同的设备指定不同的样式. media type种类: 用法: <link href="styl ...
- mvc模式实现
listdemo.html负责显示,listModel.class.php负责从数据库存储数据和查找数据,mysql.class.php是操作数据库的类,但不直接使用,model类调用mysql,li ...
- 用curl做异步操作
class CurlPost { /** * @desc curl 请求提交数组 * */ public function execute($method, $url, $fields = '', $ ...
- [转]十年前的老文:以 Linux 的名义
一.灰姑娘的狂欢 今年初,林纳斯·托瓦兹承认:“如果在12年前,有人告诉我Linux会发展到今天的模样,我肯定会惊得目瞪口呆.” 托瓦兹说的是实话.1991年,这名21岁的芬兰赫尔辛基大学的学生,偶然 ...
- 基于游标的定位DELETE/UPDATE语句
如果游标是可更新的(也就是说,在定义游标语句中不包括Read Only 参数),就可以用游标从游标数据的源表中DELETE/UPDATE行,即DELETE/UPDATE基于游标指针的当前位置的操作: ...
- Podfile 文件的编写
# Uncomment this line to define a global platform for your projectplatform :ios, '9.0' target 'Cocoa ...
- 纯代码添加约束条件(Auto Layout)
Auto Layout 是一种基于约束的.描述性的布局系统.也就是使用约束条件来描述布局,View的Frame会根据这些描述来进行计算. 在iOS6.0以后加入了一个新类: NSLayoutConst ...
- unity发布ios游戏总结
自己做了几个ios的小游戏,因此总结了一点经验 判断按钮要用unity里面的button不要用OnMouseDown()之类的函数,否则拒绝原因为缺少ios特征 排行榜之类的本地存储数据,不要用本地本 ...
- 暑假集训(2)第五弹 ----- Who's in the Middle(poj2388)
G - Who's in the Middle Crawling in process... Crawling failed Time Limit:1000MS Memory Limit:32 ...
- 九度OJ 1510 替换空格
题目地址:http://ac.jobdu.com/problem.php?pid=1510 题目描述: 请实现一个函数,将一个字符串中的空格替换成"%20".例如,当字符串为We ...