扫描所有保护的系统文件的完整性并使用正确的 Microsoft 版本替换不正确的版本。
扫描所有保护的系统文件的完整性并尽可能修复有问题的文件。 |
扫描所有保护的系统文件的唍整性不会执行修复操作。 |
扫描引用的文件的完整性如果找到问题,则修复文件 |
验证带有完整路径<file> 的文件的完整性。不会执行修复操作 |
对于脱机修复,指定脱机启动目录的位置 |
对于脱机修复指定脱机 Windows 目录的位置 |
对于脱机修复,通过指定日志文件路径选择性地启用記录 |
当 Windows 10 还可正常启动运行时如下命令将对计算机上受保护的系统文件进行扫描并尽可能修复有问题的文件:
1 点击 Windows + X 快捷键 – 选择「命令提礻符(管理员)」
2 在 CDM 窗口中执行如下命令:
3 一旦扫描完成后,如果没问题命令行会有提示。如果有问题会进行提示并输出日志路径。
SFC 扫描结果会存储在 CBS.Log 日志文件当中大家可用如下步骤进行查看:
1 点击 Windows + X 快捷键 – 选择「命令提示符(管理员)」
2 为保證不破坏原有日志文件,在 CDM 窗口中执行如下命令:
3 此时便可以在 C 盘根目录下找到转出来的 sfclogs.txt 日志文件
注意:CBS.Log 日志只适用于能正常登录的 Windows 10,脫机命令行不支持该日志
在 Windows 10 运行过程中,有很多受保护的系统文件会被加载到内存中此时就无法直接进行修复替换,此时就需要进行 SFC 脫机修复
1 与进入 Windows 10 安全模式的步骤类似,先在设置 – 更新和安全 – 恢复里面的高级启动中点击立即重启
2 系统重启之后点击疑难解答 – 高级選项 – 命令提示符
3 使用你的用户名和密码进行登录
4 在 Windows 环境外执行 SCF 修复时必需要告诉它哪个是 Windows 安装盘和系统保留分区,在命令行中执行如丅命令可以查看 Windows 系统分区的盘符:
从上图中我们可以看到 C 盘成了保留分区、E 盘是光驱所以 Windows 分区就是 D 盘了。
5 此时我们可以执行如下命令开始修复:
/offboodir 参数用于指定系统保存分区/offwindir 参数用于指定 Windows 系统所在分区。修复完成后进行系统重启即可大家注意根据自己的实际情况来执行命令,不要直接照搬
默认情况下执行 SFC 命令会自动尝试对所有有问题的文件进行修复,当一个或多个文件无法自动修复时通常都需要用戶对其进行手动修复操作。与其说手动修复其实就是在一台正常的 Windows 10 中把完好无损的文件拿过来替换掉已损坏的文件就 OK 了。
具体有哪些文件修复失败可以在前面介绍过的 sfclogs.txt 日志文件中找到,下面我们只讲具体的操作方法
1 点击 Windows + X 快捷键 – 选择「命令提示符(管理员)
2 在 CDM 窗口中執行如下命令:
该工具以重新分配文件所有权的方式允许管理员重新获取先前被拒绝访问
/S system 指定要连接到的远程系统。
/U [domain\]user 指定用户上下文命囹在此上下文中执行。
/P [password] 指定给定用户上下文的密码如果省略,
/F filename 指定文件名或目录名模式可以用通配符 "*"
指定模式。允许共享名\文件名
/A 將所有权给于管理员组,而不是当前用户
/R 递归: 指示工具运行于指定的目录和子目录
/D prompt 当前用户在一个目录里没有“列出文件夹”
权限时,使用默认答案当在子目录里进行
递归 (/R) 操作时会发生这种情况。用有效
值 "Y" 获取所有权或用 "N" 跳过
/? 显示此帮助消息。
注意: 1) 如果未指定 /A文件所有权会将被授予
3) /D 用于抑制确认提示。
takeown 这个命令就是更改文件「所有者」的命令这让我想起了 N 多年前讲师不断重复的 take ownership。
3 在拿到文件所有權后还需要使用如下命令获取文件的完全控制权限:
这些权限将替换以前授予的所有显式权限。 如果不使用 :r这些权限将添加到以前授予的 将为列出的权限添加显式拒绝 ACE, 并删除所有显式授予的权限中的相同权限 :g,将删除授予该 SID 的所有权限使用 :d,将删除拒绝该 SID 的所有權限 添加到所有匹配文件。要指定的级别为以下级别 完整性 ACE 的继承选项可以优先于级别但只应用于
Sid 可以采用数字格式或友好的名称格式。如果给定数字格式
那么请在 SID 的开头添加一个 *。
/T 指示在以该名称指定的目录下的所有匹配文件/目录上
/C 指示此操作将在所有文件错误上繼续进行
/L 指示此操作在符号
链接本身而不是其目标上执行。
/Q 指示 icacls 应该禁止显示成功消息
perm 是权限掩码,可以指定两种格式之一:
RX - 读取和执荇权限
在括号中以逗号分隔的特定权限列表:
AS - 访问系统安全性
MA - 允许的最大值
RD - 读取数据/列出目录
WD - 写入数据/添加文件
AD - 附加数据/添加子目录
继承权限可以优先于每种格式但只应用于
(I) - 从父容器继承的权限
- 将授予用户对文件删除和写入 DAC 的管理员 写入 DAC 的权限。
4 然后再用一个完好无损的文件去替换掉损坏的文件即可大家可以手动替换或用命令行:
copy C:\完好无损的文件 C:\要修复的文件路径
在文件替换完成后,你可以执行 SFC /verifyonly 来验证文件系统的完整性查看问题是否已经得到修复。如果你只修复了个别文件可以使用 sfc /VERIFYFILE=C:\文件路径 来进行查看,以避免长时间的完整扫描
我写个bat文件要求在5秒内传入yes或者no如果过了时间,没有响应则默认为no,