使用Windows SFC和DISM工具来解决服务器OS问题
TechTarget中国原创】
随着使用时间的越来越多,Windows服务器安装的系统文件可能会被损坏或损毁。管理员一般可以通过系统自带的System File Checker (SFC) 或者更健壮和强大的Deployment Image Servicing and Management (DISM)命令修复操作系统,而期间服务器不需要停机。
Windows System File Checker (SFC)和Deployment Image Servicing and Management (DISM)是能改变系统文件的管理员工具,因此它们必须在管理员命令窗口中执行。
首先是System File Checker
Windows SFC工具集可以对Windows桌面和服务器系统内所有被保护的系统文件进行扫描和验证其版本信息、文件签字和校验和。如果命令发现任何被保护的文件曾 经被串改过或者覆盖过,它会尝试从%systemroot%\system32\dllcache文件夹恢复该文件初始版本。所有SFC命令执行的动作都 会被记录在%Windir%\CBS\CBS.log文件里面。如果发现任何不可修复的错误,那么你需要调查所涉及的文件。你可以通过搜索关键词 “corrupt”来查看出现最多的问题。
Windows SFC command语法
C:\Windows\System32> sfc /scannow
/scannow指令表明了这个命令需要马上被执行。在服务器上大部分数据都正常的情况下,需要15分钟来完成这项任务——通常执行的过程中还需要消耗单颗CPU 60%-80%的资源。对于一个拥有多余4核CPU的服务器来说,这个命令对服务器性能的影响比较小。
有的时候,SFC不能成功将一些已经被更改的文件进行替换,这并不代表着出现了问题。举个例子,最近的Windows版本包含了显卡驱动的数据,这些数据会被认为是损坏的,但是出现问题的应该是Window文件系统而不是文件本身,所以并不需要修复什么。
如果SFC不能修复问题,试下Windows DISM
Windows DISM命令比SFC更加强大。它还能检查不同的文件资源库——%windir%\WinSXS文件夹,也被称为"component store"——并且可以从不同的潜在资源获得可替换的文件。命令行能够让你在诊断或者修复镜像问题之前,先使用一种更快的方式来检查镜像。
CheckHealth命令语法
C:\Windows\System32> dism /Online /Cleanup-Image /CheckHealth
即使在拥有很大容量系统盘的服务器上,这个命令通常也只需要花费少于30秒的时间并且不会消耗系统资源。除非发现了一些问题,否则命令会返回“No component store corruption detected.”的报告。如果命令发现了问题,这个版本的DISM报告只会告诉你它检查到了有损坏文件,但不会提供详细的信息。
如果发现了损坏文件?下一步可以试一下ScanHealth
C:\Windows\System32> dism /Online /Cleanup-Image /ScanHealth
在这个更详细版本的DISM镜像检查中,系统会报告损坏的组件存储,并且会表明是否能对其进行修复。如果发现了损坏文件并且可以修复,那么可以使用/RestoreHealth命令来操作,这个命令也同样作用于/online镜像或者不同的/source目标
RestoreHealth会替换损坏的组件存储条目
C:\Windows\System32> dism /Online /Cleanup-Image /RestoreHealth
C:\Windows\System32> dism /source:<spec> /Cleanup-Image /RestoreHealth
你可以使用之前的命令对正在运行的在线镜像轻松地进行文件替换。不过经常发生的是本地拷贝文件不可用,或者文件并不会比本地组件存储本身的内容更加正确。 在这种情况下,可以使用/source命令来指向一个Windows镜像文件——一个.wim文件或者一个.esd文件——或者一个拥有相同配置的已知、 完好工作的Winsxs文件夹,也可以是一个已知完好的同样机器的备份文件。默认的情况下,DISM命令会尝试从Microsoft下载页面去下载相应的 组件,你也可以通过/LimitAccess命令来关掉这个行为。如果需要知道关于/source命令的语法,可以到TechNet网站查看 “Repair a Windows Image”相关文章。
DISM是一款很强大的工具,它的功能远远超过了基本的镜像修复。笔者曾经试过将它和“瑞士军刀”做过对比来维护Windows镜像。Windows系统管理员会发现DISM非常复杂,有的时候充满挑战,但是总体来说还是值得一试的。
使用Windows SFC和DISM工具来解决服务器OS问题的更多相关文章
- Windows下mysql忘记密码的解决方法
Windows下mysql忘记密码的解决方法 mysql5.0 http://www.jb51.net/article/21984.htm方法一: 1.在DOS窗口下输入 net stop mysql ...
- windows下使用远程工具登录虚拟机上的Linux、访问虚拟机上的服务 、端口转发、win7 telnet登陆虚拟机
首先要清楚virtual box如何设置端口转发: 一篇文章: 如何使用VirtualBox进行端口转发 由于默认的方式是用NAT来做虚拟机网络的,因此如果从外网想访问虚拟机的应用会比较麻烦.以前一直 ...
- windows端口占用处理工具
一.描述 笔者在最近使用tomcat时,老是会遇到这种端口占用的问题,便写了这个小的exe,用于解决windows下的端口占用问题. 好吧,其实是我实在记不住CMD下的那几行命令.这玩意的实现比较简单 ...
- Windows系统内存分析工具的介绍
Windows系统内存分析工具的介绍(进程管理器,资源管理器,性能监视器, VMMap, RamMap,PoolMon) 微软官方提供多种工具来分析Windows 的内存使用情况,除了系统自带的任 ...
- Windows 上面优秀的工具软件推荐
Windows 上面优秀的工具软件推荐 一.下载软件 1.速盘 - 度盘神器 简介: 使百度网盘保持全速下载免受限速困扰! 下载: speedpan 2.http下载工具 百度网盘破解下载器:prox ...
- 使用Windows下的git工具往github上传代码 踩坑记录
使用Windows下的git工具往github上传代码 踩坑记录 背景 由于以前接触的项目都是通过svn进行版本控制,现在公司项目使用git,加上自己平时有一个练手小项目,趁着周末试着把项目上传到自己 ...
- Windows 的这款工具,有时让我觉得 Mac 不是很香
上次写了个 cheat.sh 在手,天下我有,小伙伴们热情高涨,觉得这是一个没有杂质的好工具:也有小伙伴抱怨说对 Windows 用户不是特别友好 (其实用 curl API 是没啥问题的).为了「雨 ...
- 转:windows下命令行工具
转自: http://www.cnblogs.com/haochuang/p/5593411.html Windows下CMD不好用,远没有Linux,或者一些SSH工具用起来方便.其实Windows ...
- Windows系统自带工具的 cmd 命令
目标 与计算机高手无关,只是为了减少鼠标点击的次数,提高效率. 适用范围 Windows XP,Windows 7,Window 8 (在Windows 7 下验证通过.) 使用方法 在 “运行“ 对 ...
随机推荐
- 如何把某个网站的SSL Server certificate链导入到ABAP Netweaver系统里
我们在用ABAP代码消费外网的url时会遇到一些异常,比如ICM_HTTP_SSL_PEER_CERT_UNTRUSTED,这是因为请求的url所在的网站的SSL Server certificate ...
- IOS 通过 代码 自定义cell(Cell的高度不一致)(优化性能)
创建cell的步骤 1.新建一个继承自UITabelViewCell的类 2.重写 initWithStyle:ReuseIdentifier: 方法 添加所有需要显示的子控件(不需要设置子控件的数据 ...
- 轻量级HTTP服务器Nginx(配置与调试Nginx维护Nginx)
轻量级HTTP服务器Nginx(配置与调试Nginx) 文章来源于南非蚂蚁 Nginx安装完毕后,会产生相应的安装目录,根据前面的安装路径,Nginx的配置文件路径为/opt/nginx/conf ...
- when 让你跳出异步回调噩梦 node.js下promise/A规范的使用
其实关于promise 的博客,前端时间专门写了一篇关于 promise 规范的文章,promise规范 让 javascript 中的异步调用更加人性化. 简单回忆下: promise/A规范定义的 ...
- 2017.11.27 用Servlet在JSP中加入验证码
登陆界面 <%@ page pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML ...
- 2017.11.9 如何利用JS做登陆验证界面
()案例----JavaScript实现输入验证 需要验证的表单输入域和要求 用户名不能为空,是否符合规定的格式 密码长度是否超过6,两次密码输入一致 邮箱地址:邮箱地址必须符合邮箱形式 ~~~注意提 ...
- DevExpress控件经验集合
关于GridControl的可以先看这里:http://blog.csdn.net/dong413876225/article/details/8313094 增加新行,我用了AddNewRow,但是 ...
- python备份mysql数据库
介绍使用python结合mysqldump对mysql数据库进行备份 import os import sys import configparser import time def test_fil ...
- Pop–实现任意iOS对象的任意属性的动态变化
简介 Pop 是一个可扩展的动画引擎,可用于实现任意iOS对象的任意属性的动态变化,支持一般动画,弹性动画和渐变动画三种类型. 项目主页: pop 最新示例: 点击下载 注意: 官方代码中,并不包含实 ...
- Linux下vim操作的一些使用技巧
以下均为个人在编程时对vim编辑器的一些心得,大神请指点,新手可以看过来 1.多文本编辑 vim -On/-on filename_1 … filename_n 如上所示,在要编辑的文件名前加上“-O ...