ひゃまだのblog

ひゃまだ(id:hymd3a)の趣味のブログ

Xrandrで左側に外部モニタ設置

(2021-09-21 初稿 - )

職場で外部モニタの支給があった。職場のノートPC用の外部モニタなので、職場のノートだけで使うのが本来であるが、自分のノートPCも持ち込んで利用しているので、ときには外部モニタを利用しようと考えた。

接続は、職場ノートはUSB Type C、自前のノートはHDMIである。

各ノートの接続端子の向き等から、向かって左から「職場ノート」、「外部モニタ」、「自前ノート」に順に設置せざるを得なかった(本当は、逆の方が良かったのだが…)。

ここでは、Linux Debian 10.10がインストールされた自前ノートの外部モニタの設定について記述する。

何が問題か

筆者は、LXDE環境でDebianを使っており、メニューから「設定」、「モニタの設定」を開くと、外部モニタをノート画面の拡張とする場合、下の画面のとおり「右側」または「上」に配置するメニューはあるものの、「左側」に外部モニタを配置するメニューがない。

当初、我慢して実際には左側に外部モニタがあるのに右側の設定で使ってみたが、マウス等の操作において違和感が半端ない状態だった。^^;

ということで、ここではLXDEのモニタの設定のメニューにない、外部モニタを左側に設定する方法を記述する。

f:id:hymd3a:20210921154525p:plain

LXDEの「モニタの設定」のメニュー

以降の設定については、以下のページを参考にさせていただいた。多謝。

現状の確認

外部ディスプレイをHDMIケーブルで接続し、電源を入れてから以下のxrandrコマンドで現在の状態を確認する。

長々と出力されるが、ノートPCの元々のディスプレイは、LVDS-1と認識され、1366x768で現在表示されている。一方、外部ディスプレイは、HDMI-1として1920x1080で接続できると表示された。  

$ xrandr
Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192
LVDS-1 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 309mm x 174mm
   1366x768      60.00*+
   1360x768      59.80    59.96  
   1280x720      60.00    59.99    59.86    59.74  
   1024x768      60.04    60.00  
   960x720       60.00  
   928x696       60.05  
   896x672       60.01  
   1024x576      59.95    59.96    59.90    59.82  
   960x600       59.93    60.00  
   960x540       59.96    59.99    59.63    59.82  
   800x600       60.00    60.32    56.25  
   840x525       60.01    59.88  
   864x486       59.92    59.57  
   800x512       60.17  
   700x525       59.98  
   800x450       59.95    59.82  
   640x512       60.02  
   720x450       59.89  
   700x450       59.96    59.88  
   640x480       60.00    59.94  
   720x405       59.51    58.99  
   684x384       59.88    59.85  
   680x384       59.80    59.96  
   640x400       59.88    59.98  
   576x432       60.06  
   640x360       59.86    59.83    59.84    59.32  
   512x384       60.00  
   512x288       60.00    59.92  
   480x270       59.63    59.82  
   400x300       60.32    56.34  
   432x243       59.92    59.57  
   320x240       60.05  
   360x202       59.51    59.13  
   320x180       59.84    59.32  
   VGA-1 disconnected (normal left inverted right x axis y axis)
   HDMI-1 connected (normal left inverted right x axis y axis)
   1920x1080     60.00 +  74.97    50.00    59.94  
   1680x1050     59.88  
   1400x1050     59.95  
   1600x900      60.00  
   1280x1024     75.02    60.02  
   1440x900      59.90  
   1280x800      59.91  
   1152x864      75.00  
   1280x720      60.00    50.00    59.94  
   1024x768      75.03    60.00  
   800x600       75.00    60.32  
   720x576       50.00  
   720x480       60.00    59.94  
   640x480       75.00    60.00    59.94  
   720x400       70.08  
   DP-1 disconnected (normal left inverted right x axis y axis)

Xrandrによる設定

上記サイトを参考に、HDMI-1で接続した外部モニタを「左側」に配置するためには、ノート画面は外部モニタの「右側」すなわち「--right-of」をつければ良いらしい。

コマンド全体としては、以下のとおり。

xrandr --output LVDS-1 --auto --right-of HDMI-1

ちなみに、ノート画面を「下」でHDMI-1を「上」に配置するコマンドは、ノート画面は外部モニタの「下側」すなわち「below」となる。

xrandr --output LVDS-1 --auto --below HDMI-1

設定コマンドをスクリプト

設定方法はわかったが、すぐに忘れてしまうので、とり急ぎbashスクリプトにしてみた。

名前はsetmonとして、作成後、chmod +x setmonとして実行権を与える必要がある。

#!/usr/bin/env bash
xrandr --output LVDS-1 --auto --right-of HDMI-1さ

さて、ノートPCを自宅や職場等の異なるネットワーク環境で用いるのは、どうしたら良いのか?

少し考えたけど、難しかったので、筆者だったら、/etc/resolv.confを調べて、nameserverのアドレスで判定するか、無線LANだけで接続するならば、無線のSSID辺りで切換えるのが普通なのかな

head -1 /etc/resolv.conf
namesearver 192.168.11.1

無線のSSIDを確認して、設定する場合

# sudo でパスワード入力が面倒
sudo iwconfig | grep ESSID:
  or
# NetworkManagerがインストールされている場合 (Debian 11 以降)
nmcli dev | grep "接続済み"

また、何か気がついたら追記するね。

関連ページ