このトピックでは、ファイルシステムのマウント時やファイルシステムからのデータの読み込み時に発生するエラーの原因と解決策について説明します。
問題の説明
ファイルシステムのマウントに失敗しました。 ファイルシステムがマウントされると、システムはBad geometryエラーを返します。
ファイルシステムからデータを読み取ることはできず、[cannot read inode bitmap] カーネルログメッセージが表示されます。
原因
Logical volume Manager (LVM) の自動ボリューム縮小機能を使用すると、ファイルシステムが破損します。
ファイルシステム内のデータが破損しています。 その結果、破損したデータをファイルシステムから読み出す際にエラーが発生する。
解決策
自動ボリューム拡張機能を使用して、ファイルシステムが存在するストレージデバイスのサイズを復元する
ストレージデバイスが自動的に拡張される前に、ストレージデバイスが属するボリュームに十分なスペースがあることを確認してください。
Linux ECSインスタンスに接続します。
詳細については、「接続方法の概要」をご参照ください。
ファイルシステムが存在する論理ボリューム (LV) を拡張します。
lvextend [-L <LVのサイズ>] <LVの名前>この例では、LVの容量が拡張される。
lvextend -L + 2G /dev/mapper/mthvg-lvdataLV上のファイルシステムを拡張します。
LVファイルシステムを拡張するために使用されるコマンドは、ファイルシステムタイプによって異なります。 この例では、Ext4およびXFSファイルシステムが使用されています。
次のコマンドを実行して、Ext4ファイルシステムを拡張します。
resize2fs /dev/mapper/mthvg-lvdata次のコマンドを実行して、XFSファイルシステムを拡張します。
xfs_growfs /dev/mapper/mthvg-lvdata
ファイルシステムが拡張されているかどうかを確認します。
df -h
ファイルシステムのバックアップファイルからファイルシステムのデータを復元する
Linux ECSインスタンスに接続します。
詳細については、「接続方法の概要」をご参照ください。
マウントポイントからファイルシステムをアンマウントします。
この例では、
/http/mntマウントポイントが使用されます。umount /http/mnt/ファイルシステムが存在するLVを削除します。
lvremove /dev/vg02/lv_httpLVを作成し、LVの情報を確認します。
lvcreate -n lv_http -L 2G vg02LVをフォーマットします。
mkfs.ext4 /dev/vg02/lv_http blkidマウントポイントを再作成し、LVのファイルシステムをマウントポイントにマウントします。
mkdir /http/mnt -p mount /dev/vg02/lv_http /http/mnt障害のあるファイルシステムのバックアップファイルをLVの現在の場所にコピーします。