ウィンドウなしでバックグラウンドでVirtualBoxを実行しますか?


106

バックグラウンドでVirtualBoxを使用してUbuntu仮想マシンを実行できるかどうか、つまりウィンドウを開かずに考えていました。

アイデアは、バックグラウンドで実行されるLinuxホストにSSH経由で接続することです。

誰かがこのようなことをしたことがありますか?出来ますか?


SSH経由でLinux ゲストに接続するということですか?これはQEMUを使用して非常に簡単に行うことができ、実際にターミナルでゲストを実行します。
フェリックス

SSHの構成にも興味があるかもしれません:superuser.com/questions/424083/virtualbox-host-ssh-to-guest
Fabricio PH


1
この質問は元の質問として扱われる方が良いため、そのままにしておきます。他の質問で重複して終了することに投票しました。
bwDraco

@DragonLordに完全に同意します。ここをクリックして他の質問に移動し、この質問の裏切りとして閉じます。
レイスタファリアン

回答:


92

VBoxManage startvm $VM --type headless 指定された仮想マシンをバックグラウンドで起動します。

シャットダウンするには、ゲストにシャットダウンを要求します。


ネットワークを適切にセットアップした場合のみ、マシンにSSHで接続できます。VMとマシンが同じネットワーク上にあるように、bridgedを使用する必要があると思います。また、VirtualBoxは引き続きターゲットOSのGUIを実行し、リモートデスクトップ「rdesktop」(ubuntuにいるのでaptから取得)を介して接続できます
basszero

1
本当です。通常、VMはVirtualBox GUIを介して最初に実行され、インストールおよび構成されます。すべて(ネットワークを含む)が機能するようになったら、VBoxManageを使用してください。
発達

他のVMソフトウェアを使用すると、ウィンドウを閉じて常に開いているわけではなく、バックグラウンドで実行し続けることができますが、インターフェイスとやり取りしたいときにウィンドウを開きます。これはこれですか?
JFA

-Xまたは-Yを使用せずにsshを実行してください。上記のコマンドによってプロセスがシェルにアタッチされるため、終了するとVMが中断します。
モリッツ


23

絶対に!ヘッドレスインストール(Virtualbox)を探しています。コマンドラインからマシンを起動する方法は次のようなものです:

VBoxHeadless --startvm Debian --vrdp=off

ただし、何らかの接続方法が必要になります。私がやることは、ゲストとホストの間でポートをマッピングすることです。この構成では、ホスト2222ポートがゲストマシンのポート22にマップされます。

VBoxManage setextradata "Debian" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol" TCP  
VBoxManage setextradata "Debian" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort" 22  
VBoxManage setextradata "Debian" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort" 2222  

その後、次を使用してログインできます。

ssh localhost -p2222

vmはssh接続をリッスンしている必要がありますよね?これを明確にする価値があるかもしれません。
マテウスサンタナ

3

の代替VBoxManage startvm "{VMName}" --type headless
VBoxHeadless -startvm "{VMName}"

おもしろいことに、RDP上でVMをヘッドレスで実行する方法を見つけました。

注-少なくともウィンドウでは、コマンドウィンドウがブロックされます。コンソールウィンドウを引き続き使用する必要がある場合は、別のウィンドウを開いてVMを起動します。

VMをシャットダウンするには、ゲストOSにシャットダウンを要求します。VBoxHeadlessゲストが完全にシャットダウンしたときにコンソールを解放します(できますがCtrl+C、実際のマシンのハードリセットに類似していると思います)。


vboxheadlessがコンソールをブロックするという事実は、ヘッドレスモードの目的を非常に無効にします。Mac OS X(およびおそらくLinuxおよびSolaris)では、&を使用してvboxheadlessをバックグラウンドに送信すると、ヘッドレスモードが機能します。
アンドリューJ.ブレム

Windowsでそれを行う方法があると思いますが、私はそれを見つけていません。いずれにしても、ヘッドレスvmは、完全なGUIを実行しているものよりもサーバーコンピューター上のリソースの使用量が少ないことは確かです。
偽の名前


2

私はシームレスモードが彼がここで探しているものだとは思いません。適切なものはマニュアルで詳細がわかるVBoxHeadlessだと思います。コマンドラインインターフェイスを使用して実行され、たとえば、仮想マシンがサーバー上で実行されていたが、サーバーからの表示が望ましくない場合に使用されます。マシン上でリモートデスクトップを実行できます(コマンドラインからオプションを設定する方法を知っている場合)。

virtualboxフォーラムでこれを尋ねることをお勧めします。実際、これはすでに質問されていると思うので、最初に検索を行います。


VBoxManageは正しいことでした、ごめんなさい。マニュアルの情報をリンクhttp://www.virtualbox.org/manual/ch08.html


2

GUIを使用してヘッドレスモードで起動するには:

ホールドシフト VMの起動時にキーを押します。

その後、GUIに接続したり、GUIから切断したりすることもできます(Show and Machine-> GUIの切り離しオプションを使用)。


1

Linux(CentOS 5.6)でバックグラウンド化する場合、ヘッドレスモードは正常に動作するようですが、プロセスがバックグラウンド化されている限り、RDP機能へのアクセスを失います。「fg」を実行してプロセスをフォアグラウンドに戻すと、RDP機能が復元されます。vmヘッドレスを開始するには、コンソールとの対話性が不要なinitスクリプトを使用するのが最適です。


1

VBoxHeadlessを使用できます(または、これについて誰も言及していないのはなぜかと思います)。起動オプションの1つを選択するだけで、GUIなしでVMを実行できます。

Shiftキーを押しながらマシンを起動するか、マシンを右クリックして[実行]の下の[出力なしで実行]などを検索します。


0

これらの行を.bashrcに追加しました。

VM='anakim'
alias vm='VBoxManage startvm $VM --type headless'
alias sshvm='ssh -p2222 localhost'

sshアクセスの場合、NATを保持するだけで構成を変更する必要はなく、次のようにポート転送テーブルを設定できます。

Name      | Protocol | Host Port | Guest Port
guestssh  | TCP      | 2222      | 22
localhost | TCP      | 8080      | 80

localhost:8080をマシンのブラウザーに挿入すると、VM(ポート80)からのページが開きます。


0

VMが実行されていて、画面が表示されている場合は、次の手順を実行して非表示にできます。

ここに画像の説明を入力してください

ここに画像の説明を入力してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.