Запуск сценария оболочки с бродячим обеспечением

Я установил бродячий бокс с использованием exact64 (ubuntu 14.04) и установил пакеты, необходимые для октопресса. Я могу ssh в бродячую коробку и генерировать сообщения и запускать предварительный просмотр для моего сайта октопресса.

Теперь я хочу создать сценарий обеспечения для автоматического запуска следующих команд после завершения работы машины.

gem install bundler rbenv rehash bundle install rake install rake generate rake preview 

поэтому я создал сценарий оболочки, используя вышеприведенные команды. Но когда я пытаюсь запустить бродяжничество или бродяжничество, это дает мне следующую ошибку.

 ==> default: ERROR: While executing gem ... (Gem::FilePermissionError) ==> default: You don't have write permissions into the /opt/vagrant_ruby/lib/ruby/gems/1.8 directory. ==> default: bash: rbenv: command not found 

Конфигурация моего Vagrantfile выглядит так. Я попробовал привилегированный вариант, который тоже стал правдой.

 config.vm.provision :shell, :privileged => false, :upload_path => "/home/vagrant/octopress/start.sh", :path => "start.sh" 

Что я здесь делаю неправильно?

Как вы можете видеть в приведенных выше журналах, сценарий предоставления пытается использовать gem из каталога / opt / vagrant_ruby / lib / ruby ​​/ gems. Но когда я схожу в бродячую коробку и проверяю местоположение gem и rbenv, эти пакеты находятся внутри домашней директории пользователей (/ home / vagrant). Кажется, проблема заключается в том, что сценарий не использует переменные окружения пользователя «бродяга». Но когда я проверяю whoami внутри скрипта, я становлюсь бродячим как выход.

Есть ли способ запустить сценарий выполнения с переменной бродячего пользователя?

  • Собственность в общей папке NFS не изменяется в гостевой ОС в Vagrant
  • Sudo, Virtualbox и Permission. (The Good, The Bad, The Ugly)
  • Vagrant configure eth0
  • MacOS X Mavericks, работающий с VirtualBox, не может взаимодействовать с Linux VM
  • Утилиты VMWare останавливаются Работа над dist-upgrade
  • Ubuntu 16.04 и синхронизированная папка
  • Передача ssh-agent для Vagrant VM
  • локальные сценарии выключения (do's and do not)
  • One Solution collect form web for “Запуск сценария оболочки с бродячим обеспечением”

    Этот брандмауэр-плагин устранил проблему для меня:

    бродячие-спусковые

    вы можете запустить свой сценарий обеспечения после того,

     config.trigger.after :command, :option => "value" do run "script" ... end 

    и не забудьте добавить sudo в свои команды.

    Interesting Posts

    printf в сценарии оболочки can not do \ x% x

    Альтернативный менеджер окон

    Каков наилучший способ установки 3 жестких дисков с 3 ОС на один компьютер?

    Команда 'df' не выводит / home каталог

    Самый дешевый способ найти самый старый файл (рекурсивно) из каталога с большой нагрузкой

    резервная таблица inode на ext2 / 3/4

    Позволяет ли Linux выполнить команду «rm -rf /»?

    Запуск входа в систему путем подключения USB-накопителя

    Что произойдет, когда мы подключим устройство к компьютеру

    Попытка понять синтаксисы перенаправления bash и их выходы

    Добавить текст после определенной строки

    Как изменить содержимое конкретной строки в файле с помощью сценариев оболочки, когда текст в этой строке повторяется много раз в других строках

    Что не так с моей командой копирования?

    правильный способ установки пакетов с apt-get без запроса

    Не удалось получить библиотеку Open Library Art Library RSS

    Linux и Unix - лучшая ОС в мире.