環境:
ubuntu16.04 lts acer aspire 4752G i5-2450M
內容來源:點擊這裏
ubuntu沒法調整屏幕亮度,對筆記原本說很耗電,同時也很刺眼,由於它是默認以最大亮度來工做的。
所謂的調整,方法爲下面的其中一種:
一、Fn+左右的快捷鍵,亮度沒有變化
二、在亮度與鎖屏中拉動進度條亮度沒有變化

緣由:
fn+(x)調節的是: /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+左右鍵,這樣就能夠改變亮度了。一旦進去以後就不能夠改變了。
===============================================
比較完美的方法以下:
1.修改 grub
$ sudo vi /etc/default/grub
把GRUB_CMDLINE_LINUX=""
改爲GRUB_CMDLINE_LINUX="acpi_backlight=vendor"
-----------------------------------------------------------------------------
下面是修改後的grub文件:
# 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=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX="acpi_backlight=vendor"
# 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"
-----------------------------------------------------------------------------------
2. 更新: grub.cfg
$ sudo update-grub
查看grub.cfg,能夠發現每一個啓動項都加入了"acpi_backlight=vendor"
PS:grub.cfg 位於 /boot/grub/grub.cfg
修改影響屏幕亮度的文件
$ sudo vi /sys/class/backlight/intel_backlight/brightness
默認是976(這也是咱們開機每次都是最亮的緣由)
改變數值(0 - 976),保存後屏幕亮度會發生對應的變化
另外,能夠輸入下面的命令來直接改變其數值
echo 50 > /sys/class/backlight/intel_backlight/brightness
這樣裏面的數值就改爲了50了,固然其餘數值都是同樣的。不過,這一命令要在root環境下
PS:怎樣進入root環境呢?
$ sudo su
root@ubuntu:/home/zero#
這樣系統就自動到zero用戶目錄下了
什麼你沒有root賬戶? 看下面
$ sudo passwd
[sudo] password for zero: Enter your sudo password.
Enter new UNIX password: Enter your new root password.
Retype new UNIX password: Enter repassword.
passwd: password updated successfully
==================================================================
3. 鎖定亮度
是否是每次都這樣設定呢?太麻煩了
把echo 50> /sys/class/backlight/intel_backlight/brightness 添加到 /etc/rc.local 就能開機自動設定屏幕初始亮度了。
$ sudo vi /etc/rc.local
============================================================
修改/etc/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 50 > /sys/class/backlight/intel_backlight/brightness
exit 0
===========================================================
另外調節gamma值,須要root權限。
root@ubuntu:/home/zero# 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曲線設定能夠幫助咱們得到最真實的視覺感覺。
重啓就大功告成了。

亮度最大的時候

亮度較小的時候
看起來變化 不是很大,多是截圖的緣由吧。沒想到能夠把整個屏幕 都調黑的,嘿嘿