Every time I reboot my machine the brightness goes back to 100% in Gnome. I wish it would keep the last setting. Is there anyway?
-
have you tried gnome-session-save?– HellolaSep 8, 2010 at 2:55
-
Sorry, but there is no slider. Also in Ubuntu 11.04 i had the problem, that the brightness slider was not there, when booting up with AC connected. When I booted up on battery the slider was there. I hoped that this was fixed but now i still have a nearly dark screen, when booting up.– user31707Nov 1, 2011 at 13:29
-
Anyone coming here with the same problem, check out @dolhow's answer below. That's the one that works.– its_meJan 19, 2012 at 4:53
-
There is a bug report for this here: bugs.launchpad.net/ubuntu/+source/gnome-settings-daemon/+bug/…– Knowledge CubeNov 11, 2012 at 19:30
-
1In my case with Ubuntu 13.04 running over Acer 4752-6600 the correct param was: echo 976 > /sys/class/backlight/intel_backlight/brightness– mlacunzaOct 15, 2013 at 19:31
11 Answers
The file /etc/rc.local should look like this:
#!/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 0 > /sys/class/backlight/acpi_video0/brightness
exit 0
Per @zerdo: In my dell studio 1558 the brightness setting is stored in /sys/class/backlight/intel_backlight/brightness
. Just change the path if your computer doesn't use the acpi_video0 folder.
Also, per @Nick :
If this is the only answer you read, note that the 0 in echo 0
is going to be your default brightness setting. I had set this up and it was driving me crazy for a long time : every time I booted up, it would set it to the lowest brightness setting. I prefer mine to start at max brightness, so I used echo 10
instead. Your hardware might vary in brightness scale.
-
-
1In my dell studio 1558 the brightness setting is stored in /sys/class/backlight/intel_backlight/brightness, just change the path if your computer doesn't use the acpi_video0 folder– zurdoFeb 2, 2012 at 16:59
-
If this is the only answer you read, note that the
0
inecho 0
is going to be your default brightness setting. I had set this up and it was driving me crazy for a long time that every time I booted up, it would set it to the lowest brightness setting. I prefer mine to start at max brightness, so I usedecho 10
instead. Your hardware might vary in brightness scale.– NickFeb 21, 2013 at 15:28 -
and note that you can check
/sys/class/backlight/acpi_video0/brightness
to see what your current brightness level is. for my ubuntu 14.04, the scale goes from 0-100 and I like to set it at 75.– Kevin QiJan 6, 2015 at 16:09 -
1
This function, the backlight control, is dependent on your bios and kernel version.
Try these four things.
Kernel (boot) options
When you boot, at the grub screen, hit e to edit. To the kernel line add nomodeset acpi_backlight=vendor
Some hardware may work with different options.
Intel - nomodeset acpi_backlight=intel
Acer - acpi_backlight=acer_acpi
or even acpi_osi=Linux acpi_backlight=legacy
.
As you can see, you may need to google search for your settings.
quiet splash nomodeset acpi_backlight=vendor
If that works, edit /etc/default/grub
and add those options to the default options.
# command line
sudo -e /etc/default/grub
# graphical
gksu gedit /etc/default/grub
Edit the "GRUB_CMDLINE_LINUX_DEFAULT" line so it looks like this
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset acpi_backlight=vendor"
Save your edit, update grub
sudo update-grub
Command line
If that does not work, you can try to manually set the brightness.
Note: Path may vary with hardware / kernel version, may be /proc/acpi/video0 ...
, you may need to browse the /proc/acpi directory to find the brightness setting and adjust the following commands accordingly.
cat /proc/acpi/video/VGA/LCD/brightness
The output of that command varies a bit with hardware, 1 -> 10 , 1 -> 12 , 1 -> 100 ??? Choose a value and set it (choose the value for your hardware).
sudo echo 80 > /proc/acpi/video/VGA/LCD/brightness
If that works, add it to /etc/rc.local
# command line
sudo -e /etc/rc.local
# graphical
gksu gedit /etc/rc.local
Add in your setting above "exit 0"
echo 80 > /proc/acpi/video/VGA/LCD/brightness
xbacklight
You can also try xbacklight
sudo apt-get install xbacklight
You then adjust with the command line
# For 80 % brightness
xbacklight -set 80
Again, add that to /etc/rc.local
# command line
sudo -e /etc/rc.local
# graphical
gksu gedit /etc/rc.local
Add in, above "exit 0"
xbacklight -set 80
setpci
You can try to set your brightness with setpci
The general syntax is
sudo setpci -s <address> f4.B=your_setting
You identify your pci bus address with
sudo lspci | grep VGA
Example
00:02.0 VGA compatible controller: Cirrus Logic GD 5446
setpci -s 00:02.0 F4.B=80
If you get your setting wrong, most likely you will just loose your display, and have to reboot. As this is a hardware setting, you really need to identify your hardware and research the settings first.
Examples
Intel - https://bbs.archlinux.org/viewtopic.php?id=74914
Toshiba - http://www.linlap.com/wiki/toshiba+satellite+t130
Acer extensa - https://bugs.launchpad.net/ubuntu/+source/linux/+bug/518002
-
1You should never, ever set 'acpi_osi=Linux'. The kernel ACPI code is carefully written to be compatible with Windows, and therefore by default advertises itself at Windows so that the same BIOS functions are used. If you override this, you are doomed to a grab bag of bugs in untested code paths that will never be fixed. Even if you find that acpi_osi=Linux fixes your immediate symptom, you are going to end up with an unsupported mess. May 30, 2012 at 0:37
This is supposed to be configurable in the energy options, set the brightness to the desired level and it will always be used. If you use a laptop you will also need to configure the level for battery mode as well...
I found that Gnome has some issues about lcd panel brightness, e.g. if I run on battery mode and set the brightness manually to a given level and leave the laptop unattended for 10 seconds it will go back to the preset brightness when I take control back. Same goes when on A/C mode except it takes longer so goes unnoticed more easily. I believe all those settings should be saved somewhere and restored - at least for A/C mode.
EDIT: For gnome3 this does not work (at least for me).
-
I was hoping for something that automatically remembers my changes via keyboard shortcuts, but I guess you are right. Sep 8, 2010 at 17:38
-
10So the answer is...? Changing it in Screen settings doesn't save it for the next session, and there's nothing in Power options. Nov 10, 2011 at 23:09
-
As far as I remember, the setting is supposed to be restored/saved between sessions. It has been a while since I last toyed with those settings and I don't have access to a machine running the latest Ubuntu at the moment, maybe this is a new bug?– levesqueNov 11, 2011 at 15:38
-
Here is a quick workaround for that :-
Try testing the setting by typing this command in terminal
echo 0 > /sys/class/backlight/acpi_video0/brightness
if the brightness changes to minimum, you have got it right !
Edit the /etc/rc.local
file by typing
sudo -H gedit /etc/rc.local
in terminal
Comment out the exit 0
by adding # in the beginning such that it looks like this :-
#!/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.
#exit 0
this is necessary otherwise it wont work !
after this add the following line in the file
echo 0 > /sys/class/backlight/acpi_video0/brightness
such that it looks like this :-
#!/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.
#exit 0
echo 0 > /sys/class/backlight/acpi_video0/brightness
replace 0 with the required brightness value ( ranges from 0 to 10 )
save the file and exit.
Reboot to see the changes.
Note:- you may have to replace acpi_video0
with your device code if you have a different one (it's mostly acpi_video0
). Most users won't need to do so.
-
-
5
To adjust screen brightness in 11.10, you will need to access the "System Settings":
Right-click directly to the right of your username in the toolbar in the upper-right corner of your screen.
Select "System Settings."
Select "Screen".
Drag the slider with your mouse to adjust screen brightness.
If Ubuntu isn't remembering your adjustment, you may use an application or you may need to use the workaround for GNOME: Brightness setting not saved in Ubuntu 11.10
-
2Okay, So i attempted to do this and it did not remember it. so after modifying the script I then enter the command "echo 0 > /sys/class/backlight/acpi_video0/brightness" but that does not work, because my/sys/class/backlight directory contains a dell_backlight and a intel_backlight Nov 2, 2011 at 5:08
-
I have the same issue, this parameter is not remembered between sessions.– levesqueDec 21, 2011 at 21:40
Here is a great work around I found, credit and thanks to thaelim on Ubuntu forum How to get effective display brightness management under Unity/Gnome Shell just download the script edit the perimeters at the beginning of the script and save it when your done to your home folder. Heres the download of the full script brightmanager.py
These are the variable perimeters to change to your desired settings, as you can see I like mine at 20 all the time with no idle timeout.
IDLE_DIM_TIME = 0
IDLE_DIM_AC = False
IDLE_DIM_BATTERY = False
IDLE_BRIGHT = 20
BRIGHT_BATTERY = 20
BRIGHT_AC = 20
After saving then open a terminal and enter
chmod +x brightmanager.py
Then open up startup applications from the dash, click on the add button, name your start up application, and enter your command as:
python /home/david/brightmanager.py
replacing "david" with your home folders name, then add a description and click add, logout, and back in, and your done, you now have brightness settings for battery, AC, and idle.
You will want to do this for each user and each user should have their own copy of the script in their home folder with their own desired settings in the beginning of the script.
The "Screen" option of "System Settings" works OK, and in /sys/class/backlight/acpi_video0/brightness
the option also change accordingly, but the problem is that nothing happens with the real brightness.
I found the solution to my problem:
Add the next option under your "Device" section in /etc/X11/xorg.conf
and restart:
Option "RegistryDwords" "EnableBrightnessControl=1"
This worked for my NVIDIA card (Ubuntu 11.10 x64 on Toshiba Satellite L745-SP4142CL)
- If use nVidia just open dash home and type "NVIDIA X server setting".
- Then click "X Server Color Correction" under X Screen O.
- Reduce the Brightness level.
- Click "Confirm current changes" before the time runs out.
- Choose Quit to save the change.
It worked for me with the following spesifications:
- Toshiba Satellite L745
- Intel Core i3
- NVidia GeForce with CUDA
- RAM 6 GB
There seems to be a bug report about this:
https://bugs.launchpad.net/ubuntu/+source/upower/+bug/840707
For me, it has worked to place:
echo 0 > /sys/class/backlight/acpi_video0/brightness
in /etc/rc.local.
Or, as others suggested,
echo 5 > /sys/class/backlight/*/brightness
might work.
-
1Nice find, but I don't think that's exactly the right bug. I think this one is. Nov 11, 2012 at 19:30
I found a workaround on webupd8: Fix brightness getting reset (to a very low value or maximum) on reboot in Ubuntu
The first thing you need to do is to find out which ACPI interface (acpi_video) controls the brightness. This can be done by looking into your Xorg log file to see which acpi_video was loaded. To do this via command line, simply use the following command:
grep acpi_video /var/log/Xorg.0.log
The command above should display an output similar to this:
[ 7.385] (--) intel(0): Found backlight control interface acpi_videoX (type 'firmware') for output LVDS1
where
acpi_videoX
isacpi_video0
oracpi_video1
. This is the acpi_video module that controls the brightness, so remember it for the next steps.If the command above doesn't display any output and you have a folder called
intel_backlight
under/sys/class/backlight/
, then useintel_backlight
as the ACPI interface for the next steps.Next, set (via keyboard Fn + brightness keys) your laptop's brightness to the level you want Ubuntu to use after when it starts.
Now we'll have to get the actual brightness value you set under step 2. To do this, run the following command:
cat /sys/class/backlight/acpi_videoX/brightness
where
acpi_videoX
is the ACPI interface which controls your laptop's brightness, which you found out under step 1.Remember this value for the next step.
The next step is to create a file (as root) called
fixbrightness.conf
in your/etc/init/
directory, for example:gksu gedit /etc/init/fixbrightness.conf
And in this file, paste this:
description "Sets brightness after graphics device is loaded" start on graphics-device-added task exec /bin/echo BRIGHTNESS_VALUE > /sys/class/backlight/acpi_videoX/brightness
here, you need to
replace
BRIGHTNESS_VALUE
with the brightness value you got in step 3replace
acpi_videoX
with the ACPI Interface that controls your laptop's brightness, which you found out in step 1.Then save the file.
Reboot and the low or maximum brightness issue after reboot / logout should be fixed.