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

Linux系列讲解 —— 【fsck】检查并修复Linux文件系统

当文件系统出现损坏时,例如文件无法查看,删除等,可以使用 fsck(File System Consistency Check)进行修复。但是需要注意fsck在修复时,如果检查出某个文件有问题,可能会向用户请求删除。所以,建议其他方法都尝试后(例如将分区卸载后重新挂载)再使用fsck进行修复。

目录

  • 1. fsck基本用法
  • 2. fsck的参数解释
    • -? 或 --help:显示帮助信息
    • --version:显示版本信息
    • -A:检查所有文件系统
    • -C:显示进度条
    • -f:强制检查没有问题的磁盘
    • -l (小写L) :锁定设备以确保独占访问
    • -M:不检查已挂臷的文件系统
    • -N:不执行,只显示将要执行的操作
    • -n:交互式检查中对所有询问都回答“no”
    • -y:交互式检查中对所有询问都回答“yes”
    • -p 或 -a:自动修复文件系统,不进行提示
    • -P:并行检查文件系统,包括根文件系统
    • -R:跳过根文件系统;只在指定 '-A' 时有用
    • -T:启动时不显示标题
    • -t <fslist>:指定要检查的文件系统类型
    • -V:显示更详细的输出信息
    • -r [fd]:在最后输出统计信息

1. fsck基本用法

语法:

fsck [-lsAVRTMNP] [-r [fd]] [-C [fd]] [-t fstype] [filesystem...] [--] [fs-specific-options]

2. fsck的参数解释

-? 或 --help:显示帮助信息

在这里插入图片描述


--version:显示版本信息

在这里插入图片描述


-A:检查所有文件系统

(1) 遍历/etc/fstab文件,并尝试在一次运行中检查所有文件系统,这个大写的A代表ALL的意思。

(2) 检查顺序按照/etc/fstab第六个参数<pass>,从小到大依次执行(pass值为0的文件系统将会跳过检查)。如果有多个文件系统有相同的pass号,并且它们不在同一个磁盘,fsck将尝试并行检查它们。但是,如果设置了环境变量FSCK_FORCE_ALL_PARALLEL,那么fsck会强制并行处理相同pass号的文件系统,无论它们是否在同一个磁盘上。
在这里插入图片描述

(3) 根文件系统( 挂载点一定是 / )是系统引导过程的基础,因此其在/etc/fstab文件中pass值设置为1,从而作为最优先检查的文件系统,而其他文件系统的pass值则为1以后的数字。

(4) 手册上说这个选项会在/etc/rc初始化文件系统的时候一次性检查/etc/fstab中的所有文件系统,但是我没有在/etc/rc中找到相关的命令。


-C:显示进度条

显示每一步的执行进度条 ( 目前仅针对ext[234] ) 。
在这里插入图片描述


-f:强制检查没有问题的磁盘

fsck检查后会有记录,所以再次马上检查磁盘时,会直接报告上次检查结果。如果想再让fsck进行磁盘检查,此时可以使用这个选项进行强制检查。


-l (小写L) :锁定设备以确保独占访问

锁定设备以确保在检查期间没有其他程序会尝试使用该分区。


-M:不检查已挂臷的文件系统

如果检查的文件系统已经挂载,则返回错误代码0。


-N:不执行,只显示将要执行的操作

打印出更具体的fsck命令内容,而不执行。比如下面fsck命令,其实真正调用的是fsck.ext4。
在这里插入图片描述


-n:交互式检查中对所有询问都回答“no”

检查的时候发现问题,只报告错误,而不做处理。下图红框的no是自动输入跳过的。
在这里插入图片描述


-y:交互式检查中对所有询问都回答“yes”

-n选项正好相反。


-p 或 -a:自动修复文件系统,不进行提示

遇到错误自动执行修复,不会询问用户。


-P:并行检查文件系统,包括根文件系统

搭配 -A 选项时,根文件系统将与其他文件系统并行检查。


-R:跳过根文件系统;只在指定 ‘-A’ 时有用

上面提到指定 -A 选项后会检查fstab中所有的文件系统,如果再加入 -R 则可以跳过根文件系统的检查。


-T:启动时不显示标题

加入 -T 后,则下面的红框内容不显示。
在这里插入图片描述


-t :指定要检查的文件系统类型

(1) 只检查fslist类型的文件系统,所以在指定 -A 时,只检查与fslist匹配的文件系统。

(2) fslist可以是以英文逗号分隔的列表,从而指定多个文件系统类型。fslist列表中的所有类型都可以使用否定运算符’no’或’!'作为前缀,从而只检查fslist中未列出类型的文件系统。

(3) fslist也可以指定文件系统的选项(参看/etc/fstab中第四列选项<options>),从而检查匹配这些选项的文件系统,例如:fsck -t opts=ro。同样的,fslist列表中的所有选项也可以使用否定运算符’no’或’!'作为前缀,从而只检查fslist中未列出选项的文件系统。

(4) 在fsck的说明文档中,有提到 “ 如果在 fslist 中发现 loop 类型,则将其视为 opts=loop 选项进行处理”,这个了解一下就好。

