« 職場の老兵から脱落者が、それからmemtest86+のこと | トップページ | squidで、特定のURLへのアクセスを他のsquidサーバーに転送する »

2012年9月18日 (火)

あな嬉しや!仮想画面ができた!!ありがとうxrandr

皆さん、今は高級なディスプレーを使ってるんでしょうね。2台並べているなんていう人も多いことでしょう。
表題の「仮想画面」というやつですが、色んなニュアンスがあるみたいです。私が言っているのは、X Windowで、ディスプレーの表示は例えば1280x1024だけど、仮想画面で2000x2000にすると、マウスがディスプレーから外れると、ひょーっとスクロールして2000x2000の範囲まで表示できるというやつです。
そのために、昔は、/etc/X11/xorg.conf の Section "Screen" に次のように Virtual という設定を書き込んで、これで出来ていたんですが...

Section "Screen"
    Identifier "Screen0"
    Device     "Videocard0"
    DefaultDepth     24
    SubSection "Display"
      Viewport   0 0
      Depth     24
      Virtual  2000 2000
    EndSubSection
EndSection

ところが、いつの頃からか多くのマシンでこれが有効にならなくなっちゃいました。これで、できるマシンもあるので、ディスプレーのドライバの問題かなあなどと思ってました。もう諦めてましたが、やっぱり、画面が狭くて、多くのウィンドウを開くととっても窮屈です。
それが、今日、たまたま何がきっかけだったか、あるホームページを見て、解決しました。
要するに、最近は、X Window System を再起動せずに解像度の変更や、画面の回転、表示モニターの切替え、マルチモニターの設定などができる、XRandR(X Window System Resize and Rotate Extension)というのが使われているんですね。まあ、私もよくわからんので、必要な方は調べてみてください。もしかして、GNOMEのメニューの "システム管理"->"ディスプレイ" にあるデュアルヘッドなんていうのも、これを使ってるんでしょうか。
で、このXRandRを使うためのコマンドが、xrandrです。

ここから備忘録:

xrandrを何もオプションを付けないで実行すると、現在の状態を表示します。こんな感じ。

$ xrandr
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 4096 x 4096
VGA1 disconnected (normal left inverted right x axis y axis)
LVDS1 connected 1280x800+0+0 inverted X and Y axis (normal left inverted right x axis y axis) 261mm x 163mm
   1280x800       59.8*+
   1024x768       60.0
   800x600        60.3     56.2
   640x480        59.9

今の解像度は1280x800ということですな。また、どこに出力するかを確認できます。この場合は、LVDS1だそうです。

で、私が目指しているひろ〜いデスクトップを実現するには、以下のコマンドみたいに実行します。

$ xrandr --fb 2000x2000 --output VGA1 --mode 1280x1024 --panning 2000x2000

あら不思議!2000x2000の仮想デスクトップが出来上がりました。
これは、man xrandr の最後の方に載っていた例を書き直しただけです。オプションのうち、--outputや--modeは何となくわかりますが。--fbや--panningをいうのは今ひとつ何のためなのか、よくわかりませんです。

xrandr コマンドは、一般ユーザーで実行できます。ログインするたびにこれが有効になるように、私の場合、.bash_profile の最後に、上記のコマンドラインを書き込みました。これが正しいやり方では無いかも知れませんが、ログイン画面までひろ〜くする必要はないですからね。ログインしてからで結構。

今のところ、特に不具合はありませんが、こういう設定をしたマシンに ssh でログインすると、"Can't open display" と言われるようになりました。うーん、何だろな??まあ、大した不具合ではないから、まっいっか。

にほんブログ村 IT技術ブログ Linuxへ
にほんブログ村/p>

にほんブログ村 IT技術ブログへ
にほんブログ村

|

« 職場の老兵から脱落者が、それからmemtest86+のこと | トップページ | squidで、特定のURLへのアクセスを他のsquidサーバーに転送する »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/152716/55690072

この記事へのトラックバック一覧です: あな嬉しや!仮想画面ができた!!ありがとうxrandr:

« 職場の老兵から脱落者が、それからmemtest86+のこと | トップページ | squidで、特定のURLへのアクセスを他のsquidサーバーに転送する »