ubuntu - 使用 sudo 为 puppetlabs-apache 模块运行 puppet 代理

标签 ubuntu puppet sudo

我有一个安装了最新 puppet 代理的 ubuntu 14.04。我的用户 'ubuntu' 是 root 和 sudo 组的一部分。我为 sudo 禁用了密码,我无法让 puppet list 使用 puppetlabs-apache 模块。它在/var/lib/dpkg/lock 文件上提示 Permission Denied。我检查了文件甚至不存在。

这似乎是一个微不足道的问题,但即使我运行 sudo puppet 它仍然在提示权限。

我的 list 看起来像这样

node default {
        include apache

        apache::vhost { 'st.site.com':

                servername => 'st.site.com',
                port    => '80',
                docroot => '/var/www/html/sources/prod/',
                docroot_owner => 'www-data',
                docroot_group => 'www-data',
            }   
}

如何启用以 sudo 权限运行它?

它正在爆炸的部分是(当我使用 sudo 手动运行它时,它确实工作正常)
 /usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold install apache2

我得到的错误是:
Error: Execution of '/usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold install apache2' returned 100: E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
Error: /Stage[main]/Apache/Package[httpd]/ensure: change from purged to present failed: Execution of '/usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold install apache2' returned 100: E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

最佳答案

我想我在文档中找到了自己的答案。需要以 root 身份安装代理或以 root 身份运行它。就如此容易....

关于ubuntu - 使用 sudo 为 puppetlabs-apache 模块运行 puppet 代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38578837/

相关文章:

ubuntu - 在 ubuntu 16.04 中编译 Ipopt 示例时出现 "cannot find stddef.h"错误

ubuntu - hcitool lescan 在 ubuntu 上失败

plugins - 安装 vagrant-vsphere 插件

linux - 在 Bash 中检查 sudo(带有 if 语句的脚本)

sudo - ansible playbooks 中的 user vs sudo vs sudo_user

c++ - 使用 system() 函数在 Ubuntu 中播放声音文件

regex - Ubuntu 16 sed 不能使用括号

exec - 如果满足条件,如何运行 puppet exec?

ruby - 如何在 ruby​​ 模板中输出排序哈希

sudo - su 将密码传递给脚本