Запустите скрипт sudo при запуске под 15.04 с помощью 'systemd'

Я хотел бы запустить скрипт для отключения подсветки клавиатуры на моем Asus при входе в систему ( этот ответ не работал). До введения systemd в Ubuntu 15.04 я делал это через /etc/rc.local, используя команду (sleep 10 && echo 0 > /sys/class/leds/asus::kbd_backlight/brightness). Однако, согласно systemd, это больше не работает.

Я пытался следовать инструкциям здесь , чтобы создать systemd service. Но это не сработало. Это текст, который я использовал:

[Unit] Описание = MBWD сценарий отключения подсветки клавиатуры

[Service] Тип = oneshot ExecStart = / usr / lib / systemd / scripts / keyboard_backlight .sh # RemainAfterExit = yes [Install] WantedBy = multi-user.target

Чтобы вызвать этот сценарий:

 #!/bin/bash
 echo 0 | sudo tee /sys/class/leds/asus::kbd_backlight/brightness

Затем я включил службу, запустил службу и использовал команду systemctl preset, чтобы включить службу при запуске (я думаю, это то, что она делает).

После всего этого команда systemctl status указывает, что служба включена, и когда я systemctl start, служба отключает клавиатуру. И при перезагрузке, то есть при запуске, это может сработать, потому что клавиатура выключается при запуске Ubuntu.

ОДНАКО, как только я попадаю на экран входа в систему и вход в систему, снова включается индикатор клавиатуры. Я попытался отточить эту проблему, используя sleep 20 в скрипте и , создавая a systemd.timer unit. Ни один не работал.

Кто-нибудь может помочь ???

0
задан 13 April 2017 в 15:37

2 ответа

Конечно, не лучший ответ, но можно переключиться от systemd до выскочки путем установки выскочки-sysv пакета.

sudo apt-get install upstart-sysv
0
ответ дан 14 April 2017 в 01:37
  • 1
    Спасибо за Ваш ответ. Я попробовал после инструкций, существующих в предложенном веб-сайте, но это didn' t помогают мне очень. Я предполагаю лучше, чтобы просто переустановить Ubuntu. – Supreeth VK 22 November 2016 в 03:12

Я наконец решил эту проблему при помощи rc-local.service и /etc/rc.local вместо того, чтобы создать отдельный systemd сервис. Вот то, что я сделал:

  1. В терминале: systemctl enable rc-local.service
  2. В /etc/rc.local я поместил следующее:

#!/bin/sh-e (спят 20 & & отзовитесь эхом 0>/sys/devices/platform/asus-nb-wmi/leds/asus:: kbd_backlight/brightness), выходят 0

  1. , Делают /etc/rc.local исполняемый файл:

sudo chmod a+x/etc/rc.local

  1. Для подтверждения проверьте состояние rc-local.service

systemctl дистанционное-управление-local.service состояния

, Это должно показать зеленый и сказать активный.Вот и все.

0
ответ дан 14 April 2017 в 01:37
  • 1
    @SupreethVK, намного лучше переустановить Ubuntu, по крайней мере, Вы won' t сталкиваются с проблемами. Если Вам понравился мой ответ, и он работал на Вас, принимают это.:) – Tony Lancer 22 November 2016 в 08:47

Другие вопросы по тегам:

Похожие вопросы: