Debian 9.3 Stretch Xfceでディスプレイの回転に関する設定を行っていきます。

本記事ではディスプレイを縦配置した際に必要となる設定をまとめます。

前回にKabyLakeドライバの追加を行った続きとなります。

ディスプレイ縦配置

私の環境では、Linuxにつないでいるディスプレイは配置の関係で縦配置だったりします。

ログイン後に画面設定から回転を行えば、次回ログイン後は画面の向きが固定されますが、CUI時やログイン画面は横画面のままなので少々不便です。そこで、こういった画面でも縦配置になるように設定しておきます。

CUIの回転

GRUBの起動時のカーネルオプションのfbconを使っておけば、CUI時から回転できる模様です。初期インストールしたのはGNU GRUB 2.02~beta3-5なので、これを前提に設定します。

GRUB起動時にOS選択でeを押してeditモードへ。パラメータ設定でlinux /boot/vmlinuz...とあるところの末尾に fbcon=rotate:3 と追記すればよさそうです。(n*90が回転角)英字配列入力なので注意しましょう。 ここでF10を押してbootしてみる。CUI部分が回転していることが確認できた。 GUI起動したら戻ってしまいましたが…。

この設定は一時的なものですが、正常に動作することが確認できたためgrubの設定ファイル/etc/default/grubを変更します。

GRUB_CMDLINE_LINUX_DEFAULT="quiet"
↓
GRUB_CMDLINE_LINUX_DEFAULT="fbcon=rotate:3"

/boot/grub/grub.cfgが設定ファイルですが、これを直接操作しないで各種コマンドを実行してこのファイルを生成します。 上記の設定後grub-mkconfig /boot/grub/grub.cfgを実行します。なお、quiet設定だと起動メッセージが省略されるので一緒に解除しておきました。 あとは$sudo update-grub2で設定が反映されます。

その結果、次にような結果になりました。ログイン画面などにまだ設定が必要そうです。

  • MB表示: 横
  • OS選択: 横
  • 起動メッセージ: はじめ横で途中から縦に
  • ログイン画面: 横
  • ログイン後: 縦

以下、参考にしたページです。

ログイン画面の回転

ログイン画面の回転についてはxrandr使うことで対処します。$xrandrで対象のモニタと出力を確認して、次のコマンドを実行します。

$ xrandr --output HDMI-2 --rotate left

これで縦に表示されることを確認します。

また、$ less /etc/X11/default-display-manager によりXfceは/usr/sbin/lightdmでディスプレイマネージャーが起動していることを確認しました。

失敗した設定

ArchLinuxの設定ではありますが上記を参考に、lightdmの設定ファイル/etc/lightdm/lightdm.confを変更します。

display-setup-script=xrandr --output HDMI-2 --rotate left

これではダメでした。

以下を参照していると、xsessionrc, xinitrcなどの使用も書かれていました。 参考1, 参考2, 参考3

そこでArchLinuxのXinitrcの設定を参考に、/etc/X11/xinit/xinitrcを編集してみました。

xrandr --output HDMI-2 --rotate left

. /etc/X11/Xsession

上記の設定でXsession呼び出し前にxrandrを実行しておきましたが、これもダメでした。

成功した設定

調査を継続した結果、上記を参考に再度lightdmの設定を調整します。回転用スクリプト/etc/lightdm/login-rotate.shを次の内容で作成します。

#!/bin/bash
xrandr -o left
exit 0

この回転用スクリプトを作成し、$sudo chmod +x /etc/lightdm/login-rotate.shのコマンドで実行権限を付与します。

さらに、/etc/lightdm/lightdm.confを変更します。 [Seat:*]セクション内の方の設定を変更する。

greeter-setup-script=/etc/lightdm/login-rotate.sh

難航しましたが、これで解決できました。

MB画面やGRUB起動時はまだ横画面ですが、基本的に自動進行されるので問題ないとしておきます。

今後

GPU挿入前に残る設定はメール設定とログ監視の2つになりますので、それらも行っていきます。