【磁盘】Linux上使用badblocks&smartctl工具
让我们从坏道和坏块的定义开始说起,它们是一块磁盘或闪存上不再能够被读写的部分,一般是由于磁盘表面特定的物理损坏或闪存晶体管失效导致的。
随着坏道的继续积累,它们会对你的磁盘或闪存容量产生令人不快或破坏性的影响,甚至可能会导致硬件失效。
同时还需要注意的是坏块的存在警示你应该开始考虑买块新磁盘了,或者简单地将坏块标记为不可用。
因此,在这篇文章中,我们通过几个必要的步骤,使用特定的磁盘扫描工具让你能够判断 Linux 磁盘或闪存是否存在坏道。
Linux上如何检测硬盘坏道与坏块
https://jingyan.baidu.com/article/39810a23918ecfb636fda6bc.html
在 Linux 上检测硬盘上的坏道和坏块
https://linux.cn/article-7961-1.html
https://www.linuxprobe.com/check-linux-disk.html
用badblocks命令检查磁盘装置中损坏的区块
https://www.linuxcool.com/badblocks
使用 badblocks 命令处理硬盘坏道
https://www.linuxcool.com/badblocks
如何检查硬盘损坏区域并防止使用这部分区域?
步骤1: 使用fdisk命令识别硬盘信息
# fdisk -l 或者 lsblk
步骤2: 扫描硬盘的损坏扇区或区块
# badblocks -v /dev/sdb > /tmp/bad-blocks.txt
步骤3: 提示操作系统不要使用损坏区块存储
# e2fsck -l /tmp/bad-blocks.txt /dev/sdb
注意: 执行e2fsck命令前,需要先挂载设备
fsck 是一个很重要的 Linux/Unix 工具,它用于检测并修复文件系统中的错误。
它类似于 Windows 操作系统中的 “chkdsk” 工具,但它是为 Linux、MacOS、FreeBSD 操作系统所准备的,FSCK 全称为 File System Consistency Check。
在大多数时候,它在系统启动时运行,但是如果需要的话,它也能被超级用户手工启动。
注意:我们不应该用 fsck 检查已挂载的磁盘,这很可能会对磁盘造成永久性的伤害,因此在开始使用 fsck 之前,我们需要先卸载掉磁盘挂载。
https://www.linuxprobe.com/linux-fsck-command.html
smartctl(S.M.A.R.T 自监控,分析和报告技术)是类Unix系统下实施SMART任务命令行套件或工具,它用于打印SMART自检和错误日志,启用并禁用SMRAT自动检测,以及初始化设备自检。
smartctl:smartd由kernel-utils包缺省安装,用命令 rpm -ql kernel-utils 可以列出kernel-utils包中的文件。
它是一个守护进程(一个帮助程序),它能监视拥有自我监视,分析和汇报技术(Self-Monitoring, Analysis, and Reporting Technology - SMART)的硬盘。
Smartctl对于Linux物理服务器十分有用,在这些服务器上,可以对智能磁盘进行错误检查,并将与硬件RAID相关的磁盘信息摘录下来。
Linux硬盘状况 检测工具Smartmontools的安装和基本使用
https://www.laozuo.org/8798.html
硬盘监控和分析工具:Smartctl
https://linux.cn/article-4682-1.html
smartctl参数说明
http://linux.51yip.com/search/smartctl
https://www.laozuo.org/15530.html