我有一个centos-6.5盒子。 奇怪的是,当我尝试要求厨师提供食物时,它会冻结。
下面是我尝试去vagrant provision --debug
时候的一个例子 – 试试吧
[2014-10-10T20:33:33+00:00] INFO: Processing remote_file[/etc/yum.repos.d/devtools.repo] action create (vidya_client::default line 7) DEBUG ssh: stdout: [2014-10-10T20:33:34+00:00] INFO: Processing yum_package[devtoolset-1.0-gcc-c++.x86_64] action install (vidya_client::default line 15) INFO interface: info: [2014-10-10T20:33:34+00:00] INFO: Processing yum_package[devtoolset-1.0-gcc-c++.x86_64] action install (vidya_client::default line 15) [2014-10-10T20:33:34+00:00] INFO: Processing yum_package[devtoolset-1.0-gcc-c++.x86_64] action install (vidya_client::default line 15) DEBUG ssh: stdout: [2014-10-10T20:33:34+00:00] INFO: yum_package[devtoolset-1.0-gcc-c++.x86_64] installing devtoolset-1.0-gcc-c++-4.7.0-5.3.el6.x86_64 from testing-devtools-6 repository INFO interface: info: [2014-10-10T20:33:34+00:00] INFO: yum_package[devtoolset-1.0-gcc-c++.x86_64] installing devtoolset-1.0-gcc-c++-4.7.0-5.3.el6.x86_64 from testing-devtools-6 repository [2014-10-10T20:33:34+00:00] INFO: yum_package[devtoolset-1.0-gcc-c++.x86_64] installing devtoolset-1.0-gcc-c++-4.7.0-5.3.el6.x86_64 from testing-devtools-6 repository DEBUG ssh: Sending SSH keep-alive... DEBUG ssh: Sending SSH keep-alive... DEBUG ssh: Sending SSH keep-alive... DEBUG ssh: Sending SSH keep-alive... DEBUG ssh: Sending SSH keep-alive... DEBUG ssh: Sending SSH keep-alive... DEBUG ssh: Sending SSH keep-alive... DEBUG ssh: Sending SSH keep-alive...
永远继续下去。
我的食谱很简单。
yum_package "wget" yum_package "gcc-c++.x86_64" yum_package "openssl-devel.x86_64" yum_package "libcurl-devel.x86_64" yum_package "httpd" remote_file "/etc/yum.repos.d/devtools.repo" do source "http://people.centos.org/tru/devtools/devtools.repo" end yum_package "devtoolset-1.0-gcc-c++.x86_64"
我发现,我添加devtools存储库的方式是错误的。 通过导入yum食谱并执行以下更改,一切正常。
yum_repository 'testing-devtools' do baseurl 'http://people.centos.org/tru/devtools/$releasever/$basearch/RPMS' description 'testing devtools for CentOS $releasever' gpgcheck false action :create end yum_package "devtoolset-1.0-gcc-c++.x86_64"
尝试禁用:
config.ssh.pty
选项从您的Vagrantfile
。 通常这是造成这种情况的常见原因。
在stream浪者文档config.ssh.pty我们可以读取:
此设置是一项高级function,除非绝对必要,否则不应启用。 它打破了Vagrant的一些其他特征,而且只有在绝对必要的情况下才会暴露。 如果你能find一个不使用pty的方法,那就推荐使用它。
因为我有类似的问题与apt-get 。
运行(如果需要安装lldb
):
echo "call (void)rb_backtrace()" | lldb -p $(pgrep -fn ruby)
在前台打印Ruby backtrace(也可以使用gdb
)
执行日志logging,例如: vagrant --debug up 2> frozen.log
和工作configuration到works.log
,然后与diff工具进行比较
sudo dtruss -fn ruby
(或vagrant
),在Linux上使用strace
/ ltrace
来debugging进程