在交互式安装脚本中以另一个用户身份执行 virsh 命令

在交互式安装脚本中以另一个用户身份执行 virsh 命令

我正在使用脚本来设置一些 Fedora 机器,但无法以其他用户身份执行 Virsh(Libvirt 的 cli 工具)命令。给出的输出表明该命令成功,但失败却无提示。该脚本以 root 身份运行,我试图更改为 uid 1000(也称为用户系统中)。

这是应该执行的命令用户:

virsh define /home/user/vm.xml

这是我到目前为止所尝试过的:

sudo -u user bash -c 'virsh define /home/user/vm.xml'
su -c 'virsh define /home/user/vm.xml' user
su -s /bin/bash -c 'virsh define /home/user/vm.xml' -g user user

所有这些命令都会返回以下消息:

Domain 'vm' defined from /home/user/vm.xml

然而,当用户直接在终端中执行相同的命令时,该虚拟机在 virt-manager 中不可见,该命令直接出现在 GUI 中。
因此,我的假设是它会默默地失败。

我在这里缺少什么?
不应该su -l模仿成功的用户登录、从 root 进行更改并加载以给定用户身份执行命令所需的所有内容吗?

相关内容