(5) 使用 fsck 指定单个分区时,如果没有指定 -t 选项,则会自动在/etc/fstab中找寻该文件系统对应的类型。若没有找到,则使用默认的文件系统类型(此版man手册中说明是ext2类型)。


-V:显示更详细的输出信息

显示更详细的输出信息,包括上面 -N 能输出的内容。


-r [fd]:在最后输出统计信息

在这里插入图片描述

status: fsck运行完后返回的错误码
rss: 最大运行集大小(KB)
real: 经过的所有时钟时间
user: fsck运行所使用的用户时间
sys: 系统CPU时间

可以看到-r选项还可以后接文件描述符fd,man fsck对其解释如下:

GUI front-ends may specify a file descriptor fd, in which case the progress bar information will be sent to that 
file descriptor in a machine parsable format.  For example:
/dev/sda1 0 92828 4.002804 2.677592 0.86186

相关文章:

Linux系列讲解 —— 【fsck】检查并修复Linux文件系统

当文件系统出现损坏时&#xff0c;例如文件无法查看&#xff0c;删除等&#xff0c;可以使用 fsck&#xff08;File System Consistency Check&#xff09;进行修复。但是需要注意fsck在修复时&#xff0c;如果检查出某个文件有问题&#xff0c;可能会向用户请求删除。所以&…...

gitlab突然提示我要输入密码了。

用了很长时间的一个gitlab库&#xff0c;今天提交代码的时候突然提示我输入密码了&#xff0c;并且用户还是gitxx.xx.xx.xx的&#xff0c;瞬间懵逼。 想想原因&#xff0c;可能是因为我不久前设置了本地对另外一个git库的远程访问&#xff0c;用的是ssh&#xff0c;操作过程中可…...

业务测试常见问题(一)

如何多维度的分析一个需求&#xff1f; 功能维度&#xff1a;需求中所描述的功能是否实现&#xff0c;与用户的需求是否一致&#xff0c;是否完整符合用户的需求等。 安全性维度&#xff1a;是否有安全漏洞&#xff0c;是否存在未授权访问漏洞等&#xff0c;以保证系统的安全性…...

IntelliJ IDEA失焦自动重启服务的解决方法

IDEA 热部署特性 热部署&#xff0c;即应用正属于运行状态时&#xff0c;我们对应用源码进行了修改更新&#xff0c;在不重新启动应用的情况下&#xff0c;可以能够自动的把更新的内容重新进行编译并部署到服务器上&#xff0c;使修改立即生效。 现象 在使用 IntelliJ IDEA运…...

终端准入控制系统,保障企业内网安全的关键防线

随着网络技术的不断发展&#xff0c;企业面临的安全威胁也越来越多。终端作为承载企业业务的媒介&#xff0c;对内网资产安全有着重要影响。确保内网终端&#xff08;如PC、BYOD、IoT等&#xff09;能够得到统一管理&#xff0c;对保护内网安全很有必要。终端准入控制作为一种有…...

mysql-执行计划

1. 执行计划表概述 id相同表示加载表的顺序是从上到下。 id不同id值越大&#xff0c;优先级越高&#xff0c;越先被执行。id有相同&#xff0c;也有不同&#xff0c;同时存在。 id相同的可以认为是一组&#xff0c;从上往下顺序执行&#xff1b;在所有的组中&#xff0c;id的值…...

金蝶云星空和旺店通·企业奇门接口打通对接实战

金蝶云星空和旺店通企业奇门接口打通对接实战 接入系统&#xff1a;金蝶云星空 金蝶K/3Cloud&#xff08;金蝶云星空&#xff09;是移动互联网时代的新型ERP&#xff0c;是基于WEB2.0与云技术的新时代企业管理服务平台。金蝶K/3Cloud围绕着“生态、人人、体验”&#xff0c;旨在…...

在服务器上使用nginx改变前端项目请求的url

