最近、ある AWS インスタンスから別のインスタンスに rsync を実行しました。その結果、ルート ファイル システムが読み取り専用モードになりました。
ファイルシステムを読み取り/書き込み権限で再マウントできますが、システムを再起動すると読み取り専用に戻ります。
mount
...
/dev/xvda1 on / type xfs (ro,relatime,attr2,inode64,noquota)
...
sudo mount -o remount,rw /dev/xvda1
mount
...
/dev/xvda1 on / type xfs (rw,relatime,attr2,inode64,noquota)
...
リブート
mount
...
/dev/xvda1 on / type xfs (ro,relatime,attr2,inode64,noquota)
...
これは CentOS インスタンスです。
同様の投稿は見つかりませんでしたが、見逃していたらリダイレクトしてください。どんな助けでもありがたいです。
アップデート
journalctl
...
Jul 23 11:48:36 ip-xxx.compute.internal systemd-remount-fs[1773]: mount: can't find LABEL=root
Jul 23 11:48:36 ip-xxx.compute.internal systemd-remount-fs[1773]: /bin/mount for / exited with exit status 1.
Jul 23 11:48:36 ip-xxx.compute.internal systemd[1]: systemd-remount-fs.service: main process exited, code=exited, status=1/FAILURE
Jul 23 11:48:36 ip-xxx.compute.internal systemd[1]: Failed to start Remount Root and Kernel File Systems.
Jul 23 11:48:36 ip-xxx.compute.internal systemd[1]: Unit systemd-remount-fs.service entered failed state.
Jul 23 11:48:36 ip-xxx.compute.internal systemd[1]: systemd-remount-fs.service failed.
...
cat /etc/fstab | head -n 1
LABEL=root / xfs defaults,relatime 1 1
解決 nKn からの承認された回答を参照してください。ただし、私の場合は、いくつかの追加手順を実行する必要がありました。
これはルート/ブート ファイルシステムであるため、ボリュームを別のインスタンスに接続し、元のインスタンスに再接続する前にファイルシステムのラベルを変更する必要がありました。これは AWS で行われ、2 つのインスタンスを停止し、[ボリューム]、[アクション] > [ボリュームの接続] > [2 番目のインスタンスの選択] に移動することで実行できます。
私のシステムはxfsだったので、次を使用する必要があります: xfs_admin -L "root" /dev/sdb (OL_admin ドキュメント) を 2 番目のインスタンスに接続します。
答え1
ご存知のとおり、問題はここにあるようです:
Jul 23 11:48:36 ip-xxx.compute.internal systemd-remount-fs[1773]: mount: can't find LABEL=root
ファイル内で/etc/fstab
ラベルの付いたデバイスをマウントしようとしていますroot
が、何らかの理由で使用できなくなっています。更新/アップグレードによってラベルが削除された可能性があります (ただし、これは一般的ではありません)。この問題を解決するには、デバイスにラベルを付け直すだけです。
ディレクトリの下のファイルシステムでデバイスを見つけて/dev
、次のコマンドを実行する必要があります。
e2label /dev/your-device root
その後再起動すると、ファイルシステムがrw
モードでマウントされるはずです。