当前位置: 首页 > news >正文

树莓派挂载的移动硬盘badblocks坏道屏蔽,以这个为准

!!!use
这里要设置块大小和磁盘相同
badblocks -b 4096 -s -c 512 -v -o /a/2/bads4.txt /dev/sda5
检测完重新检测跳过之前的记录
badblocks -i /a/2/bads4.txt -b 4096 -s -c 512 -v -o /a/2/bads5.txt /dev/sda5
可以查看磁盘具体block总数和大小
sudo dumpe2fs /dev/sda5  > /a/2/dd.txt
e2fsck -l /a/2/bads4.txt /dev/sda5 -y
下面的这个命令有知道具体用途追加留言,谢谢!
fsck -l /a/2/bads2.txt /dev/sda1
可以使用 dd 命令使用 conv=noerror, sync 参数先备份目标区域的数据,在修复后用 dd 写回

上面是我反复看说明自己领悟的具体参照说明

e2fsck(8) - Linux 手册页  https://man7.org/linux/man-pages/man8/e2fsck.8.html
badblocks(8) - Linux manual page  https://man7.org/linux/man-pages/man8/badblocks.8.html

下面说一下我具体的操作遇到的一些问题

还是接上次的问题,坏道硬盘的由来,上篇文章已经说了8元一个的坏道硬盘,开始买来就是为了研究一下坏道问题和资料存上去到底什么情况

最终结果就是,我之前学的linux磁盘这块的根底太薄弱了,直到现在使用到坏道处理的时候才现学现用

例如一个硬盘有XXX个扇区。一个扇区512字节,系统格式化默认的一般4096,也就是4K对齐

在linux下也是如此,ext4格式下可以查 块大小

sudo dumpe2fs /dev/sdX1 | grep 'Block size'

根据这个功能我发现,我们屏蔽的坏块也是在这里显示的,用命令可以导出到文本

sudo dumpe2fs /dev/sda5  > /a/2/dd.txt

说一下坏盘分区遇到的问题,在windows11下插入usb接口后,打开windows资源管理器,有性能,就可以看到目前usb使用率,刚插入坏盘100%,大概几秒到几十秒就降到0%了,然后可以打开磁盘管理分区,分区遇到的坑就是别开始就格式化!!!先不指派磁盘号,也不格式化,这样就得到了一个raw的分区,我们可以一开始弄4个看看哪一个可以正常格式化,说明此区域还是好的多,初步判断。格式化成功的说明ntfs的mft记录成功,最起码系统格式对了,使用软件屏蔽

windows屏蔽坏道扇区的软件源码地址

【免费】windows下NTFS屏蔽坏道的源码资源-CSDN文库
https://download.csdn.net/download/cyuyan112233/89484993

下面说一下Ubuntu下分区遇到的坑,开始我直接fdisk分区就一个主分区,然后格式化,失败!

然后删除所有分区,重新建立4个主分区,格式化,发现其中两个可以格式化

然后删除所有分区 重新建立 扩展分区,然后新建逻辑分区一个

这回用 mkfs.ext4 /dev/sda5  格式化成功了

然后扫描磁盘坏块命令

badblocks  -b 4096 -s -c 2 -v -o /a/2/bads5.txt /dev/sda5

完成结束后屏蔽命令

e2fsck -l /a/2/bads5.txt /dev/sda5 -y

root@raspberrypi:~# e2fsck -l /home/administrator/2.txt /dev/sda5 -y
e2fsck 1.46.2 (28-Feb-2021)
/dev/sda5: Updating bad block inode.
ext2fs_update_bb_inode: Ext2 file too big while updating bad block inode

/dev/sda5: ***** FILE SYSTEM WAS MODIFIED *****

屏蔽成功,挂载了上去,发现容量明显变少了

root@raspberrypi:/a/2# mount /dev/sda5 /a/3

root@raspberrypi:/a/2# df -m
Filesystem     1M-blocks  Used Available Use% Mounted on
/dev/root           7171  5356      1493  79% /
devtmpfs             333     0       333   0% /dev
tmpfs                461     0       461   0% /dev/shm
tmpfs                185     3       183   2% /run
tmpfs                  5     1         5   1% /run/lock
/dev/mmcblk0p1       255    51       205  20% /boot
tmpfs                 93     1        93   1% /run/user/1000
/dev/sda5         299365     1    284087   1% /a/3

原先299365M现在成了284087M少了11G!!!还行8元320g少了11g过得去

屏蔽坏块的时候,需要屏蔽前后N个块,这样就可以防止读取坏块临近的位置造成二次坏块出现

工具下载地址源码

https://download.csdn.net/download/cyuyan112233/89391425

windows下读写ext4的软件

查看磁盘分区格式

方法1

