Skocz do zawartości

Skrypt startowy z prawami root-a


Jonshu

Rekomendowane odpowiedzi

Cześć,

czy mógłbym Was poprosić o wskazówkę jak uruchomić skrypt startowy aby działał z prawami root-a nie pytając o hasło?

mam sobie takie polecenie które wyłącza podświetlenie klawiatury,
działa ale wymaga ręcznego uruchomienia i wpisania hasła

echo '0' >  /sys/devices/.../kbd_backlight

próbowałem też zmienić uprawnienia do pliku ale to nie pomogło,
uprawnienia są każdorazowo nadpisywane przy restarcie systemu

sudo chmod a+S  /sys/devices/.../kbd_backlight

 

Odnośnik do komentarza
Udostępnij na innych stronach

Dzięki,
niestety nie chce to działać, nie wiem co robię źle,

jonshu  ALL=(ALL) NOPASSWD: /home/damian/.scripts/kbd-backlight-disable.sh
jonshu  ALL=(ALL) NOPASSWD: /sys/devices/platform/asus-nb-wmi/leds/asus\:\:kbd_backlight/brightness

zawartość pliku .sh

echo '0' > /sys/devices/platform/asus-nb-wmi/leds/asus\:\:kbd_backlight/brightness

 

Odnośnik do komentarza
Udostępnij na innych stronach

30 minut temu, Jonshu napisał:

niestety nie chce to działać, nie wiem co robię źle,

A masz jakieś komunikaty błędów

 

32 minuty temu, Jonshu napisał:
damian  ALL=(ALL) NOPASSWD: /sys/devices/platform/asus-nb-wmi/leds/asus\:\:kbd_backlight/brightness

tutaj to raczej brakuje echo "0" > przed ścieźką do pliku

 

33 minuty temu, Jonshu napisał:

zawartość pliku .sh

echo '0' > /sys/devices/platform/asus-nb-wmi/leds/asus\:\:kbd_backlight/brightness

 

Brakuje shebang (#!/usr/bin/bash)

Odnośnik do komentarza
Udostępnij na innych stronach

W dniu 12.11.2023 o 19:02, sunrise napisał:

tutaj to raczej brakuje echo "0" > przed ścieźką do pliku

skąd ludzie mają wiedzieć jak tworzyć składnię w takich plikach?

/etc/sudoers:57:27: błąd składni
jonshu	ALL=(ALL) NOPASSWD:echo '0' > /sys/devices/platform/asus-nb-wmi/leds/asus\:\:kbd_backlight/brightness
                          ^~~~

/etc/sudoers:57:28: błąd składni
jonshu	ALL=(ALL) NOPASSWD: echo '0' > /sys/devices/platform/asus-nb-wmi/leds/asus\:\:kbd_backlight/brightness
                           ^~~~

 

Odnośnik do komentarza
Udostępnij na innych stronach

Błąd jest w tym, że podajesz po prostu "echo" zamiast pełnej ścieżki do binarki, czyli zapewne "/usr/bin/echo" ;) Piszą o tym w man sudoers, tu właściwy wycinek:

A  Cmnd_List  is  a list of one or more commands, directories, or aliases.  A command is a fully qualified file name, which may include shell-style wildcards (see the “Wildcards” section below), or a regular expression that
       starts with ‘^’ and ends with ‘$’ (see the “Regular expressions” section below).  A directory is a fully qualified path name ending in a ‘/’.  When you specify a directory in a Cmnd_List, the user will be able  to  run  any
       file within that directory (but not in any sub-directories therein).  If no command line arguments are specified, the user may run the command with any arguments they choose.  Command line arguments can include wildcards or
       be a regular expression that starts with ‘^’ and ends with ‘$’.  If the command line arguments consist of ‘""’, the command may only be run with no arguments.

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 weeks later...

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...