P2815Q を El Capitan でも Retina ディスプレイとして無理やり使う
ハードウェアレポート
iMac Late 2013 で Dell の 4K ディスプレイ P2815Q を無理やり Retina ディスプレイとして使ってましたけど、El Capitan にしたら設定をリセットされてしまいました。
そこで再び Retina ディスプレイとして使えるように再設定を行いました。
これまで OS X 10.10 Yosemite で Dell P2815Q という 4K ディスプレイを iMac Late 2013 に繋いで Retina ディスプレイとして使っていました。
Dell P2815Q
この P2815Q は 当時、一般の手に届くような 4K ディスプレイがちらほら登場し始めた頃に、他の製品と比べてずいぶん買いやすい値段で登場したものでした。
性能的には 30Hz 出力なので描画速度は普通のディスプレイに劣るみたいですけど、自分はプログラミング用途だからか支障に感じることもなく、これまでずっと快適に使ってこれていました。
そんな Dell P2815Q でしたけど、iMac Late 2013 の OS を に登場した OS X El Capitan にアップデートしたところ、ディスプレイ設定がリセットされて Retina ディスプレイとして使えなくなってしまいました。
リセットされたディスプレイ設定を改めて用意してあげたら再び Retina ディスプレイとして使うことができたんですけど、その際に El Capitan の新セキュリティ機構 SIP に阻まれて簡単には設定させてもらえなかったため、そのあたりを中心に今回は話をします。
Yosemite で設定した時のお話は こちら に記載してあります。かなり無理やり設定しているので、興味がある人はまずはそちらをじっくりご覧ください。
OS X El Capitan でも Retina として使う
Dell P2815Q のディスプレイ情報は Yosemite の時と同様 El Capitan にも用意されていないので、手作業で用意する必要があります。
ディスプレイ情報は作り方もよくわからなかったので、Yosemite で設定した当時、他の 4K ディスプレイの情報をコピーして無理やり作りましたが、とりあえず1年間普通に使えていたので、今回もそれを使うことにします。
- DisplayProductID-f05a : 非公式 P2815Q 情報ファイル - DisplayPort 接続用
- DisplayProductID-f05c : 非公式 P2815Q 情報ファイル - HDMI 接続用
情報ファイルの保存場所が保護されている
OS X Yosemite までは、ディスプレイ情報の保存場所は /System/Library/Displays/Overrides
でしたけど、El Capitan では /System/Library/Displays/Contents/Resources/Overrides/
に変更になってる様子でした。
そこで、このディレクトリにディスプレイ情報を保存しようと思ったのですけど、El Capitan の新機構 SIP が働いてしまって root 権限で書き込もうとしても、エラーになってしまいます。
cp: DisplayProductID-f05a: Operation not permitted
一時的に SIP を無効化する
そこで、ディスプレイ情報を書き込むまでの間、セキュリティ機構の SIP を無効化することにしました。SIP を無効化するには OS X El Capitan をセーフモードで起動させる必要があります。
セーフモードで起動するには、OS を再起動して、起動音が鳴る頃合いに
を押しながら起動を待ちます。そうすると OS のリカバリーなどを行える画面が表示されるので、ここのシステムメニューから
ユーティリティ
ターミナル
を選択して、ターミナルアプリを起動します。
そうしたら、次のコマンドを入力すると SIP を無効化できます。
csrutil disable
そうすると次のようなメッセージが画面に表示されるので、OS X を再起動して通常通り起動させると、SIP が無効になった状態で El Capitan を起動させることができます。
This is an unsupported configuration, likely to break in the future and leave your machine in an unknown state.
ディスプレイ設定をコピーする
SIP を無効化できたら /System/Library/Displays/Contents/Resources/Overrides/
を root 権限で書き込みできるようになるので、先ほど挙げた2つのファイルを、その中の DisplayVendorID-10ac
フォルダー内にコピーします。
SIP を有効化する
これで大事な設定は終わりですけど、最後に安全のため SIP を有効化しておきます。
有効化もリカバリーモードでないとできないので、先ほどと同じように
で OS X を起動しなおして、ターミナルから次のコマンドを実行します。csrutil enable
これで OS X を再起動して通常起動してあげれば SIP が有効な状態に戻ります。
P2815Q が再び Retina として使えるようになる
そうして OS X El Capitan が起動すると、自作したディスプレイ情報が読み込まれて Dell P2815Q が再び Retina ディスプレイとして使えるようになりました。