1

Мне нужно создать скрипт для изменения некоторых данных, что потребует разрешения суперпользователя. Есть ли способ автоматизировать этот процесс с помощью сценария оболочки на Mac 10?

Пример скрипта:

sed s/Hello/World/g /usr/local/opt/test.xml 

Для запуска этого скрипта пользователю необходимо разрешение суперпользователя. Есть ли способ предоставить корневые учетные данные в скрипте и выполнить?

1 ответ1

1

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

Из справочной страницы chmod:

4000    (the set-user-ID-on-execution bit) Executable files with
        this bit set will run with effective uid set to the uid of
        the file owner.  Directories with the set-user-id bit set
        will force all files and sub-directories created in them to
        be owned by the directory owner and not by the uid of the
        creating process, if the underlying file system supports
        this feature: see chmod(2) and the suiddir option to
        mount(8).

Пример команды может выглядеть так:

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .