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年間普通に使えていたので、今回もそれを使うことにします。

情報ファイルの保存場所が保護されている

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 を再起動して、起動音が鳴る頃合いに R を押しながら起動を待ちます。

そうすると 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 を有効化しておきます。

有効化もリカバリーモードでないとできないので、先ほどと同じように R で OS X を起動しなおして、ターミナルから次のコマンドを実行します。

csrutil enable

これで OS X を再起動して通常起動してあげれば SIP が有効な状態に戻ります。

P2815Q が再び Retina として使えるようになる

そうして OS X El Capitan が起動すると、自作したディスプレイ情報が読み込まれて Dell P2815Q が再び Retina ディスプレイとして使えるようになりました。