

`knife solo`で vagrant で構築した Ubuntu14.04 に設定をしているのですが半分ぐらいの確率で以下のエラーが出ます。

[code]

    Uploading the kitchen...
    ERROR: RuntimeError: Failed to launch command ["rsync", "-rL", "--chmod=ugo=rwX", "--rsh=ssh vagrant@ubuntu", "--delete-after", "--exclude=revision-deploys", "--exclude=tmp", "--exclude=.git", "--exclude=.hg", "--exclude=.svn", "--exclude=.bzr", "/cygdrive/C/Users/ironsand/dev/chef-trusty-ironsand/cookbooks/", ":~/chef-solo/cookbooks-3"]
    
[/code]

`knife solo cook
ubuntu`で上記のエラーが出た後に何も変更せずもう一度実行するとエラーにならなかったりするため原因が特定できずに困っています。

環境は Windows7, chef-dk 0.3.5, knife-solo 0.4.2, rsync version 3.1.0 protocol
version 31 です。

また `~/.ssh/config` に `StrictHostKeyChecking no`の記述があることを確認してます。

単純に `ssh ubuntu`に接続を試みた時に失敗することはありません。

原因を特定したいのですがどのように調べたら良いでしょうか？

### 追記

@helicac2001 さんのアドバイスに従い rsync
をコマンドラインから実行してログを取得しようとしたのですが、10回ほど試してみましたが全てエラー無く正常に終了してしまい原因が特定できませんでした。

[code]

    rsync -rL --log-file=rsync.log --chmod=ugo=rwX --rsh="ssh vagrant@ubuntu" --delete-after --exclude=revision-deploys --exclude=tmp --exclude=.git --exclude=.hg --exclude=.svn --exclude=.bzr /cygdrive/C/Users/ironsand/dev/chef-trusty-ironsand/cookbooks/ :~/chef-solo/cookbooks-3
    
[/code]

`knife solo`経由で呼び出す`rsync`の引数を変える方法はあるのでしょうか？

## `-VV`オプションを付けた場合のエラーログ

