<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://wiki.archlinux.jp/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Inkch</id>
	<title>ArchWiki - 利用者の投稿記録 [ja]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.archlinux.jp/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Inkch"/>
	<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php/%E7%89%B9%E5%88%A5:%E6%8A%95%E7%A8%BF%E8%A8%98%E9%8C%B2/Inkch"/>
	<updated>2026-04-18T10:17:11Z</updated>
	<subtitle>利用者の投稿記録</subtitle>
	<generator>MediaWiki 1.44.3</generator>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=Dash&amp;diff=14581</id>
		<title>Dash</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Dash&amp;diff=14581"/>
		<updated>2019-05-21T10:39:48Z</updated>

		<summary type="html">&lt;p&gt;Inkch: dash, bashのインストール容量が誤っていたため修正&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:コマンドシェル]]&lt;br /&gt;
[[en:Dash]]&lt;br /&gt;
{{related articles start}}&lt;br /&gt;
{{related|コマンドラインシェル}}&lt;br /&gt;
{{related|Bash}}&lt;br /&gt;
{{related articles end}}&lt;br /&gt;
&lt;br /&gt;
[[Wikipedia:ja:Debian Almquist shell|Dash]] は近代的な POSIX 互換の [[wikipedia:Bourne_shell|{{ic|/bin/sh}} (sh, Bourne shell)]] の実装です。&lt;br /&gt;
&lt;br /&gt;
Dash は [[Bash]] 互換ではありませんが以下のような特徴があります:&lt;br /&gt;
&lt;br /&gt;
*実行速度が速い。Bash などのシェルに比べて [https://unix.stackexchange.com/questions/148035/is-dash-or-some-other-shell-faster-than-bash 4倍高速] に動作します。&lt;br /&gt;
*使用するリソースが少ない (ディスク容量, RAM, CPU)。Bash などよりもずっと小さくコンパクトです (インストール容量は Bash の 6.5 MB に比べて 134.1 kB で、ソースコードの行数は 176 kSLOC に対して 13 kSLOC です)。&lt;br /&gt;
*セキュリティが高い。古くに開始されたプロジェクトであり、シンプルながら長い実績があります。そして [https://git.kernel.org/cgit/utils/dash/dash.git/stats/?period=q&amp;amp;ofs=10 多くの開発者] が携わっている [https://git.kernel.org/cgit/utils/dash/dash.git/log/ 活発に開発されている] プロジェクトでもあります。攻撃されるような部位は少なく、コードを見ている目はたくさんあります。&lt;br /&gt;
&lt;br /&gt;
==インストール==&lt;br /&gt;
&lt;br /&gt;
{{Pkg|dash}} パッケージから[[インストール]]できます。または {{AUR|dash-static-musl}} パッケージをインストールしてください。&lt;br /&gt;
&lt;br /&gt;
==DASH をデフォルトシェルとして使う==&lt;br /&gt;
&lt;br /&gt;
ほとんどの POSIX 互換スクリプトはスクリプトの一番最初の行に {{ic|/bin/sh}} を指定しており、{{ic|/bin/sh}} がシェルとして動作しますが、Arch ではデフォルトで {{ic|/bin/bash}} へのシンボリックリンクになっています。&lt;br /&gt;
&lt;br /&gt;
{{ic|/bin/sh}} から {{ic|/bin/dash}} にシンボリックリンクを貼り直すことでシステムのパフォーマンスを向上させることができます。ただその前に、明示的に {{ic|#!/bin/bash}} を指定してないスクリプトが、ちゃんと POSIX 互換であり Bash の機能を使っていないことを確認する必要があります。&lt;br /&gt;
&lt;br /&gt;
===bashism を確認===&lt;br /&gt;
&lt;br /&gt;
Dash に含まれていない Bash の機能 (&#039;bashism&#039;) は {{ic|/bin/bash}} を明示的に指定していないと動作しなくなります。以下の手順に従うことで修正が必要なスクリプトがないか確認することができます。&lt;br /&gt;
&lt;br /&gt;
{{Pkg|checkbashisms}} パッケージをインストールしてください。&lt;br /&gt;
&lt;br /&gt;
====チェックするべき場所====&lt;br /&gt;
&lt;br /&gt;
*インストールしたスクリプトの {{ic|#!/bin/sh}} シバン:&lt;br /&gt;
&lt;br /&gt;
 $ gawk &#039;/^#!.*( |[/])sh/{printf &amp;quot;%s\0&amp;quot;, FILENAME} {nextfile}&#039; /usr/bin/* | xargs -0 checkbashisms&lt;br /&gt;
&lt;br /&gt;
*{{ic|pacman -Qlq}} を使うことで pacman でインストールしたファイルを全て一覧することができます。&lt;br /&gt;
&lt;br /&gt;
===/bin/sh の再リンク===&lt;br /&gt;
&lt;br /&gt;
機能が破壊されないことを確認できたら、{{ic|/bin/sh}} のリンクを変更しても安全なはずです。再リンクを行うには次のコマンドを使用:&lt;br /&gt;
 # ln -sfT dash /usr/bin/sh&lt;br /&gt;
Bash がアップデートされるとデフォルトのシンボリックリンクで {{ic|/bin/sh}} が上書きされます。上書きされないようにするには、以下の [[Pacman#フック|pacman フック]]を使って、アップデート後に {{ic|/bin/sh}} のリンクを再度作成するようにしてください:&lt;br /&gt;
 [Trigger]&lt;br /&gt;
 Type = Package&lt;br /&gt;
 Operation = Install&lt;br /&gt;
 Operation = Upgrade&lt;br /&gt;
 Target = bash&lt;br /&gt;
 &lt;br /&gt;
 [Action]&lt;br /&gt;
 Description = Re-pointing /bin/sh symlink to dash...&lt;br /&gt;
 When = PostTransaction&lt;br /&gt;
 Exec = /usr/bin/ln -sfT dash /usr/bin/sh&lt;br /&gt;
 Depends = dash&lt;br /&gt;
&lt;br /&gt;
このフックは {{AUR|dashbinsh}} でもインストールできます。&lt;br /&gt;
&lt;br /&gt;
==参照==&lt;br /&gt;
&lt;br /&gt;
*http://article.gmane.org/gmane.linux.arch.devel/11418&lt;br /&gt;
*https://mailman.archlinux.org/pipermail/arch-dev-public/2007-November/003053.html&lt;br /&gt;
*https://launchpad.net/ubuntu/+spec/dash-as-bin-sh&lt;br /&gt;
*https://wiki.ubuntu.com/DashAsBinSh&lt;/div&gt;</summary>
		<author><name>Inkch</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=%E3%83%9E%E3%83%AB%E3%83%81%E3%83%87%E3%82%A3%E3%82%B9%E3%83%97%E3%83%AC%E3%82%A4&amp;diff=13699</id>
		<title>マルチディスプレイ</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=%E3%83%9E%E3%83%AB%E3%83%81%E3%83%87%E3%82%A3%E3%82%B9%E3%83%97%E3%83%AC%E3%82%A4&amp;diff=13699"/>
		<updated>2018-12-20T04:36:51Z</updated>

		<summary type="html">&lt;p&gt;Inkch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:X サーバー]]&lt;br /&gt;
[[en:Multihead]]&lt;br /&gt;
[[fa:Multihead]]&lt;br /&gt;
[[zh-hans:Multihead]]&lt;br /&gt;
{{Related articles start}}&lt;br /&gt;
{{Related|Xorg}}&lt;br /&gt;
{{Related|xrandr}}&lt;br /&gt;
{{Related|NVIDIA#マルチモニター}}&lt;br /&gt;
{{Related|Nouveau#デュアルディスプレイ}}&lt;br /&gt;
{{Related|AMD Catalyst#デュアルディスプレイ (デュアルヘッド / デュアルスクリーン / Xinerama)}}&lt;br /&gt;
{{Related|ATI#マルチモニターの設定}}&lt;br /&gt;
{{Related4|Extreme Multihead}}&lt;br /&gt;
{{Related articles end}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;マルチヘッド&#039;&#039;&#039;, &#039;&#039;&#039;マルチスクリーン&#039;&#039;&#039;, &#039;&#039;&#039;マルチディスプレイ&#039;&#039;&#039;, &#039;&#039;&#039;マルチモニター&#039;&#039;&#039;は複数のディスプレイデバイスをコンピューターに接続して使用することを言います。この記事ではマルチディスプレイを設定する方法の説明や、設定例を示します。&lt;br /&gt;
&lt;br /&gt;
{{Note|混乱を避けるために、この記事で使用する単語の意味を明確にします:&lt;br /&gt;
* &#039;&#039;&#039;モニター&#039;&#039;&#039;は LCD パネルのような物理的な表示デバイスを示します。&lt;br /&gt;
* &#039;&#039;&#039;スクリーン&#039;&#039;&#039;は X-Window の画面を示します (つまり&#039;&#039;&#039;モニター&#039;&#039;&#039;は&#039;&#039;&#039;ディスプレイ&#039;&#039;&#039;に接続されます)。&lt;br /&gt;
* &#039;&#039;&#039;ディスプレイ&#039;&#039;&#039;はデスクトップの各部位を示すのに同時に使われる&#039;&#039;&#039;スクリーン&#039;&#039;&#039;の集合を示します (&#039;&#039;&#039;ディスプレイ&#039;&#039;&#039;の中の&#039;&#039;&#039;スクリーン&#039;&#039;&#039;でウィンドウをドラッグすることができます)。&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== 歴史的背景 ==&lt;br /&gt;
&lt;br /&gt;
全てとはいわなくてもほとんどの Unix/Linux コンピュータでは GUI を提供するために X Window System を基盤のグラフィカルインターフェイスとして使っています。X は1984年に MIT で開発されました。開発は35年間も続いており、その間に新しい機能や概念が追加され、ちょっとした化物と言われるようにまでなっています。長い開発の歴史の中で、[[Wikipedia:ja:タイムシェアリングシステム|タイムシェアリングシステム]]によって Xterminal に個別のビューを提供する単一の X というのが最も一般的な設定だったということを覚えておきましょう。近年になって、デスクトップやノートパソコンに単一のスクリーンを提供する X が標準となったのです。&lt;br /&gt;
&lt;br /&gt;
{{Note|[[Wikipedia:Multiseat configuration|Zaphod display ]]と呼ばれる珍しい設定が存在します。複数のユーザーがそれぞれ独立したディスプレイ、マウス、キーボードを1台のコンピューターに接続することで、各ユーザーが別個のコンピューターを利用しているかのような環境を提供するものです。1席あたりのコストを下げることができます。}}&lt;br /&gt;
&lt;br /&gt;
以上のことが意味するのは、同じことをするのに多数の方法が存在して、同じ目的を達成するのに少しづつ方法が変わってくるということです。X の最近のバージョンでは、設定にはほとんど触れずともよかったり、もしくは全く設定が不要な場合もあります。ここ数年では X が自分で設定を行ってしまうようになっています。設定は少なければ少ないほど良いという経験則が存在しますが、これはすなわち、&#039;&#039;何も設定しないのが一番良い&#039;&#039;わけです。&lt;br /&gt;
&lt;br /&gt;
== スクリーンの分割 ==&lt;br /&gt;
&lt;br /&gt;
X でマルチモニタを設定する最古の方法であり、数十年間も使われています。物理モニターのそれぞれに X スクリーンを割り当てるので、マウスをそれぞれのスクリーンで動かすことができ、各スクリーンは多かれ少なかれ独立します。&lt;br /&gt;
&lt;br /&gt;
通常 X ディスプレイには {{ic|DISPLAY}} 環境変数によって {{ic|:0}} のように ID が一つだけ指定されていますが、この設定では、各スクリーンごとに別々の値を {{ic|$DISPLAY}} に指定します。一番目のスクリーンは {{ic|:0.0}} 、二番目のスクリーンは {{ic|:0.1}} と続きます。&lt;br /&gt;
&lt;br /&gt;
この設定を使用する場合、ウィンドウを別のスクリーンに移動させることはできません。ただし GIMP や Emacs などマルチスクリーンをサポートしている（ごく少数の）特別なプログラムは別です。ほとんどのプログラムでは、別のスクリーンにプログラムを表示するには {{ic|DISPLAY}} 環境変数を変更する必要が出て来ます:&lt;br /&gt;
&lt;br /&gt;
 # Launch a terminal on the second screen&lt;br /&gt;
 $ DISPLAY=:0.1 urxvt &amp;amp;&lt;br /&gt;
&lt;br /&gt;
また、各スクリーン上のターミナルからプログラムを起動した場合、プログラムは {{ic|DISPLAY}} の値を引き継いで、ターミナルと同じスクリーン上に表示されます。ただし、アプリケーションを別のスクリーンに移動しようと思った時は、一度アプリケーションを閉じてから、別のスクリーンからもう一度アプリケーションを開くことになります。&lt;br /&gt;
&lt;br /&gt;
この方法を使用する利点としては、スクリーン上にポップアップウィンドウが表示されたときに、別のスクリーンで作業中のマウスのフォーカスが盗られないということが挙げられます。それぞれのスクリーンは完全に独立して存在します。&lt;br /&gt;
&lt;br /&gt;
== Xinerama ==&lt;br /&gt;
&lt;br /&gt;
[[Wikipedia:ja:Xinerama|Xinerama]] は X のマルチスクリーンを実現する古い手段です。Xinerama は全てのモニターを単一のスクリーン ({{ic|:0}}) にまとめるため、スクリーンを通り越してウィンドウをドラッグすることができます。&lt;br /&gt;
&lt;br /&gt;
Xinerama は [[Xorg#設定|X の設定ファイル]]をカスタマイズすることで設定します。以下に例を挙げます:&lt;br /&gt;
&lt;br /&gt;
以下は各モニターを相対的に配置する ServerLayout セクションです。&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/X11/xorg.conf.d/90-serverlayout.conf|&lt;br /&gt;
Section &amp;quot;ServerLayout&amp;quot;&lt;br /&gt;
  Identifier   &amp;quot;Main&amp;quot;&lt;br /&gt;
  Screen       0 &amp;quot;Primary&amp;quot;&lt;br /&gt;
  Screen       1 &amp;quot;DellPortraitLeft&amp;quot; RightOf &amp;quot;Primary&amp;quot;&lt;br /&gt;
  Screen       2 &amp;quot;Wacom&amp;quot; RightOf &amp;quot;DellPortraitLeft&amp;quot;&lt;br /&gt;
  Screen       3 &amp;quot;U2412&amp;quot; LeftOf &amp;quot;Primary&amp;quot;&lt;br /&gt;
  Option         &amp;quot;Xinerama&amp;quot; &amp;quot;1&amp;quot;  # enable XINERAMA extension.  Default is disabled.&lt;br /&gt;
EndSection&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
上記セクションの各 Screen は別のファイルで定義します、例えば:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/X11/xorg.conf.d/30-screen-dell2001.conf|&lt;br /&gt;
# Define the monitor&#039;s physical specs&lt;br /&gt;
Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
  Identifier   &amp;quot;Dell 2001FP&amp;quot;&lt;br /&gt;
  VertRefresh  60&lt;br /&gt;
  Option  &amp;quot;dpms&amp;quot;  &amp;quot;on&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  # Modelines are probably unnecessary these days, but it does give you fine grained control&lt;br /&gt;
&lt;br /&gt;
  # 1600x1200 @ 60.00 Hz (GTF) hsync: 74.52 kHz; pclk: 160.96 MHz&lt;br /&gt;
  Modeline &amp;quot;1600x1200&amp;quot;  160.96  1600 1704 1880 2160  1200 1201 1204 1242  -HSync +Vsync&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;br /&gt;
# Define a screen that uses the above monitor.  Note the Monitor value matches the above&lt;br /&gt;
# Identifier value, and the Device value matches one of the video cards defined below&lt;br /&gt;
# (the card and connector this monitor is actually plugged in to.)&lt;br /&gt;
Section &amp;quot;Screen&amp;quot;&lt;br /&gt;
  Identifier   &amp;quot;DellPortraitLeft&amp;quot;&lt;br /&gt;
  Device       &amp;quot;GeForce 8600GTb&amp;quot;&lt;br /&gt;
  Monitor      &amp;quot;Dell 2001FP&amp;quot;&lt;br /&gt;
  DefaultDepth 24&lt;br /&gt;
  SubSection &amp;quot;Display&amp;quot;&lt;br /&gt;
    Depth     24&lt;br /&gt;
    Modes     &amp;quot;1600x1200&amp;quot;&lt;br /&gt;
    ViewPort  0 0&lt;br /&gt;
    Virtual   1600 1200&lt;br /&gt;
  EndSubsection&lt;br /&gt;
&lt;br /&gt;
  # This screen is in portrait mode&lt;br /&gt;
  Option &amp;quot;Rotate&amp;quot; &amp;quot;left&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
複数のビデオカードを使う場合、各モニターごとに {{ic|Device}} セクションを記述する必要があります。&lt;br /&gt;
&lt;br /&gt;
以下は、2つのビデオカードにそれぞれ2つのモニターを接続する (計4つのモニターを利用する) 際の設定例です。&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/X11/xorg.conf.d/20-nvidia.conf|&lt;br /&gt;
# First head of first video card in the system&lt;br /&gt;
Section &amp;quot;Device&amp;quot;&lt;br /&gt;
  Identifier  &amp;quot;GeForce 8600GT&amp;quot;&lt;br /&gt;
  Driver      &amp;quot;nvidia&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  # If you have multiple video cards, the BusID controls which one this definition refers&lt;br /&gt;
  # to.  You can omit it if you only have one card.&lt;br /&gt;
  BusID       &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  # Need to flag this as only referring to one output on the card&lt;br /&gt;
  Screen      0&lt;br /&gt;
&lt;br /&gt;
  # For nVidia devices, this controls which connector the monitor is connected to.&lt;br /&gt;
  Option      &amp;quot;UseDisplayDevice&amp;quot;   &amp;quot;DFP-0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  # We want control!&lt;br /&gt;
  Option      &amp;quot;DynamicTwinView&amp;quot;    &amp;quot;FALSE&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  # Various performance and configuration options&lt;br /&gt;
  Option      &amp;quot;AddARGBGLXVisuals&amp;quot;  &amp;quot;true&amp;quot;&lt;br /&gt;
  Option      &amp;quot;UseEDIDDpi&amp;quot;         &amp;quot;false&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DPI&amp;quot;                &amp;quot;96 x 96&amp;quot;&lt;br /&gt;
  Option      &amp;quot;Coolbits&amp;quot;           &amp;quot;1&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;br /&gt;
# Second head of same video card (note different Identifier but same BusID.)  We can omit&lt;br /&gt;
# the UseDisplayDevice option this time as it will pick whichever one is remaining.&lt;br /&gt;
Section &amp;quot;Device&amp;quot;&lt;br /&gt;
  Identifier  &amp;quot;GeForce 8600GTb&amp;quot;&lt;br /&gt;
  Driver      &amp;quot;nvidia&amp;quot;&lt;br /&gt;
  BusID       &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
  # This is the second output on this card&lt;br /&gt;
  Screen      1&lt;br /&gt;
&lt;br /&gt;
  # Same config options for all cards&lt;br /&gt;
  Option      &amp;quot;AddARGBGLXVisuals&amp;quot;  &amp;quot;true&amp;quot;&lt;br /&gt;
  Option      &amp;quot;UseEDIDDpi&amp;quot;         &amp;quot;false&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DPI&amp;quot;                &amp;quot;96 x 96&amp;quot;&lt;br /&gt;
  Option      &amp;quot;Coolbits&amp;quot;           &amp;quot;1&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DynamicTwinView&amp;quot;    &amp;quot;FALSE&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;br /&gt;
# First head of second video card, note different BusID.&lt;br /&gt;
Section &amp;quot;Device&amp;quot;&lt;br /&gt;
  Identifier  &amp;quot;G210&amp;quot;&lt;br /&gt;
  Driver      &amp;quot;nvidia&amp;quot;&lt;br /&gt;
  BusID       &amp;quot;PCI:2:0:0&amp;quot;&lt;br /&gt;
  Screen      0&lt;br /&gt;
&lt;br /&gt;
  # Same config options for all cards&lt;br /&gt;
  Option      &amp;quot;AddARGBGLXVisuals&amp;quot;  &amp;quot;true&amp;quot;&lt;br /&gt;
  Option      &amp;quot;UseEDIDDpi&amp;quot;         &amp;quot;false&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DPI&amp;quot;                &amp;quot;96 x 96&amp;quot;&lt;br /&gt;
  Option      &amp;quot;Coolbits&amp;quot;           &amp;quot;1&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DynamicTwinView&amp;quot;    &amp;quot;FALSE&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;br /&gt;
# Second head of second video card.  Output connector is set here, which means the previous&lt;br /&gt;
# Device will use the other connector, whatever it may be.&lt;br /&gt;
Section &amp;quot;Device&amp;quot;&lt;br /&gt;
  Identifier  &amp;quot;G210b&amp;quot;&lt;br /&gt;
  Driver      &amp;quot;nvidia&amp;quot;&lt;br /&gt;
  BusID       &amp;quot;PCI:2:0:0&amp;quot;&lt;br /&gt;
  Screen      1&lt;br /&gt;
  Option      &amp;quot;UseDisplayDevice&amp;quot;   &amp;quot;DFP-1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  # Same config options for all cards&lt;br /&gt;
  Option      &amp;quot;AddARGBGLXVisuals&amp;quot;  &amp;quot;true&amp;quot;&lt;br /&gt;
  Option      &amp;quot;UseEDIDDpi&amp;quot;         &amp;quot;false&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DPI&amp;quot;                &amp;quot;96 x 96&amp;quot;&lt;br /&gt;
  Option      &amp;quot;Coolbits&amp;quot;           &amp;quot;1&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DynamicTwinView&amp;quot;    &amp;quot;FALSE&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== TwinView ==&lt;br /&gt;
&lt;br /&gt;
TwinView はビデオカードに接続された2つのモニターを1つのスクリーンとして表示させる nVidia の拡張です。TwinView は Xinerama 拡張を内包しており、2つのモニターが接続されていることをアプリケーションは知ることができますが、TwinView は Xinerama と両立して使うことができません。ただしモニターを2つだけしか使っておらず、また、どちらのモニターも同一の nVidia カードに接続している場合、TwinView と Xinerama に違いはほとんどありません (この場合 TwinView の方が少しだけ高いパフォーマンスが得られるというのが唯一の違いです)。&lt;br /&gt;
&lt;br /&gt;
2つ以上のモニターを接続したり、他のビデオカードにモニターを接続する場合、TwinView ではなく Xinerama を使用する必要があります。2012年4月現在、TwinView ではモニターの向きを合わせる必要があります。片方をランドスケープモードにして、もう片方をポートレートモードにすることは出来ません。&lt;br /&gt;
&lt;br /&gt;
昔は、nVidia のカードで OpenGL のアクセラレーションを使いながら別のスクリーンにウィンドウをドラッグするには TwinView を使うしか方法がありませんでした。最新バージョンの nVidia のクローズドソースドライバーでは Xinerama を使用している場合でも OpenGL のアクセラレーションを得ることができるようになっています。&lt;br /&gt;
&lt;br /&gt;
設定例は [[NVIDIA#TwinView]] を見て下さい。&lt;br /&gt;
&lt;br /&gt;
== RandR ==&lt;br /&gt;
&lt;br /&gt;
[[Wikipedia:ja:XRandR|RandR]] (&#039;&#039;&#039;R&#039;&#039;&#039;otate &#039;&#039;&#039;and&#039;&#039;&#039; &#039;&#039;&#039;R&#039;&#039;&#039;esize) はクライアントが動的にスクリーンを変更 (例: リサイズ、回転、反転) できるようにする、[[Wikipedia:ja:X Window System|X Window System]] の拡張です。ほとんどの場合、RandR は旧 Xinerama のセットアップを完全に置き換えることができます。RandR が Xinerama よりも優れている理由については [https://i3wm.org/docs/multi-monitor.html#_the_explanation この説明] を見て下さい。&lt;br /&gt;
&lt;br /&gt;
RandR は [[xrandr]] ツールを使って現在のセッションに限って設定を行ったり、[[Xorg#設定|xorg.conf]] ファイルで永続的に設定することができます。&lt;br /&gt;
&lt;br /&gt;
{{Note|There are multiple ways to configure the same thing, you might have to experiment a little before you find the best configuration.}}&lt;br /&gt;
&lt;br /&gt;
=== xrandr を使って設定 ===&lt;br /&gt;
&lt;br /&gt;
{{Note|&#039;&#039;xrandr&#039;&#039; に関する基本的な情報は [[xrandr]] のページを読んでください。}}&lt;br /&gt;
&lt;br /&gt;
相対的にスクリーンを配列したり ({{ic|--right-of}}, {{ic|--left-of}}, {{ic|--above}}, {{ic|--below}} オプションを使用)、絶対座標を使って配置することができます ({{ic|--pos}} オプションを使用。絶対座標を使う場合はモニターの解像度を知る必要があります)。詳しくは {{ic|man xrandr}} を見て下さい。よく使われる設定については以下で説明します。&lt;br /&gt;
&lt;br /&gt;
==== HDMI1 の左側に適切な解像度で VGA1 を表示 ====&lt;br /&gt;
&lt;br /&gt;
 $ xrandr --output VGA1 --auto --output HDMI1 --auto --right-of VGA1&lt;br /&gt;
&lt;br /&gt;
{{ic|--right-of}} はスクリーン ({{ic|HDMI1}}) を指定したスクリーン ({{ic|VGA1}}) の右に配置します。&lt;br /&gt;
&lt;br /&gt;
==== HDMI1 の右側に指定した解像度で VGA1 を表示 ====&lt;br /&gt;
&lt;br /&gt;
 $ xrandr --output VGA1 --mode 1024x768 --pos 1920x0 --output HDMI1 --mode 1920x1080 --pos 0x0&lt;br /&gt;
&lt;br /&gt;
または&lt;br /&gt;
&lt;br /&gt;
 $ xrandr --output VGA1 --mode 1024x768 --output HDMI1 --mode 1920x1080 --left-of VGA1&lt;br /&gt;
&lt;br /&gt;
{{ic|--left-of}} はスクリーン ({{ic|HDMI1}}) を指定したスクリーン ({{ic|VGA1}}) の左に配置します。&lt;br /&gt;
&lt;br /&gt;
=== xorg.conf を使って設定 ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;xrandr&#039;&#039; を使用する方法と似ており、各スクリーンごとに {{ic|Monitor}} セクションを記述します。{{ic|Identifier}} には、{{ic|xrandr -q}} によって確認できる値と同じ値を使用します ({{ic|--output VGA1}} ではなく {{ic|Identifier &amp;quot;VGA1&amp;quot;}} を用います)。&lt;br /&gt;
&lt;br /&gt;
==== 例: 相対座標を用いるデュアルヘッド設定 ====&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/X11/xorg.conf|&lt;br /&gt;
Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
    Identifier  &amp;quot;VGA1&amp;quot;&lt;br /&gt;
    Option      &amp;quot;Primary&amp;quot; &amp;quot;true&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;br /&gt;
Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
    Identifier  &amp;quot;HDMI1&amp;quot;&lt;br /&gt;
    Option      &amp;quot;LeftOf&amp;quot; &amp;quot;VGA1&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== 例: 絶対座標を用いるデュアルヘッド設定 ====&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/X11/xorg.conf|&lt;br /&gt;
Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
    Identifier  &amp;quot;VGA1&amp;quot;&lt;br /&gt;
    Option      &amp;quot;PreferredMode&amp;quot; &amp;quot;1024x768&amp;quot;&lt;br /&gt;
    Option      &amp;quot;Position&amp;quot; &amp;quot;1920 312&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;br /&gt;
Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
    Identifier  &amp;quot;HDMI1&amp;quot;&lt;br /&gt;
    Option      &amp;quot;PreferredMode&amp;quot; &amp;quot;1920x1080&amp;quot;&lt;br /&gt;
    Option      &amp;quot;Position&amp;quot; &amp;quot;0 0&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
負の座標はありません。一番左上の座標は 0,0 になります。&lt;br /&gt;
&lt;br /&gt;
{{bc|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
(0,0)-----------------+ &lt;br /&gt;
|                     |(1920,312)---+&lt;br /&gt;
|     1920 x 1080     ||            |&lt;br /&gt;
|        HDMI1        || 1024 x 768 |&lt;br /&gt;
|                     ||    VGA1    |&lt;br /&gt;
+---------------------++------------+&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
== アプリケーションのサポート ==&lt;br /&gt;
&lt;br /&gt;
このセクションでは個別のアプリケーションに関してのヒントを記述しています。&lt;br /&gt;
&lt;br /&gt;
* mplayer: {{ic|-xineramascreen 1}} を使えば動画をセカンドスクリーンで再生できます。{{ic|~/.mplayer/config}} に {{ic|1=xineramascreen=1}} を追加することで永続的に設定できます。&lt;br /&gt;
* Xonotic: 複数の画面にまたがって再生するときに左右を変えられないとき、{{ic|~/.xonotic/data/config.cfg}} で {{ic|vid_stick_mouse}} を 1 に設定してください。&lt;br /&gt;
&lt;br /&gt;
=== ウィンドウマネージャ ===&lt;br /&gt;
&lt;br /&gt;
このセクションではウィンドウマネージャのマルチモニター対応状況を載せています。&lt;br /&gt;
&lt;br /&gt;
* [[Awesome]] - 動作します。&lt;br /&gt;
* [[FVWM]] - 動作します。Xinerama をサポートしており、Single Logical Screen のようなマルチスクリーンディスプレイが使えます。&lt;br /&gt;
* [[i3]] - 動作します。&lt;br /&gt;
* [[KDE]] - 動作します。&lt;br /&gt;
* [[MATE]] - 動作します。&lt;br /&gt;
* [[Qtile]] - 動作します。&lt;br /&gt;
* [[Spectrwm]] - 動作します (スクリーンには別々のワークスペースが割り当てられ、キーボードやマウスで切り替えることができます) - 2015年3月現在&lt;br /&gt;
* [[Xmonad]] - 動作します (スクリーンには別々のワークスペースが割り当てられ、キーボードやマウスで切り替えることができます) - 2014年4月現在&lt;br /&gt;
&lt;br /&gt;
=== ディスプレイマネージャ ===&lt;br /&gt;
&lt;br /&gt;
* [[GDM]]: gdm は gnome のディスプレイ設定が適用されないため、ログイン画面が適切なモニターに表示されないことがあります。対象方法は [https://bbs.archlinux.org/viewtopic.php?pid=1262282#p1262282 こちら] にあります。ユーザーのモニター設定を gdm の設定にコピーするだけです。&lt;br /&gt;
* [[KDM]]: 動作します。&lt;br /&gt;
&lt;br /&gt;
ディスプレイマネージャがマルチディスプレイに対応していない場合、{{ic|startx}} と {{ic|~/.xinitrc}} を使うという方法もあります。&lt;br /&gt;
&lt;br /&gt;
=== フルスクリーンゲーム ===&lt;br /&gt;
&lt;br /&gt;
多くのゲームはフルスクリーンで実行したときにウィンドウを (0,0) に表示します。(0,0) にある左のディスプレイでゲームを遊びたくない場合、フルスクリーンのゲームを別のスクリーンに移動することは不可能です。&lt;br /&gt;
&lt;br /&gt;
A workaround for this is to create a separate X11 configuration (a new &#039;&#039;&#039;layout&#039;&#039;&#039;) just for playing games, which may have less (or only one) screen configured.  You can then launch games using this separate layout, while normal desktop work uses the original multihead configuration.&lt;br /&gt;
&lt;br /&gt;
To create a new layout, copy {{ic|/etc/X11/xorg.d/90-serverlayout.conf}} and call it {{ic|91-serverlayout-gaming.conf}}.  It is important to use a number larger than 90, as the one with the lowest number will become the default used when you first load X.&lt;br /&gt;
&lt;br /&gt;
Adjust this new configuration file to your preferred gaming configuration.  Here is an example (based on the example Xinerama configuration above) with only one screen defined, noting that the screen specifics (such as resolution) are defined in other files and are unchanged from and shared with the normal configuration:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/X11/xorg.conf.d/91-serverlayout-gaming.conf|&lt;br /&gt;
# New screen layout only using a single screen called &amp;quot;Primary&amp;quot;&lt;br /&gt;
Section &amp;quot;ServerLayout&amp;quot;&lt;br /&gt;
    Identifier   &amp;quot;Gaming&amp;quot;&lt;br /&gt;
    Screen       0 &amp;quot;Primary&amp;quot; Absolute 0 0&lt;br /&gt;
EndSection&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Tip|While it&#039;s easiest to just reuse the existing screen definitions, you can of course define new ones if you wish to have a different set of screen resolutions available.}}&lt;br /&gt;
&lt;br /&gt;
この新しいレイアウトを使用するには、{{ic|startx}} スクリプトを使ってゲームを起動します:&lt;br /&gt;
&lt;br /&gt;
 # Launch Xonotic on a new X11 display using the &amp;quot;Gaming&amp;quot; layout&lt;br /&gt;
 startx /usr/bin/xonotic-glx -fullscreen -- :1 -layout Gaming&lt;br /&gt;
&lt;br /&gt;
ノート:&lt;br /&gt;
* 実行するコマンドはフルパスで指定してください。上記の場合 {{ic|/usr/bin/xonotic-glx}} です。&lt;br /&gt;
* The {{ic|:1}} must refer to an empty unused display.  The first display you are likely using for your desktop is {{ic|:0}}, so {{ic|:1}} will be fine for most people.  But should you want to launch a second game at the same time, you would have to change this to {{ic|:2}}.&lt;br /&gt;
* Just as you can switch between text consoles with Alt+Ctrl+F1 and back to X with Alt+Ctrl+F7, the new display will sit on Alt+Ctrl+F8.  So you can switch back to your desktop with Alt+Ctrl+F7 and back to the game with Alt+Ctrl+F8.  This is because you are running an independent X desktop, so if you switch out of the game with Alt+Tab or equivalent there will be an empty desktop with no window manager running.&lt;br /&gt;
&lt;br /&gt;
== 参照 ==&lt;br /&gt;
&lt;br /&gt;
* [https://bbs.archlinux.org/viewtopic.php?pid=652861 &#039;How I got Dual Monitors with Nouveau Driver&#039; forums thread]&lt;/div&gt;</summary>
		<author><name>Inkch</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=%E3%83%9E%E3%83%AB%E3%83%81%E3%83%87%E3%82%A3%E3%82%B9%E3%83%97%E3%83%AC%E3%82%A4&amp;diff=13698</id>
		<title>マルチディスプレイ</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=%E3%83%9E%E3%83%AB%E3%83%81%E3%83%87%E3%82%A3%E3%82%B9%E3%83%97%E3%83%AC%E3%82%A4&amp;diff=13698"/>
		<updated>2018-12-20T04:05:30Z</updated>

		<summary type="html">&lt;p&gt;Inkch: 和訳 (Xineramaで複数のビデオカードを利用する手順について)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:X サーバー]]&lt;br /&gt;
[[en:Multihead]]&lt;br /&gt;
[[fa:Multihead]]&lt;br /&gt;
[[zh-hans:Multihead]]&lt;br /&gt;
{{Related articles start}}&lt;br /&gt;
{{Related|Xorg}}&lt;br /&gt;
{{Related|xrandr}}&lt;br /&gt;
{{Related|NVIDIA#マルチモニター}}&lt;br /&gt;
{{Related|Nouveau#デュアルディスプレイ}}&lt;br /&gt;
{{Related|AMD Catalyst#デュアルディスプレイ (デュアルヘッド / デュアルスクリーン / Xinerama)}}&lt;br /&gt;
{{Related|ATI#マルチモニターの設定}}&lt;br /&gt;
{{Related4|Extreme Multihead}}&lt;br /&gt;
{{Related articles end}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;マルチヘッド&#039;&#039;&#039;, &#039;&#039;&#039;マルチスクリーン&#039;&#039;&#039;, &#039;&#039;&#039;マルチディスプレイ&#039;&#039;&#039;, &#039;&#039;&#039;マルチモニター&#039;&#039;&#039;は複数のディスプレイデバイスをコンピューターに接続して使用することを言います。この記事ではマルチディスプレイを設定する方法の説明や、設定例を示します。&lt;br /&gt;
&lt;br /&gt;
{{Note|混乱を避けるために、この記事で使用する単語の意味を明確にします:&lt;br /&gt;
* &#039;&#039;&#039;モニター&#039;&#039;&#039;は LCD パネルのような物理的な表示デバイスを示します。&lt;br /&gt;
* &#039;&#039;&#039;スクリーン&#039;&#039;&#039;は X-Window の画面を示します (つまり&#039;&#039;&#039;モニター&#039;&#039;&#039;は&#039;&#039;&#039;ディスプレイ&#039;&#039;&#039;に接続されます)。&lt;br /&gt;
* &#039;&#039;&#039;ディスプレイ&#039;&#039;&#039;はデスクトップの各部位を示すのに同時に使われる&#039;&#039;&#039;スクリーン&#039;&#039;&#039;の集合を示します (&#039;&#039;&#039;ディスプレイ&#039;&#039;&#039;の中の&#039;&#039;&#039;スクリーン&#039;&#039;&#039;でウィンドウをドラッグすることができます)。&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== 歴史的背景 ==&lt;br /&gt;
&lt;br /&gt;
全てとはいわなくてもほとんどの Unix/Linux コンピュータでは GUI を提供するために X Window System を基盤のグラフィカルインターフェイスとして使っています。X は1984年に MIT で開発されました。開発は35年間も続いており、その間に新しい機能や概念が追加され、ちょっとした化物と言われるようにまでなっています。長い開発の歴史の中で、[[Wikipedia:ja:タイムシェアリングシステム|タイムシェアリングシステム]]によって Xterminal に個別のビューを提供する単一の X というのが最も一般的な設定だったということを覚えておきましょう。近年になって、デスクトップやノートパソコンに単一のスクリーンを提供する X が標準となったのです。&lt;br /&gt;
&lt;br /&gt;
{{Note|There is still a rare configuration often called [[Wikipedia:Multiseat configuration|Zaphod display]], which allows multiple users of a single computer to each have an independent set of display, mouse, and keyboard, as though they were using separate computers, but at a lower per-seat cost.}}&lt;br /&gt;
&lt;br /&gt;
以上のことが意味するのは、同じことをするのに多数の方法が存在して、同じ目的を達成するのに少しづつ方法が変わってくるということです。X の最近のバージョンでは、設定にはほとんど触れずともよかったり、もしくは全く設定が不要な場合もあります。ここ数年では X が自分で設定を行ってしまうようになっています。設定は少なければ少ないほど良いという経験則が存在しますが、これはすなわち、&#039;&#039;何も設定しないのが一番良い&#039;&#039;わけです。&lt;br /&gt;
&lt;br /&gt;
== スクリーンの分割 ==&lt;br /&gt;
&lt;br /&gt;
X でマルチモニタを設定する最古の方法であり、数十年間も使われています。物理モニターのそれぞれに X スクリーンを割り当てるので、マウスをそれぞれのスクリーンで動かすことができ、各スクリーンは多かれ少なかれ独立します。&lt;br /&gt;
&lt;br /&gt;
通常 X ディスプレイには {{ic|DISPLAY}} 環境変数によって {{ic|:0}} のように ID が一つだけ指定されていますが、この設定では、各スクリーンごとに別々の値を {{ic|$DISPLAY}} に指定します。一番目のスクリーンは {{ic|:0.0}} 、二番目のスクリーンは {{ic|:0.1}} と続きます。&lt;br /&gt;
&lt;br /&gt;
この設定を使用する場合、ウィンドウを別のスクリーンに移動させることはできません。ただし GIMP や Emacs などマルチスクリーンをサポートしている（ごく少数の）特別なプログラムは別です。ほとんどのプログラムでは、別のスクリーンにプログラムを表示するには {{ic|DISPLAY}} 環境変数を変更する必要が出て来ます:&lt;br /&gt;
&lt;br /&gt;
 # Launch a terminal on the second screen&lt;br /&gt;
 $ DISPLAY=:0.1 urxvt &amp;amp;&lt;br /&gt;
&lt;br /&gt;
また、各スクリーン上のターミナルからプログラムを起動した場合、プログラムは {{ic|DISPLAY}} の値を引き継いで、ターミナルと同じスクリーン上に表示されます。ただし、アプリケーションを別のスクリーンに移動しようと思った時は、一度アプリケーションを閉じてから、別のスクリーンからもう一度アプリケーションを開くことになります。&lt;br /&gt;
&lt;br /&gt;
この方法を使用する利点としては、スクリーン上にポップアップウィンドウが表示されたときに、別のスクリーンで作業中のマウスのフォーカスが盗られないということが挙げられます。それぞれのスクリーンは完全に独立して存在します。&lt;br /&gt;
&lt;br /&gt;
== Xinerama ==&lt;br /&gt;
&lt;br /&gt;
[[Wikipedia:ja:Xinerama|Xinerama]] は X のマルチスクリーンを実現する古い手段です。Xinerama は全てのモニターを単一のスクリーン ({{ic|:0}}) にまとめるため、スクリーンを通り越してウィンドウをドラッグすることができます。&lt;br /&gt;
&lt;br /&gt;
Xinerama は [[Xorg#設定|X の設定ファイル]]をカスタマイズすることで設定します。以下に例を挙げます:&lt;br /&gt;
&lt;br /&gt;
以下は各モニターを相対的に配置する ServerLayout セクションです。&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/X11/xorg.conf.d/90-serverlayout.conf|&lt;br /&gt;
Section &amp;quot;ServerLayout&amp;quot;&lt;br /&gt;
  Identifier   &amp;quot;Main&amp;quot;&lt;br /&gt;
  Screen       0 &amp;quot;Primary&amp;quot;&lt;br /&gt;
  Screen       1 &amp;quot;DellPortraitLeft&amp;quot; RightOf &amp;quot;Primary&amp;quot;&lt;br /&gt;
  Screen       2 &amp;quot;Wacom&amp;quot; RightOf &amp;quot;DellPortraitLeft&amp;quot;&lt;br /&gt;
  Screen       3 &amp;quot;U2412&amp;quot; LeftOf &amp;quot;Primary&amp;quot;&lt;br /&gt;
  Option         &amp;quot;Xinerama&amp;quot; &amp;quot;1&amp;quot;  # enable XINERAMA extension.  Default is disabled.&lt;br /&gt;
EndSection&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
上記セクションの各 Screen は別のファイルで定義します、例えば:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/X11/xorg.conf.d/30-screen-dell2001.conf|&lt;br /&gt;
# Define the monitor&#039;s physical specs&lt;br /&gt;
Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
  Identifier   &amp;quot;Dell 2001FP&amp;quot;&lt;br /&gt;
  VertRefresh  60&lt;br /&gt;
  Option  &amp;quot;dpms&amp;quot;  &amp;quot;on&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  # Modelines are probably unnecessary these days, but it does give you fine grained control&lt;br /&gt;
&lt;br /&gt;
  # 1600x1200 @ 60.00 Hz (GTF) hsync: 74.52 kHz; pclk: 160.96 MHz&lt;br /&gt;
  Modeline &amp;quot;1600x1200&amp;quot;  160.96  1600 1704 1880 2160  1200 1201 1204 1242  -HSync +Vsync&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;br /&gt;
# Define a screen that uses the above monitor.  Note the Monitor value matches the above&lt;br /&gt;
# Identifier value, and the Device value matches one of the video cards defined below&lt;br /&gt;
# (the card and connector this monitor is actually plugged in to.)&lt;br /&gt;
Section &amp;quot;Screen&amp;quot;&lt;br /&gt;
  Identifier   &amp;quot;DellPortraitLeft&amp;quot;&lt;br /&gt;
  Device       &amp;quot;GeForce 8600GTb&amp;quot;&lt;br /&gt;
  Monitor      &amp;quot;Dell 2001FP&amp;quot;&lt;br /&gt;
  DefaultDepth 24&lt;br /&gt;
  SubSection &amp;quot;Display&amp;quot;&lt;br /&gt;
    Depth     24&lt;br /&gt;
    Modes     &amp;quot;1600x1200&amp;quot;&lt;br /&gt;
    ViewPort  0 0&lt;br /&gt;
    Virtual   1600 1200&lt;br /&gt;
  EndSubsection&lt;br /&gt;
&lt;br /&gt;
  # This screen is in portrait mode&lt;br /&gt;
  Option &amp;quot;Rotate&amp;quot; &amp;quot;left&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
複数のビデオカードを使う場合、各モニターごとに {{ic|Device}} セクションを記述する必要があります。&lt;br /&gt;
&lt;br /&gt;
以下は、2つのビデオカードにそれぞれ2つのモニターを接続する (計4つのモニターを利用する) 際の設定例です。&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/X11/xorg.conf.d/20-nvidia.conf|&lt;br /&gt;
# First head of first video card in the system&lt;br /&gt;
Section &amp;quot;Device&amp;quot;&lt;br /&gt;
  Identifier  &amp;quot;GeForce 8600GT&amp;quot;&lt;br /&gt;
  Driver      &amp;quot;nvidia&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  # If you have multiple video cards, the BusID controls which one this definition refers&lt;br /&gt;
  # to.  You can omit it if you only have one card.&lt;br /&gt;
  BusID       &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  # Need to flag this as only referring to one output on the card&lt;br /&gt;
  Screen      0&lt;br /&gt;
&lt;br /&gt;
  # For nVidia devices, this controls which connector the monitor is connected to.&lt;br /&gt;
  Option      &amp;quot;UseDisplayDevice&amp;quot;   &amp;quot;DFP-0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  # We want control!&lt;br /&gt;
  Option      &amp;quot;DynamicTwinView&amp;quot;    &amp;quot;FALSE&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  # Various performance and configuration options&lt;br /&gt;
  Option      &amp;quot;AddARGBGLXVisuals&amp;quot;  &amp;quot;true&amp;quot;&lt;br /&gt;
  Option      &amp;quot;UseEDIDDpi&amp;quot;         &amp;quot;false&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DPI&amp;quot;                &amp;quot;96 x 96&amp;quot;&lt;br /&gt;
  Option      &amp;quot;Coolbits&amp;quot;           &amp;quot;1&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;br /&gt;
# Second head of same video card (note different Identifier but same BusID.)  We can omit&lt;br /&gt;
# the UseDisplayDevice option this time as it will pick whichever one is remaining.&lt;br /&gt;
Section &amp;quot;Device&amp;quot;&lt;br /&gt;
  Identifier  &amp;quot;GeForce 8600GTb&amp;quot;&lt;br /&gt;
  Driver      &amp;quot;nvidia&amp;quot;&lt;br /&gt;
  BusID       &amp;quot;PCI:1:0:0&amp;quot;&lt;br /&gt;
  # This is the second output on this card&lt;br /&gt;
  Screen      1&lt;br /&gt;
&lt;br /&gt;
  # Same config options for all cards&lt;br /&gt;
  Option      &amp;quot;AddARGBGLXVisuals&amp;quot;  &amp;quot;true&amp;quot;&lt;br /&gt;
  Option      &amp;quot;UseEDIDDpi&amp;quot;         &amp;quot;false&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DPI&amp;quot;                &amp;quot;96 x 96&amp;quot;&lt;br /&gt;
  Option      &amp;quot;Coolbits&amp;quot;           &amp;quot;1&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DynamicTwinView&amp;quot;    &amp;quot;FALSE&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;br /&gt;
# First head of second video card, note different BusID.&lt;br /&gt;
Section &amp;quot;Device&amp;quot;&lt;br /&gt;
  Identifier  &amp;quot;G210&amp;quot;&lt;br /&gt;
  Driver      &amp;quot;nvidia&amp;quot;&lt;br /&gt;
  BusID       &amp;quot;PCI:2:0:0&amp;quot;&lt;br /&gt;
  Screen      0&lt;br /&gt;
&lt;br /&gt;
  # Same config options for all cards&lt;br /&gt;
  Option      &amp;quot;AddARGBGLXVisuals&amp;quot;  &amp;quot;true&amp;quot;&lt;br /&gt;
  Option      &amp;quot;UseEDIDDpi&amp;quot;         &amp;quot;false&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DPI&amp;quot;                &amp;quot;96 x 96&amp;quot;&lt;br /&gt;
  Option      &amp;quot;Coolbits&amp;quot;           &amp;quot;1&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DynamicTwinView&amp;quot;    &amp;quot;FALSE&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;br /&gt;
# Second head of second video card.  Output connector is set here, which means the previous&lt;br /&gt;
# Device will use the other connector, whatever it may be.&lt;br /&gt;
Section &amp;quot;Device&amp;quot;&lt;br /&gt;
  Identifier  &amp;quot;G210b&amp;quot;&lt;br /&gt;
  Driver      &amp;quot;nvidia&amp;quot;&lt;br /&gt;
  BusID       &amp;quot;PCI:2:0:0&amp;quot;&lt;br /&gt;
  Screen      1&lt;br /&gt;
  Option      &amp;quot;UseDisplayDevice&amp;quot;   &amp;quot;DFP-1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  # Same config options for all cards&lt;br /&gt;
  Option      &amp;quot;AddARGBGLXVisuals&amp;quot;  &amp;quot;true&amp;quot;&lt;br /&gt;
  Option      &amp;quot;UseEDIDDpi&amp;quot;         &amp;quot;false&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DPI&amp;quot;                &amp;quot;96 x 96&amp;quot;&lt;br /&gt;
  Option      &amp;quot;Coolbits&amp;quot;           &amp;quot;1&amp;quot;&lt;br /&gt;
  Option      &amp;quot;DynamicTwinView&amp;quot;    &amp;quot;FALSE&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== TwinView ==&lt;br /&gt;
&lt;br /&gt;
TwinView はビデオカードに接続された2つのモニターを1つのスクリーンとして表示させる nVidia の拡張です。TwinView は Xinerama 拡張を内包しており、2つのモニターが接続されていることをアプリケーションは知ることができますが、TwinView は Xinerama と両立して使うことができません。ただしモニターを2つだけしか使っておらず、また、どちらのモニターも同一の nVidia カードに接続している場合、TwinView と Xinerama に違いはほとんどありません (この場合 TwinView の方が少しだけ高いパフォーマンスが得られるというのが唯一の違いです)。&lt;br /&gt;
&lt;br /&gt;
2つ以上のモニターを接続したり、他のビデオカードにモニターを接続する場合、TwinView ではなく Xinerama を使用する必要があります。2012年4月現在、TwinView ではモニターの向きを合わせる必要があります。片方をランドスケープモードにして、もう片方をポートレートモードにすることは出来ません。&lt;br /&gt;
&lt;br /&gt;
昔は、nVidia のカードで OpenGL のアクセラレーションを使いながら別のスクリーンにウィンドウをドラッグするには TwinView を使うしか方法がありませんでした。最新バージョンの nVidia のクローズドソースドライバーでは Xinerama を使用している場合でも OpenGL のアクセラレーションを得ることができるようになっています。&lt;br /&gt;
&lt;br /&gt;
設定例は [[NVIDIA#TwinView]] を見て下さい。&lt;br /&gt;
&lt;br /&gt;
== RandR ==&lt;br /&gt;
&lt;br /&gt;
[[Wikipedia:ja:XRandR|RandR]] (&#039;&#039;&#039;R&#039;&#039;&#039;otate &#039;&#039;&#039;and&#039;&#039;&#039; &#039;&#039;&#039;R&#039;&#039;&#039;esize) はクライアントが動的にスクリーンを変更 (例: リサイズ、回転、反転) できるようにする、[[Wikipedia:ja:X Window System|X Window System]] の拡張です。ほとんどの場合、RandR は旧 Xinerama のセットアップを完全に置き換えることができます。RandR が Xinerama よりも優れている理由については [https://i3wm.org/docs/multi-monitor.html#_the_explanation この説明] を見て下さい。&lt;br /&gt;
&lt;br /&gt;
RandR は [[xrandr]] ツールを使って現在のセッションに限って設定を行ったり、[[Xorg#設定|xorg.conf]] ファイルで永続的に設定することができます。&lt;br /&gt;
&lt;br /&gt;
{{Note|There are multiple ways to configure the same thing, you might have to experiment a little before you find the best configuration.}}&lt;br /&gt;
&lt;br /&gt;
=== xrandr を使って設定 ===&lt;br /&gt;
&lt;br /&gt;
{{Note|&#039;&#039;xrandr&#039;&#039; に関する基本的な情報は [[xrandr]] のページを読んでください。}}&lt;br /&gt;
&lt;br /&gt;
相対的にスクリーンを配列したり ({{ic|--right-of}}, {{ic|--left-of}}, {{ic|--above}}, {{ic|--below}} オプションを使用)、絶対座標を使って配置することができます ({{ic|--pos}} オプションを使用。絶対座標を使う場合はモニターの解像度を知る必要があります)。詳しくは {{ic|man xrandr}} を見て下さい。よく使われる設定については以下で説明します。&lt;br /&gt;
&lt;br /&gt;
==== HDMI1 の左側に適切な解像度で VGA1 を表示 ====&lt;br /&gt;
&lt;br /&gt;
 $ xrandr --output VGA1 --auto --output HDMI1 --auto --right-of VGA1&lt;br /&gt;
&lt;br /&gt;
{{ic|--right-of}} はスクリーン ({{ic|HDMI1}}) を指定したスクリーン ({{ic|VGA1}}) の右に配置します。&lt;br /&gt;
&lt;br /&gt;
==== HDMI1 の右側に指定した解像度で VGA1 を表示 ====&lt;br /&gt;
&lt;br /&gt;
 $ xrandr --output VGA1 --mode 1024x768 --pos 1920x0 --output HDMI1 --mode 1920x1080 --pos 0x0&lt;br /&gt;
&lt;br /&gt;
または&lt;br /&gt;
&lt;br /&gt;
 $ xrandr --output VGA1 --mode 1024x768 --output HDMI1 --mode 1920x1080 --left-of VGA1&lt;br /&gt;
&lt;br /&gt;
{{ic|--left-of}} はスクリーン ({{ic|HDMI1}}) を指定したスクリーン ({{ic|VGA1}}) の左に配置します。&lt;br /&gt;
&lt;br /&gt;
=== xorg.conf を使って設定 ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;xrandr&#039;&#039; を使用する方法と似ており、各スクリーンごとに {{ic|Monitor}} セクションを記述します。{{ic|Identifier}} には、{{ic|xrandr -q}} によって確認できる値と同じ値を使用します ({{ic|--output VGA1}} ではなく {{ic|Identifier &amp;quot;VGA1&amp;quot;}} を用います)。&lt;br /&gt;
&lt;br /&gt;
==== 例: 相対座標を用いるデュアルヘッド設定 ====&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/X11/xorg.conf|&lt;br /&gt;
Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
    Identifier  &amp;quot;VGA1&amp;quot;&lt;br /&gt;
    Option      &amp;quot;Primary&amp;quot; &amp;quot;true&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;br /&gt;
Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
    Identifier  &amp;quot;HDMI1&amp;quot;&lt;br /&gt;
    Option      &amp;quot;LeftOf&amp;quot; &amp;quot;VGA1&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== 例: 絶対座標を用いるデュアルヘッド設定 ====&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/X11/xorg.conf|&lt;br /&gt;
Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
    Identifier  &amp;quot;VGA1&amp;quot;&lt;br /&gt;
    Option      &amp;quot;PreferredMode&amp;quot; &amp;quot;1024x768&amp;quot;&lt;br /&gt;
    Option      &amp;quot;Position&amp;quot; &amp;quot;1920 312&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;br /&gt;
Section &amp;quot;Monitor&amp;quot;&lt;br /&gt;
    Identifier  &amp;quot;HDMI1&amp;quot;&lt;br /&gt;
    Option      &amp;quot;PreferredMode&amp;quot; &amp;quot;1920x1080&amp;quot;&lt;br /&gt;
    Option      &amp;quot;Position&amp;quot; &amp;quot;0 0&amp;quot;&lt;br /&gt;
EndSection&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
負の座標はありません。一番左上の座標は 0,0 になります。&lt;br /&gt;
&lt;br /&gt;
{{bc|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
(0,0)-----------------+ &lt;br /&gt;
|                     |(1920,312)---+&lt;br /&gt;
|     1920 x 1080     ||            |&lt;br /&gt;
|        HDMI1        || 1024 x 768 |&lt;br /&gt;
|                     ||    VGA1    |&lt;br /&gt;
+---------------------++------------+&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
== アプリケーションのサポート ==&lt;br /&gt;
&lt;br /&gt;
このセクションでは個別のアプリケーションに関してのヒントを記述しています。&lt;br /&gt;
&lt;br /&gt;
* mplayer: {{ic|-xineramascreen 1}} を使えば動画をセカンドスクリーンで再生できます。{{ic|~/.mplayer/config}} に {{ic|1=xineramascreen=1}} を追加することで永続的に設定できます。&lt;br /&gt;
* Xonotic: 複数の画面にまたがって再生するときに左右を変えられないとき、{{ic|~/.xonotic/data/config.cfg}} で {{ic|vid_stick_mouse}} を 1 に設定してください。&lt;br /&gt;
&lt;br /&gt;
=== ウィンドウマネージャ ===&lt;br /&gt;
&lt;br /&gt;
このセクションではウィンドウマネージャのマルチモニター対応状況を載せています。&lt;br /&gt;
&lt;br /&gt;
* [[Awesome]] - 動作します。&lt;br /&gt;
* [[FVWM]] - 動作します。Xinerama をサポートしており、Single Logical Screen のようなマルチスクリーンディスプレイが使えます。&lt;br /&gt;
* [[i3]] - 動作します。&lt;br /&gt;
* [[KDE]] - 動作します。&lt;br /&gt;
* [[MATE]] - 動作します。&lt;br /&gt;
* [[Qtile]] - 動作します。&lt;br /&gt;
* [[Spectrwm]] - 動作します (スクリーンには別々のワークスペースが割り当てられ、キーボードやマウスで切り替えることができます) - 2015年3月現在&lt;br /&gt;
* [[Xmonad]] - 動作します (スクリーンには別々のワークスペースが割り当てられ、キーボードやマウスで切り替えることができます) - 2014年4月現在&lt;br /&gt;
&lt;br /&gt;
=== ディスプレイマネージャ ===&lt;br /&gt;
&lt;br /&gt;
* [[GDM]]: gdm は gnome のディスプレイ設定が適用されないため、ログイン画面が適切なモニターに表示されないことがあります。対象方法は [https://bbs.archlinux.org/viewtopic.php?pid=1262282#p1262282 こちら] にあります。ユーザーのモニター設定を gdm の設定にコピーするだけです。&lt;br /&gt;
* [[KDM]]: 動作します。&lt;br /&gt;
&lt;br /&gt;
ディスプレイマネージャがマルチディスプレイに対応していない場合、{{ic|startx}} と {{ic|~/.xinitrc}} を使うという方法もあります。&lt;br /&gt;
&lt;br /&gt;
=== フルスクリーンゲーム ===&lt;br /&gt;
&lt;br /&gt;
多くのゲームはフルスクリーンで実行したときにウィンドウを (0,0) に表示します。(0,0) にある左のディスプレイでゲームを遊びたくない場合、フルスクリーンのゲームを別のスクリーンに移動することは不可能です。&lt;br /&gt;
&lt;br /&gt;
A workaround for this is to create a separate X11 configuration (a new &#039;&#039;&#039;layout&#039;&#039;&#039;) just for playing games, which may have less (or only one) screen configured.  You can then launch games using this separate layout, while normal desktop work uses the original multihead configuration.&lt;br /&gt;
&lt;br /&gt;
To create a new layout, copy {{ic|/etc/X11/xorg.d/90-serverlayout.conf}} and call it {{ic|91-serverlayout-gaming.conf}}.  It is important to use a number larger than 90, as the one with the lowest number will become the default used when you first load X.&lt;br /&gt;
&lt;br /&gt;
Adjust this new configuration file to your preferred gaming configuration.  Here is an example (based on the example Xinerama configuration above) with only one screen defined, noting that the screen specifics (such as resolution) are defined in other files and are unchanged from and shared with the normal configuration:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/X11/xorg.conf.d/91-serverlayout-gaming.conf|&lt;br /&gt;
# New screen layout only using a single screen called &amp;quot;Primary&amp;quot;&lt;br /&gt;
Section &amp;quot;ServerLayout&amp;quot;&lt;br /&gt;
    Identifier   &amp;quot;Gaming&amp;quot;&lt;br /&gt;
    Screen       0 &amp;quot;Primary&amp;quot; Absolute 0 0&lt;br /&gt;
EndSection&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Tip|While it&#039;s easiest to just reuse the existing screen definitions, you can of course define new ones if you wish to have a different set of screen resolutions available.}}&lt;br /&gt;
&lt;br /&gt;
この新しいレイアウトを使用するには、{{ic|startx}} スクリプトを使ってゲームを起動します:&lt;br /&gt;
&lt;br /&gt;
 # Launch Xonotic on a new X11 display using the &amp;quot;Gaming&amp;quot; layout&lt;br /&gt;
 startx /usr/bin/xonotic-glx -fullscreen -- :1 -layout Gaming&lt;br /&gt;
&lt;br /&gt;
ノート:&lt;br /&gt;
* 実行するコマンドはフルパスで指定してください。上記の場合 {{ic|/usr/bin/xonotic-glx}} です。&lt;br /&gt;
* The {{ic|:1}} must refer to an empty unused display.  The first display you are likely using for your desktop is {{ic|:0}}, so {{ic|:1}} will be fine for most people.  But should you want to launch a second game at the same time, you would have to change this to {{ic|:2}}.&lt;br /&gt;
* Just as you can switch between text consoles with Alt+Ctrl+F1 and back to X with Alt+Ctrl+F7, the new display will sit on Alt+Ctrl+F8.  So you can switch back to your desktop with Alt+Ctrl+F7 and back to the game with Alt+Ctrl+F8.  This is because you are running an independent X desktop, so if you switch out of the game with Alt+Tab or equivalent there will be an empty desktop with no window manager running.&lt;br /&gt;
&lt;br /&gt;
== 参照 ==&lt;br /&gt;
&lt;br /&gt;
* [https://bbs.archlinux.org/viewtopic.php?pid=652861 &#039;How I got Dual Monitors with Nouveau Driver&#039; forums thread]&lt;/div&gt;</summary>
		<author><name>Inkch</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=VirtualBox&amp;diff=13601</id>
		<title>VirtualBox</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=VirtualBox&amp;diff=13601"/>
		<updated>2018-12-15T10:08:19Z</updated>

		<summary type="html">&lt;p&gt;Inkch: 誤字&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ハイパーバイザ]]&lt;br /&gt;
[[cs:VirtualBox]]&lt;br /&gt;
[[de:VirtualBox]]&lt;br /&gt;
[[el:VirtualBox]]&lt;br /&gt;
[[en:VirtualBox]]&lt;br /&gt;
[[es:VirtualBox]]&lt;br /&gt;
[[fr:VirtualBox]]&lt;br /&gt;
[[hu:VirtualBox]]&lt;br /&gt;
[[it:VirtualBox]]&lt;br /&gt;
[[pt:VirtualBox]]&lt;br /&gt;
[[ru:VirtualBox]]&lt;br /&gt;
[[zh-hans:VirtualBox]]&lt;br /&gt;
{{Related articles start}}&lt;br /&gt;
{{Related|VirtualBox/ヒントとテクニック}}&lt;br /&gt;
{{Related|PhpVirtualBox}}&lt;br /&gt;
{{Related|RemoteBox}}&lt;br /&gt;
{{Related|既存環境を仮想マシンに (から) 移動}}&lt;br /&gt;
{{Related articles end}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;VirtualBox&#039;&#039;&#039; は [[VMware]] に似た仮想 PC エミュレータです。継続的に開発が行われており、新しい機能が日夜追加されています。例えば、バージョン 2.2 では Linux と Solaris をゲストにした OpenGL 3D アクセラレーションがサポートされました。VirtualBox には仮想マシンを管理するために [[Qt]] による GUI インターフェースや、[[Wikipedia:ja:SDL|SDL]] によるコマンドラインツールが用意されています。ゲスト OS によっては &#039;&#039;guest additions&#039;&#039; を使って、ファイルやクリップボードの共有・ビデオアクセラレーション・&amp;quot;シームレス&amp;quot;なウィンドウ統合モードなどのゲスト・ホストを統合する機能を使うことができます。&lt;br /&gt;
&lt;br /&gt;
{{Wikipedia/ja|VirtualBox}}&lt;br /&gt;
&lt;br /&gt;
== ホストとしてインストール ==&lt;br /&gt;
&lt;br /&gt;
=== コアパッケージのインストール ===&lt;br /&gt;
&lt;br /&gt;
{{Pkg|virtualbox}} パッケージを[[インストール]]してください。さらに、ホストモジュールのパッケージを選択してインストールしてください:&lt;br /&gt;
&lt;br /&gt;
* {{Pkg|linux}} カーネルを使用している場合 {{Pkg|virtualbox-host-modules-arch}} を選択してください。&lt;br /&gt;
* 他の[[カーネル]]を使っている場合 {{Pkg|virtualbox-host-dkms}} を選択してください。&lt;br /&gt;
** {{Pkg|virtualbox-host-dkms}} によって提供される virtualbox モジュールをコンパイルするには、インストールしているカーネルにあわせて適切なヘッダーパッケージをインストールする必要があります (例: {{Pkg|linux-lts}} なら {{Pkg|linux-lts-headers}} パッケージ、{{Pkg|linux-zen}} なら {{Pkg|linux-zen-headers}} パッケージ) [https://lists.archlinux.org/pipermail/arch-dev-public/2016-March/027808.html]。VirtualBox かカーネルのどちらかがアップデートされると、[[DKMS]] の Pacman フックによって自動的にカーネルモジュールが再コンパイルされます。&lt;br /&gt;
&lt;br /&gt;
=== モジュールに署名する ===&lt;br /&gt;
&lt;br /&gt;
{{ic|CONFIG_MODULE_SIG_FORCE}} オプションを有効にしたカスタムカーネルを使っている場合、カーネルのコンパイル時に生成される鍵を使ってモジュールに署名する必要があります。&lt;br /&gt;
&lt;br /&gt;
カーネルツリーのフォルダに移動して、以下のコマンドを実行してください:&lt;br /&gt;
 # for module in `ls /lib/modules/$(uname -r)/kernel/misc/{vboxdrv.ko,vboxnetadp.ko,vboxnetflt.ko,vboxpci.ko}` ; do ./scripts/sign-file sha1 certs/signing_key.pem certs/signing_key.x509 $module ; done&lt;br /&gt;
&lt;br /&gt;
{{Note|ハッシュのアルゴリズムは必ずしも設定と一致している必要はありませんが、カーネルの中に組み込まれている必要はあります。}}&lt;br /&gt;
&lt;br /&gt;
=== カーネルモジュールのロード ===&lt;br /&gt;
バージョン 5.0.16 から、{{Pkg|virtualbox-host-modules-arch}} と {{Pkg|virtualbox-host-dkms}} は &#039;&#039;&#039;systemd-modules-load&#039;&#039;&#039; サービスを使用して起動時にモジュールをロードします。&lt;br /&gt;
&lt;br /&gt;
{{Note|起動時に VirtualBox モジュールをロードして欲しくない場合、{{ic|/etc/modules-load.d}} に {{ic|virtualbox-host-modules-arch.conf}} (または {{ic|virtualbox-host-modules-dkms.conf}}) という名前の空のファイル (あるいは {{ic|/dev/null}} のシンボリックリンク) を作成して {{ic|/usr/lib/modules-load.d/virtualbox-host-modules-arch.conf}} (または {{ic|/usr/lib/modules-load.d/virtualbox-host-dkms.conf}}) を無効化する必要があります。}}&lt;br /&gt;
&lt;br /&gt;
VirtualBox が使っている[[カーネルモジュール]]の中には {{ic|vboxdrv}} と呼ばれる必須モジュールがあり、仮想マシンを起動する前にロードする必要があります。Arch Linux 起動時に自動でロードすることも、必要なときだけ手動でロードすることもできます。&lt;br /&gt;
&lt;br /&gt;
dkms でモジュールを使う場合、最初に、&#039;&#039;modprobe&#039;&#039; によって使用されたカーネルモジュールの依存関係データベースを {{ic|depmod -a}} でアップデートしてください。DKMS パッケージ (e.g. {{Pkg|virtualbox-host-modules}}{{Broken package link|置換パッケージ: {{Pkg|virtualbox-host-modules-arch}}}}, {{AUR|virtualbox-host-modules-lts}},...) を使わないユーザーはこのコマンドを実行する必要はありません、データベースは[https://projects.archlinux.org/svntogit/community.git/tree/trunk/virtualbox-host-modules.install?h=packages/virtualbox-modules インストール時に更新されるためです]。&lt;br /&gt;
&lt;br /&gt;
手動でモジュールをロードするには:&lt;br /&gt;
 # modprobe vboxdrv&lt;br /&gt;
&lt;br /&gt;
次のモジュールは任意ですが、高度な設定をするときは面倒くさいことにならないようにロードすることを推奨します: {{ic|vboxnetadp}}, {{ic|vboxnetflt}}, {{ic|vboxpci}}。&lt;br /&gt;
&lt;br /&gt;
* {{ic|vboxnetadp}} と {{ic|vboxnetflt}} はどちらも [https://www.virtualbox.org/manual/ch06.html#network_hostonly &amp;quot;ホストオンリーネットワーク&amp;quot;] 機能を使うときに必要になります。正確に言えば、{{ic|vboxnetadp}} は VirtualBox のグローバル設定でホストインターフェイスを作成するのに必要で、{{ic|vboxnetflt}} はそのネットワークインターフェイスを使って仮想マシンを起動するのに必要です。&lt;br /&gt;
&lt;br /&gt;
* {{ic|vboxpci}} は仮想マシンでホストの PCI デバイスをパススルーするときに必要になります。&lt;br /&gt;
&lt;br /&gt;
{{Note|モジュールを更新したときにカーネルに VirtualBox カーネルモジュールがロードされていた場合、更新された新しいバージョンを使うためには手動でリロードしなくてはなりません。root で {{ic|vboxreload}} を実行してください。}}&lt;br /&gt;
&lt;br /&gt;
最後に、上記の &amp;quot;ホストオンリーネットワーク&amp;quot; 機能を使う場合、{{pkg|net-tools}} がインストールされていることを確認してください。VirtualBox は {{ic|ifconfig}} と {{ic|route}} を使って IP を割り当て {{ic|VBoxManage hostonlyif}} や GUI の &#039;&#039;Settings &amp;gt; Network &amp;gt; Host-only Networks &amp;gt; Edit host-only network (space) &amp;gt; Adapter&#039;&#039; で設定されたホストインターフェイスに接続します。&lt;br /&gt;
&lt;br /&gt;
=== ユーザー名を vboxusers グループに追加 ===&lt;br /&gt;
&lt;br /&gt;
利用するユーザー名を &#039;&#039;&#039;vboxusers&#039;&#039;&#039; [[ユーザーとグループ|グループ]]に追加してください。追加しなくても問題なく動作しますが、共有フォルダなどの任意機能を動かすためには必要です。新しいグループは自動では現在のセッションに適用されません; ユーザーは一度ログインしなおすか {{Ic|newgrp}} や {{Ic|sudo -u $USER -s}} などのコマンドで新しい環境を始める必要があります。現在のユーザーを {{ic|vboxusers}} グループに追加するには、次を入力してください:&lt;br /&gt;
&lt;br /&gt;
 # gpasswd -a $USER vboxusers&lt;br /&gt;
&lt;br /&gt;
=== Guest additions ディスク ===&lt;br /&gt;
&lt;br /&gt;
VirtualBox を動かすホスト側 (Arch Linux) には、{{Pkg|virtualbox-guest-iso}} もインストールすることが推奨されています。これはゲスト OS に guest additions をインストールするために使われるディスクイメージです。&#039;&#039;.iso&#039;&#039; ファイルは {{ic|/usr/lib/virtualbox/additions/VBoxGuestAdditions.iso}} に配置され、仮想マシンの中から手動でマウントする必要があります。マウントしたら、ゲストの中で guest additions インストーラーを実行できます。&lt;br /&gt;
&lt;br /&gt;
=== エクステンションパック ===&lt;br /&gt;
&lt;br /&gt;
VirtualBox 4.0 から、GPL ではないコンポーネントはアプリケーションから分割されるようになりました。フリーでない、&#039;&#039;&#039;個人利用においてのみ利用可能&#039;&#039;&#039;なライセンスでリリースされていますが、[https://www.virtualbox.org/manual/ch01.html#intro-installing 追加機能]が入っている Oracle エクステンションパックに興味をひかれるかもしれません。手動でインストールする代わりに、[[AUR]] には {{aur|virtualbox-ext-oracle}} パッケージが存在します。ビルド済みのバージョンは [[非公式ユーザーリポジトリ#seblu|seblu]] リポジトリにあります。&lt;br /&gt;
&lt;br /&gt;
伝統的な手動のインストールをしたい場合: エクステンションを手動でインストールして GUI (&#039;&#039;File &amp;gt; Preferences &amp;gt; Extensions&#039;&#039;) または {{ic|VBoxManage extpack install &amp;lt;.vbox-extpack&amp;gt;}} でインストールしてください。VirtualBox に特権アクセスを与えるためのツールキット ([[Polkit]] や gksu など) が必須です。このエクステンションのインストールには [https://www.virtualbox.org/ticket/8473 root 権限が必要になります]。&lt;br /&gt;
&lt;br /&gt;
=== 適切なフロントエンドの使用 ===&lt;br /&gt;
&lt;br /&gt;
VirtualBox には複数のフロントエンドが存在しています:&lt;br /&gt;
* 普通の GUI で VirtualBox を使いたい場合は {{ic|VirtualBox}} を使ってください。&lt;br /&gt;
* コマンドライン内だけで VirtualBox を使いたい場合 (起動と既存の仮想マシンの設定変更だけ)、{{ic|VBoxSDL}} コマンドが使えます。VBoxSDL はメニューやコントロールがない、&#039;&#039;ピュア&#039;&#039;な仮想マシンだけを含んだシンプルなウィンドウのみを表示します。&lt;br /&gt;
* GUI を (サーバーなどで) 実行せずにコマンドラインで VirtualBox を使って仮想マシンを作成・起動・設定したい場合、ホスト側で全く目に見える出力を行わず VRDP データだけを送信する {{ic|VBoxHeadless}} を使います。&lt;br /&gt;
&lt;br /&gt;
また、[[PhpVirtualBox]] を使えばウェブインターフェイスで仮想マシンを管理することが可能です。&lt;br /&gt;
&lt;br /&gt;
仮想マシンを作成する方法は [https://www.virtualbox.org/manual VirtualBox マニュアル]を参照してください。&lt;br /&gt;
&lt;br /&gt;
{{Warning|仮想ディスクイメージを [[Btrfs]] ファイルシステムに保存する場合は、イメージを作成する前に、イメージを保存するディレクトリの [[Btrfs#コピーオンライト_.28CoW.29|Copy-on-Write]] を無効にすると良いでしょう。}}&lt;br /&gt;
&lt;br /&gt;
== Arch Linux をゲストにする ==&lt;br /&gt;
&lt;br /&gt;
=== 仮想マシンの中に Arch Linux をインストール ===&lt;br /&gt;
&lt;br /&gt;
仮想マシンの仮想ドライブを使って Arch のインストールメディアを起動します。そして、[[ビギナーズガイド]]や[[インストールガイド]]に書かれている方法に従って Arch のインストールを完了してください。グラフィックドライバーのインストールはしません: 次のステップで VirtualBox のグラフィックドライバーをインストールします。&lt;br /&gt;
&lt;br /&gt;
=== EFI モードでインストール ===&lt;br /&gt;
&lt;br /&gt;
VirtualBox の中に EFI モードで Arch Linux をインストールしたい場合、仮想マシンの設定で、左側のパネルの &#039;&#039;System&#039;&#039; アイテムを選んでから右側のパネルの &#039;&#039;Motherboard&#039;&#039; を選択して &#039;&#039;Enable EFI (special OSes only)&#039;&#039; のチェックを入れて下さい。Arch Linux のインストールメディアを起動すると Arch Linux の標準の [[systemd-boot]] メニューが素早く表示されます:&lt;br /&gt;
&lt;br /&gt;
{{bc|&lt;br /&gt;
Arch Linux archiso x86_64 UEFI USB&lt;br /&gt;
UEFI Shell x86_64 v1&lt;br /&gt;
UEFI Shell x86_64 v2&lt;br /&gt;
EFI Default Loader}}&lt;br /&gt;
&lt;br /&gt;
最初のアイテムを選択してカーネルをロードした後、メディアは1分30秒ほど止まった後、通常通りにカーネルの起動に進みます。絶望しないで待機して下さい。&lt;br /&gt;
&lt;br /&gt;
システムとブートローダーをインストールしたら、VirtualBox はまず [[ESP]] から {{ic|/EFI/BOOT/BOOTX64.EFI}} を実行します。最初のオプションが失敗した場合、VirtualBox は次に EFI のシェルスクリプト {{ic|startup.nsh}} を ESP のルートから試行します。つまり、システムを起動する方法として以下の選択肢があります:&lt;br /&gt;
&lt;br /&gt;
* 毎回 [[Unified Extensible Firmware Interface#UEFI シェル|EFI シェル]]から手動でブートローダーを起動する。&lt;br /&gt;
* ブートローダーをデフォルトの {{ic|/EFI/BOOT/BOOTX64.EFI}} パスに移動する。&lt;br /&gt;
* ESP のルートに {{ic|startup.nsh}} スクリプトを作成してブートローダーアプリケーションのパスを記述する。例: {{ic|\EFI\grub\grubx64.efi}}。&lt;br /&gt;
&lt;br /&gt;
[[GRUB]] や [[Gummiboot]] を使うなら、デフォルトの &#039;&#039;EFI Hard Drive&#039;&#039; エントリが完璧に動作します。起動時に {{ic|F2}} キーを押すことで使える、VirtualBox Boot Manager を使用しないで下さい: 起動時に手動で追加した、もしくは {{Pkg|efibootmgr}} による EFI エントリは再起動しても残りますが [https://www.virtualbox.org/ticket/11177 VM をシャットダウンすると消えます]。&lt;br /&gt;
&lt;br /&gt;
[https://bbs.archlinux.org/viewtopic.php?id=158003 UEFI Virtualbox installation boot problems] も参照。&lt;br /&gt;
&lt;br /&gt;
=== Guest Additions をインストール ===&lt;br /&gt;
&lt;br /&gt;
VirtualBox の [https://www.virtualbox.org/manual/ch04.html Guest Additions] にはゲストオペレーティングシステムを最適化するドライバーやアプリケーションが含まれています。画像解像度の改善やマウスのより良い制御などもされます。インストールしたゲスト環境の中で、グラフィカル環境を使用する場合、{{Pkg|virtualbox-guest-utils}} をインストールしてください。グラフィカル環境を使わないときは X のサポートを外した VirtualBox Guest ユーティリティの {{Pkg|virtualbox-guest-utils-nox}} をインストールしてください。どちらのパッケージをインストールした場合でも、ゲストモジュールのパッケージの選択が求められます:&lt;br /&gt;
&lt;br /&gt;
* {{Pkg|linux}} カーネルを使用する場合 {{Pkg|virtualbox-guest-modules-arch}} を選択してください。&lt;br /&gt;
* 他のカーネルを使う場合 {{Pkg|virtualbox-guest-dkms}} を選択してください。&lt;br /&gt;
&lt;br /&gt;
{{Pkg|virtualbox-guest-dkms}} によって提供される virtualbox モジュールをコンパイルするには、インストールしているカーネルにあわせて適切なヘッダーパッケージをインストールする必要があります (例: {{Pkg|linux-lts}} なら {{Pkg|linux-lts-headers}} パッケージ、{{Pkg|linux-zen}} なら {{Pkg|linux-zen-headers}} パッケージ) [https://lists.archlinux.org/pipermail/arch-dev-public/2016-March/027808.html]。VirtualBox かカーネルのどちらかがアップデートされると、[[DKMS]] の Pacman フックによって自動的にカーネルモジュールが再コンパイルされます。&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
* ISO を使って、ホスト環境に {{Pkg|virtualbox-guest-iso}} パッケージをインストールして、Guest Additions をインストールすることもできます。その場合、デバイスメニューを開いて Insert Guest Additions CD Image をクリックしてください。&lt;br /&gt;
* vbox カーネルモジュールを再コンパイルするには、root で {{ic|rcvboxdrv}} を実行してください。&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
ゲストで動作する Guest Additions と、ホストで動作する VirtualBox アプリケーションのバージョンは一致している必要があります。バージョンが食い違っていると (クリップボードの共有など) Guest Additions の機能が使えなくなります。ゲストをアップグレードする場合 (例: {{ic|pacman -Syu}})、ホスト側の VirtualBox アプリケーションも最新版になっていることを確認してください。VirtualBox の GUI にある &amp;quot;Check for updates&amp;quot; はときどき機能しないことがあります。virtualbox.org のウェブサイトを確認してください。&lt;br /&gt;
&lt;br /&gt;
=== Virtualbox カーネルモジュールをロード ===&lt;br /&gt;
&lt;br /&gt;
自動的にモジュールをロードするには {{ic|vboxservice}} サービスを[[有効化]]してください。モジュールをロードしてゲストのシステム時刻をホストと同期します。&lt;br /&gt;
&lt;br /&gt;
手動でモジュールをロードするには、次のコマンドを入力:&lt;br /&gt;
 # modprobe -a vboxguest vboxsf vboxvideo&lt;br /&gt;
&lt;br /&gt;
バージョン 5.0.16 から、{{Pkg|virtualbox-guest-modules-arch}} や {{Pkg|virtualbox-guest-dkms}} は &#039;&#039;&#039;systemd-modules-load&#039;&#039;&#039; サービスを使って起動時にモジュールをロードします。&lt;br /&gt;
&lt;br /&gt;
{{Note|起動時に VirtualBox のモジュールをロードして欲しくない場合、{{ic|/etc/modules-load.d}} に {{ic|virtualbox-guest-modules-arch.conf}} (または {{ic|virtualbox-guest-modules-dkms.conf}}) という名前の空のファイル (あるいは {{ic|/dev/null}} のシンボリックリンク) を作成して {{ic|/usr/lib/modules-load.d/virtualbox-guest-modules-arch.conf}} (または {{ic|/usr/lib/modules-load.d/virtualbox-guest-modules-dkms.conf}}) を無効化する必要があります。}}&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ゲストサービスを起動 ===&lt;br /&gt;
&lt;br /&gt;
VirtualBox カーネルモジュールのインストールが終わったら、ゲストサービスを起動する必要があります。ゲストサービスは {{ic|VBoxClient}} という名前のバイナリ実行ファイルであり X Window System と対話を行います。{{ic|VBoxClient}} は以下の機能を管理します:&lt;br /&gt;
* 共有クリップボードとホストとゲスト間のドラッグアンドドロップ。&lt;br /&gt;
* シームレスウィンドウモード。&lt;br /&gt;
* ゲストのウィンドウサイズに自動的にゲストの表示をリサイズ。&lt;br /&gt;
* VirtualBox ホストバージョンのチェック。&lt;br /&gt;
&lt;br /&gt;
これらの機能は全てフラグを使って個別・手動で有効にすることができます。&lt;br /&gt;
 $ VBoxClient --clipboard --draganddrop --seamless --display --checkhostversion&lt;br /&gt;
&lt;br /&gt;
今のところドキュメントになっていませんが VirtualBox には X11 サーバーが実際に動作中かどうか確認して全ての機能を自動的に有効にする Bash スクリプト {{ic|VBoxClient-all}} が入っています。&lt;br /&gt;
 # VBoxClient-all&lt;br /&gt;
&lt;br /&gt;
{{Pkg|virtualbox-guest-utils}} はログイン時に {{ic|VBoxClient-all}} が実行されるように {{ic|/etc/xdg/autostart/vboxclient.desktop}} をインストールします。使用している[[デスクトップ環境]]や[[ウィンドウマネージャ]]が自動的にスクリプトを実行してくれない場合、自動で起動するように手動で設定してください。詳しくは[[自動起動#グラフィカル]]を参照。&lt;br /&gt;
&lt;br /&gt;
VirtualBox にはホストとゲスト間で時刻を同期させる機能も存在します。{{ic|vboxservice.service}} を[[起動]]・[[有効化]]してください。&lt;br /&gt;
&lt;br /&gt;
これで、Arch Linux のゲスト環境が動作するようになったはずです。クリップボードの共有などの機能はデフォルトでは無効になっているので注意してください。使用したいときは VM ごとの設定でオンにする必要があります (例: &#039;&#039;Settings &amp;gt; General &amp;gt; Advanced &amp;gt; Shared Clipboard&#039;&#039;)。&lt;br /&gt;
&lt;br /&gt;
Arch Linux ゲストとホストでフォルダを共有したい場合、下を見てください。&lt;br /&gt;
&lt;br /&gt;
=== ハードウェアアクセラレーション ===&lt;br /&gt;
&lt;br /&gt;
ハードウェアアクセラレーションはホストコンピュータの VirtualBox のオプションから有効にできます。[[GDM]] ディスプレイマネージャ 3.16 以上はハードウェアアクセラレーションのサポートを破壊するので [https://bbs.archlinux.org/viewtopic.php?id=200025]、ハードウェアアクセラレーションに問題が発生する場合、別のディスプレイマネージャを使用することを推奨します ([[LightDM]] は問題なく動作します)。&lt;br /&gt;
&lt;br /&gt;
=== ゲスト側の Arch Linux の共有フォルダ ===&lt;br /&gt;
&lt;br /&gt;
共有フォルダはホスト側にある VirtualBox によって管理されます。共有フォルダが追加されると、自動でマウントされ読み込み専用になります。&lt;br /&gt;
VirtualBox から共有フォルダを作成すると {{Ic|/media/sf_&#039;&#039;SHAREDFOLDERNAME&#039;&#039;}} の中にとフォルダが設置されます。この時、ゲスト側の Arch の中のフォルダを使うには設定が必要になります。ゲスト側の Arch に共有フォルダを作成するには、pacman で Guest Additions パッケージをインストールした後、コマンドラインで以下を実行してください:&lt;br /&gt;
&lt;br /&gt;
 # groupadd vboxsf&lt;br /&gt;
 # gpasswd -a $USER vboxsf&lt;br /&gt;
&lt;br /&gt;
{{Note|&#039;&#039;&#039;自動マウント&#039;&#039;&#039;を機能させるには、&#039;&#039;&#039;vboxservice&#039;&#039;&#039; サービスを有効にする必要があります。次のセクションの説明を見て下さい。}}&lt;br /&gt;
&lt;br /&gt;
望むなら、シンボリックを作って home ディレクトリにアクセスしやすくすることができます。例として、&amp;quot;Dropbox&amp;quot; という名の共有フォルダがホスト側の VirtualBox の中に作成されている場合、/media/sf_Dropbox をゲスト側に自動で作成するには次のようにしてください:&lt;br /&gt;
&lt;br /&gt;
 $ ln -s /media/sf_Dropbox/* ~/dropbox&lt;br /&gt;
&lt;br /&gt;
Guest Additions iso が提供している .run スクリプトでも同じことができますが、Arch はこれを使うことを推奨しません、手動で行うべきだからです。このことについての提言はここで見られます: (pastebin: [https://pastebin.com/6cUE3kjF])。&lt;br /&gt;
&lt;br /&gt;
共有フォルダが自動でマウントされない場合、[https://bbs.archlinux.org/viewtopic.php?id=70780 手動でマウント]するか次のセクションを読んで下さい。&lt;br /&gt;
&lt;br /&gt;
[[systemd]] を使うと起動時に問題が起こる時は、{{ic|/etc/fstab}} に {{ic|1=comment=systemd.automount}} を加えて下さい。こうすると、スタートアップ時ではなくマウントポイントにアクセスしたときに共有フォルダがマウントされます。さもなければカーネルアップデート後にシステムが使えなくなるかもしれません（guest additions を手動でインストールした場合）。&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;sharedFolderName&#039;&#039;  &#039;&#039;/path/to/mntPtOnGuestMachine&#039;&#039;  vboxsf 　uid=&#039;&#039;user&#039;&#039;,gid=&#039;&#039;group&#039;&#039;,rw,dmode=700,fmode=600,noauto,x-systemd.automount&lt;br /&gt;
&lt;br /&gt;
* {{ic|&#039;&#039;sharedFolderName&#039;&#039;}}: 仮想マシンの &#039;&#039;Settings &amp;gt; SharedFolders &amp;gt; Edit &amp;gt; FolderName&#039;&#039; メニューの値。ホストマシンの実際のフォルダ名とは違う可能性があります。仮想マシンの &#039;&#039;Settings&#039;&#039; を確認するには、ホスト OS の VirtualBox アプリケーションから、適切な仮想マシンを選択して &#039;&#039;Settings&#039;&#039; をクリックしてください。&lt;br /&gt;
* {{ic|&#039;&#039;/path/to/mntPtOnGuestMachine&#039;&#039;}}: 存在しない場合、このディレクトリは手動で作成する必要があります ([[Core Utilities#mkdir|mkdir]] などを使用)。&lt;br /&gt;
* {{ic|dmode}}/{{ic|fmode}} は {{ic|&#039;&#039;/path/to/mntPtOnGuestMachine&#039;&#039;}} のなかのディレクトリやファイルのパーミッションです。&lt;br /&gt;
&lt;br /&gt;
2012年8月2日現在、{{ic|mount.vboxsf}} は {{ic|nofail}} オプションに対応していません:&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;desktop&#039;&#039;  &#039;&#039;/media/desktop&#039;&#039;  vboxsf  uid=&#039;&#039;user&#039;&#039;,gid=&#039;&#039;group&#039;&#039;,rw,dmode=700,fmode=600,nofail  0  0&lt;br /&gt;
&lt;br /&gt;
=== ゲストの時刻をホストに同期させる ===&lt;br /&gt;
&lt;br /&gt;
時刻を同期させるには、まずホスト側に {{Pkg|virtualbox-guest-utils}} をインストールする必要があります（[[#Guest Additions をインストール|前のセクション]]を見て下さい）。それから次を実行して次のブート時にサービスを有効にします&lt;br /&gt;
 # systemctl enable vboxservice.service&lt;br /&gt;
&lt;br /&gt;
今すぐサービスを開始するには&lt;br /&gt;
 # systemctl start vboxservice.service&lt;br /&gt;
&lt;br /&gt;
共有フォルダの自動マウント機能を使うときにもこのデーモンを起動する必要があります。&lt;br /&gt;
&lt;br /&gt;
=== ホストからゲストに SSH ===&lt;br /&gt;
&lt;br /&gt;
仮想マシン設定のネットワークタブの &amp;quot;Advanced&amp;quot; にはポートフォワーディングを作成するツールがあります。ゲストの ssh ポート {{ic|22}} をホストの {{ic|3022}} ポートなどに転送することで、以下のように接続できるようになります:&lt;br /&gt;
&lt;br /&gt;
 user@host$ ssh -p 3022 $USER@localhost&lt;br /&gt;
&lt;br /&gt;
==== 共有フォルダのかわりに SSHFS を使う ====&lt;br /&gt;
&lt;br /&gt;
ポートフォワーディングと sshfs を使うことで、ゲストのファイルシステムをホストにマウントすることができます:&lt;br /&gt;
&lt;br /&gt;
 user@host$ sshfs -p 3022 $USER@localhost:$HOME ~/shared_folder&lt;br /&gt;
&lt;br /&gt;
== 仮想ディスクの管理 ==&lt;br /&gt;
&lt;br /&gt;
[[VirtualBox/ヒントとテクニック#VirtualBox の仮想マシンを他のハイパーバイザにインポート・エクスポート]]も参照。&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox によってサポートされているフォーマット ===&lt;br /&gt;
&lt;br /&gt;
VirtualBox は以下の仮想ディスクフォーマットをサポートしています:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;VDI&#039;&#039;&#039; (Virtual Disk Image): VirtualBox で仮想マシンを作成したときにデフォルトで使用されるオープンなコンテナです。&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;VMDK&#039;&#039;&#039; (Virtual Machine Disk): VMware によって開発されたフォーマットです。最初は仕様が公開されていませんでしたが、今では VirtualBox でサポートされるオープンなフォーマットになっています。VMDK では 2GB のファイルに分割することができます。巨大なファイルをサポートしていない環境に仮想マシンを保存したい場合に有用です。Parallels の HDD フォーマット以外で、このような機能を提供するフォーマットはありません。&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;VHD&#039;&#039;&#039; (Virtual Hard Disk): Microsoft によって Windows Virtual PC や [[Hyper-V]] で使用されているフォーマットです。Microsoft 製品を使用する場合、このフォーマットを選択する必要があります。&lt;br /&gt;
:{{Tip|Windows 7 から、VHD は直接マウントできるようになっています。}} &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;VHDX&#039;&#039;&#039; (読み取り専用): Microsoft によって開発された Virtual Hard Disk フォーマットの拡張版です。2012年9月4日に Windows Server 2012 に搭載された Hyper-V 3.0 と一緒にリリースされました。VHDX は (ブロックアライメントの改善により) パフォーマンスが向上しており、大きなブロックサイズとジャーナルをサポートしています。VirtualBox は読み取り専用で VHDX をサポートしています [https://www.virtualbox.org/manual/ch15.html#idp63002176]。&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;HDD&#039;&#039;&#039; (バージョン 2): Parallels Inc によって開発されている HDD フォーマットは Parallels Desktop for Mac などのハイパーバイザ製品で使われています。プロプライエタリなフォーマットで、ドキュメントがないために、新しいバージョンの HDD (バージョン 3 と 4) はサポートされていません。 {{Note|バージョン 1 のサポートに関しては論争が存在します。公式 VirtualBox マニュアルでは [https://www.virtualbox.org/manual/ch05.html#vdidetails HDD ファイルフォーマットのバージョン 2 しかサポートしていない] と書かれていますが、Wikipedia の投稿者によれば[[Wikipedia:Comparison of platform virtual machines#Image type compatibility|バージョン 1 も使える]]という話です。}}&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;QED&#039;&#039;&#039; (QEMU Enhanced Disk): オープンソースのハイパーバイザである QEMU で使われていた古いファイルフォーマットです。2010年に設計されたフォーマットで、今では QCOW2 などに取って代わられています。特徴として完全な非同期 I/O パス、強力なデータ整合性、バッキングファイル、スパースファイルなどがあります。QED フォーマットは古いバージョンの QEMU で作成された仮想マシンとの互換性のためだけにサポートされています。&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;QCOW&#039;&#039;&#039; (QEMU Copy On Write): QEMU の現行フォーマットです。QCOW フォーマットは zlib ベースの透過圧縮や暗号化をサポートしています (暗号化は問題があるため推奨されていません)。QCOW にはふたつのバージョンが存在します: QCOW と QCOW2 です。QCOW2 は QCOW よりも優れています。VirtualBox が完全にサポートしているのは QCOW です [https://www.virtualbox.org/manual/ch15.html#idp63002176]。QCOW2 にはリビジョン違いがふたつあります: QCOW2 0.10 と QCOW2 1.1 になります (QEMU で仮想ディスクを作成した場合、後者がデフォルトです)。VirtualBox は QCOW2 をサポートしていません。&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;OVF&#039;&#039;&#039; (Open Virtualization Format): 異なるハイパーバイザ間での仮想マシンの相互運用性を考えて設計されたオープンなフォーマットです。VirtualBox は VBoxManage のインポート・エクスポート機能によって OVF フォーマットをサポートしています [https://www.virtualbox.org/manual/ch08.html#idp55423424]。ただし [https://www.virtualbox.org/manual/ch14.html#KnownProblems 既知の制限] が存在します。&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;RAW&#039;&#039;&#039;: 特定のファイルフォーマットのコンテナに格納せず直接ディスクに仮想ディスクを配置するモードです。VirtualBox は複数の方法で RAW 機能をサポートしています: RAW ディスクを [https://www.virtualbox.org/manual/ch08.html#idp59139136 特定のフォーマット] に変換、[https://www.virtualbox.org/manual/ch08.html#vboxmanage-clonevdi ディスクを RAW にクローン]、あるいは物理ディスクやファイルを指し示す VMDK ファイルを直接使用する [https://www.virtualbox.org/manual/ch09.html#idp57804112]。&lt;br /&gt;
&lt;br /&gt;
=== ディスクイメージフォーマットの変換 ===&lt;br /&gt;
&lt;br /&gt;
[https://www.virtualbox.org/manual/ch08.html#vboxmanage-clonevdi VBoxManage clonehd] を使うことで VDI, VMDK, VHD, RAW を相互に変換することができます。&lt;br /&gt;
&lt;br /&gt;
 $ VBoxManage clonehd &#039;&#039;inputfile&#039;&#039; &#039;&#039;outputfile&#039;&#039; --format &#039;&#039;outputformat&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
例えば VDI を VMDK に変換するには:&lt;br /&gt;
&lt;br /&gt;
 $ VBoxManage clonehd &#039;&#039;source.vdi&#039;&#039; &#039;&#039;destination.vmdk&#039;&#039; --format VMDK&lt;br /&gt;
&lt;br /&gt;
==== QCOW ====&lt;br /&gt;
&lt;br /&gt;
VirtualBox は [[QEMU]] の QCOW2 ディスクイメージフォーマットをサポートしていません。VirtualBox で QCOW2 ディスクイメージを使うには変換する必要があります。{{Pkg|qemu}} の {{ic|qemu-img}} コマンドを使うことで変換できます。{{ic|qemu-img}} は QCOW を VDI, VMDK, VHDX, RAW などのフォーマットに変換します ({{ic|qemu-img --help}} を実行することで変換可能なフォーマットを確認できます)。&lt;br /&gt;
&lt;br /&gt;
 $ qemu-img convert -O &#039;&#039;output_fmt&#039;&#039; &#039;&#039;inputfile&#039;&#039; &#039;&#039;outputfile&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
例えば QCOW2 を VDI に変換するには:&lt;br /&gt;
&lt;br /&gt;
 $ qemu-img convert -O vdi &#039;&#039;source.qcow2&#039;&#039; &#039;&#039;destination.vdi&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{{Tip|{{ic|-p}} パラメータを使うことで変換の進捗を確認できます。}}&lt;br /&gt;
&lt;br /&gt;
QCOW2 には 0.10 と 1.1 がありますが、{{ic|1=-o compat=&#039;&#039;revision&#039;&#039;}} でどちらを使うか指定できます。&lt;br /&gt;
&lt;br /&gt;
=== 仮想ディスクのマウント ===&lt;br /&gt;
&lt;br /&gt;
==== VDI ====&lt;br /&gt;
&lt;br /&gt;
VDI イメージのマウントは容量固定のイメージ (静的イメージ) でしか使えません。動的 (動的容量割当) イメージのマウントは簡単にできません。&lt;br /&gt;
&lt;br /&gt;
マウントするには (VDI 内の) パーティションのオフセットが必要です。それから {{ic|offData}} の値を {{ic|32256}} に追加してください (例: 69632 + 32256 = 101888):&lt;br /&gt;
&lt;br /&gt;
 $ VBoxManage internalcommands dumphdinfo &amp;lt;storage.vdi&amp;gt; | grep &amp;quot;offData&amp;quot;&lt;br /&gt;
&lt;br /&gt;
そうしたら以下のコマンドでマウントできます:&lt;br /&gt;
&lt;br /&gt;
 # mount -t ext4 -o rw,noatime,noexec,loop,offset=101888 &amp;lt;storage.vdi&amp;gt; /mntpoint/&lt;br /&gt;
&lt;br /&gt;
[https://github.com/pld-linux/VirtualBox/blob/master/mount.vdi mount.vdi] スクリプトを使うこともできます (スクリプトを {{ic|/usr/bin/}} にインストールしてください):&lt;br /&gt;
&lt;br /&gt;
 # mount -t vdi -o fstype=ext4,rw,noatime,noexec &#039;&#039;vdi_file_location&#039;&#039; &#039;&#039;/mnt/&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
もしくは {{Pkg|qemu}} のカーネルモジュールを使う方法もあります [http://bethesignal.org/blog/2011/01/05/how-to-mount-virtualbox-vdi-image/]:&lt;br /&gt;
&lt;br /&gt;
 # modprobe nbd max_part=16&lt;br /&gt;
 # qemu-nbd -c /dev/nbd0 &amp;lt;storage.vdi&amp;gt;&lt;br /&gt;
 # mount /dev/nbd0p1 /mnt/dir/&lt;br /&gt;
&lt;br /&gt;
アンマウントするには:&lt;br /&gt;
 # umount /mnt/dir/&lt;br /&gt;
 # qemu-nbd -d /dev/nbd0&lt;br /&gt;
&lt;br /&gt;
パーティションノードが反映されない場合、{{ic|partprobe /dev/nbd0}} を使ってみてください。VDI パーティションは直接ノードにマッピングすることもできます: {{ic|qemu-nbd -P 1 -c /dev/nbd0 &amp;lt;storage.vdi&amp;gt;}}。&lt;br /&gt;
&lt;br /&gt;
=== 仮想ディスクの縮小 ===&lt;br /&gt;
&lt;br /&gt;
仮想ディスクの縮小は &#039;&#039;.vdi&#039;&#039; ファイルでしか行うことができません。&lt;br /&gt;
&lt;br /&gt;
仮想マシンを起動して無駄なファイルを削除してください。{{Pkg|bleachbit}} などのツールを使うことができます ([http://bleachbit.sourceforge.net/download/windows Windows でも利用できます])。&lt;br /&gt;
&lt;br /&gt;
空き領域をゼロ埋めするツールは複数存在します:&lt;br /&gt;
* Bleachbit を使用する場合、GUI で &#039;&#039;System &amp;gt; Free disk space&#039;&#039; にチェックを入れるか、CLI で {{ic|bleachbit -c system.free_disk_space}} を使ってください。&lt;br /&gt;
* UNIX ベースの環境の場合、{{ic|dd}} または {{Pkg|dcfldd}} を使います (違いについては [http://superuser.com/a/355322 こちら] を参照):&lt;br /&gt;
:{{bc|1=# dcfldd if=/dev/zero of=&#039;&#039;/fillfile&#039;&#039; bs=4M}}&lt;br /&gt;
:{{ic|fillfile}} がパーティションの上限に達すると、{{ic|1280 blocks (5120Mb) written.dcfldd:: No space left on device}} というメッセージが表示されます。ユーザースペースと予約ブロック以外が全てゼロで埋められたということになります。全ての空きブロックを上書きするために root でコマンドを実行してください。ext ファイルシステムを使っている場合、デフォルトではファイルシステムブロックの数パーセントがスーパーユーザー用に予約されています ([[Ext4#予約ブロック]]を参照)。&lt;br /&gt;
:ゼロ埋めが完了したら、作成された {{ic|&#039;&#039;fillfile&#039;&#039;}} ファイルを削除してください。&lt;br /&gt;
&lt;br /&gt;
* Windows の場合、以下のツールが存在します:&lt;br /&gt;
:*[http://technet.microsoft.com/en-us/sysinternals/bb842062.aspx Sysinternals Suite] の {{ic|sdelete}} を使う場合、仮想マシンに存在するドライブごとに {{ic|sdelete -s -z &#039;&#039;c:&#039;&#039;}} を実行してください。&lt;br /&gt;
:* スクリプトを使いたい場合、[http://blog.whatsupduck.net/2012/03/powershell-alternative-to-sdelete.html PowerShell を使う方法] が存在します (全てのドライブで繰り返してください)。&lt;br /&gt;
::{{bc|PS&amp;gt; ./Write-ZeroesToFreeSpace.ps1 -Root &#039;&#039;c:\&#039;&#039; -PercentFree 0}}&lt;br /&gt;
::{{Note|上記のスクリプトは PowerShell で管理者権限を使って実行する必要があります。デフォルトではスクリプトは実行できません。{{ic|Get-ExecutionPolicy}} で実行ポリシーを確認してください。ポリシーは {{ic|Set-ExecutionPolicy RemoteSigned}} で設定できます。}}&lt;br /&gt;
&lt;br /&gt;
空きディスク領域を消去できたら、仮想マシンをシャットダウンしてください。&lt;br /&gt;
&lt;br /&gt;
仮想マシンを起動したら、ファイルシステムのチェックを実行することを推奨します。&lt;br /&gt;
* UNIX ベースのシステムの場合、{{ic|fsck}} を手動で使うことができます。&lt;br /&gt;
:* [[Fsck#強制的にチェック|カーネルパラメータ]]を設定することで起動時に強制的にディスクチェックを行うことができます。&lt;br /&gt;
* Windows システムの場合:&lt;br /&gt;
:* {{ic|chkdsk &#039;&#039;c:&#039;&#039; /F}} を実行する ({{ic|&#039;&#039;c:&#039;&#039;}} はスキャンを行いたいディスクに置き換えてください)。&lt;br /&gt;
:* [http://therightstuff.de/2009/02/14/ChkDskAll-ChkDsk-For-All-Drives.aspx こちら] の {{ic|FsckDskAll}} を使う。{{ic|chkdsk}} と基本的に同じソフトウェアですが、全てのドライブで繰り返し実行する必要がありません。&lt;br /&gt;
&lt;br /&gt;
[https://www.virtualbox.org/manual/ch08.html#vboxmanage-modifyvdi VBoxManage modifyhd] を使って &#039;&#039;.vdi&#039;&#039; からゼロ領域を削除:&lt;br /&gt;
 $ VBoxManage modifyhd &#039;&#039;your_disk.vdi&#039;&#039; --compact&lt;br /&gt;
&lt;br /&gt;
{{Note|仮想マシンにスナップショットが存在する場合、存在する {{ic|.vdi}} ファイルごとに上記のコマンドを実行してください。}}&lt;br /&gt;
&lt;br /&gt;
=== 仮想ディスクの拡大 ===&lt;br /&gt;
&lt;br /&gt;
==== 一般的な方法 ====&lt;br /&gt;
&lt;br /&gt;
仮想マシンを作成したときに選択したハードドライブのサイズが小さすぎて、容量一杯まで使い切ってしまった場合、VirtualBox マニュアルでは [https://www.virtualbox.org/manual/ch08.html#vboxmanage-modifyvdi VBoxManage modifyhd] を使うことが推奨されています。しかしながら、このコマンドは VDI と VHD ディスクで動的にサイズを割り当てているときしか機能しません。固定サイズの仮想ディスクのサイズを変更したい場合、以下の手順に従ってください。&lt;br /&gt;
&lt;br /&gt;
まず、拡大したいディスクのとなりに新しく仮想ディスクを作成:&lt;br /&gt;
&lt;br /&gt;
 $ VBoxManage createhd -filename &#039;&#039;new.vdi&#039;&#039; --size &#039;&#039;10000&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
サイズは MiB で指定します。例えば 10000MiB ~= 10GiB です。&#039;&#039;new.vdi&#039;&#039; は新しく作成するハードドライブの名前になります。&lt;br /&gt;
&lt;br /&gt;
{{Note|By default, this command uses the &#039;&#039;Standard&#039;&#039; (corresponding to dynamic allocated) file format variant and thus will not use the same file format variant as your source virtual disk. If your &#039;&#039;old.vdi&#039;&#039; has a fixed size and you want to keep this variant, add the parameter {{ic|--variant Fixed}}.}}&lt;br /&gt;
&lt;br /&gt;
次に、古い仮想ディスクを新しい仮想ディスクに複製します (しばらく時間がかかります):&lt;br /&gt;
&lt;br /&gt;
 $ VBoxManage clonehd &#039;&#039;old.vdi&#039;&#039; &#039;&#039;new.vdi&#039;&#039; --existing&lt;br /&gt;
&lt;br /&gt;
古いハードドライブを取り外して新しいドライブを接続してください (斜体の引数は適当な文字列に置き換えてください):&lt;br /&gt;
&lt;br /&gt;
 $ VBoxManage storageattach &#039;&#039;VM_name&#039;&#039; --storagectl &#039;&#039;SATA&#039;&#039; --port &#039;&#039;0&#039;&#039; --medium none&lt;br /&gt;
 $ VBoxManage storageattach &#039;&#039;VM_name&#039;&#039; --storagectl &#039;&#039;SATA&#039;&#039; --port &#039;&#039;0&#039;&#039; --medium &#039;&#039;new.vdi&#039;&#039; --type hdd&lt;br /&gt;
&lt;br /&gt;
ストレージコントローラとポート番号を確認するには、{{ic|VBoxManage showvminfo &#039;&#039;VM_name&#039;&#039;}} コマンドを使います。以下のように出力されます (斜字に注目):&lt;br /&gt;
&lt;br /&gt;
{{bc|&lt;br /&gt;
[...]&lt;br /&gt;
Storage Controller Name (0):            IDE&lt;br /&gt;
Storage Controller Type (0):            PIIX4&lt;br /&gt;
Storage Controller Instance Number (0): 0&lt;br /&gt;
Storage Controller Max Port Count (0):  2&lt;br /&gt;
Storage Controller Port Count (0):      2&lt;br /&gt;
Storage Controller Bootable (0):        on&lt;br /&gt;
Storage Controller Name (1):            SATA&lt;br /&gt;
Storage Controller Type (1):            IntelAhci&lt;br /&gt;
Storage Controller Instance Number (1): 0&lt;br /&gt;
Storage Controller Max Port Count (1):  30&lt;br /&gt;
Storage Controller Port Count (1):      1&lt;br /&gt;
Storage Controller Bootable (1):        on&lt;br /&gt;
IDE (1, 0): Empty&lt;br /&gt;
&#039;&#039;SATA&#039;&#039; (&#039;&#039;0&#039;&#039;, 0): /home/wget/IT/Virtual_machines/GNU_Linux_distributions/ArchLinux_x64_EFI/Snapshots/{6bb17af7-e8a2-4bbf-baac-fbba05ebd704}.vdi (UUID: 6bb17af7-e8a2-4bbf-baac-fbba05ebd704)&lt;br /&gt;
[...]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[http://gparted.org/download.php GParted live イメージ] をダウンロードして仮想 CD/DVD ディスクファイルとしてマウントし、仮想マシンを起動して、パーティションを拡大・移動してください。そして GParted live をアンマウントして再起動してください。&lt;br /&gt;
&lt;br /&gt;
{{Note|GPT ディスクの場合、ディスクの容量を増やすとバックアップ GPT ヘッダーがディスクの末尾ではなくなります。GParted は修正するかどうか聞いてくるので &#039;&#039;Fix&#039;&#039; をクリックしてください。MBR ディスクの場合、ディスクの末尾にヘッダーは存在しないため問題は起こりません。}}&lt;br /&gt;
&lt;br /&gt;
最後に、VirtualBox から仮想ディスクの登録を解除してファイルを削除してください:&lt;br /&gt;
&lt;br /&gt;
 $ VBoxManage closemedium disk &#039;&#039;old.vdi&#039;&#039;&lt;br /&gt;
 $ rm &#039;&#039;old.vdi&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== VDI ディスクの容量を拡大 ====&lt;br /&gt;
&lt;br /&gt;
仮想ディスクが VDI の場合、以下のコマンドを実行:&lt;br /&gt;
&lt;br /&gt;
 $ VBoxManage modifyhd &#039;&#039;your_virtual_disk.vdi&#039;&#039; --resize &#039;&#039;the_new_size&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
実行したら上記と同じように Gparted を使ってパーティションのサイズを変更してください。&lt;br /&gt;
&lt;br /&gt;
=== .vbox ファイルから仮想ディスクを手動で交換 ===&lt;br /&gt;
&lt;br /&gt;
GUI や {{ic|VBoxManage}} を使うよりも &#039;&#039;XML&#039;&#039; ファイルを編集するほうが簡単だという場合、仮想マシンの &#039;&#039;.vbox&#039;&#039; ファイルで仮想ディスクを交換（あるいは追加）することができます。GUID とフォーマットを必要に応じて置き換えるだけです:&lt;br /&gt;
&lt;br /&gt;
{{hc|ArchLinux_vm.vbox|2=&lt;br /&gt;
&amp;lt;HardDisk uuid=&amp;quot;&#039;&#039;{670157e5-8bd4-4f7b-8b96-9ee412a712b5}&#039;&#039;&amp;quot; location=&amp;quot;&#039;&#039;ArchLinux_vm.vdi&#039;&#039;&amp;quot; format=&amp;quot;&#039;&#039;VDI&#039;&#039;&amp;quot; type=&amp;quot;Normal&amp;quot;/&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{ic|&amp;lt;StorageController&amp;gt;}} のサブタグ {{ic|&amp;lt;AttachedDevice&amp;gt;}} の GUID も新しく置き換えてください:&lt;br /&gt;
&lt;br /&gt;
{{hc|ArchLinux_vm.vbox|2=&lt;br /&gt;
&amp;lt;AttachedDevice type=&amp;quot;HardDisk&amp;quot; port=&amp;quot;0&amp;quot; device=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;Image uuid=&amp;quot;&#039;&#039;{670157e5-8bd4-4f7b-8b96-9ee412a712b5}&#039;&#039;&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/AttachedDevice&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Note|If you do not know the GUID of the drive you want to add, you can use the {{ic|VBoxManage showhdinfo &#039;&#039;file&#039;&#039;}}. If you previously used {{ic|VBoxManage clonehd}} to copy/convert your virtual disk, this command should have outputted the GUID just after the copy/conversion completed. Using a random GUID does not work, as each [http://www.virtualbox.org/manual/ch05.html#cloningvdis UUID is stored inside each disk image].}}&lt;br /&gt;
&lt;br /&gt;
==== Linux ホストと他のホスト間で転送 ====&lt;br /&gt;
&lt;br /&gt;
ハードディスクとスナップショットが保存されるパスの情報は &#039;&#039;.vbox&#039;&#039; 拡張子のファイルの {{ic|&amp;lt;HardDisks&amp;gt; .... &amp;lt;/HardDisks&amp;gt;}} タグにあります。手動で編集したりスクリプトを使うことで必要な変更を行うことができます。&lt;br /&gt;
&lt;br /&gt;
{{bc|1=&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
NewPath=&amp;quot;${PWD}/&amp;quot;&lt;br /&gt;
Snapshots=&amp;quot;Snapshots/&amp;quot;&lt;br /&gt;
Filename=&amp;quot;$1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 awk -v SetPath=&amp;quot;$NewPath&amp;quot; -v SnapPath=&amp;quot;$Snapshots&amp;quot; &#039;{if(index($0,&amp;quot;&amp;lt;HardDisk uuid=&amp;quot;) != 0){A=$3;split(A,B,&amp;quot;=&amp;quot;);&lt;br /&gt;
L=B[2];&lt;br /&gt;
 gsub(/\&amp;quot;/,&amp;quot;&amp;quot;,L);&lt;br /&gt;
  sub(/^.*\//,&amp;quot;&amp;quot;,L);&lt;br /&gt;
  sub(/^.*\\/,&amp;quot;&amp;quot;,L);&lt;br /&gt;
 if(index($3,&amp;quot;{&amp;quot;) != 0){SnapS=SnapPath}else{SnapS=&amp;quot;&amp;quot;};&lt;br /&gt;
  print $1&amp;quot; &amp;quot;$2&amp;quot; location=&amp;quot;\&amp;quot;SetPath SnapS L&amp;quot;\&amp;quot; &amp;quot;$4&amp;quot; &amp;quot;$5}&lt;br /&gt;
else print $0}&#039; &amp;quot;$Filename&amp;quot;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
* If you will prepare virtual machine for use in Windows host then in the path name end you should use backslash \ instead of / .&lt;br /&gt;
* The script detects snapshots by looking for {{ic|{}} in the file name.&lt;br /&gt;
* To make it run on a new host you will need to add it first to the register by clicking on &#039;&#039;&#039;Machine -&amp;gt; Add...&#039;&#039;&#039; or use hotkeys Ctrl+A and then browse to &#039;&#039;.vbox&#039;&#039; file that contains configuration or use command line {{ic|VBoxManage registervm &#039;&#039;filename&#039;&#039;.vbox}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== 仮想ディスクを複製して新しい UUID を割り当てる ===&lt;br /&gt;
&lt;br /&gt;
UUID は VirtualBox で広く使われています。仮想マシンと仮想ディスクにはそれぞれ異なる UUID が存在します。VirtualBox で仮想マシンを起動すると、VirtualBox は仮想マシンのインスタンスの全ての UUID を記録します。VirtualBox で登録されるアイテムを確認するには [http://www.virtualbox.org/manual/ch08.html#vboxmanage-list VBoxManage list] を参照してください。&lt;br /&gt;
&lt;br /&gt;
仮想ディスクファイルを手動でコピーして仮想ディスクを複製した場合、同じ仮想マシンでディスクを使うときは複製した仮想ディスクに新しい UUID を割り当てる必要があります。&lt;br /&gt;
&lt;br /&gt;
以下のコマンドを使って新しい UUID を仮想ディスクに割り当てられます:&lt;br /&gt;
 $ VBoxManage internalcommands sethduuid &#039;&#039;/path/to/disk.vdi&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{{Tip|[http://www.virtualbox.org/manual/ch08.html#vboxmanage-clonevdi VBoxManage clonehd] を使用する場合は手動で UUID を新しく割り当てる必要はありません。}}&lt;br /&gt;
&lt;br /&gt;
{{Note|上記のコマンドは [[#VirtualBox によってサポートされているフォーマット|VirtualBox によってサポートされている仮想ディスクフォーマット]]を全てサポートしています。}}&lt;br /&gt;
&lt;br /&gt;
== ヒントとテクニック ==&lt;br /&gt;
&lt;br /&gt;
高度な設定については、[[VirtualBox/ヒントとテクニック]] を見てください。&lt;br /&gt;
&lt;br /&gt;
== トラブルシューティング ==&lt;br /&gt;
&lt;br /&gt;
=== VERR_ACCESS_DENIED ===&lt;br /&gt;
&lt;br /&gt;
windows ホストにある raw vmdk イメージにアクセスするには、管理者として VirtualBox GUI を起動してください。&lt;br /&gt;
&lt;br /&gt;
=== pacstrap スクリプトが動作しない ===&lt;br /&gt;
&lt;br /&gt;
[[#Arch Linux をゲストにする|Arch Linux をゲストにする]]とき新しいゲストで起動する前に &#039;&#039;pacstrap&#039;&#039; を使って [[#Guest Additions をインストール|Guest Additions をインストール]]する場合、&#039;&#039;pacstrap&#039;&#039; を実行する前に root で {{ic|umount -l /mnt/dev}} を実行する必要があります。&lt;br /&gt;
&lt;br /&gt;
=== modprobe Exec フォーマットエラー ===&lt;br /&gt;
&lt;br /&gt;
あなたのシステムを最新状態にしてください:&lt;br /&gt;
 pacman -Syu&lt;br /&gt;
&lt;br /&gt;
=== VBOX_E_INVALID_OBJECT_STATE (0x80BB0007) ===&lt;br /&gt;
&lt;br /&gt;
これは VM を正常終了しないと発生することがあります。VM をアンロックしてください:&lt;br /&gt;
 VBoxManage controlvm nArch poweroff&lt;br /&gt;
&lt;br /&gt;
=== USB サブシステムがホスト側もしくはゲスト側で動かない ===&lt;br /&gt;
&lt;br /&gt;
時々 usb サブシステムが自動で検知されずホスト側の USB ドライブが表示されなかったりエラーが出ることがあります (例: Could not load the Host USB Proxy service: VERR_NOT_FOUND)。これはユーザーが &#039;&#039;&#039;vboxusers&#039;&#039;&#039; グループになっていても起こります。詳しくは [https://bbs.archlinux.org/viewtopic.php?id=125785] を見て下さい。&lt;br /&gt;
&lt;br /&gt;
{{Ic|~/.bashrc}} に以下を加え再起動するか新しいインスタンスを開始すれば USB サブシステムが動作します。&lt;br /&gt;
&lt;br /&gt;
 VBOX_USB=usbfs&lt;br /&gt;
&lt;br /&gt;
また、あなたのユーザーを &#039;&#039;&#039;storage&#039;&#039;&#039; グループのメンバーに追加してください。&lt;br /&gt;
&lt;br /&gt;
=== ホストオンリーのネットワークインターフェースを作成できない ===&lt;br /&gt;
&lt;br /&gt;
Host-Only Network Adapter や Bridged Network Adapter を作るためには、カーネルモジュールの {{ic|vboxnetadp}} と {{ic|vboxnetflt}} をロードする必要があります。また、{{pkg|net-tools}} パッケージがインストールされているか確認してください。これらのカーネルモジュールを手動でロードするには:&lt;br /&gt;
&lt;br /&gt;
 # modprobe -a vboxnetadp vboxnetflt&lt;br /&gt;
&lt;br /&gt;
起動時に自動でロードするには {{ic|/etc/modules-load.d/virtualbox.conf}} にモジュール毎に新しい行を追加してください:&lt;br /&gt;
&lt;br /&gt;
 vboxdrv&lt;br /&gt;
 vboxnetadp&lt;br /&gt;
 vboxnetflt&lt;br /&gt;
&lt;br /&gt;
{{Note|These used to be added to the {{ic|MODULES}} array in {{ic|/etc/rc.conf}}. This is now deprecated.}}&lt;br /&gt;
&lt;br /&gt;
このトピックについて詳しい情報が[https://bbs.archlinux.org/viewtopic.php?id=130581 ここ]にあります。&lt;br /&gt;
&lt;br /&gt;
=== WinXP: ビット深度を 16 より上げることができない ===&lt;br /&gt;
&lt;br /&gt;
16-ビット色深度で動作させている場合、アイコンの見た目が毛羽立ったりむらがでるかもしれません。しかし、色深度をもっと高く変えようとすると、システムの解像度が低くなってしまったり、もしくは全く深度が変えられないかもしれません。これを修正するには、{{ic|regedit}} を起動し次のキーをゲスト側の Windows XP レジストリに追加します:&lt;br /&gt;
&lt;br /&gt;
 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services]&lt;br /&gt;
 &amp;quot;ColorDepth&amp;quot;=dword:00000004&lt;br /&gt;
&lt;br /&gt;
それからデスクトップのプロパティウィンドウから色深度を変えてください。何も怒らない場合、強制的に画面を再描写させてください（つまり、{{ic|Host+F}} で再描写するか、フルスクリーンにしてください）。&lt;br /&gt;
&lt;br /&gt;
=== マウント失敗によるスタートアップ時の問題 ===&lt;br /&gt;
&lt;br /&gt;
カーネルをアップグレードした後、[[systemd]] セットアップで問題が発生したら、システムを起動するときに &#039;&#039;init=/bin/bash&#039;&#039; (緊急シェルが動かない場合) を付ける必要があります。&lt;br /&gt;
&lt;br /&gt;
 root=/dev/mapper/vg_main-lv_root ro vga=792 resume=/dev/mapper/vg_main-lv_swap init=/bin/bash&lt;br /&gt;
&lt;br /&gt;
それから &#039;&#039;root&#039;&#039;-ファイルシステムを書き込み権限付きでマウントします:&lt;br /&gt;
&lt;br /&gt;
 # mount / -o remount,rw&lt;br /&gt;
&lt;br /&gt;
[[#ゲスト側の Arch Linux の共有フォルダ]] に合わせて /etc/fstab を変更します。そして bash シェルから systemd を exec します:&lt;br /&gt;
&lt;br /&gt;
 # exec /bin/systemd&lt;br /&gt;
&lt;br /&gt;
=== ゲスト側の Arch Linux でコピーアンドペーストが機能しない ===&lt;br /&gt;
&lt;br /&gt;
{{ic|virtualbox-guest-additions}} がバージョン {{ic|4.2.0-2}} にアップデートされてからホスト OS からゲスト側の Arch Linux へのコピーアンドペーストができなくなりました。{{ic|VBoxClient-all}} に &#039;&#039;root&#039;&#039; 権限が必要なったためだと思われます。以前のバージョンでは &#039;&#039;VBoxClient-all &amp;amp;&#039;&#039; を &#039;&#039;~/.xinitrc&#039;&#039; に追加しておけばコピーアンドペーストが機能していました。&#039;&#039;~/.xinitrc&#039;&#039; を {{ic|sudo VBoxClient-all &amp;amp;}} にして {{ic|, NOPASSWD: /usr/bin/VBoxClient-all}} を sudoers ファイルのあなたのユーザ名のところに追加してください。これでまた動くはずです。sudoers ファイルの行はこのようになるはずです:&lt;br /&gt;
&lt;br /&gt;
  # Allow sudo for user &#039;you&#039; and let him run VBoxClient-all without requiring a password&lt;br /&gt;
  you ALL = PASSWD: ALL, NOPASSWD: /usr/bin/VBoxClient-all&lt;br /&gt;
&lt;br /&gt;
{{Note|sudoers を編集する時は {{ic|visudo}} を使って下さい。保存するときに構文エラーをチェックします。}}&lt;br /&gt;
&lt;br /&gt;
=== ゲスト OS でシリアルポートを使う ===&lt;br /&gt;
シリアルポートのパーティションを確認してください:&lt;br /&gt;
 $ /bin/ls -l /dev/ttyS*&lt;br /&gt;
 crw-rw---- 1 root uucp 4, 64 Feb  3 09:12 /dev/ttyS0&lt;br /&gt;
 crw-rw---- 1 root uucp 4, 65 Feb  3 09:12 /dev/ttyS1&lt;br /&gt;
 crw-rw---- 1 root uucp 4, 66 Feb  3 09:12 /dev/ttyS2&lt;br /&gt;
 crw-rw---- 1 root uucp 4, 67 Feb  3 09:12 /dev/ttyS3&lt;br /&gt;
&lt;br /&gt;
それからユーザーを &#039;&#039;&#039;uucp&#039;&#039;&#039; グループに追加して:&lt;br /&gt;
 # gpasswd -a $USER uucp &lt;br /&gt;
ログインしなおして下さい。&lt;br /&gt;
&lt;br /&gt;
=== Windows 8.x Error Code 0x000000C4===&lt;br /&gt;
&lt;br /&gt;
OS Type で Win 8 を選んだのに、起動時に以下のエラーコードが表示される場合、{{ic|CMPXCHG16B}} CPU 命令を有効化してみてください:&lt;br /&gt;
&lt;br /&gt;
 $ vboxmanage setextradata &#039;&#039;virtual_machine_name&#039;&#039; VBoxInternal/CPUM/CMPXCHG16B 1&lt;br /&gt;
&lt;br /&gt;
=== Windows 8, 8.1, 10 がインストール・起動できない、あるいは &amp;quot;ERR_DISK_FULL&amp;quot; エラーが表示される ===&lt;br /&gt;
&#039;&#039;Settings &amp;gt; Storage &amp;gt; Controller:SATA&#039;&#039; から &amp;quot;Use Host I/O Cache&amp;quot; にチェックを入れて VM の設定を更新してください。&lt;br /&gt;
&lt;br /&gt;
=== Linux ゲストの音が遅い/早い ===&lt;br /&gt;
&lt;br /&gt;
Linux カーネルの AC97 ドライバーは Virtual Box の中で実行されたときに、クロック設定を間違って認識することがあり、それによって音が遅くなったり早回しになったりします。この問題を修正するには、以下の内容で {{ic|/etc/modprobe.d}} にファイルを作成してください:&lt;br /&gt;
&lt;br /&gt;
 options snd-intel8x0 ac97_clock=48000&lt;br /&gt;
&lt;br /&gt;
=== Xorg の起動後にゲストがフリーズする ===&lt;br /&gt;
&lt;br /&gt;
間違ったドライバーを使っている、あるいはドライバーが存在しない場合、Xorg の起動後にゲストはフリーズします。[https://bbs.archlinux.org/viewtopic.php?pid=1167838] や [https://bbs.archlinux.org/viewtopic.php?id=156079] を見てください。&#039;&#039;Settings &amp;gt; Display&#039;&#039; から 3D アクセラレーションを無効化して、[[Xorg]] ドライバーが全てインストールされていることを確認してください。&lt;br /&gt;
&lt;br /&gt;
=== &amp;quot;NS_ERROR_FAILURE&amp;quot; が表示されメニューアイテムが表示されない ===&lt;br /&gt;
&lt;br /&gt;
仮想マシンの最初の起動時に以下のエラーメッセージが表示される場合:&lt;br /&gt;
&lt;br /&gt;
{{bc|Failed to open a session for the virtual machine debian.&lt;br /&gt;
Could not open the medium &#039;/home/.../VirtualBox VMs/debian/debian.qcow&#039;.&lt;br /&gt;
QCow: Reading the L1 table for image &#039;/home/.../VirtualBox VMs/debian/debian.qcow&#039; failed (VERR_EOF).&lt;br /&gt;
VD: error VERR_EOF opening image file &#039;/home/.../VirtualBox VMs/debian/debian.qcow&#039; (VERR_EOF).&lt;br /&gt;
&lt;br /&gt;
Result Code: &lt;br /&gt;
NS_ERROR_FAILURE (0x80004005)&lt;br /&gt;
Component: &lt;br /&gt;
Medium&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
VirtualBox を終了して新しいマシンのファイルを全て削除して、virtualbox の設定ファイルから {{ic|MachineRegistry}} メニュー (あるいはあなたが作成した問題のマシン) の最後の行を削除してください:&lt;br /&gt;
&lt;br /&gt;
{{hc|~/.config/VirtualBox/VirtualBox.xml|2=&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;MachineRegistry&amp;gt;&lt;br /&gt;
  &amp;lt;MachineEntry uuid=&amp;quot;{00000000-0000-0000-0000-000000000000}&amp;quot; src=&amp;quot;/home/void/VirtualBox VMs/debian/debian.vbox&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;MachineEntry uuid=&amp;quot;{00000000-0000-0000-0000-000000000000}&amp;quot; src=&amp;quot;/home/void/VirtualBox VMs/ubuntu/ubuntu.vbox&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;strike&amp;gt;&amp;lt;MachineEntry uuid=&amp;quot;{00000000-0000-0000-0000-000000000000}&amp;quot; src=&amp;quot;/home/void/VirtualBox VMs/lastvmcausingproblems/lastvmcausingproblems.qcow&amp;quot;/&amp;gt;&amp;lt;/strike&amp;gt;&lt;br /&gt;
&amp;lt;/MachineRegistry&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
新しい仮想ディスクを作成するときに &#039;&#039;QCOW&#039;&#039;/&#039;&#039;QCOW2&#039;&#039;/&#039;&#039;QED&#039;&#039; ディスク形式を選択すると時々発生します。&lt;br /&gt;
&lt;br /&gt;
=== USB モデム ===&lt;br /&gt;
&lt;br /&gt;
USB モデムをゲスト OS で使っている場合、ゲスト OS を終了するとホスト環境からモデムが使えなくなることがあります。{{ic|VBoxSVC}} を終了・再起動すれば問題は解決します。&lt;br /&gt;
&lt;br /&gt;
=== Windows ゲストで &amp;quot;The specified path does not exist. Check the path and then try again.&amp;quot; エラー ===&lt;br /&gt;
&lt;br /&gt;
管理者権限を必要とする .exe ファイルを Windows ゲストの共有フォルダから実行するとエラーメッセージが発生します。詳しくは [https://www.virtualbox.org/ticket/5732 バグレポート] を見てください。&lt;br /&gt;
&lt;br /&gt;
複数の対処方法があります:&lt;br /&gt;
&lt;br /&gt;
# Control Panel -&amp;gt; Action Center -&amp;gt; &amp;quot;Change User Account Control settings&amp;quot; の左側 -&amp;gt; スライダーを &amp;quot;Never notify&amp;quot; に設定 -&amp;gt; OK して再起動することで UAC を無効化する&lt;br /&gt;
# 共有フォルダからゲストのフォルダにファイルをコピーしてから実行する&lt;br /&gt;
&lt;br /&gt;
インターネット上には信頼されるサイトのリストに VBOXSVR を追加するように書かれていることもありますが、その方法は Windows 7 以上では上手く行きません。&lt;br /&gt;
&lt;br /&gt;
=== 64ビット OS のクライアントオプションが表示されない ===&lt;br /&gt;
&lt;br /&gt;
VM クライアントを起動したときに、64ビットオプションが使えない場合、CPU の仮想化機能 ({{ic|VT-x}}) が BIOS で有効になっていることを確認してください。&lt;br /&gt;
&lt;br /&gt;
Windows をホストとして使っている場合、Hyper-V を無効化する必要があります。Hyper-V が有効になっていると VirtualBox が VT-x を使えなくなります [https://www.virtualbox.org/ticket/12350]。&lt;br /&gt;
&lt;br /&gt;
=== 仮想マシンが起動するとホスト OS がフリーズする ===&lt;br /&gt;
&lt;br /&gt;
原因と解決方法:&lt;br /&gt;
* SMAP&lt;br /&gt;
SMAP が有効になっているカーネルでは Intel Broadwell の大抵のチップセットで動作しないという既知の問題があります。問題は調査中ですが、問題を解決するとうたわれている様々な vboxhost モジュールが世に出回っています。これを書いている時点では、100% 完全に解決できるという方法は、[[カーネルパラメータ|カーネルブートコマンドライン]]に {{ic|nosmap}} オプションを追加して SMAP を無効にする方法しかありません。&lt;br /&gt;
* ハードウェア仮想化&lt;br /&gt;
ハードウェア仮想化 (VT-x/AMD-V) を無効化することで問題が解決する場合があります。&lt;br /&gt;
* 様々なカーネルバグ&lt;br /&gt;
** Fuse でマウントしたパーティション (ntfs など) [https://bbs.archlinux.org/viewtopic.php?id=185841], [https://bugzilla.kernel.org/show_bug.cgi?id=82951#c12]&lt;br /&gt;
&lt;br /&gt;
通常、上記のような問題は VirtualBox や Linux カーネルのアップデートで発生します。前のバージョンにダウングレードすることで解決するかもしれません。&lt;br /&gt;
&lt;br /&gt;
=== 起動時に終了コード 1 (0x1) で仮想マシンが終了してしまう ===&lt;br /&gt;
&lt;br /&gt;
仮想マシンを起動すると、以下のようなエラーメッセージが表示される場合:&lt;br /&gt;
&lt;br /&gt;
{{bc|The virtual machine has terminated unexpectedly during startup with exit code 1 (0x1)&lt;br /&gt;
NS_ERROR_FAILURE 0x80004005&lt;br /&gt;
Component: MachineWrap&lt;br /&gt;
Interface: IMachine}}&lt;br /&gt;
&lt;br /&gt;
上記の問題は {{Pkg|virtualbox}} や {{Pkg|virtualbox-host-modules}}{{Broken package link|置換パッケージ: {{Pkg|virtualbox-host-modules-arch}}}} パッケージのアップデートによって引き起こされることがあります。{{ic|vboxdrv}} モジュールをリロードしてください:&lt;br /&gt;
&lt;br /&gt;
{{bc|# modprobe -r vboxdrv&lt;br /&gt;
# modprobe vboxdrv&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== ゲストでアナログマイクロフォンが使えない ===&lt;br /&gt;
&lt;br /&gt;
アナログマイクロフォンからの音声入力がホストでは上手く出来るのに、ゲストでは音声が録音できない場合、ホストに [[PulseAudio]] などの[[サウンドシステム#サウンドサーバー|サウンドサーバー]]をインストールすることで問題は解決します。&lt;br /&gt;
&lt;br /&gt;
==== アップグレード後に音声入力 (マイクロフォン) が使えなくなった ====&lt;br /&gt;
&lt;br /&gt;
5.1.x バージョンには音声入力まわりに問題が存在しています [https://forums.virtualbox.org/viewtopic.php?f=7&amp;amp;t=78797]。&lt;br /&gt;
&lt;br /&gt;
VirtualBox を[[ダウングレード]]することで問題は解決します。&lt;br /&gt;
&lt;br /&gt;
=== フルスクリーンモードでゲストの画面が表示されない ===&lt;br /&gt;
ウィンドウマネージャによっては (例: [[i3]])、オーバーレイバーが原因で VirtualBox のフルスクリーンモードで問題が発生します。この問題を回避するには、&amp;quot;Guest Settings --&amp;gt; User Interface --&amp;gt; Mini ToolBar&amp;quot; から &amp;quot;Show in Full-screen/Seamless&amp;quot; オプションを無効にしてください。詳しくは [https://www.virtualbox.org/ticket/14323 上流のバグレポート] を参照。&lt;br /&gt;
&lt;br /&gt;
=== Failed to insert module ===&lt;br /&gt;
&lt;br /&gt;
モジュールをロードしようとすると以下のような問題が発生する場合:&lt;br /&gt;
 Failed to insert &#039;vboxdrv&#039;: Required key not available&lt;br /&gt;
モジュールが署名されていること、あるいはカーネルコンフィグで {{ic|CONFIG_MODULE_SIG_FORCE}} が無効になっていることを確認してください。&lt;br /&gt;
&lt;br /&gt;
== 外部リンク ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.virtualbox.org/manual/UserManual.html VirtualBox User Manual]&lt;/div&gt;</summary>
		<author><name>Inkch</name></author>
	</entry>
</feed>