Warum wird keiner meiner Startbefehle ausgeführt?

Warum wird keiner meiner Startbefehle ausgeführt?

Ich habe versucht, meinen Laptop zu bekommenDie Bildschirmhelligkeit wird standardmäßig auf eine niedrige Einstellung eingestelltund für meineTastaturbeleuchtung aus seinwenn ich meinen Computer starte.

Ich habe diese beiden Befehle, die funktionieren, wenn ich sie in der Befehlszeile ausführe:

xbacklight -set 7
echo 0 | sudo tee /sys/class/leds/asus::kbd_backlight/brightness

/etc/rc.localIch habe sie wie folgt in meine Datei eingefügt :

#!/bin/sh -e
# ...
# By default this script does nothing.
echo 0 | tee /sys/class/leds/asus::kbd_backlight/brightness
xbacklight -set 7
exit 0

Allerdings wird keiner der Befehle ausgeführt. (Mir wurde gesagt, dass das sudoim zweiten Befehl nicht erforderlich sei, wenn es in eingefügt wird /etc/rc.local.)

Es gabeine andere Frage, die dasselbe betrifftrc.local, aber ich habe versucht, meine Befehle auch über die GUI-Schnittstelle der Startup Applications einzubinden. Das hat auch nicht funktioniert, daher denke ich, dass das Problem über die Datei hinausgeht rc.local. Andere Standard-Startbefehle in der Liste scheinen zu starten, soweit ich das beurteilen kann.

Warum kann ich beim Start keine benutzerdefinierte Befehlszeile ausführen?


Neu:/etc/rc.localNach einigen Experimenten scheint es, als würden die von mir eingegebenen Befehle ausgeführtVorder Anmeldebildschirm. Mein Anmeldebildschirm ist also entsprechend abgedunkelt. Wenn ich mich dann jedoch anmelde, wird mein Bildschirm auf maximale Helligkeit eingestellt. Es scheint also, als ob es vielleicht eine andere Einstellung gibt, die angewendet wird, wenn ich mich anmelde, oder die /etc/rc.localnur für den Anmeldebildschirm selbst gilt und keinen Einfluss darauf hat, was mit einem angemeldeten Benutzer passiert.

Wie kann ich das Problem also lösen, sodass die gewünschten Helligkeits- und Tastaturbeleuchtungseinstellungen für die Benutzeranmeldesitzung und nicht nur für den Anmeldebildschirm gelten?

Antwort1

xbacklight-Lösung

1) Erstellen Sie eine ausführbare Skriptdatei, z. B./home/YOU/.bin/niedrigere Helligkeitso was:

#!/bin/sh
xbacklight -set 7 &

2) Erstellen Sie eine .desktop-Datei, z. B./home/YOU/.config/autostart/lower-brightness.desktopso was:

[Desktop Entry]
Type=Application
Exec=/home/YOU/.bin/lower-brightness
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name=Lower Screen Brightness
Comment=Screen brightness is set to 7 at startup
Icon=display

Antwort2

Um die Anzeigeeinstellungen nach Ihren Wünschen zu ändern, können Sie diese Zeile hinzufügen in/etc/rc.local

echo 7 > /sys/class/backlight/intel_backlight/brightness

Dann kann die Helligkeit bei 7 bleiben.

hoffe das hilft ein bisschen.

Antwort3

Ich bin sicher, meine Lösung sollte Ihnen helfen, wenn Sie Ubuntu mit verwenden lightdm.

Ich habe nach Möglichkeiten gesucht, den Ziffernblock beim Start meines Laptops einzuschalten und habe in der lightdmDokumentation Folgendes gefunden:

# display-setup-script = Script to run when starting a greeter session (runs as root)
# greeter-setup-script = Script to run when starting a greeter (runs as root)
# session-setup-script = Script to run when starting a user session (runs as root)
# session-cleanup-script = Script to run when quitting a user session (runs as root)

Und das ist die Lösung. Sie müssen eine Datei erstellen /usr/bin/und /usr/bin/backlightdort Befehle schreiben.

#!/bin/bash
xbacklight -set 7
echo 0 | sudo tee /sys/class/leds/asus::kbd_backlight/brightness
exit 0

( xbacklightFunktioniert bei mir auch nicht. echo 7 > /sys/class/backlight/intel_backlight/brightnessMacht das Zeug). Stellen Sie dann sicher, dass Sie mit die Ausführungsberechtigung für diese Datei hinzufügen chmod a+x /usr/bin/backlight.

Dann müssen Sie /etc/lightdm/lightdm.confbeispielsweise diese Zeile bearbeiten und schreiben:

session-setup-script=/usr/bin/backlight

Und das war’s. Starten Sie jetzt Ihren PC neu.

Antwort4

Ich frage mich, warum niemand vorgeschlagen hat, update-rc.d zu verwenden. Ich würde das Skript nicht manuell in /etc/rc.local einfügen. Ich würde diese Methode empfehlen, um Programme beim Start auszuführen:

sudo cp lower-brightness.sh /etc/init.d/
sudo chmod +x /etc/init.d/lower-brightness.sh 
sudo update-rc.d lower-brightness.sh defaults 

Dadurch wird sichergestellt, dass das Skript mit den entsprechenden Ausführungsebenen verknüpft ist.

verwandte Informationen