IT技術で仕事を減らしたい!

ITエンジニアのメモ+α

macOS Read-only file system の対処

どうも、nippa です。

macOS 10.15 Catalina にアップデートした際の遭遇したトラブルについてまとめておきます。

アップデートで、fstab の設定が削除されてしまいました。

デフォルトでは/Volumes 配下にディスクがマウントされるのですが、

個人的にトップディレクト/ にマウントポイントを変更していますが、

/ディレクトリをすると、「Read-only file system」となり作成できませんでした。

今回は、その対処法になります。

fstab の設定は以前書いた記事通り設置できましたので、そちらを参考にしてください。

環境

macOS 10.15 Catalina

問題の原因と対処法

macOS 10.13 High Sierra からシステム整合性保護(System Integrity Protection: SIP)が有効になっています。

今回の macOS 10.14 Mojave から macOS 10.15 Catalina にアップデートした際に、SIP が有効になってしまったのが原因です。

対処法としては、SIP を一時的に無効にした上で作業を行い、SIP を再度有効化する必要があります。

SIP の無効化

SIP を無効にするには、リカバリーモードで設定の変更をする必要があります。

シャットダウン後に、command + Rを推しながら起動でリカバリーモードで起動されます。

リカバリーモードのターミナルから SIP の状態を確認します。

csrutil status

# 出力
System Integrity Protection status: enabled.

SIP が有効であれば、以下のコマンドで無効化します。

csrutil disable

その後、リカバリーモードを終了して、通常通り macOS を起動します。

SIP 無効化の確認

通常起動後、ターミナルで SIP の状態を確認します。

csrutil status

# 出力
System Integrity Protection status: disabled.

SIP の状態が disabledになっていることを確認します。

マウント設定の更新を行います。

sudo mount -uw /

-uはアップデートオプション、-wは書き込みオプションになります。

これで書き込み権限が付きます。

SIP の有効化

設定を変更後に、SIP をもとの設定に変更します。

再度command + Rリカバリーモードでの起動を行います。

起動後にターミナルで

csrutil enable

で、再起動します。

通常起動後に SIP の状態の確認を行います。

csrutil status

# 出力
System Integrity Protection status: enabled.

これでもとの設定に変更されます。

感想

誤って問題を起こさないように SIP は有効にしておこうと思います。

/ ディレクトリごと削除してしまうようなことがないようにですが。

fstab の設定も OS アップデートの際に引き継いでくれるとありがたいです。

ではでは、また次回。