我使用ansible脚本在亚马逊EC2和一个流浪箱中设置我的环境(Ubuntu)。然后,我尝试在GermanVPS (Ubuntu Minimal)上设置相同的环境。使用Apt安装软件包似乎不起作用。
我跑步
ansible-playbook -i ansible/live -u priidu ansible/caselaw.yml -s -vvvv --start-at-task="install"这会给出以下错误。
failed: [master] => (item=postgresql-9.4,postgresql-contrib-9.4,postgresql-server-dev-9.4,python-psycopg2) => {"failed": true, "item": "postgresql-9.4,postgresql-contrib-9.4,postgresql-server-dev-9.4,python-psycopg2"}
stderr: E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.
msg: '/usr/bin/apt-get -y -o "Dpkg::Options::=--force-confdef" -o "Dpkg::Options::=--force-confold" install 'postgresql-server-dev-9.4' 'python-psycopg2'' failed: E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.
FATAL: all hosts have already failed -- aborting然后我试一试
ansible-playbook -i ansible/live -u priidu ansible/caselaw.yml -s -vvvv --start-at-task="dpkg configure"我得到了以下错误信息
failed: [master] => (item=postgresql-9.4,postgresql-contrib-9.4,postgresql-server-dev-9.4,python-psycopg2) => {"failed": true, "item": "postgresql-9.4,postgresql-contrib-9.4,postgresql-server-dev-9.4,python-psycopg2", "parsed": false}
BECOME-SUCCESS-grensagvuewehoylwpjytnkzpwwqgsre
Killed
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /Users/priidukull/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 51: Applying options for *
debug1: auto-mux: Trying existing master
debug2: fd 3 setting O_NONBLOCK
debug2: mux_client_hello_exchange: master version 4
debug3: mux_client_forwards: request forwardings: 0 local, 0 remote
debug3: mux_client_request_session: entering
debug3: mux_client_request_alive: entering
debug3: mux_client_request_alive: done pid = 54431
debug3: mux_client_request_session: session request sent
debug1: mux_client_request_session: master session id: 2
debug3: mux_client_read_packet: read header failed: Broken pipe
debug2: Received exit status from master 0
Shared connection to <<hostname>> closed.
FATAL: all hosts have already failed -- aborting那里发生了什么?我该如何开始解决这个难题?
编辑:我的攻略的相关部分
- name: dpkg configure
shell: dpkg --configure -a
- name: install
apt: name={{ item }} update_cache=yes
with_items:
- postgresql-9.4
- postgresql-contrib-9.4
- postgresql-server-dev-9.4
- python-psycopg2编辑2:添加了攻略命令。
编辑3:当我将RAM从64MB增加到512MB时,这个问题消失了。
发布于 2017-08-01 14:58:32
当我尝试通过ansible-playbook安装docker时,我遇到了这个问题。
我试着把内存从512Mb增加到1024Mb。但它并没有起作用。
然后我找到了如下解决方案:
删除/var/lib/dpkg/update中的所有文件,然后重试!!
无论如何,它对我来说是有效的!
发布于 2018-07-23 19:13:44
我添加了一些任务来消除Ubuntu 16.04的dpkg问题,它工作得很好
tasks:
- name: configure dpkg 1
command: sudo rm /var/lib/apt/lists/lock
become: true
- name: configure dpkg 2
command: sudo rm /var/cache/apt/archives/lock
become: true
- name: configure dpkg 3
command: sudo rm /var/lib/dpkg/lock
become: true
- name: configure dpkg 4
command: sudo dpkg --configure -a
become: true
- name: Update and upgrade apt packages
become: true
apt:
upgrade: yes
update_cache: yes
cache_valid_time: 86400 #One day发布于 2015-07-16 02:47:17
Ansible中有一个yum模块,可用于安装软件包。我被困了一段时间,因为我发现我必须安装其他依赖项,例如解压缩。但这对保持我的代码优雅和简单非常有用。
此链接提供模块的文档:
例如,要安装最新版本的Apache,请执行以下操作:
yum: name=httpd state=latest
https://stackoverflow.com/questions/30760513
复制相似问题