我有一个安装了最新木偶代理的ubuntu 14.04。我的用户"ubuntu"是root和sudo组的一部分。我禁用了sudo的密码,无法获得使用puppetlabs apache模块的puppet清单。它抱怨/var/lib/dpkg/lock文件的权限被拒绝。我检查过文件根本不在那里。
这似乎是一个微不足道的问题,但即使我运行sudo木偶,它仍然在抱怨权限。
我的舱单看起来像这个
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身份运行代理。就这么简单。。。。