32GB外付けディスクを接続してマウントしました。すべての詳細は、次のコマンドで提供されます。
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 0 32G 0 disk /storage/1
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sdb 64Z 64Z 32G 100% /storage/1
# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sdb 73786976294837417744 73786976294804701208 32700152 100% /storage/1
# du -sh /storage/1
4.0K /storage/1
# mount | grep /dev/sdb
/dev/sdb on /storage/1 type ext4 (ro,relatime,errors=continue,data=ordered)
# grep /dev/sdb /etc/fstab
/dev/sdb /storage/1 ext4 rw,noatime,nodiratime 0 0
# findmnt
TARGET SOURCE FSTYPE OPTIONS
/ /dev/sda1 ext4 rw,relatime,errors=remount-ro,stripe=32592,data=ordered
`-/storage/1 /dev/sdb ext4 ro,relatime,errors=continue,data=ordered
質問:
出力を見ると、df
ディスクのサイズが非常に奇妙で巨大であることがわかります。ディスクはまったく使用されません。df
(下Avail
)はディスクサイズの32 GBで報告します。また、du
レポートは4KBです。
df
だから私はこのデバイスの出力にどのような問題があるのかわかりません。
Google検索の1つは、/dev/sdb
パーティションを作成してフォーマットするよりもフォーマットする方が/dev/sdb1
問題かもしれないと提案しました。ただし、同じ規則に従うサーバーがたくさんありますが、いずれにもこの問題はありません。
修正する:
@Stephenが提案したように、ファイルシステムは健康ではないようです。
# dumpe2fs /dev/sdb
dumpe2fs 1.43.4 (31-Jan-2017)
dumpe2fs: Bad magic number in super-block while trying to open /dev/sdb
Couldn't find valid filesystem superblock.
これは失敗しましたdumpe2fs
。また、dmesg
そのディスクに関するいくつかのエラーが記録されることを確認しました。
[Tue Sep 21 15:52:28 2021] EXT4-fs error (device sdb): ext4_map_blocks:567: inode #2: block 9253: comm ls: lblock 0 mapped to illegal pblock 9253 (length 1)
[Tue Sep 21 15:52:28 2021] EXT4-fs error (device sdb) in ext4_reserve_inode_write:5460: Corrupt filesystem
[Tue Sep 21 15:52:30 2021] EXT4-fs error (device sdb): ext4_map_blocks:567: inode #2: block 9253: comm ls: lblock 0 mapped to illegal pblock 9253 (length 1)
[Tue Sep 21 15:52:34 2021] EXT4-fs error (device sdb): ext4_map_blocks:567: inode #8: block 4227126: comm jbd2/sdb-8: lblock 54 mapped to illegal pblock 4227126 (length 1)
[Tue Sep 21 15:52:34 2021] jbd2_journal_bmap: journal block not found at offset 54 on sdb-8
[Tue Sep 21 15:52:34 2021] Aborting journal on device sdb-8.
[Tue Sep 21 15:53:41 2021] systemd[1]: apt-daily-upgrade.timer: Adding 33min 33.126422s random time.
[Tue Sep 21 15:53:41 2021] systemd[1]: apt-daily.timer: Adding 2h 35min 49.981791s random time.
[Tue Sep 21 15:53:55 2021] EXT4-fs error (device sdb): ext4_map_blocks:567: inode #2: block 9253: comm du: lblock 0 mapped to illegal pblock 9253 (length 1)
[Tue Sep 21 15:53:59 2021] EXT4-fs error (device sdb): ext4_map_blocks:567: inode #2: block 9253: comm ls: lblock 0 mapped to illegal pblock 9253 (length 1)
[Tue Sep 21 15:54:01 2021] EXT4-fs error (device sdb): ext4_map_blocks:567: inode #2: block 9253: comm du: lblock 0 mapped to illegal pblock 9253 (length 1)
[Tue Sep 21 16:18:49 2021] systemd[1]: apt-daily-upgrade.timer: Adding 38min 44.297529s random time.
[Tue Sep 21 16:18:49 2021] systemd[1]: apt-daily.timer: Adding 3h 34min 3.596906s random time.
[Wed Sep 22 17:03:22 2021] EXT4-fs (sdb): error count since last fsck: 7
[Wed Sep 29 02:50:32 2021] EXT4-fs (sdb): initial error at time 1632219748: ext4_map_blocks:567: inode 2: block 9253
[Wed Sep 29 02:50:32 2021] EXT4-fs (sdb): last error at time 1632219841: ext4_map_blocks:567: inode 2: block 9253
[Thu Sep 30 04:28:24 2021] EXT4-fs (sdb): error count since last fsck: 7
[Fri Oct 1 06:06:15 2021] EXT4-fs (sdb): initial error at time 1632219748: ext4_map_blocks:567: inode 2: block 9253
[Fri Oct 1 06:06:15 2021] EXT4-fs (sdb): last error at time 1632219841: ext4_map_blocks:567: inode 2: block 9253
[Fri Oct 1 13:11:23 2021] EXT4-fs error (device sdb): ext4_map_blocks:567: inode #2: block 9253: comm du: lblock 0 mapped to illegal pblock 9253 (length 1)
[Fri Oct 1 13:11:23 2021] EXT4-fs error (device sdb): ext4_journal_check_start:56: Detected aborted journal
[Fri Oct 1 13:11:23 2021] EXT4-fs (sdb): Remounting filesystem read-only
[Fri Oct 1 13:17:35 2021] EXT4-fs error (device sdb): ext4_map_blocks:567: inode #2: block 9253: comm du: lblock 0 mapped to illegal pblock 9253 (length 1)
このボックス(上記のdmesgエラーに示されているように):
# hostname -i && dmesg -T | grep 'inode 2: block 9253' | wc -l
10.53.242.33
18
そのため、クラスタ内の他の2つの類似サーバーを見ました。クリックハウスデータベースこのクラスタでは)同じ問題が観察されます。
# hostname -i && dmesg -T | grep 'inode 2: block 9253' | wc -l
10.52.115.33
610
# hostname -i && dmesg -T | grep 'inode 2: block 9253' | wc -l
10.53.98.72
171
それで、3つのサーバーがすべて別々の32GBデバイスに接続されていますが、どのように正確に同じinodeとブロックについて文句を言うことができるのか疑問に思います。
問題を無視して、このボックスで私のディスクが悪いと言うことができます。これは十分に合理的な結論ですが、同じinodeとブロックを持つ他のサーバーで同じエラーが発生するのは少し混乱しています。また、両方のサーバーがdumpe2fs
同じ「無効なマジックナンバー」エラーを報告しません。
ベストアンサー1
パーティションテーブルが破損しています。データに興味がない場合は、パーティションをマウント解除してディスクを再パーティション化してください。物理的に損傷する可能性があるため、廃棄する必要があります。
私はそうします:
umount /storage/1
cat /dev/zero > /dev/sdb
fdisk /dev/sdb (or any other tool, including parted, gparted, gdisk, etc.)
mkfs.[whatever] /dev/sdbX