
Мне нужно запускать команду sudo vulkaninfo
каждый раз при запуске системы (я знаю, как это сделать, когда система выходит из спящего режима, т. е. в /usr/lib/pm-utils/sleep.d/somescript
). Эта команда должна быть глобальной, чтобы все пользователи запускали ее при запуске. Я пробовал добавить скрипт в profile.d в /etc/profile.d, но это привело к тому, что я не смог войти в систему. rc.local только локальный, так что это не сработает. Какие у меня есть варианты?
Редактировать: Мне нужно иметь возможность сделать это из терминала, так как я создаю скрипт, который автоматизирует настройку моей системы, поэтому программы не будут работать. Так, например, мне нужна команда, которая может создать файл, добавить команду и переместить файл туда, где находятся файлы запуска системы.
решение1
Для этого я бы использовал root-файл crontab @reboot
, его можно легко редактировать из скрипта root:
(crontab -l 2>/dev/null; echo "@reboot vulkaninfo") | crontab -
Это добавит строку @reboot vulkaninfo
в crontab пользователя root, который будет запускаться vulkaninfo
с правами root при каждой загрузке.
Обратите внимание, что cron имеет минимальную среду, если вашей команде требуется установить переменные среды, установите их вручную или найдите файл, который их устанавливает, например $HOME/.profile
. Команда также может быть выполнена слишком рано в процессе запуска, простая sleep
команда или тестовый цикл являются способами обойти это.
Дальнейшее чтение: