使用 sudo 启动脚本

使用 sudo 启动脚本

我正在尝试使用此脚本(脚本名称:start_vm001.sh)启动虚拟机(ORACLE VIRTUALBOX)。

        START_VM=`/usr/bin/VBoxHeadless --startvm testvm001`
        EXECUTE_VM=`exec /sbin/start-stop-daemon --start --chuid 1001 --exec "$START_VM" -- $START_VM`
        echo $EXECUTE_VM

当我在不使用 sudo 的情况下运行脚本时,虚拟机已启动,但是当我使用 sudo 运行脚本时,虚拟机未启动。

         username@host1:~$ ./start_vm001.sh, its worked
         username@host1:~$ sudo ./start_vm001.sh its not worked
         Output: sbin/start-stop-daemon: unable to stat Oracle VM VirtualBox Headless   Interface 4.1.12_Ubuntu (C) 2008-2013 Oracle Corporation All rights reserved. Invalid machine name or UUID! (No such file or directory)

如何使用 sudo 运行脚本?

答案1

虚拟机的配置文件存储在 下的用户主目录中/home。您需要在 中创建相同的文件夹/root(或符号链接它们)以使 sudo 正常工作,因为 virtualbox 会在正在运行的用户文件夹中查找配置文件。

相关内容