|
38 | 38 | <a class="edit_btn" href="https://github.com/jaywcjlove/linux-command/edit/master//command/badblocks.md">编辑</a>
|
39 | 39 |
|
40 | 40 | <h1 id="badblocks">badblocks</h1><p>查找磁盘中损坏的区块</p>
|
41 |
| -<h2 id="补充说明">补充说明</h2><p><strong>badblock命</strong> 用于查找磁盘中损坏的区块。 硬盘是一个损耗设备,当使用一段时间后可能会出现坏道等物理故障。电脑硬盘出现坏道后,如果不及时更换或进行技术处理,坏道就会越来越多,并会造成频繁死机和数据丢失。最好的处理方式是更换磁盘,但在临时的情况下,应及时屏蔽坏道部分的扇区,不要触动它们。badblocks就是一个很好的检查坏道位置的工具。</p> |
42 |
| -<h3 id="语法">语法</h3><pre><code><span class="hljs-function"><span class="hljs-title">badblock</span><span class="hljs-params">(选项)</span><span class="hljs-params">(参数)</span></span> |
43 |
| -</code></pre><h3 id="选项">选项</h3><pre><code>-<span class="ruby">b<区块大小>:指定磁盘的区块大小,单位为字节; |
44 |
| -</span>-<span class="ruby">o<输出文件>:将检查的结果写入指定的输出文件; |
45 |
| -</span>-<span class="ruby">s:在检查时显示进度; |
46 |
| -</span>-<span class="ruby">v:执行时显示详细的信息; |
47 |
| -</span>-<span class="ruby">w:在检查时,执行写入测试。</span> |
| 41 | +<h2 id="补充说明">补充说明</h2><p><strong>badblock命令</strong> 用于查找磁盘中损坏的区块。 硬盘是一个损耗设备,当使用一段时间后可能会出现坏道等物理故障。电脑硬盘出现坏道后,如果不及时更换或进行技术处理,坏道就会越来越多,并会造成频繁死机和数据丢失。最好的处理方式是更换磁盘,但在临时的情况下,应及时屏蔽坏道部分的扇区,不要触动它们。badblocks就是一个很好的检查坏道位置的工具。</p> |
| 42 | +<h3 id="语法">语法</h3><pre><code>badblock(选项)(参数) |
| 43 | +</code></pre><h3 id="选项">选项</h3><pre><code>-b<区块大小>:指定磁盘的区块大小,单位为字节; |
| 44 | +-o<输出文件>:将检查的结果写入指定的输出文件; |
| 45 | +-s:在检查时显示进度; |
| 46 | +-v:执行时显示详细的信息; |
| 47 | +-w:在检查时,执行写入测试。 |
48 | 48 | </code></pre><h3 id="参数">参数</h3><ul>
|
49 | 49 | <li>磁盘装置:指定要检查的磁盘装置;</li>
|
50 | 50 | <li>磁盘区块数:指定磁盘装置的区块总数;</li>
|
51 | 51 | <li>启始区块:指定要从哪个区块开始检查。</li>
|
52 | 52 | </ul>
|
53 | 53 | <h3 id="实例">实例</h3><p>badblocks以4096的一个block,每一个block检查16次,将结果输出到“hda-badblocks-list”文件里。</p>
|
54 |
| -<pre><code>badblocks -b <span class="hljs-number">4096</span> -c <span class="hljs-number">16</span> /dev/hda1 -o hda-badblocks-<span class="hljs-type">list</span> |
| 54 | +<pre><code>badblocks -b 4096 -c 16 /dev/hda1 -o hda-badblocks-list |
55 | 55 | </code></pre><p>hda-badblocks-list是个文本文件,内容如下:</p>
|
56 |
| -<pre><code>cat hda-badblocks-<span class="hljs-type">list</span> |
57 |
| -<span class="hljs-number">51249</span> |
58 |
| -<span class="hljs-number">51250</span> |
59 |
| -<span class="hljs-number">51251</span> |
60 |
| -<span class="hljs-number">51253</span> |
61 |
| -<span class="hljs-number">51254</span> |
| 56 | +<pre><code>cat hda-badblocks-list |
| 57 | +51249 |
| 58 | +51250 |
| 59 | +51251 |
| 60 | +51253 |
| 61 | +51254 |
62 | 62 | ……
|
63 |
| -<span class="hljs-number">61245</span> |
| 63 | +61245 |
64 | 64 | ……
|
65 | 65 | </code></pre><p>可以针对可疑的区块多做几次操作。下面,badblocks以4096字节为一个“block”,每一个“block”检查1次, 将结果输出到“hda-badblocks-list.1”文件中,由第51000 block开始,到63000 block结束。</p>
|
66 |
| -<pre><code>badblocks -b <span class="hljs-number">4096</span> -c <span class="hljs-number">1</span> /dev/hda1 -o hda-badblocks-<span class="hljs-type">list</span><span class="hljs-number">.1</span> <span class="hljs-number">63000</span> <span class="hljs-number">51000</span> |
| 66 | +<pre><code>badblocks -b 4096 -c 1 /dev/hda1 -o hda-badblocks-list.1 63000 51000 |
67 | 67 | </code></pre><p>这次花费的时间比较短,硬盘在指定的情况下在很短的时间就产生“嘎嘎嘎嘎”的响声。由于检查条件的不同,其输出的结果也不完全是相同的。重复几次同样的操作,因条件多少都有些不同,所以结果也有所不同。进行多次操作后,直到产生最后的hda-badblock-list.final文件。</p>
|
68 |
| -<h3 id="其他">其他</h3><p><strong>1、fsck使用badblocks的信息</strong></p> |
| 68 | +<h3 id="其他">其他</h3><p> <strong>1、fsck使用badblocks的信息</strong> </p> |
69 | 69 | <p>badblocks只会在日志文件中标记出坏道的信息,但若希望在检测磁盘时也能跳过这些坏块不检测,可以使用fsck的-l参数:</p>
|
70 |
| -<pre><code>fsck<span class="hljs-selector-class">.ext3</span> -l /tmp/hda-badblock-list<span class="hljs-selector-class">.final</span> /dev/hda1 |
71 |
| -</code></pre><p><strong>2、在创建文件系统前检测坏道</strong></p> |
| 70 | +<pre><code>fsck.ext3 -l /tmp/hda-badblock-list.final /dev/hda1 |
| 71 | +</code></pre><p> <strong>2、在创建文件系统前检测坏道</strong> </p> |
72 | 72 | <p>badblocks可以随e2fsck和mke2fs的-c删除一起运行(对ext3文件系统也一样),在创建文件系统前就先检测坏道信息:</p>
|
73 |
| -<pre><code>mkfs<span class="hljs-selector-class">.ext3</span> -c /dev/hda1 |
| 73 | +<pre><code>mkfs.ext3 -c /dev/hda1 |
74 | 74 | </code></pre><p>代码表示使用-c在创建文件系统前检查坏道的硬盘。</p>
|
75 | 75 | <p>这个操作已经很清楚地告知我们可以采用<code>mkfs.ext3 -c</code>选项用<code>read-only</code>方式检查硬盘。这个命令会在格式化硬盘时检查硬盘,并标出错误的硬盘“block”。用这个方法格式化硬盘,需要有相当大的耐心,因为命令运行后,会一个个用读的方式检查硬盘。</p>
|
76 |
| - |
| 76 | +<!-- Linux命令行搜索引擎:https://jaywcjlove.github.io/linux-command/ --> |
77 | 77 | </div>
|
78 | 78 |
|
79 | 79 | <script type="text/javascript" src="../js/dt.js"></script>
|
|
0 commit comments