Есть ли способ по умолчанию Go вызовы пакета os для запуска под указанным c пользователем - PullRequest
0 голосов
/ 07 апреля 2020

В основном я не могу использовать os.Mkdir или os.MkdirAll, потому что он создаст каталоги как root. Я знаю, что могу go exec.Cmd маршрут и установить syscall.Credential{}. Но это немного громоздко, и я должен удалить и заменить много кода.

Мне было интересно, есть ли что-нибудь глобальное, что я могу установить, поэтому вызовы пакета os будут выполняться как указанный пользователь.

Заранее спасибо.

1 Ответ

3 голосов
/ 07 апреля 2020

Как правило, процесс будет выполнять системные вызовы как пользователь, запустивший процесс. Может быть, seteuid это то, что вы ищете?

...