質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

91.99%

  • Vagrant

    639questions

    Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

vagrant上でのファイルをデスクトップに置き、アトムで編集するには

解決済

回答 2

投稿 2016/08/22 15:03

  • 評価
  • クリップ 0
  • VIEW 630

reotantan

score 233

mobaextermからvagrantを利用しているのですが
vagrant上のファイルを元のPCのデスクトップからatomで編集して管理したいのですが、
どのようにすればいいのでしょうか

  • 気になる質問をクリップする

    クリップした質問に回答があった場合に通知・メールを受け取ることができます。

    クリップした質問はマイページの「クリップ」タブからいつでも見ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

0

VirtualBox Guest Additionsをインストールすれば、ゲストOSの/vagrantが、ホスト側のVagrantファイルを置いているフォルダがマウントされます。
そのファイルをホスト側のAtomで編集すればOKです。

--
以下追記

私の環境では、vagrant up時に以下のようになります。

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Clearing any previously set forwarded ports...
==> default: Fixed port collision for 22 => 2222. Now on port 2200.
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
==> default: Forwarding ports...
    default: 22 => 2200 (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2200
    default: SSH username: vagrant
    default: SSH auth method: private key
    default: Warning: Connection timeout. Retrying...
    default: Warning: Remote connection disconnect. Retrying...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
==> default: Mounting shared folders...
    default: /vagrant => /Users/moonphase/guestos
==> default: Machine already provisioned. Run `vagrant provision` or use the `--provision`
==> default: flag to force provisioning. Provisioners marked to run always will still run.

投稿 2016/08/22 15:13

編集 2016/08/26 16:01

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    以下のような回答は評価を下げられます

    • 間違っている回答
    • 質問の回答になっていない投稿
    • 不快な投稿

    評価を下げる際はその理由をコメントに書き込んでください。

  • 2016/08/26 13:42

    すみません。お教えください。VirtualBox Guest Additionをinstallしました。pyファイルを
    呼び出すには[vagrant@localhost ~]$ python test.pyでよいのでしょうか?もちろんtest.pyはvagrantfileと同じ階層に置いています。そうするとpython: can't open file 'test.py':
    [Error 2] No such file or directoryとなります
    http://www.hcn.zaq.ne.jp/cabnw708/pic/vagrant.JPG
    よろしくお願いいたします

    キャンセル

  • 2016/08/26 14:07

    VirtualBox Guest Additionをインストールした後に、vagrant haltしてからvagrant upしましたか?そうすると/vagrantがマウントされます。

    キャンセル

  • 2016/08/26 14:40

    これはwindowsならコマンドプロンプト、Macならターミナルで実行するのですか?
    インストール後にエンターキーを押すと端末は消えますね。再度端末を立ち上げてするのでしょうか?よろしくお願いいたします

    キャンセル

  • 2016/08/26 14:43

    vagrant halt/upがわからない場合は、Guest OSを再起動してください。

    キャンセル

  • 2016/08/26 15:35

    windowsでvagrant halt/upしたら追加でcentOsが作られてしまいました。名前もmtg-1_default_1472190183815_14860でCuiです。なので前の分を立ち上げました。しかしてtest.pyは表示されないままです。追加された分はキーボードもおかしいしteratermも接続できないので削除しますね(前者が残っていますから。)

    キャンセル

  • 2016/08/26 16:26

    少し頭を冷やしますね。下記がVirtualBoxの内容ですが上記の様にUPしたときは私の方もコードが流れました。そして追加で作られました
    http://www.hcn.zaq.ne.jp/cabnw708/pic/virtualBox_vagrnt.JPG
    Macも同じようにやりましたら
    http://www.hcn.zaq.ne.jp/cabnw708/pic/vagrant%20up.JPGとなりました。
    WindowsもMacもcentostop画面一緒です
    http://www.hcn.zaq.ne.jp/cabnw708/pic/centos_top.JPG
    不思議です???

    キャンセル

  • 2016/08/26 16:34

    vagrant init したタイミングで、boxからVMが作成されます。
    その後、vagrant upするたびにVMが作られるんですか???
    vagrant upは作成したVMのPowerをONにするだけのコマンドです。

    キャンセル

  • 2016/08/26 16:53

    initは初期化ですよね。vagrant upはほとんどしたことがなくしたときは必ずmtg-1_default_でされたことが前にも一度ありました。仮に削除してもvagrantfileが残っているので完全削除ではないですね。どこかがおかしいですねVirtualBoxの共有を見たらデフォルトでvagrantfileがありますが追加はできないみたいです。訳が分からなくなってきています

    キャンセル

  • 2016/08/26 16:58

    2つのVMをVagrant経由で作成する場合はフォルダを分けます。
    mkdir foo1 && cd foo1 && vagrant init xxxx && vagrant up
    cd ..
    mkdir foo2 && cd foo2 && vagrant init xxxx && vagrant up

    この使い方はあってますか?

    キャンセル

  • 2016/08/26 17:35

    これはやったことがありません。Lnux mintやUbuntuはVagrntを介していません。Isofileからインストールしています
    そしてCentosのみvagrant経由です。削除するときはすべて跡形もなく削除してやり直していましたからもう何回も繰り返し繰り返しやりました(centOsそのものを削除しVagrantもプログラムと機能から削除しておりました。)
    https://teratail.com/questions/45512?complete= 表題のごとくやりたかったことです

    キャンセル

  • 2016/08/26 17:50

    Vagrantで初期化していないものは /vagrant フォルダは作成されません。
    Virtualboxのみで共有フォルダーを作成しましょう。
    VirtualBox Guest Additionを入れた後、VirtualBoxの仮想マシンを右クリック-設定-共有フォルダー
    右にある「フォルダに+記号」アイコンをクリックし、
    フォルダーのパスに、ローカル側(ホスト側)のパスを指定、
    フォルダー名に vagrant
    永続化する にチェックを入れればvagrantと同様の事が出来ると思います。
    Vagrantはこれを自動でやってくれているだけです。

    キャンセル

  • 2016/08/27 09:07

    おはようございます。これは自動的にこのようになっています。お教えくださいGuest Additionsをインストールしました。そうしたときCentosのシェルからVagrantfileと同じ階層に置いたPYfileはPythonの保存したファイルとして[vagrant@localhost ~]としてそのファイルを呼び出すことができるのですよね。コマンドプロンプトやターミナルのようにcd /vagrantで移動してからPython test.pyとコードを打ち込めばtest.pyの中身が表示されるとの理解でよいのでしょうか?ただしそうしてもエラーになるのはなぜですか?何が不足しているのでしょうか?よろしくお願いいたします。

    キャンセル

  • 2016/08/27 09:36

    おはようございます。

    私の環境で以下試しました。
    ■OSX側
    $ ls -1
    Vagrantfile
    test.py

    ■CentOS側
    [vagrant@localhost ~]$ ls -1 /vagrant
    Vagrantfile
    test.py
    [vagrant@localhost ~] python /vagrant/test.py
    Hello world!

    --
    Python test.pyと打ち込んでも、Pythonというコマンドがないのでエラーがでます。
    中身を表示するのはcatコマンドです。
    移動してから表示するなら以下のとおりです。私の環境では表示されました。
    [vagrant@localhost ~] cd /vagrant
    [vagrant@localhost vagrant]$ cat test.py
    print "Hello world!"


    キャンセル

  • 2016/08/27 10:35

    ありがとうございます。ただ私はMacが使い慣れていないためOSX側のターミナルで確認ですね
    ■OSX側
    $ ls -1    →エルエス スペースイチ
    Vagrantfile  →どこに存在するのか?
    test.py    →Vagrantと同じ階層に置く
    この様にまだまだMacはツリー環境がわかっていません(ツリーに関してはインストール済です)
    Windowsでもcentos側は同じだと思いますが
    [vagrant@localhost vagrant]$ cat test.py
    cat : test.py: そのようなファイルやディレクトリはありませんと出ます
    何かがおかしいですね。centosのデスクトップにはVBOXADDITIONS_5.0.24_108355があります:これをクリックするとソフトウェアを実行と右に出るのでクリックしましたが何も変わらないみたいです。

    キャンセル

  • 2016/08/27 10:37

    もう少しMacの使い方を勉強しないと駄目ですね。

    キャンセル

  • 2016/08/27 10:38

    OSX側:Vagrantfileはvagrant initしたディレクトリに作成されます。
    CentOS側:/vagrantが作成されていても、共有設定がうまく言ってなければマウントされていないだけかもです。
    VirtualBOXの共有設定を見たらOSX側のパスがわかると思いますがいかがでしょうか?

    CentOS側でのマウント状態は次の通りです。
    $ df -h
    ファイルシス サイズ 使用 残り 使用% マウント位置
    /dev/sda1 64G 1.4G 63G 3% /
    devtmpfs 236M 0 236M 0% /dev
    tmpfs 245M 0 245M 0% /dev/shm
    tmpfs 245M 4.3M 241M 2% /run
    tmpfs 245M 0 245M 0% /sys/fs/cgroup
    vagrant 233G 171G 62G 74% /vagrant
    tmpfs 49M 0 49M 0% /run/user/500

    キャンセル

  • 2016/08/27 11:01

    ありがとうございます。共有は下記のとおりです
    http://www.hcn.zaq.ne.jp/cabnw708/pic/virtualbox_8.27.JPG
    CentOS側でのマウント状態は次の通りです。
    http://www.hcn.zaq.ne.jp/cabnw708/pic/df%20-h.JPG
    それとOSX側:Vagrantfileはvagrant initしたディレクトリを確認する方法を教えてください

    キャンセル

  • 2016/08/27 11:02

    一旦、OSXでの最初からの手順を書きますね。
    Vagrant initするところから全て書くのでやってみてください。
    私が作った中身が最小インストールのCentOS6のBOXを使う例です。

    $ cd $HOME
    $ mkdir test20160827
    $ cd test20160827
    $ vagrant init uemura/centos-6.7-x86_64 https://atlas.hashicorp.com/uemura/boxes/centos-6.7-x86_64
    $ vagrant up
    $ echo 'print "Hello world!"' > test.py
    $ vagrant ssh
    [vagrant@localhost ~]$ python /vagrant/test.py

    キャンセル

  • 2016/08/27 11:08

    ありがとうございます。この順番でやってみます

    キャンセル

  • 2016/08/27 11:10

    CentOS上でマウントされていませんね。
    CentOS側で次のコマンドを実行してもマウントされませんか?

    sudo mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` vagrant /vagrant

    もしマウントされない場合はVirtualBox Guest Additionが上手くインストールされていません。

    キャンセル

  • 2016/08/27 12:29

    centos-6.7-x86_64は作成されました。そしてhello world!と表示されました。この分のlogin →vagrant,password →vagrantではないようですね。
    そしてmountに関してはfailed to parse mount options で失敗です
    デバイスからGuest AdditionsCDイメージの挿入から入りましたがインストールされていないということですね
    参考にしたサイトです
    http://qiita.com/SUZUKI_Masaya/items/ac0c9e8eb060f84f25a3
    端末にPress Return to close this window...という表示が出てきたら、エンターキーを押す。この通りでできたのでインストール出来たものと思いました

    キャンセル

  • 2016/08/27 12:36

    この後に作業しないといけないことがあるのかもしれませんね
    http://qiita.com/delicious-locomoco/items/b83c9078d8b553c03778
    Macも同じでした

    キャンセル

  • 2016/08/27 13:01 編集

    今気づきました。vagrantユーザーのパスワードは未設定でしたね。いつも鍵でログインしてるのでパスワードは使ってません。もしパスワードを設定するならrootでログインして、passwd vagrantで設定してください。rootユーザーはパスワードvagrantで入れます。
    BOXは近いうちに再作成します。

    キャンセル

  • 2016/08/27 15:47

    お世話になります。VirtualBox Guest Additionが上手くインストールされていないと思います。macは
    http://www.hcn.zaq.ne.jp/cabnw708/pic/Mac.docx
    windowsは
    http://www.hcn.zaq.ne.jp/cabnw708/pic/windows.docx
    ソフトウェアーの実行で出てきた内容です。時間のある時でかまいませんので見ていただけませんか?よろしくお願いいたします。

    キャンセル

  • 2016/08/30 17:02

    お世話になります。
    VirtualBox Guest Additionがうまくインストール出来ていない原因は
    https://github.com/tommy-muehle/puppet-vagrant-boxes/releases/download/1.1.0/centos-7.0-x86_64.boxとvirtualBox5.024のバージョンが一致していないのかもしれないことが考えられますよね。そこでhttps://atlas.hashicorp.com/geerlingguy/boxes/centos7から再度インストールしなおしたいと思いますがvagrant init geerlingguy/centos7; vagrant up --provider virtualboを実行してもエラーが返ります。扱い方がよくわかりませんのでお教えください

    キャンセル

0

共有フォルダの設定をすればssh接続をしないでもファイルの編集を行うことが出来ます。
こちらなどを参考にするのがいいかと思います。
http://qiita.com/tanakachang/items/1367cef5df190548781c

共有フォルダを使用することで、Vagrantfileがある階層にappを配置すればvagrant sshした際のcd /vagrantとリンクしていますので、テキストエディタで編集可能になります。

投稿 2016/08/22 15:10

編集 2016/08/22 15:12

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    以下のような回答は評価を下げられます

    • 間違っている回答
    • 質問の回答になっていない投稿
    • 不快な投稿

    評価を下げる際はその理由をコメントに書き込んでください。

  • 2016/08/22 15:59

    vagrant上でrails new~をしたときにはvagrant上(正確にはvirtual boxのubuntu)にファイルがあるという事ですよね。
    だから共有フォルダーの設定を行い、パイプをつくるという理解で正しいでしょうか

    キャンセル

  • 2016/08/23 12:16

    手順は
    共有フォルダの設定(syncフォルダかシンボリックリンクをはる)がしてある前提ですが、
    vagrant ssh
    cd /vagrant
    /vagrant内にrails appを設置
    exit
    Vagrantfileがあるディレクトリにrails appが入っているかと思うので、そこのrails appを開いて編集すれば編集することが出来るかと思います。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

ただいまの回答率

91.99%

関連した質問

同じタグがついた質問を見る

  • Vagrant

    639questions

    Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

閲覧数の多いVagrantの質問