Как заставить приложение запускаться при входе в систему как root

525
Stiny861

Я пытаюсь создать скрипт, который откроет приложение, которое я затем добавлю в качестве хука входа в систему, чтобы при входе в систему хук входа в систему запускал скрипт от имени пользователя root, который затем запускает приложение от имени пользователя root, У меня совсем нет опыта написания сценариев, и я пробовал некоторые примеры других сценариев, но безрезультатно. Любая помощь приветствуется.

РЕДАКТИРОВАТЬ. Я использую OS X 10.6.4

0
На какой ОС вы работаете? Ubuntu? Если это здесь, вы идете - [Запуск Ubuntu] (http://embraceubuntu.com/2005/09/07/adding-a-startup-script-to-be-run-at-bootup/) slotishtype 12 лет назад 0
Из любопытства, почему приложение должно запускаться от имени пользователя root? Stephen Jennings 12 лет назад 0
Приложение должно быть запущено от имени пользователя root, чтобы пользователи не пытались завершить процесс. Они могут убивать своих, но как root, они не могут убить его. Stiny861 12 лет назад 0

2 ответа на вопрос

1
Wes Hardaker

If's a graphical login, then link the application into ~root/Desktop/Autostart/. If it's a shell login, you can put commands in ~/.login and it'll get invoked. But this is generally dangerous to do and make sure you consider how the program will be stopped, what happens when the user (root) logs in more than once, etc.

0
Stephen Jennings

Вы можете сделать сценарий оболочки setuid (так что он всегда будет работать как владелец файла, который будет root), но это очень опасная вещь. Существуют последствия для безопасности при создании сценариев оболочки setuid .

Сценарий будет выглядеть примерно так:

#!/bin/sh - open /Applications/Whatever.app 

Теперь сделайте сценарий setuid из терминала:

sudo chown root file.sh sudo chmod 4755 file.sh 

Первая команда делает root владельцем файла. Второй устанавливает его как setuid, чтение / запись / выполнение его владельцем и чтение / выполнение всеми остальными.

Затем в Mac OS X перейдите в Системные настройки → Учетные записи и добавьте сценарий оболочки в качестве элемента входа для пользователя. Теперь каждый раз, когда пользователь входит в систему, будет вызываться скрипт, и, поскольку он настроен, он должен запускаться от имени пользователя root.

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