LINUX.ORG.RU

Выполнить команду при включении/выключении и засыпании/пробуждении системы

 


1

1

В какие места можно кинуть скрипт/команду, чтобы они исполнялись при выключении/включении и перед ждущим/спящим режимами и после выхода из них? Кидал в /etc/rc.local, /etc/default/hal, /etc/pm/sleep.d/ и /usr/lib/pm-utils/sleep.d - не работает. Выполнить нужно две команды

ddccontrol -r 0xe1 -w 0 dev:/dev/i2c-1
ddccontrol -r 0xe1 -w 1 dev:/dev/i2c-1
Может я что не так делаю. Kubuntu 16.04

★★

Последнее исправление: KOT040188 (всего исправлений: 6)
Ответ на: комментарий от jtad

Я вам говорю, что отдельно команды работают!

kot@kot-MS-7930:/lib/systemd/system-sleep$ whereis ddccontrol
ddccontrol: /usr/bin/ddccontrol /usr/share/man/man1/ddccontrol.1.gz
О, 3 страница…

KOT040188 ★★
() автор топика
Последнее исправление: KOT040188 (всего исправлений: 1)
Ответ на: комментарий от jtad

я думаю на сегодня хватит.У вас уже 2 часа ночи наверно.

jtad
()
Ответ на: комментарий от KOT040188

не, уверен ошибка тривиальная. параметр не там или пробел лишний... попробуйте скопировать строку прямо из скрипта и выполнить ее в терминале. С судо конечно

jtad
()
Ответ на: комментарий от jtad

а вы в fstab какие то опции монтирования применяли? noexec например. Хотя вряд ли. Может apparmor не дает запустить

jtad
()
Ответ на: комментарий от jtad

sudo systemctl stop apparmor.service

попробуйте остановить apparmor и запустить скрипт

jtad
()
Ответ на: комментарий от jtad
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=645e23d9-61cd-42d2-aaae-435a0d1a977a /               ext4    errors=remount-ro 0       1
# /home was on /dev/sdb1 during installation
UUID=851534b8-d01e-45c3-afea-ebc83179b4da /home           ext4    defaults        0       2
# /media/kot/3 was on /dev/sdc1 during installation
UUID=fd4c0cd9-a071-4de0-a960-aad8280fccc8 /media/kot/3    ext4    defaults        0       2
# swap was on /dev/sdc2 during installation
UUID=97a67efe-d831-4cd9-a11d-dcc0418ecfde none            swap    sw              0       0

Может apparmor не дает запусить

Что-то слышал про это на opennet…

KOT040188 ★★
() автор топика
Ответ на: комментарий от KOT040188

неважно, он запуститься при старте заново. У меня пока идеи вышли, жаль что на разных системах, может давно бы нашли причину. Мне нужно на покой, завтра на работу. Завтра поле обеда еще посмотрю

jtad
()

Скопировал скрипт в хомяк:

kot@kot-MS-7930:~$ sudo ./monitor.sh pre
sudo: unable to execute ./monitor.sh: No such file or directory
Мистика…

KOT040188 ★★
() автор топика
Ответ на: комментарий от KOT040188

Таки помогла ссылка. Но ничего не понял. В конце сказано, что скрипт не запускался из-за неправильной кодировки. Посмотрел кодировку - utf8. Но решил взять другой рабочий скрипт sh (давно у меня есть) и в него скопировать содержимое monitor.sh. Результат: sudo /lib/systemd/system-sleep/monitor.sh pre работает с новым скриптом. Вот старый нерабочий скрипт, вот новый рабочий. В чём разница? Старый создавал по рутом, новый был создан давно под пользователем.

KOT040188 ★★
() автор топика
Последнее исправление: KOT040188 (всего исправлений: 2)

Теперь монитор выключается при спячке и включается после. Как провернуть такое же при вкл/выкл системы?

KOT040188 ★★
() автор топика

Рано радовался. Почему-то при первом входе в спячку после перезагрузки монитор выключается. При выходе не включается. Больше скрипт не действует, до перезагрузки… О, а сейчас сработал в обе стороны. Мистика

KOT040188 ★★
() автор топика
Последнее исправление: KOT040188 (всего исправлений: 1)
Ответ на: комментарий от KOT040188

Как добавить паузу перед выполнением команд?

Как провернуть такое же при вкл/выкл системы?

Друзья, ну подворье идею!

KOT040188 ★★
() автор топика
Ответ на: комментарий от KOT040188

С горем пополам понял, что /lib/systemd/system-shutdown/ это только для выключения и скрипт как для /lib/systemd/system-sleep/ не подходит. Надо только одну команду выключения монитора писать, поэтому он у меня не работал. Отредактировал. Но скрипт срабатывает и при выключении и при перезагрузке. Как запретить его выполнение при перезагрузке? И наконец как выполнить скрипт включения монитора при включении системы максимально рано? Кидал скрипт в /lib/systemd/system/ - нет результата. Помогите кто чем может!!!!!!!!!!

KOT040188 ★★
() автор топика
Последнее исправление: KOT040188 (всего исправлений: 2)
Ответ на: комментарий от KOT040188

Люди!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

KOT040188 ★★
() автор топика
Ответ на: комментарий от KOT040188

Люди!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

KOT040188 ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.