Perl6: запустить команду от имени другого пользователя - PullRequest
4 голосов
/ 19 мая 2019

Как Perl6 может запускать команды от имени другого пользователя?

Контекст : Диспетчер модулей zef установлен как обычный пользователь, и есть некоторые команды, которые необходимо запустить от имени пользователя root.

Временное решение : следующая функция позволяет запускать команды оболочки от имени другого пользователя:

unit module Repo::Utils::RunAsUser; 
sub RunAsUser( Str $user, Str $command, --> Proc ) is export {
  return shell "su -c \'$command\' $user";
}

Вопросы:

  • Есть ли альтернативный синтаксис для запуска команд от имени root из скрипта Perl6?
  • Может ли пользователь запускать определенные методы и подпрограммы IO :: Path (например, unlink или mkdir) как root?

Спасибо!

...