【问题标题】:Azure Ubuntu VM - Execute Custom Script (Permission Denied)Azure Ubuntu VM - 执行自定义脚本(权限被拒绝)
【发布时间】:2020-10-28 19:07:13
【问题描述】:

我创建了一个 Azure ARM 模板,它使用 Ubuntu 18.04 中的 Microsoft.Compute/virtualMachines/extensions 来执行自定义脚本。配置机器后,ubuntu 用户(非 root)应该能够从以下目录 /var/lib/waagent/custom-script/download/0 运行自定义脚本,它会收到“权限被拒绝”。我添加了以下几行以确保 ubuntu 用户拥有该文件并能够执行,但没有成功。

sudo chown ubuntu install_metaport.sh
chmod +x install_metaport.sh
sh install_metaport.sh

然后,我改变了方法,将以下内联命令添加到我的 Azure ARM 脚本中,效果很好。但我试图避免复制/移动文件,并从其原始目录执行,即/var/lib/waagent/custom-script/download/0,但同样,我最终得到“权限拒绝”并且无法弄清楚如何解决此问题

cp install_metaport.sh /tmp && chown ubuntu /tmp/install_metaport.sh && chmod +x /tmp/install_metaport.sh && cd /tmp && sh install_metaport.sh

有什么建议吗? 谢谢

【问题讨论】:

    标签: linux azure ubuntu ubuntu-18.04


    【解决方案1】:

    您的文件install_metaport.sh 可以由用户 Ubuntu 执行。您通过放入另一个目录来验证这一点。

    文件可以从另一个目录执行的事实表明权限在较低级别被拒绝。根文件夹权限限制子文件权限,因此很可能您无法在/var/lib/waagent/custom-script/download/0 目录中执行。在那里给用户 ubuntu 执行权限,它会像魅力一样工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-22
      • 2019-05-02
      • 2016-04-15
      • 1970-01-01
      • 2014-06-18
      • 2015-11-15
      • 1970-01-01
      • 2019-02-07
      相关资源
      最近更新 更多