root@ccyy:/a# sudo file -sL /dev/sdb5
/dev/sdb5: Linux rev 1.0 ext4 filesystem data, UUID=9ccf047a-0d34-45e7-bed9-1f1a6a6f0c15 (extents) (64bit) (large files) (huge files)
方法2

lsblk -f

主页 Ext2Fsd Project 下载 Ext2 File System Driver for Windows download | SourceForge.net

如果在屏蔽坏块操作上遇到问题可以留言,毕竟我不是做数据恢复的只是纯粹研究一下技术,拿来主义都是。

相关文章:

树莓派挂载的移动硬盘badblocks坏道屏蔽,以这个为准

!!!use 这里要设置块大小和磁盘相同 badblocks -b 4096 -s -c 512 -v -o /a/2/bads4.txt /dev/sda5 检测完重新检测跳过之前的记录 badblocks -i /a/2/bads4.txt -b 4096 -s -c 512 -v -o /a/2/bads5.txt /dev/sda5 可以查看磁盘具体block总数和大小 sudo dumpe2fs /dev/sda5 …...

Unity开箱即用的UGUI面板的拖拽移动功能

文章目录 👉一、背景👉二、效果图👉三、原理👉四、核心代码👉五,总结 👉一、背景 之前做PC项目时常常有面板拖拽移动的需求,今天总结封装一下,做成一个随时随地可复用的…...

春秋云境:CVE-2022-25411[漏洞复现]

根据题目提示和CNNVD优先寻找后台管理地址 靶机启动后,使用AWVS进行扫描查看网站结构 在这里可以看到后台管理的登录地址:/admin/,根据题目提示可知是弱口令 尝试admin、123456、admin666、admin123、admin888...等等常见弱口令 正确的账户…...

java基础知识点全集

JAVA的所有知识点 一、基础的数组、数据类型、输入输出二、类与对象1. 三大特征(1) 封装(2)继承(3)多态 2. 类的实例化(1) 类通过NEW来创建(2) 类的继承&…...

如何完成域名解析验证

一:什么是DNS解析: DNS解析是互联网上将人类可读的域名(如www.example.com)转换为计算机可识别的IP地址(如192.0.2.1)的过程,大致遵循以下步骤: 查询本地缓存:当用户尝…...

2024年6月个人工作生活总结

title: 2024年6月个人工作生活总结 urlname: code-for-2024-06 tags: 代码积累知识总结 categories:我的程序代码 date: 2024-06-30 00:00:00 photos:gallery/tech/c2.jpg 本文为 2024年6月工作生活总结。 研发编码 编码和注释 因某些需要,重拾了2019年的工程代码…...

Json与Java类

简介 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JSON数据由键值对构成,并以易于阅读的文本形式展现,支持数组、对象、字符串、数字、布尔值…...

动手学深度学习(Pytorch版)代码实践 -计算机视觉-39实战Kaggle比赛:狗的品种识别(ImageNet Dogs)

39实战Kaggle比赛:狗的品种识别(ImageNet Dogs) 比赛链接:Dog Breed Identification | Kaggle 1.导入包 import torch from torch import nn import collections import math import os import shutil import torchvision from…...

在Linux系统中挂载硬盘

目录 1. 查看硬盘信息 2. 分区硬盘(如果硬盘没有分区) 3. 格式化分区 4. 创建挂载点 5. 挂载分区 6. 验证挂载 7.设置开机自动挂载(可选) 1. 查看硬盘信息 lsblk 这个命令会列出所有的块设备,包括硬盘 2.…...

安卓短视频去水印v1.7 简洁好用

各大平台视频无水印提取,登录即永久会员! 无水印提取,图片无水印提取 视频旋转,倒放,转gif等功能。 链接:https://pan.baidu.com/s/1UgO4V16ZM34tG5uDog74Pg?pwdcn0u 提取码:cn0u...

【征服数据结构】:期末通关秘籍

【征服数据结构】:期末通关秘籍 💘 数据结构的基本概念😈 数据结构的基本概念😈 逻辑结构和存储结构的区别和联系😈 算法及其特性😈 简答题 💘 线性表(链表、单链表)&…...

GIT 基于master分支创建hotfix分支的操作

基于master分支创建hotfix分支的操作通常遵循以下步骤: 切换到master分支: 首先,确保你的工作区是最新的,并且你在master分支上。如果不在master分支,你需要先切换过去。 Bash git checkout master 拉取最新的master…...

Vue-CLI脚手架与node.js安装

前言: Vue-CLI 是一个基于 Vue.js 快速开发单页应用的官方脚手架工具,能够帮助开发者快速搭建前端项目的基础结构。在开始使用 Vue-CLI 前,首先需要安装 Node.js,因为 Vue-CLI 是基于 Node.js 构建的。 Node.js 是一个基于 Chrom…...