location /app-dev {rewrite ^/app-dev/(.*) /$1 break;proxy_pass http://152.136.36.251:9999;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr; } location /请求后缀 { rewrite ^/app-dev/(.*) /$1 break; proxy_pass 想要的请求后端的url; …...

【学习笔记】莫比乌斯反演

退役OIer回来受虐啦 一些定义 μ ( x ) { 1 x > 1 ( − 1 ) n x ∏ i 1 n P i 0 o t h e r w i s e \mu(x) \begin{cases} 1 & x > 1 \\ (-1)^n & x \prod _ {i1} ^ {n} P_{i}\\ 0 & otherwise \end{cases} μ(x)⎩ ⎨ ⎧​1(−1)n0​x>1x∏i1n​Pi…...

一款构建Python命令行应用的开源库

1 简介 当我们编写 Python 程序时&#xff0c;我们经常需要与用户进行交互&#xff0c;接收输入并输出结果。Python 提供了许多方法来实现这一点&#xff0c;其中一个非常方便的方法是使用 typer 库。typer 是一个用于构建命令行应用程序的 Python 库&#xff0c;它使得创建命令…...

10-Node.js模块化

01.模块化简介 目标 了解模块化概念和好处&#xff0c;以及 CommonJS 标准语法导出和导入 讲解 在 Node.js 中每个文件都被当做是一个独立的模块&#xff0c;模块内定义的变量和函数都是独立作用域的&#xff0c;因为 Node.js 在执行模块代码时&#xff0c;将使用如下所示的…...

数字IC前端学习笔记:数字乘法器的优化设计(Dadda Tree乘法器)

相关阅读 数字IC前端https://blog.csdn.net/weixin_45791458/category_12173698.html?spm1001.2014.3001.5482 华莱士树仍然是一种比较规则的结构&#xff08;这使得可以方便地生成树的结构&#xff09;&#xff0c;这导致了它所使用的全加器和半加器个数不是最少的&#xff…...

计算机专业毕业设计项目推荐14-文档编辑平台(SpringBoot+Vue+Mysql)

文档编辑平台&#xff08;SpringBootVueMysql&#xff09; **介绍****各部分模块实现** 介绍 本系列(后期可能博主会统一为专栏)博文献给即将毕业的计算机专业同学们,因为博主自身本科和硕士也是科班出生,所以也比较了解计算机专业的毕业设计流程以及模式&#xff0c;在编写的…...

【读书后台管理系统】—后端框架搭建(二)

【读书后台管理系统】—后端框架搭建&#xff08;二&#xff09; 一、 Node 简介 Node 是一个基于 V8 引擎的 Javascript 运行环境&#xff0c;它使得 Javascript 可以运行在服务端&#xff0c;直接与操作系统进行交互&#xff0c;与文件控制、网络交互、进程控制等 Chrome …...

【DLoopDetector(C++)】DBow2词袋模型loop close学习

0.前言 最近读了两篇论文&#xff0c;论文作者开源了一种基于词袋模型DBoW2库的DLoopDetector算法&#xff0c;自己运行demo测试一下 对应论文介绍&#xff1a;Bags of Binary Words for Fast Place Recognition in Image Sequences 开源项目Github地址&#xff1a;https://gi…...

什么是CAS机制?

CAS和Synchronized的区别是什么&#xff1f;适合什么样的场景&#xff1f;有什么样的优点和缺点&#xff1f; 示例程序&#xff1a;启动两个线程&#xff0c;每个线程中让静态变量count循环累加100次。 public class ThreadTest {private static int count 0;public static …...

Java多态详解

下面讲解一下Java中的多态机制&#xff0c;力求用最通俗易懂的语言&#xff0c;最精炼的话语&#xff0c;最生动的例子&#xff0c;深入浅出Java多态&#xff0c;帮助读者轻松掌握这个知识点。 什么是多态&#xff1f; 多态是指同一种行为具有多个不同表现形式的能力。 多态…...

Android中简单实现Spinner的数据绑定

Android中简单实现Spinner的数据绑定 然后声明对象实例并加入到arraylist里面,并设置spinner的适配器 Spinner Sp (Spinner).............// List<CItem > lst new ArrayList<CItem>(); CItem ct new CItem ("1","测试"); lst.Add(ct)…...

【版本控制工具二】Git 和 Gitee 建立联系

文章目录 前言一、Git 和 Gitee 建立联系1.1 任意目录下&#xff0c;打开 git bash 命令行&#xff0c;输入以下命令生成公钥1.2 配置SSH公钥1.3 进行全局配置 二、其它相关Git指令2.1 常用指令2.2 指令操作可能出现的问题 三、补充3.1 **为什么要先commit&#xff0c;然后pull…...

最新AI智能创作系统ChatGPT商业源码+详细图文搭建部署教程+AI绘画系统

一、AI系统介绍 SparkAi创作系统是基于国外很火的ChatGPT进行开发的Ai智能问答系统。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作ChatGPT&#xff1f;小编这里写一个详细图文教程吧&am…...

设计模式和设计原则回顾

设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

多场景 OkHttpClient 管理器 - Android 网络通信解决方案

下面是一个完整的 Android 实现&#xff0c;展示如何创建和管理多个 OkHttpClient 实例&#xff0c;分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容

基于 ​UniApp + WebSocket​实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配​微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)

可以使用Sqliteviz这个网站免费编写sql语句&#xff0c;它能够让用户直接在浏览器内练习SQL的语法&#xff0c;不需要安装任何软件。 链接如下&#xff1a; sqliteviz 注意&#xff1a; 在转写SQL语法时&#xff0c;关键字之间有一个特定的顺序&#xff0c;这个顺序会影响到…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序

一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文全面剖析RNN核心原理&#xff0c;深入讲解梯度消失/爆炸问题&#xff0c;并通过LSTM/GRU结构实现解决方案&#xff0c;提供时间序列预测和文本生成…...

智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制

在数字化浪潮席卷全球的今天&#xff0c;数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具&#xff0c;在大规模数据获取中发挥着关键作用。然而&#xff0c;传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时&#xff0c;常出现数据质…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...