执行 $: salt \* pkg.install vim 时无法获取 /var/lib/dpkg/lock 锁
我正在使用Salt Stack来开发一个源代码管理系统(SCM)。我已经成功地把主控端(master)和被控端(minion)连接起来,并且下面这个命令可以正常工作。
$: salt \* test.ping
现在,我想执行下面这个命令。
$: salt \* pkg.install vim
目的是通过主控端在被控端上安装vim。当我在主控端执行这个命令时,却遇到了以下错误。
[INFO ] User sudo_user1 Executing command pkg.install with jid 20140910191537152620
[DEBUG ] Command details {'tgt_type': 'glob', 'jid': '20140910191537152620', 'tgt': '*', 'ret': '', 'user': 'sudo_user1', 'arg': ['vim'], 'fun': 'pkg.install'}
[INFO ] Starting a new job with PID 5762
[INFO ] Executing command "dpkg-query --showformat='${Status} ${Package} ${Version} ${Architecture}\n' -W" in directory '/home/cybage'
[INFO ] Executing command ['apt-get', '-q', '-y', '-o', 'DPkg::Options::=--force-confold', '-o', 'DPkg::Options::=--force-confdef', 'install', 'vim'] in directory '/home/user1'
[ERROR ] Command ['apt-get', '-q', '-y', '-o', 'DPkg::Options::=--force-confold', '-o', 'DPkg::Options::=--force-confdef', 'install', 'vim'] failed with return code: 100
[ERROR ] output: E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
[INFO ] Executing command "dpkg-query --showformat='${Status} ${Package} ${Version} ${Architecture}\n' -W" in directory '/home/cybage'
[INFO ] Returning information for job: 20140910191537152620
[DEBUG ] Decrypting the current master AES key
[DEBUG ] Loaded minion key: /etc/salt/pki/minion/minion.pem
主控端和被控端都是Ubuntu 14.04。如果有人遇到过类似的问题,或者我是不是漏掉了什么,请告诉我。谢谢大家的帮助。
2 个回答
1
通常这意味着另一个程序正在使用你的软件包管理器,所以你会看到锁定的提示。你可以试试在命令行输入 apt-get install vim 这个命令,看能不能成功。
你每次运行这个 salt 命令时都会出现这个错误吗?
1
最后我终于搞清楚问题出在哪里了。
我用下面的命令启动了salt-master
shwetabhs@shwetabhs-master:/etc/salt# sudo salt-master -l debug
但其实应该从根目录启动。
root@shwetabhs-master:/etc/salt# salt-master -l debug
从根目录启动后,问题就解决了。