自适应站长跑路单页网站源码

跑路单页HTML源码自行修改文字就行了,上传到服务器里面运行即可,本地运行的话音乐会加载不出来,涉及到跨域问题 自适应站长跑路单页网站源码...

Java基础(判断和循环)

一、流程控制语句-顺序结构 顺序结构语句是Java程序默认的执行流程,按照代码的先后顺序,从上到下依次执行。 二、流程控制语句-分支结构(分支结构包括if、switch) if语句:在程序中用来进行判断 1、If语句的第一种格式&#xf…...

51单片机第12步_使用stdio.h库函数仿真串口通讯

本章介绍如何使用stdio.h库函数仿真串口通讯,学会使用view下面的“serial window #1”,实现模拟串口通讯。 Keil C51中有一些关键字,需要牢记: interrupt0:指定当前函数为外部中断0; interrupt1:指定当前函数为定时器0中断&…...

simulink-esp32开发foc电机

1. ESP32 和 STM32 都是流行的微控制器,但它们的刷写方式有所不同。 ESP32 ESP32 可以通过以下几种方式刷写: USB 下载模式:这是最常见的一种刷写方式。将 ESP32 连接到计算机的 USB 端口,然后将 ESP32 置于下载模式。可以使用…...

Python教程--基本技能

】TOC 5.1 解析命令行参数 在Python中,解析命令行参数是一项常见的任务,尤其是在开发命令行工具或脚本时。Python标准库提供了argparse模块,它可以帮助你轻松地编写用户友好的命令行接口。下面是使用argparse模块解析命令行参数的基本步骤&…...

干货分享:Spring中经常使用的工具类(提示开发效率)

环境:Spring5.3…30 1、资源工具类 ResourceUtils将资源位置解析为文件系统中的文件的实用方法。 读取classpath下文件 File file ResourceUtils.getFile(ResourceUtils.CLASSPATH_URL_PREFIX "logback.xml") ; // ...读取文件系统文件 file Resou…...

一文讲懂npm link

前言 在本地开发npm模块的时候,我们可以使用npm link命令,将npm 模块链接到对应的运行项目中去,方便地对模块进行调试和测试 用法 包链接是一个两步过程: 1.为依赖项创建全局软链npm link。一个符号链接,简称软链&a…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局:PCB行业的时代之问 在数字经济蓬勃发展的浪潮中,PCB(印制电路板)作为 “电子产品之母”,其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透,PCB行业面临着前所未有的挑战与机遇。产品迭代…...

Spring AI 入门:Java 开发者的生成式 AI 实践之路

一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...

基于SpringBoot在线拍卖系统的设计和实现

摘 要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统,主要的模块包括管理员;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...

JavaScript基础-API 和 Web API

在学习JavaScript的过程中,理解API(应用程序接口)和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能,使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...

C#中的CLR属性、依赖属性与附加属性

CLR属性的主要特征 封装性: 隐藏字段的实现细节 提供对字段的受控访问 访问控制: 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性: 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑: 可以…...

【Linux系统】Linux环境变量:系统配置的隐形指挥官

。# Linux系列 文章目录 前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变量的生命周期 四、环境变量的组织方式五、C语言对环境变量的操作5.1 设置环境变量:setenv5.2 删除环境变量:unsetenv5.3 遍历所有环境…...

苹果AI眼镜:从“工具”到“社交姿态”的范式革命——重新定义AI交互入口的未来机会

在2025年的AI硬件浪潮中,苹果AI眼镜(Apple Glasses)正在引发一场关于“人机交互形态”的深度思考。它并非简单地替代AirPods或Apple Watch,而是开辟了一个全新的、日常可接受的AI入口。其核心价值不在于功能的堆叠,而在于如何通过形态设计打破社交壁垒,成为用户“全天佩戴…...

前端中slice和splic的区别

1. slice slice 用于从数组中提取一部分元素,返回一个新的数组。 特点: 不修改原数组:slice 不会改变原数组,而是返回一个新的数组。提取数组的部分:slice 会根据指定的开始索引和结束索引提取数组的一部分。不包含…...

五子棋测试用例

一.项目背景 1.1 项目简介 传统棋类文化的推广 五子棋是一种古老的棋类游戏,有着深厚的文化底蕴。通过将五子棋制作成网页游戏,可以让更多的人了解和接触到这一传统棋类文化。无论是国内还是国外的玩家,都可以通过网页五子棋感受到东方棋类…...

结构化文件管理实战:实现目录自动创建与归类

手动操作容易因疲劳或疏忽导致命名错误、路径混乱等问题,进而引发后续程序异常。使用工具进行标准化操作,能有效降低出错概率。 需要快速整理大量文件的技术用户而言,这款工具提供了一种轻便高效的解决方案。程序体积仅有 156KB,…...