[code]

    $ knife solo cook ubuntu -VV
    Starting 'Run'
    Running Chef on ubuntu...
    Checking Chef version...
    DEBUG: Initial command sudo chef-solo --version 2>/dev/null | awk '$1 == "Chef:" {print $2}'
    DEBUG: Initial command sudo -V
    DEBUG: Running processed command sudo -V
    DEBUG: sudo -V stdout: Sudo version 1.8.9p5
    DEBUG: sudo -V stdout:
    
    DEBUG: sudo -V stdout: Sudoers policy plugin version 1.8.9p5
    DEBUG: sudo -V stdout:
    
    DEBUG: sudo -V stdout: Sudoers file grammar version 43
    DEBUG: sudo -V stdout:
    
    DEBUG: sudo -V stdout: Sudoers I/O plugin version 1.8.9p5
    DEBUG: sudo -V stdout:
    
    DEBUG: Running processed command sudo -E -p 'knife sudo password: ' chef-solo --version 2>/dev/null | awk '$1 == "Chef:" {print $2}'
    DEBUG: sudo -E -p 'knife sudo password: ' chef-solo --version 2>/dev/null | awk '$1 == "Chef:" {print $2}' stdout: 11.8.2
    DEBUG: sudo -E -p 'knife sudo password: ' chef-solo --version 2>/dev/null | awk '$1 == "Chef:" {print $2}' stdout:
    
    DEBUG: Node config 'nodes/ubuntu.json' already exists
    Installing Berkshelf cookbooks to 'cookbooks'...
    Resolving cookbook dependencies...
    Using R (0.0.1)
    Using apt (2.6.1)
    Using build-essential (2.1.3)
    Using chef_handler (1.1.6)
    Using chocolatey (0.2.0)
    Using dmg (2.2.2)
    Using ffmpeg (0.4.3)
    Using git (4.1.0)
    Using java (1.29.0)
    Using libvpx (1.0.1)
    Using locale (1.0.2)
    Using phantomjs (1.0.3)
    Using rbenv (0.7.3) from git://github.com/sds/chef-rbenv.git (at install-gems-as-user)
    Using ruby_build (0.8.0)
    Using runit (1.5.12)
    Using windows (1.36.1)
    Using x264 (0.5.1)
    Using yasm (1.0.2)
    Using yum (3.5.2)
    Using yum-epel (0.5.3)
    Vendoring R (0.0.1) to cookbooks/R
    Vendoring apt (2.6.1) to cookbooks/apt
    Vendoring build-essential (2.1.3) to cookbooks/build-essential
    Vendoring chef_handler (1.1.6) to cookbooks/chef_handler
    Vendoring chocolatey (0.2.0) to cookbooks/chocolatey
    Vendoring dmg (2.2.2) to cookbooks/dmg
    Vendoring ffmpeg (0.4.3) to cookbooks/ffmpeg
    Vendoring git (4.1.0) to cookbooks/git
    Vendoring java (1.29.0) to cookbooks/java
    Vendoring libvpx (1.0.1) to cookbooks/libvpx
    Vendoring locale (1.0.2) to cookbooks/locale
    Vendoring phantomjs (1.0.3) to cookbooks/phantomjs
    Vendoring rbenv (0.7.3) to cookbooks/rbenv
    Vendoring ruby_build (0.8.0) to cookbooks/ruby_build
    Vendoring runit (1.5.12) to cookbooks/runit
    Vendoring windows (1.36.1) to cookbooks/windows
    Vendoring x264 (0.5.1) to cookbooks/x264
    Vendoring yasm (1.0.2) to cookbooks/yasm
    Vendoring yum (3.5.2) to cookbooks/yum
    Vendoring yum-epel (0.5.3) to cookbooks/yum-epel
    DEBUG: Cheffile not found
    Uploading the kitchen...
    DEBUG: Initial command ver
    DEBUG: Running processed command ver
    DEBUG: ver stdout: bash: ver: command not found
    DEBUG: ver stdout:
    
    DEBUG: Initial command mkdir -p -m 0700 ~/chef-solo
    DEBUG: Running processed command mkdir -p -m 0700 ~/chef-solo
    DEBUG: No chefignore file found at ./chefignore no files will be ignored
    DEBUG: Initial command ver
    DEBUG: Running processed command ver
    DEBUG: ver stdout: bash: ver: command not found
    DEBUG: ver stdout:
    
    DEBUG: ["rsync", "-rL", "-v", "--chmod=ugo=rwX", "--rsh=ssh vagrant@ubuntu", "--delete-after", "--exclude=revision-deploys", "--exclude=tmp", "--exclude=.gi
    t", "--exclude=.hg", "--exclude=.svn", "--exclude=.bzr", "/cygdrive/C/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/knife-solo/resources/p
    atch_cookbooks/", ":~/chef-solo/cookbooks-1"]
    building file list ... done
    chef-solo-search/.travis.yml
    chef-solo-search/CHANGELOG
    chef-solo-search/LICENSE
    chef-solo-search/NOTICE
    chef-solo-search/README.md
    chef-solo-search/metadata.rb
    chef-solo-search/libraries/search.rb
    chef-solo-search/libraries/search/overrides.rb
    chef-solo-search/libraries/search/parser.rb
    chef-solo-search/libraries/vendor/chef/solr_query/lucene.treetop
    chef-solo-search/libraries/vendor/chef/solr_query/lucene_nodes.rb
    chef-solo-search/libraries/vendor/chef/solr_query/query_transform.rb
    chef-solo-search/recipes/default.rb
    chef-solo-search/tests/Gemfile
    chef-solo-search/tests/test_data_bags.rb
    chef-solo-search/tests/test_search.rb
    chef-solo-search/tests/data/data_bags/node/alpha.json
    chef-solo-search/tests/data/data_bags/node/beta.json
    chef-solo-search/tests/data/data_bags/node/without_json_class.json
    chef-solo-search/tests/data/data_bags/users/jerry.json
    chef-solo-search/tests/data/data_bags/users/lea.json
    chef-solo-search/tests/data/data_bags/users/mike.json
    chef-solo-search/tests/data/data_bags/users/tom.json
    
    sent 2,165 bytes  received 940 bytes  2,070.00 bytes/sec
    total size is 47,483  speedup is 15.29
    DEBUG: Initial command ver
    DEBUG: Running processed command ver
    DEBUG: ver stdout: bash: ver: command not found
    DEBUG: ver stdout:
    
    DEBUG: ["rsync", "-rL", "-v", "--chmod=ugo=rwX", "--rsh=ssh vagrant@ubuntu", "--delete-after", "--exclude=revision-deploys", "--exclude=tmp", "--exclude=.gi
    t", "--exclude=.hg", "--exclude=.svn", "--exclude=.bzr", "/cygdrive/C/Users/ironsand/dev/chef-trusty-ironsand/site-cookbooks/", ":~/chef-solo/cookbooks-2"]
    building file list ... done
    base/CHANGELOG.md
    base/README.md
    base/metadata.rb
    base/files/default/id_rsa
    base/files/default/known_hosts
    base/recipes/default.rb
    base/recipes/user.rb
    
    sent 990 bytes  received 210 bytes  480.00 bytes/sec
    total size is 5,007  speedup is 4.17
    DEBUG: Initial command ver
    DEBUG: Running processed command ver
    DEBUG: ver stdout: bash: ver: command not found
    DEBUG: ver stdout:
    
    DEBUG: ["rsync", "-rL", "-v", "--chmod=ugo=rwX", "--rsh=ssh vagrant@ubuntu", "--delete-after", "--exclude=revision-deploys", "--exclude=tmp", "--exclude=.gi
    t", "--exclude=.hg", "--exclude=.svn", "--exclude=.bzr", "/cygdrive/C/Users/ironsand/dev/chef-trusty-ironsand/cookbooks/", ":~/chef-solo/cookbooks-3"]
    building file list ... done
    R/README.rdoc
    R/metadata.json
    R/recipes/default.rb
    apt/CHANGELOG.md
    apt/README.md
    apt/metadata.json
    apt/attributes/default.rb
    apt/files/default/apt-proxy-v2.conf
    apt/libraries/helpers.rb
    apt/libraries/matchers.rb
    apt/libraries/network.rb
    apt/providers/preference.rb
    apt/providers/repository.rb
    apt/recipes/cacher-client.rb
    apt/recipes/cacher-ng.rb
    apt/recipes/default.rb
    apt/recipes/unattended-upgrades.rb
    apt/resources/preference.rb
    apt/resources/repository.rb
    apt/templates/debian-6.0/acng.conf.erb
    apt/templates/default/01proxy.erb
    apt/templates/default/20auto-upgrades.erb
    apt/templates/default/50unattended-upgrades.erb
    apt/templates/default/acng.conf.erb
    apt/templates/default/unattended-upgrades.seed.erb
    apt/templates/ubuntu-10.04/acng.conf.erb
    build-essential/CHANGELOG.md
    build-essential/README.md
    build-essential/metadata.json
    build-essential/attributes/default.rb
    build-essential/libraries/matchers.rb
    build-essential/libraries/timing.rb
    build-essential/libraries/xcode_command_line_tools.rb
    build-essential/recipes/_debian.rb
    build-essential/recipes/_fedora.rb
    build-essential/recipes/_freebsd.rb
    build-essential/recipes/_mac_os_x.rb
    build-essential/recipes/_omnios.rb
    build-essential/recipes/_rhel.rb
    build-essential/recipes/_smartos.rb
    build-essential/recipes/_solaris2.rb
    build-essential/recipes/_suse.rb
    build-essential/recipes/default.rb
    chef_handler/CHANGELOG.md
    chef_handler/README.md
    chef_handler/metadata.json
    chef_handler/attributes/default.rb
    chef_handler/files/default/handlers/README
    chef_handler/libraries/matchers.rb
    chef_handler/providers/default.rb
    chef_handler/recipes/default.rb
    chef_handler/recipes/json_file.rb
    chef_handler/resources/default.rb
    chocolatey/CHANGELOG.md
    chocolatey/README.md
    chocolatey/metadata.json
    chocolatey/attributes/default.rb
    chocolatey/libraries/chocolatey_helpers.rb
    chocolatey/providers/default.rb
    chocolatey/recipes/default.rb
    chocolatey/resources/default.rb
    dmg/CHANGELOG.md
    dmg/README.md
    dmg/metadata.json
    dmg/attributes/default.rb
    dmg/libraries/matchers.rb
    dmg/providers/package.rb
    dmg/recipes/default.rb
    dmg/resources/package.rb
    ffmpeg/.kitchen.yml
    ffmpeg/.rubocop.yml
    ffmpeg/CONTRIBUTING.md
    ffmpeg/Gemfile
    ffmpeg/Gemfile.lock
    ffmpeg/README.md
    ffmpeg/Rakefile
    ffmpeg/TESTING.md
    ffmpeg/Thorfile
    ffmpeg/chefignore
    ffmpeg/metadata.json
    ffmpeg/attributes/default.rb
    ffmpeg/libraries/helpers.rb
    ffmpeg/recipes/default.rb
    ffmpeg/recipes/package.rb
    ffmpeg/recipes/source.rb
    ffmpeg/templates/default/compiled_with_flags.erb
    git/CHANGELOG.md
    git/README.md
    git/metadata.json
    git/attributes/default.rb
    git/libraries/matchers.rb
    git/providers/config.rb
    git/recipes/default.rb
    git/recipes/server.rb
    git/recipes/source.rb
    git/recipes/windows.rb
    git/resources/config.rb
    git/templates/default/git-xinetd.d.erb
    git/templates/default/sv-git-daemon-log-run.erb
    git/templates/default/sv-git-daemon-run.erb
    java/.gitignore
    java/.kitchen.docker.yml
    java/.kitchen.yml
    java/Berksfile
    java/Berksfile.lock
    java/CHANGELOG.md
    java/CONTRIBUTING.md
    java/Gemfile
    java/Gemfile.lock
    java/ISSUES.md
    java/LICENSE
    java/README.md
    java/TESTING.md
    java/metadata.json
    java/attributes/default.rb
    java/libraries/helpers.rb
    java/libraries/matchers.rb
    java/providers/alternatives.rb
    java/providers/ark.rb
    java/recipes/default.rb
    java/recipes/default_java_symlink.rb
    java/recipes/ibm.rb
    java/recipes/ibm_tar.rb
    java/recipes/openjdk.rb
    java/recipes/oracle.rb
    java/recipes/oracle_i386.rb
    java/recipes/oracle_rpm.rb
    java/recipes/purge_packages.rb
    java/recipes/set_attributes_from_version.rb
    java/recipes/set_java_home.rb
    java/recipes/windows.rb
    java/resources/alternatives.rb
    java/resources/ark.rb
    java/templates/default/ibm_jdk.installer.properties.erb
    java/templates/default/oracle.jinfo.erb
    libvpx/.kitchen.yml
    libvpx/.rubocop.yml
    libvpx/CONTRIBUTING.md
    libvpx/Gemfile
    libvpx/Gemfile.lock
    libvpx/README.md
    libvpx/Rakefile
    libvpx/TESTING.md
    libvpx/Thorfile
    libvpx/chefignore
    libvpx/metadata.json
    libvpx/attributes/default.rb
    libvpx/libraries/helpers.rb
    libvpx/recipes/default.rb
    libvpx/recipes/package.rb
    libvpx/recipes/source.rb
    libvpx/templates/default/compiled_with_flags.erb
    locale/README.md
    locale/metadata.json
    locale/attributes/default.rb
    locale/libraries/locale.rb
    locale/recipes/default.rb
    phantomjs/CHANGELOG.md
    phantomjs/README.md
    phantomjs/metadata.json
    phantomjs/attributes/debian.rb
    phantomjs/attributes/default.rb
    phantomjs/attributes/gentoo.rb
    phantomjs/attributes/rhel.rb
    phantomjs/attributes/windows.rb
    phantomjs/recipes/default.rb
    phantomjs/recipes/package.rb
    phantomjs/recipes/source.rb
    phantomjs/recipes/structure.rb
    rbenv/.gitignore
    rbenv/.kitchen.yml
    rbenv/.rspec
    rbenv/.travis.yml
    rbenv/Berksfile
    rbenv/CHANGELOG.md
    rbenv/Gemfile
    rbenv/Guardfile
    rbenv/README.md
    rbenv/Rakefile
    rbenv/metadata.json
    rbenv/attributes/default.rb
    rbenv/libraries/chef_provider_package_rbenvrubygems.rb
    rbenv/libraries/chef_rbenv_mixin.rb
    rbenv/libraries/chef_rbenv_recipe_helpers.rb
    rbenv/libraries/chef_rbenv_script_helpers.rb
    rbenv/libraries/matchers.rb
    rbenv/providers/global.rb
    rbenv/providers/plugin.rb
    rbenv/providers/rehash.rb
    rbenv/providers/ruby.rb
    rbenv/providers/script.rb
    rbenv/recipes/default.rb
    rbenv/recipes/system.rb
    rbenv/recipes/system_install.rb
    rbenv/recipes/user.rb
    rbenv/recipes/user_install.rb
    rbenv/recipes/vagrant.rb
    rbenv/resources/gem.rb
    rbenv/resources/global.rb
    rbenv/resources/plugin.rb
    rbenv/resources/rehash.rb
    rbenv/resources/ruby.rb
    rbenv/resources/script.rb
    rbenv/templates/default/rbenv.sh.erb
    rbenv/test/integration/system_ruby/bats/global_ruby.bats
    rbenv/test/integration/system_ruby/bats/installation.bats
    rbenv/test/integration/system_ruby/bats/plugins.bats
    rbenv/test/integration/system_ruby/bats/ruby_envvars.bats
    rbenv/test/unit/spec_helper.rb
    rbenv/test/unit/fixtures/recipes/rbenv_global_defaults.rb
    rbenv/test/unit/fixtures/recipes/rbenv_global_full.rb
    rbenv/test/unit/fixtures/recipes/rbenv_plugin_defaults.rb
    rbenv/test/unit/fixtures/recipes/rbenv_plugin_full.rb
    rbenv/test/unit/fixtures/recipes/rbenv_rehash_defaults.rb
    rbenv/test/unit/fixtures/recipes/rbenv_rehash_full.rb
    rbenv/test/unit/fixtures/recipes/rbenv_script_defaults.rb
    rbenv/test/unit/fixtures/recipes/rbenv_script_full.rb
    rbenv/test/unit/providers/global_spec.rb
    rbenv/test/unit/providers/plugin_spec.rb
    rbenv/test/unit/providers/rehash_spec.rb
    rbenv/test/unit/providers/script_spec.rb
    rbenv/test/unit/resources/gem_spec.rb
    rbenv/test/unit/resources/global_spec.rb
    rbenv/test/unit/resources/plugin_spec.rb
    rbenv/test/unit/resources/rehash_spec.rb
    rbenv/test/unit/resources/ruby_spec.rb
    rbenv/test/unit/resources/script_spec.rb
    ruby_build/CHANGELOG.md
    ruby_build/README.md
    ruby_build/metadata.json
    ruby_build/attributes/default.rb
    ruby_build/libraries/ruby_build_recipe_helpers.rb
    ruby_build/providers/ruby.rb
    ruby_build/recipes/default.rb
    ruby_build/resources/ruby.rb
    runit/CHANGELOG.md
    runit/README.md
    runit/metadata.json
    runit/attributes/default.rb
    runit/files/default/runit-2.1.1.tar.gz
    runit/files/default/runit.seed
    runit/files/default/runsvdir
    runit/files/ubuntu-6.10/runsvdir
    runit/files/ubuntu-7.04/runsvdir
    runit/files/ubuntu-7.10/runsvdir
    runit/files/ubuntu-8.04/runsvdir
    runit/libraries/default.rb
    runit/libraries/matchers.rb
    runit/libraries/provider_runit_service.rb
    runit/libraries/resource_runit_service.rb
    runit/recipes/default.rb
    runit/templates/debian/init.d.erb
    runit/templates/default/log-config.erb
    runit/templates/gentoo/runit-start.sh.erb
    windows/.gitignore
    windows/.kitchen.yml
    windows/Berksfile
    windows/CHANGELOG.md
    windows/CONTRIBUTING
    windows/Gemfile
    windows/LICENSE
    windows/README.md
    windows/TODO.md
    windows/chefignore
    windows/metadata.json
    windows/attributes/default.rb
    windows/files/default/handlers/windows_reboot_handler.rb
    windows/libraries/feature_base.rb
    windows/libraries/matchers.rb
    windows/libraries/powershell_helper.rb
    windows/libraries/powershell_out.rb
    windows/libraries/registry_helper.rb
    windows/libraries/version.rb
    windows/libraries/windows_architecture_helper.rb
    windows/libraries/windows_helper.rb
    windows/libraries/windows_package.rb
    windows/libraries/windows_privileged.rb
    windows/libraries/wmi_helper.rb
    windows/providers/auto_run.rb
    windows/providers/batch.rb
    windows/providers/feature_dism.rb
    windows/providers/feature_powershell.rb
    windows/providers/feature_servermanagercmd.rb
    windows/providers/font.rb
    windows/providers/pagefile.rb
    windows/providers/path.rb
    windows/providers/printer.rb
    windows/providers/printer_port.rb
    windows/providers/reboot.rb
    windows/providers/registry.rb
    windows/providers/shortcut.rb
    windows/providers/task.rb
    windows/providers/zipfile.rb
    windows/recipes/default.rb
    windows/recipes/reboot_handler.rb
    windows/resources/auto_run.rb
    windows/resources/batch.rb
    windows/resources/feature.rb
    windows/resources/font.rb
    windows/resources/pagefile.rb
    windows/resources/path.rb
    windows/resources/printer.rb
    windows/resources/printer_port.rb
    windows/resources/reboot.rb
    windows/resources/registry.rb
    windows/resources/shortcut.rb
    windows/resources/task.rb
    windows/resources/zipfile.rb
    x264/.kitchen.yml
    x264/.rubocop.yml
    x264/CONTRIBUTING.md
    x264/Gemfile
    x264/Gemfile.lock
    x264/README.md
    x264/Rakefile
    x264/TESTING.md
    x264/Thorfile
    x264/chefignore
    x264/metadata.json
    x264/attributes/default.rb
    x264/libraries/helpers.rb
    x264/recipes/default.rb
    x264/recipes/package.rb
    x264/recipes/source.rb
    x264/templates/default/compiled_with_flags.erb
    yasm/.kitchen.yml
    yasm/.rubocop.yml
    yasm/CONTRIBUTING.md
    yasm/Gemfile
    yasm/Gemfile.lock
    yasm/README.md
    yasm/Rakefile
    yasm/TESTING.md
    yasm/Thorfile
    yasm/chefignore
    yasm/metadata.json
    yasm/attributes/default.rb
    yasm/libraries/helpers.rb
    yasm/recipes/default.rb
    yasm/recipes/package.rb
    yasm/recipes/source.rb
    yasm/templates/default/compiled_with_flags.erb
    yum-epel/CHANGELOG.md
    yum-epel/README.md
    yum-epel/metadata.json
    yum-epel/attributes/default.rb
    yum-epel/attributes/epel-debuginfo.rb
    yum-epel/attributes/epel-source.rb
    yum-epel/attributes/epel-testing-debuginfo.rb
    yum-epel/attributes/epel-testing-source.rb
    yum-epel/attributes/epel-testing.rb
    yum-epel/attributes/epel.rb
    yum-epel/recipes/default.rb
    yum/CHANGELOG.md
    yum/README.md
    yum/metadata.json
    yum/attributes/main.rb
    yum/libraries/matchers.rb
    yum/providers/globalconfig.rb
    yum/providers/repository.rb
    yum/recipes/default.rb
    yum/resources/globalconfig.rb
    yum/resources/repository.rb
    yum/templates/default/main.erb
    yum/templates/default/repo.erb
    
    sent 33,600 bytes  received 16,020 bytes  19,848.00 bytes/sec
    total size is 915,238  speedup is 18.44
    C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/knife-solo/tools.rb:4:in `system!': Failed to launch command ["rsync", "-rL", "-v", "--ch
    mod=ugo=rwX", "--rsh=ssh vagrant@ubuntu", "--delete-after", "--exclude=revision-deploys", "--exclude=tmp", "--exclude=.git", "--exclude=.hg", "--exclude=.sv
    n", "--exclude=.bzr", "/cygdrive/C/Users/ironsand/dev/chef-trusty-ironsand/cookbooks/", ":~/chef-solo/cookbooks-3"] (RuntimeError)
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:272:in `rsync'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:229:in `upload'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:245:in `upload_to_provision_path'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:120:in `block in sync_kitchen'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:119:in `each'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:119:in `each_with_index'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:119:in `sync_kitchen'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:92:in `block in run'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:208:in `time'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:75:in `run'
            from C:/opscode/chefdk/embedded/apps/chef/lib/chef/knife.rb:493:in `run_with_pretty_exceptions'
            from C:/opscode/chefdk/embedded/apps/chef/lib/chef/knife.rb:174:in `run'
            from C:/opscode/chefdk/embedded/apps/chef/lib/chef/application/knife.rb:139:in `run'
            from C:/opscode/chefdk/embedded/apps/chef/bin/knife:25:in `<top (required)>'
            from C:/opscode/chefdk/bin/knife:44:in `load'
            from C:/opscode/chefdk/bin/knife:44:in `<main>'
    
[/code]

### 2015/01/13 追記

@ohga
さんのアドバイスに従い`rsync`のデバッグをより詳細に出すようにし、`rsync`の返り値が`24`の場合も正常終了とするように書き換えを行った結果が以下です。

[code]

    DEBUG: ["rsync", "-rL", "-vvv", "--chmod=ugo=rwX", "--rsh=ssh vagrant@ubuntu", "--delete-after", "--exclude=revision-deploys", "--exclude=tmp", "--exclude=.git", "--exclude=.hg", "--exclude=.svn", "--exclude=.bzr", "/cygdrive/C/Users/ironsand/AppData/Local/Temp/solo.rb20150115-1272-134yk99", ":~/chef-solo/solo.rb"]
    opening connection using: ssh vagrant@ubuntu  rsync --server -vvvre.iLs --delete-after . "~/chef-solo/solo.rb"  (9 args)
    building file list ...
    [sender] make_file(solo.rb20150115-1272-134yk99,*,0)
    done
    send_file_list done
    send_files starting
    server_recv(2) starting pid=12400
    [Receiver] add_rule(- revision-deploys)
    [Receiver] add_rule(- tmp)
    [Receiver] add_rule(- .git)
    [Receiver] add_rule(- .hg)
    [Receiver] add_rule(- .svn)
    [Receiver] add_rule(- .bzr)
    recv_file_name(solo.rb20150115-1272-134yk99)
    received 1 names
    recv_file_list done
    get_local_name count=1 /home/vagrant/chef-solo/solo.rb
    generator starting pid=12400
    delta-transmission enabled
    recv_generator(solo.rb,0)
    generating and sending sums for 0
    count=2 rem=111 blength=700 s2length=2 flength=811
    send_files(0, /cygdrive/C/Users/ironsand/AppData/Local/Temp/solo.rb20150115-1272-134yk99)
    send_files mapped /cygdrive/C/Users/ironsand/AppData/Local/Temp/solo.rb20150115-1272-134yk99 of size 811
    calling match_sums /cygdrive/C/Users/ironsand/AppData/Local/Temp/solo.rb20150115-1272-134yk99
    solo.rb20150115-1272-134yk99
    built hash table
    hash search b=700 len=811
    match at 0 last_match=0 j=0 len=700 n=0
    match at 700 last_match=700 j=1 len=111 n=0
    done hash search
    sending file_sum
    false_alarms=0 hash_hits=2 matches=2
    sender finished /cygdrive/C/Users/ironsand/AppData/Local/Temp/solo.rb20150115-1272-134yk99
    generate_files phase=1
    send_files phase=1
    recv_files(1) starting
    recv_files(solo.rb)
    recv mapped solo.rb of size 811
    got file_sum
    renaming .solo.rb.Za4bb5 to solo.rb
    recv_files phase=1
    generate_files phase=2
    send_files phase=2
    send files finished
    total: matches=2  hash_hits=2  false_alarms=0 data=0
    recv_files phase=2
    recv_files finished
    generate_files phase=3
    generate_files finished
    
    sent 184 bytes  received 847 bytes  687.33 bytes/sec
    total size is 811  speedup is 0.79
    [sender] _exit_cleanup(code=0, file=main.c, line=1183): about to call exit(0)
    C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/knife-solo/tools.rb:10:in `system!': Failed to launch command (100) ["rsync", "-rL", "-vvv", "--chmod=ugo=rwX", "--rsh=ssh vagrant@ubuntu", "--delete-after", "--exclude=revision-deploys", "--exclude=tmp", "--exclude=.git", "--exclude=.hg", "--exclude=.svn", "--exclude=.bzr", "/cygdrive/C/Users/ironsand/AppData/Local/Temp/solo.rb20150115-1272-134yk99", ":~/chef-solo/solo.rb"] (RuntimeError)
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:273:in `rsync'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:230:in `upload'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:255:in `write'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:226:in `generate_solorb'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:93:in `block in run'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:209:in `time'
            from C:/Users/ironsand/.chefdk/gem/ruby/2.0.0/gems/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb:75:in `run'
            from C:/opscode/chefdk/embedded/apps/chef/lib/chef/knife.rb:493:in `run_with_pretty_exceptions'
            from C:/opscode/chefdk/embedded/apps/chef/lib/chef/knife.rb:174:in `run'
            from C:/opscode/chefdk/embedded/apps/chef/lib/chef/application/knife.rb:139:in `run'
            from C:/opscode/chefdk/embedded/apps/chef/bin/knife:25:in `<top (required)>'
            from C:/opscode/chefdk/bin/knife:44:in `load'
            from C:/opscode/chefdk/bin/knife:44:in `<main>'
    
[/code]

非常に長いので最後付近のみ貼り付けていますが、`rsync`が`code=0`で正常終了しているのに何故か`100`が返っているとなってしまっています。

rsyncのドキュメントには30までしかありませんし、どこからこの`100`は来てるのでしょうか？

### 2015/01/15 追記

同様のエラーが出た人向けの情報として`knife-solo`のIssueに登録しておきました。  
<https://github.com/matschaffer/knife-solo/issues/420>


CC BY-SA 3.0
2014-12-23T21:13:17.997
2441
2015-04-08T09:58:16.420
2015-01-14T22:58:09.107
3271
3271
question
windows chef vagrant
knife solo で rsyncがFailed to launch commandで頻繁に失敗する


追記して頂いたログを見るに、 `rsync` は成功しているのに、終了コードが `0` ではない、と判定してしまっているように見えます。

例えば、[rsync の終了コード](http://linuxcommand.org/man_pages/rsync1.html)
では、処理中に転送元の変更を検知した時に出る `24 Partial transfer due to vanished source files`
とかで悩んだ経験があるので、、

(目隠し状態で書いているので、バグがあるかもしれません、ごめんなさい。。)

[code]

    diff -Nur a/knife-solo-0.4.2/lib/knife-solo/tools.rb b/knife-solo-0.4.2/lib/knife-solo/tools.rb
    --- a/knife-solo-0.4.2/lib/knife-solo/tools.rb  2014-06-06 16:13:54.000000000 +0900
    +++ b/knife-solo-0.4.2/lib/knife-solo/tools.rb  2015-01-13 13:53:14.000000000 +0900
    @@ -1,7 +1,16 @@
     module KnifeSolo
       module Tools
         def system!(*command)
    -      raise "Failed to launch command #{command}" unless system(*command)
    +      if command[0] == 'rsync'
    +        system(*command)
    +        status = $?.exitstatus
    +        if status != 0 && status != 24
    +          raise "Failed to launch command (#{status}) #{command}"
    +        end
    +        
    +      else                    
    +        raise "Failed to launch command #{command}" unless system(*command)
    +      end 
         end
    
         def windows_client?
    
[/code]

みたいな感じで、 `rsync` コマンドが、終了コード `0` か `24` じゃない場合を失敗とする、的なコード変更をしてしまうと良いかもしれません。

ただ、 Windows の `rsync` の場合は、別の問題を抱えてい可能性はあるので、 `24`
以外の終了コードで失敗していて、納得いくものであれば、if 文でフォローしてみてください。(上記のコードでは終了コードを出力するようにしているつもりです。)

あとは、コードに手を入れるのが微妙であれば、 `rsync` コマンドそのものをラッピングしてしまうとか、 `\--ignore-errors`
を付けてしまうとか。(これは乱暴すぎるか。。)

それと、どうせコードをいじるなら、 rsync の debug 出力を、さらに上げてみるとなにかわかるかもしれません。

[code]

    diff -Nur a/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb b/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb
    --- a/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb  2014-06-06 16:13:54.000000000 +0900
    +++ b/knife-solo-0.4.2/lib/chef/knife/solo_cook.rb  2015-01-13 14:11:31.000000000 +0900
    @@ -184,7 +184,7 @@
           end
    
           def rsync_debug
    -        '-v' if debug?
    +        '-vvv' if debug?
           end
    
           # see http://stackoverflow.com/questions/5798807/rsync-permission-denied-created-directories-have-no-permissions
    
[/code]


CC BY-SA 3.0
2015-01-13T05:51:43.307
4478
2015-01-13T05:51:43.307
2992
2441
answer

[code]

    DEBUG: ver stdout: bash: ver: command not found
    
[/code]

という行が見えますので、設定でどこかに不用意な `ver` という記述が無いでしょうか？


CC BY-SA 3.0
2015-01-13T08:42:45.077
4498
2015-01-13T08:42:45.077
440
2441
answer


pemファイルの権限 600以外にしていると頻発しますよ


CC BY-SA 3.0
2015-04-08T09:58:16.420
8908
2015-04-08T09:58:16.420
9224
2441
answer