GNU/Linux >> Znalost Linux >  >> Linux

Nelze zapisovat do souboru /sys/class/backlight/acpi_video0/brightness (ubuntu)

K chybě dochází, protože sudo zvyšuje oprávnění pro příkaz (sudo echo 5 ), ale ne přesměrování k zápisu souboru (> /sys/class/backlight/acpi_video0/brightness ). Skutečný bash shell potřebuje oprávnění k zápisu, což je důvod, proč selhává se sudo, ale funguje jako root.

Můžete to obejít spuštěním tee příkaz jako root pro zápis do souboru:

echo 5 | sudo tee /sys/class/backlight/acpi_video0/brightness

Všimněte si, že to také odešle "5" do vašeho terminálu. Toto je normální vedlejší účinek tee příkaz.


Jak je napsáno na Arch wiki (odkaz), ve výchozím nastavení pouze root lze touto metodou změnit jas. Povolit uživatelům v video skupina pro změnu jasu, udev lze použít pravidlo, jako je následující (nahraďte <vendor> s vaším ID dodavatele. Např. acpi_video0 , intel_backlight ):

% cat /etc/udev/rules.d/backlight.rules
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="<vendor>", RUN+="/bin/chgrp video /sys/class/backlight/%k/brightness"
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="<vendor>", RUN+="/bin/chmod g+w /sys/class/backlight/%k/brightness"

Poté musíte přidat svého uživatele do video skupina.

usermod -aG video <user>

Poté by to mělo fungovat:

echo 5 > /sys/class/backlight/<vendor>/brightness

Pokud nechcete, aby se opakovalo 5, funguje to také:

sudo sh -c 'echo 5 > /sys/class/backlight/acpi_video0/brightness'

Linux
  1. Jak mohu nastavit a spustit PhantomJS na Ubuntu?

  2. Nelze se připojit k místnímu serveru MySQL přes soket '/var/run/mysqld/mysqld.sock' v Ubuntu 12.04.5 LTS

  3. Chyba aktualizace sudo apt-get na Ubuntu 17.04

  1. Je>&- efektivnější než>/dev/null?

  2. Soubor v Ubuntu ekvivalentní souboru /etc/inittab v RedHat

  3. Měly by weby žít ve /var/ nebo /usr/ podle doporučeného použití?

  1. Vzor regulárního výrazu pro úpravu souboru /etc/sudoers

  2. Použijte úložiště git na /var/www/html/

  3. Kdy mám použít /dev/shm/ a kdy /tmp/?