微软强大的命令行工具.doc_第1页
微软强大的命令行工具.doc_第2页
微软强大的命令行工具.doc_第3页
微软强大的命令行工具.doc_第4页
微软强大的命令行工具.doc_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

“文件和磁盘实用程序”系列共包含24款软件(实为23款,“PsFile”和“PsTools”为不同名称同一款软件)。一、AccessChk简介为了确保创建安全的环境,Windows管理员通常需要了解特定用户或用户组对文件、目录、注册表项和Windows服务等资源具有哪种访问权限。AccessChk能够通过直观的界面和输出快速回答这些问题。安装AccessChk是控制台程序。将AccessChk复制到可执行路径。键入“accesschk”可显示其使用语法。AccessChk可在WindowsVista、Win2K、WindowsXP和Server2003(包括x64版本的Windows)上运行。用法用法:用法:accesschk-s-e-r-w-n-v-k-p-c|-d用户名-cName是Windows服务,例如ssdpsrv(指定“*”可显示所有服务)-d仅处理目录-e仅显示显式设置的完整性级别(仅限于WindowsVista)-kName是注册表项,例如hklmsoftware-n仅显示没有访问权限的对象-pName是进程名或PID,例如cmd.exe(指定“*”作为name可显示所有进程)-q省略标语-r仅显示具有读取访问权限的对象-s递归-v详细(包括WindowsVista完整性级别)-w仅显示具有写入访问权限的对象如果指定用户名或用户组名,则AccessChk将报告该帐户的有效权限;否则,它将转储安全描述符。默认情况下,路径名被解释为文件系统路径。对于每个对象,AccessChk在帐户具有读取、写入访问权限时分别输出R、W,在帐户没有任何访问权限时不输出任何内容。-v开关可使AccessChk转储授予帐户的特定访问权限。示例以下命令将报告PowerUsers帐户对WindowsSystem32中的文件和目录具有的访问权限:accesschkpowerusersc:windowssystem32以下命令显示Users组的成员对哪些Windows服务具有写入访问权限:accesschkusers-cw*查看特定帐户对HKLMCurrentUser下的哪些注册表项没有访问权限:accesschk-knsaustinmrusshklmsoftware查看HKLMSoftware项的安全性:accesschk-khklmsoftware查看Vista中UsersMark下的所有具有显式完整性级别的文件:accesschk-e-sc:usersmark下载AccessChk(46KB)二、AccessEnum简介尽管基于WindowsNT的系统利用了灵活的安全模型,从而可以对安全和文件权限进行完全控制,但管理权限以使用户对文件、目录和注册表项具有适当的访问权限却可能很困难。没有可用来快速查看用户对目录树或注册表项树的访问权限的内置方法。AccessEnum使您片刻之内即可全面了解文件系统和注册表安全设置,必要时它可以成为帮助您查找安全漏洞和锁定权限的理想工具。AccessEnum可在WindowsNT/2000/XP/2003上运行。工作原理AccessEnum使用标准的Windows安全API向其列表视图中填写读取、写入和拒绝访问权限信息。下载AccessEnum(51KB)下载AccessEnum汉化版(59KB)三、CacheSet介绍CacheSet是一个小程序,允许您处理系统文件缓存中的工作集参数。与CacheMan不同,CacheSet可以在所有版本的NT上运行,而且在不对新ServicePack版本进行修改的情况下也可运行。除了使您能够控制工作集大小的最小值和最大值,它还允许您重置缓存的工作集,强制它在必要时从一个最小的起点开始增长。仍然与CacheMan不同的是,对CacheSet的更改会对缓存的大小立即产生影响。本文包含完整的源代码。使用CacheSet对系统缓存的大小进行性能优化的方式,在用CacheMan时如果不调整内部变量就无法做到。注意:要在NT4.0ServicePack4上使用CacheSet,您必须拥有“增加配额”的权限(管理员账户默认拥有此权限)。CacheSet已经获得更新可启用此权限,因此它可以在SP4上运行。安装和使用CacheSet可以在已发布的所有NT版本上运行。启动后,它显示系统文件缓存的当前大小(每秒更新两次)、最大值(上一次重新启动后的最大值),并允许您设置新工作集大小的最小值和最大值。设置新的大小输入新的最小值和最大值,单击“Apply”(应用)按钮即可。如果出现错误,那么应是以下情况之一:您输入的最大值小于最小值,或您输入的最小值小于系统工作集大小的最小值,或者您输入的最大值大于系统工作集大小的最大值。请调整您输入的值,然后再试一次。您可能注意到缓存的大小立即发生变化,然后迅速缩小或增大。这是因为系统每秒自动修剪工作集一次。释放出来的缓存页仍在内存中,但可以迅速被放弃,由其他需要更多内存的程序使用。类似地,当应用程序访问文件系统数据时,缓存可以很容易重新获得页。重置以前的值任何时候,只需单击“重置”(Reset)按钮,您即可恢复最后一次启动CacheSet时缓存的工作集的活动值。清除缓存的工作集按下“清除”(Clear)按钮即可强制缓存释放它的所有页。请注意,缓存在需要时可以重新增大,这与刷新缓存不同-分配给它的页面将可以由其他程序使用,并可以被缓存回收。使用命令行界面您可以在CacheSet的命令行上输入工作集大小的最小值和最大值。CacheSet将自行应用这些新的值。这样,您可以将CacheSet添加到“开始”(Start)程序组以便在每次启动时自动设置缓存的大小。用法:CacheSet工作集最小值工作集最大值工作原理CacheSet使用一个NtQuerySystemInformation调用来获取关于缓存设置的信息以及NtSetSystemInformation以设置新的大小调整信息。进程的工作集信息为NT的内存管理器提供指导原则,说明多少页的物理内存应该分配给应用程序。由于这些是指导原则,因此可能出现这样的情况,即内存管理器将某工作集的大小增大到超过最大值,或将其缩小到小于最小值。但是,设置是将会影响整体分配的因素,也因此会影响到应用程序的响应性。对于CacheSet而言,应用程序就是文件系统缓存。NtSetSystemInformation在内部调用MmAdjustWorkingSetSize,后者会增大应用程序的工作集或对其进行修剪。如果传递给MmAdjustWorkingSetSize的第三个参数是1,系统缓存的工作集将得到调整,否则调整将发生在当前过程上(系统信息调用只影响系统缓存)。将-1作为最小值和最大值传递将导致MmAjustWorkingSetSize执行工作集清除操作,释放应用程序工作集中的所有页面。安全漏洞关于CacheSet用来完成工作的接口,尤其有意思的一点是,它不需要特定的权限来调用。因此,您甚至可以用来宾帐户运行CacheSet,这一点很难否认不是一种安全漏洞,因为这种情况下,任何人都可以影响系统缓存的大小调整策略。更新:自NT4.0ServicePack4起,微软已经堵住了此漏洞,要求更改缓存工作集的账户拥有“增加配额”权限。默认情况下,管理员用户和组账户拥有此权限。下载CacheSet(44KB)四、Contig简介市场上有许多NT的磁盘碎片整理程序,包括WinternalsDefragManager。这些工具对执行常规磁盘碎片整理都很有用,但虽然大多数文件都可由这些实用程序进行碎片整理,有些文件则未必。此外,很难确保频繁使用的特定文件能得到碎片整理-由于应用的碎片整理产品所使用的碎片整理算法所特有的原因,这些文件可能仍然是零碎的。最后,即使所有的文件都得到碎片整理,随后对关键文件的更改可能导致他们变得零碎。只有通过运行彻底的碎片整理操作,才可能指望他们再次得到碎片整理。Contig是一个单个文件碎片整理程序,其目的是使磁盘上的文件保持连续。对于持续被碎片化的文件,或者如果您希望确保碎片数量尽量少,它可以完美地迅速优化文件。安装和使用Contig可以在NT4.0或更高版本上运行。Contig可以用来整理现有文件的碎片,或者创建指定大小和名称的新文件,并优化其在磁盘上的位置。Contig使用标准的Windows碎片整理API,因此它不会导致磁盘损坏,即使您在运行时终止它。要使现有的文件保持连续,请按如下方式使用Contig:用法:contig-v-a-q-s文件名使用-v开关可以使Contig打印出所执行的文件碎片整理操作的信息。如果您只希望看到一个或多个文件的碎片化程度,请使用-a开关令Contig分析碎片。使用s开关,可以在用通配符指定文件名时递归执行子目录处理。例如,要对c:winnt下的所有DLL文件进行碎片整理,您可以输入“contig-sc:winnt*.dll”。-q开关覆盖-v开关,使Contig在“静默”模式下运行,此时碎片整理过程中打印出的唯一内容就是摘要信息。要在创建新文件后即完成碎片整理,请按如下方式使用Contig:用法:contig-v-n文件名长度工作原理Contig使用本机WindowsNT中与NT4.0一起推出的碎片整理支持(有关详细信息,请参见我的关于碎片整理API的文档)。它首先扫描磁盘,收集关于可用区域的位置和大小信息。然后,它确定相关文件的位置。然后,Contig根据可用区域和文件当前所包含的碎片数量,决定文件是否可以优化。如果文件可以优化,它将被移入磁盘的可用空间。下载Contig(55KB)五、DiskExt简介DiskExt展示了对IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS命令的使用,该命令返回有关某卷的分区位于哪个磁盘(多分区磁盘可以驻留在多个磁盘上),以及分区位于磁盘上的什么位置等信息。下载DiskExt(40KB)六、DiskMon简介DiskMon是一种应用程序,记录和显示Windows系统上的所有硬盘活动。您也可以最小化DiskMon到您的系统任务栏,在此它就象磁盘灯一样工作,有读盘活动时显示绿图标,有写盘活动时则显示红图标。DiskMon可以在NT4.0或更高版本上运行。安装和使用安装DiskMon的过程极其简单,解压缩之后键入“diskmon”即可。在WindowsNT中,GUI动态加载驱动程序(根据WindowsNTDDK中的instdrv样本代码),而后者则开始监控所有硬盘。在Windows2000和更高版本中没有驱动程序组件:GUI依靠内核事件跟踪来获取磁盘活动。菜单和工具栏按钮可用于禁用事件捕获、控制列表视图的滚动以及将列表视图中的内容保存到ASCII文件中。要使DiskMon在系统任务栏中象磁盘灯一样工作,请选择“Options|MinimizetoTray”(选项|最小化到任务栏)菜单项,或者用“/l”(小写L)命令行开关启动DiskMon,如diskmon/l。要重新激活DiskMon窗口,双击DiskMon任务栏图标。要在任务栏中创建Diskmon的快捷方式,请在您的ProgramFilesStartup文件夹中创建一个快捷方式,编辑快捷方式的属性,设定其“Target”(目标)指向可执行文件,将路径放在引号内而开关则放在引号外:C:SysinternalsToolsDiskmon.exe/l读与写的偏移量以扇区表示(512字节)。事件可以按持续时间来计时(以微秒计),或者按照启动时的绝对时间来标记。“HistoryDepth”(历史记录深度)对话框可以用来指定将在GUI中保存的最大记录数(0代表无限制)。WindowsNT4实施如果使用标准的过滤技术,那么动态载入的驱动程序(如DiskMon)将不可能附加到硬盘设备对象并看到源自文件系统的请求。这是因为文件系统驱动程序在系统初始化时打开磁盘设备,并且与I/OManager(输入/输出管理器)不同的是,文件系统驱动程序将IRP直接发送给这些设备。I/OManager允许文件系统过滤器驱动程序在初始化后附加到文件系统设备,原因是它在每次即将发送Irp到文件系统时会检查附加的设备,并代之以将Irp发给它们。DiskMon通过使用我开发的驱动程序功能拦截技术克服了此限制。DiskMon找到一个磁盘设备的驱动程序对象,并用它自己的调度入口点代替驱动程序的调度入口点。DiskMon过滤功能将它所看到的Irp传递给关联的驱动程序,同时以类似的方式拦截完成例程,这样它就可以看到请求的结果。Windows2000和更高版本的实施在Windows2000以及更高版本中,Diskmon使用内核事件跟踪。事件跟踪在MicrosoftPlatformSDK中有说明,SDK包括了作为Diskmon基础的TraceDmp的源代码。下载DiskmonforWindowsNT4(68KB)下载DiskmonforWindows2000/XP/2K3(80KB)七、DiskView简介用图表方式显示您的磁盘,允许您确定某个文件的位置,或者通过单击簇来查看占用它的文件。双击以获得关于分配了某簇的文件的详细信息。Diskview可在WindowsNT4、2000、XP和Server2003上运行。下载DiskView(88KB)八、DiskUsage简介Du(磁盘使用情况)报告您所指定的目录的磁盘空间使用情况。默认情况下,它对目录进行递归操作,显示目录及其子目录的总大小。用法用法:du-v-l|-n-q(文件或目录)-l指定信息的子目录深度(默认为全部级别)-n不要递归-q不打印标语-v显示中间目录的信息下载DiskUsage(41KB)九、EFSDump简介Windows2000引入了加密文件系统(EFS),因此用户可以保护他们的敏感数据。有若干个新的API都是在支持这个机制方面初次亮相,包括一个QueryUsersOnEncryptedFile,它允许您查看谁可以访问加密文件。这个小程序使用API来显示有权访问加密文件的帐户。用法:efsdump-s-s对子目录执行递归操作。EFSDump接受通配符,如“efsdump*.txt”。下载EFSDump(39KB)十、Filemon简介注意:在从Windows2000SP4、WindowsXPSP2、WindowsServer2003SP1和WindowsVista开始的Windows版本中,Filemon和Regmon已被ProcessMonitor代替。保留Filemon和Regmon是为了支持旧版操作系统,这些操作系统包括Windows9x。FileMon可实时监视和显示系统中的文件系统活动。它的各项高级功能使其成为一个功能强大的工具,用来探索Windows的工作方式、查看应用程序对文件和DLL的使用方法,或发现系统或应用程序文件配置中的问题。Filemon时间戳功能将向您精确显示每次打开、读取、写入或删除的时间,其状态列将为您显示最终结果。FileMon易于使用,几分钟内就可以熟练掌握。它一旦启动就开始进行监视,其输出窗口可以保存到文件中,以便脱机查看。它具有完整的搜索功能,如果您发现信息重载,只要设置一个或几个筛选器就可以解决。FileMon可以在NT4.0、Windows2000、WindowsXP、WindowsXP和WindowsServer200364位版本、Windows2003Server、Windows95、Windows98和WindowsME上运行。安装和使用如果有任何问题或疑问,请访问SysinternalsFilemon论坛。只需运行FileMon(filemon.exe)即可。必须有管理员权限才能运行FileMon。第一次启动FileMon时,它将监视所有本地硬盘驱动器。可以使用菜单、热键或工具栏按钮来清理窗口、选择和取消选择包括网络卷在内的受监视卷(WindowsNT/2K/XP)、将受监视的数据保存到文件,以及筛选和搜索输出。如果指定了筛选器,则在每次启动FileMon时,它将要求您确认是否使用上次会话中使用的筛选器。若要启动FileMon但不显示提示,请在命令行上指定/q开关。在FileMon启动时,它将自动捕获文件系统活动。若要在启动它时禁用捕获功能,请在命令行上使用/o开关。在将事件打印到输出中时,这些事件都标有序列号。如果Filemon内部缓冲区在负载极重的活动期间出现溢出,这会通过序列号的间隔反映出来。每次退出FileMon时,它将记住已配置的筛选器、窗口位置以及输出列的宽度。筛选可使用“筛选器”对话框(可通过工具栏按钮或选择“编辑|筛选器/突出显示”菜单来访问)来选择将显示在列表视图中的数据。“*”通配符可与任意字符串匹配,并且筛选器不区分大小写。只显示在包含筛选器中出现但被排除筛选器排除的匹配项。筛选器中的多个字符串用“;”分隔(如“filemon;temp”)。WindowsNT/2000注意事项:由于文件I/O具有异步特点,因此不能对结果字段进行筛选。例如,如果包含筛选器是“c:temp”,排除筛选器是“c:tempsubdir”,则会监视对c:temp下的文件和目录(c:tempsubdir除外)的所有引用。通配符支持复合模式的匹配,这样就可以匹配特定应用程序进行的特定文件访问,例如:包含筛选器“Winword*Windows”可以让FileMon仅显示MicrosoftWord对包含“Windows”一词的文件和目录进行的访问。使用突出显示筛选器可指定要在列表视图输出中突出显示的输出内容。通过“编辑|突出显示颜色”选择突出显示的颜色。其他筛选器选项可选择或取消选择读取、写入或打开操作。在许多故障排除方案中,仅关注打开操作,例如:在许多疑难排解的案例中,只有打开作业是有关系的。选择卷(WindowsNT/2K/XP/2K3)可使用“卷”菜单来选择或取消选择受监视的卷。选择“网络”菜单项可监视对任何网络资源的访问,包括远程共享和对远程卷的UNC路径名称访问。限制输出通过工具栏按钮或“编辑|历史记录”菜单项访问的“历史记录深度”对话框允许您指定将在输出窗口中记住的最大行数。0深度用于表示无限制。搜索输出可以使用“查找”菜单项(或“查找”工具栏按钮)在输出窗口中搜索字符串。可以使用F3键向前重复搜索,使用Shift+F3向回重复搜索。若要从输出中的一个特定行开始进行搜索,请通过单击最左边的列(索引号)选择起始行。如果没有选择行,则新的搜索从第一个条目开始向下搜索,从最后一个条目向上搜索。选项FileMon可以为事件设置时间戳,或显示其持续时间。“选项”菜单和时钟工具栏按钮可让您在两种模式之间进行切换。工具栏上的按钮将显示当前模式以及时钟或秒表。在显示持续时间时,输出中的“时间”字段显示底层文件系统处理特定请求所花费的时间(秒)。“选项|显示毫秒”菜单条目可让您在FileMon显示时钟时间时向所显示的时间增加毫秒精度。可以使用“选项|总在最前面”菜单项将FileMon窗口切换为总是显示在最前面。另外,还可以通过“选项|自动滚动”菜单项或相应的工具栏按钮,将FileMon切换为不滚动列表视图。命名管道与邮件槽从版本4.1起,FileMon可以监视WindowsNT/2K上命名管道和邮件槽文件系统活动。通常,在NT/Win2K中,核心子系统(如本地安全机构子系统(LSASS))将命名管道用作通信机制,并且DCOM也使用命名管道。诸如浏览器服务之类的网络组件也使用命名管道。要使用FileMon查看命名管道活动,请选择“驱动器”菜单中的“命名管道”并对共享网络资源执行操作,或打开与安全子系统交互的应用程序,如Regedt32。FileMon的工作原理对于Windows9x驱动程序,FileMon的核心是虚拟设备驱动程序Filevxd.vxd。它将动态加载,并在其初始化时,通过VxD服务IFSMGR_InstallFileSystemApiHook安装文件系统筛选器,以便将其自身插入到所有文件系统请求的调用链中。在WindowsNT上,FileMon的核心是文件系统驱动程序,它可创建筛选器设备对象并将其附加到目标文件系统设备对象中,以便FileMon能监视到所有针对驱动器的IRP和FastIO请求。在FileMon监视到打开、创建或关闭调用时,它将更新用作内部文件句柄和文件路径名之间的映射的内部哈希表。不管它何时监视到基于句柄的调用,它都会在哈希表中查找句柄,以获得要显示的完整名称。如果基于句柄的访问引用的是在FileMon启动之前就打开的文件,则FileMon将在其哈希表中找不到映射,只会显示此句柄的值。有关访问的信息将转储到一个ASCII缓冲区,该缓冲区会定期复制到GUI,以便在其列表框中打印出来。下载Filemon(280KB)下载FilemonV7.04汉化版(1218KB)十一、Junction简介Windows2000以及更高版本都支持目录符号链接,其中目录作为到计算机上另一目录的符号链接。例如,如果目录D:SYMLINK指定C:WINNTSYSTEM32作为其目标,那么访问D:SYMLINKDRIVERS的应用程序实际上访问的是C:WINNTSYSTEM32DRIVERS。目录符号链接在Windows中称为NTFS接合点。遗憾的是,Windows并没有附带创建接合点的工具,这样您必须要购买Win2K资源工具包,其中附带了用于创建接合点的linkd程序。因此我决定编写我自己的接合点创建工具:Junction。Junction不仅允许您创建NTFS接合点,还允许您查看文件或目录是否实际为重新分析点。重新分析点是作为NTFS接合点基础的机制,它们被Windows的远程存储服务(RSS)以及卷装入点所使用。请注意,Windows不支持到远程共享上的目录的接合点。如果您希望查看重新分析信息,Junction的用法如下所示:用法:junction-s-s对子目录执行递归操作。如果您希望创建或删除一个接合点,请按如下方式使用Junction:用法:junction-d要删除接合点,请指定-d开关以及接合点名称。下载Junction(41KB)十二、LDMDump简介Windows2000引入了一种新类型的磁盘分区方案,由一个称为逻辑磁盘管理器(LDM)的组件管理。基本磁盘实施标准的DOS风格分区表,而动态磁盘则使用LDM分区。LDM分区相比DOS分区有几个优势,包括跨磁盘的复制以及在磁盘上存储高级卷配置(跨区卷、镜像卷、带区卷和RAID-5卷)。我在Windows2000杂志3月/4月期刊上关于WindowsNT/2000存储管理的两篇系列文章介绍了每种分区方案的详细信息。除了磁盘管理MMC-snapin以及一种Windows2000资源工具包中称为dmdiag的工具以外,没有其他工具可以研究LDM磁盘上数据库的内部情况,而该数据库则描述了系统分区布局。LDMDump是一种实用程序,允许您检查系统LDM数据库的磁盘拷贝中的确切内容。LDMDump向您显示LDM数据库的专用标题、目录以及对象数据库(分区、组件和卷定义存储在此)的内容,然后用分区表和卷列表概括其发现。安装和使用要使用LDMDump,只需将磁盘标识符传递给它即可。用法:ldmdump-d#-显示支持的选项和输出值所用的度量单位。-d#指定LDMDump要检查的磁盘号。例如,“ldmdump/d0”要求LDMDump显示存储在磁盘0上的LDM数据库信息。工作原理不存在已公开的API可用于获取与磁盘的LDM分区有关的详细信息,而且LDM数据库格式完全没有记录。LDMDump是基于在各种不同的系统中以及不断变化的条件下对LDM数据库内容的研究而开发的。下载LDMDump(43KB)十三、MoveFileandPendMoves简介有些应用程序(如服务包和修补程序)必须替换正在使用而无法访问的文件。因此,Windows提供了MoveFileExAPI来重命名或删除文件,并允许调用方指定让此操作在下一次系统启动时在引用该文件之前执行。会话管理器会从HKLMSystemCurrentControlSetControlSessionManagerPendingFileRenameOperations值读取注册的重命名和删除命令,来执行这一任务。当源文件无法访问时,此小程序会将未决的重命名/删除值内容转储并报告错误。下面的输出示例显示计划在系统下一次重新启动时删除临时安装文件:以下内容为程序代码:C:pendmovesPendMovev1.02Copyright(C)2004MarkRussinovichS以下内容为程序代码:Source:C:Config.Msi3ec7bbbf.rbfTarget:DELETE附带的MoveFile实用程序用于安排在系统下一次重新启动时执行移动和删除命令:usage:movefilesourcedestSpecifyinganemptydestination()deletesthesourceatboot.下面是删除test.exe的一个示例:movefiletest.exe1.MoveFile描述将一个或多个文件从某位置移动到另一位置。语法object.MoveFilesource,destinationMoveFile方法的语法有以下部分:部分描述object必选。应为FileSystemObject的名称。source必选。要移动的文件的路径。source参数字符串仅可在路径的最后一个组成部分中用通配符。destination必选。指定路径,表示要将文件移动到该目标位置。destination参数不能包含通配符。说明如果source包含通配符或destination以路径分隔符()结束,则假定destination指定现有文件夹,将匹配文件移动到该文件夹中。否则,假定destination是要创建的目标文件。在任一种情况下,移动单个文件时,可能出现以下三种情况:如果destination不存在,则进行文件移动。这是通常会发生的情况。如果destination是已经存在的文件,则会出现错误。如果destination是目录,则会出现错误。如果在source使用通配符,但没有匹配文件时,也会出现错误。MoveFile方法在遇到出现的第一个错误时停止。该方法不会撤消错误发生前所作的任何更改。重点仅当操作系统支持时,此方法允许在卷之间移动文件。2.PendMoves枚举在系统下一次启动时所要执行的文件重命名和删除命令的列表,当你发现进程里有你不想运行的东西,但那个文件又提示无法删除,那么使用Pendmoves,Pendmoves是能在启动系统的时候替换/删除指定的文件,具有最高优先权。下载MoveFileandPendMoves(74KB)十四、NTFSInfo简介NTFSInfo是一个小程序,向您显示有关NTFS卷的信息。它的转储包括驱动器的分配单元大小、关键NTFS文件所在的位置以及卷上NTFS元数据文件的大小。此信息通常没有太大实际用途,但是NTFSInfo的确显示了一些有意思的东西。例如,您大概听说过NTFS中与FAT文件系统的文件分配表相对应的实体。它称为主文件表(MFT),由大小恒定的记录组成,描述驱动器上所有文件和目录的位置。MFT让人吃惊的地方是,它是作为一个文件进行管理的,就和其他文件一样。NTFSInfo除了说明卷的簇和MFT记录的大小之外,还将向您显示MFT位于磁盘的哪个位置(以簇计),以及它的大小。为防止MFT碎片化,NTFS在MFT周围保留了一部分磁盘不分配给其他文件(除非磁盘空间不够)。此区域称为MFT-Zone,并且NTFSInfo将告诉您MFT-Zone位于磁盘上的哪个位置,以及有多少比例的驱动器是为它保留的。您可能会同样感到吃惊的是,与MFT类似,所有的NTFS元数据也是按文件管理的。例如,有一个名为Boot的文件映射为包含驱动器的引导扇区。该卷的簇图保存在另一文件中,名为Bitmap。这些文件就在NTFS的根目录下,但是除非您知道它们在那里,否则就看不到它们。在一个NTFS卷的根目录下键入“dir/ahboot”,您实际上将看到boot文件。NTFSInfo具有与“dir/ah”同样的作用,即显示所有NTFS(3.51和4.0)元数据文件的名称和大小。安装和使用NTFSInfo可以在所有版本的NTFS上运行,但NTFSforWindowsNT5.0的元数据文件有所不同,NTFSInfo尚未针对其进行编程。要使NTFSInfo为您工作,您必须有管理员权限。要使用它,请键入“NTFSInfox”,在此“x”是您希望检查的NTFS卷的驱动器号。工作原理NTFSInfo使用一个未经记载的文件系统控制(FSCTL)调用从NTFS获取关于卷的信息。它打印此信息,以及NTFS元数据文件的目录转储。下载NTFSInfo(28KB)十五、PageDefrag简介WindowsNT/2000碎片整理程序界面的局限性在于它无法对通过独占访问打开的文件进行碎片整理。因此,标准的碎片整理程序既无法向您显示分页文件和注册表配置单元的碎片化情况,也无法对它们进行碎片整理。分页和注册表文件碎片化可能是系统因文件碎片化而导致性能下降的首要原因之一。PageDefrag使用先进的技术向您提供商业碎片整理程序无法提供的服务:即查看分页文件和注册表配置单元的碎片化情况,并且对它们进行碎片整理的能力。此外,它还对事件日志和Windows2000/XP休眠文件(当休眠笔记本电脑时保存系统内存的地方)进行碎片整理。PageDefrag可以在WindowsNT4.0、Windows2000、WindowsXP和Server2003上运行。安装和使用在运行PageDefrag(pagedfrg.exe)时,您将看到一个列表框,说明您的分页文件、事件日志文件和注册表配置单元(SAM、SYSTEM、SYSTEM.ALT、SECURITY、SOFTWARE、DEFAULT)中包含了多少个簇,以及这些文件处在多少个段中。如果您觉得这些文件已经足够碎片化,值得做一次碎片整理,或者您希望每次启动时都进行碎片整理,请选择适当的单选按钮,然后单击“OK”(确定)。当您指示PageDefrag进行碎片整理后,下一次系统启动时它就将尝试碎片整理。CHKDSK检查您的硬盘之后,PageDefrag会立即使用标准文件碎片整理API(请参见我的“深入了解WindowsNT磁盘碎片整理”页中关于这些API的介绍)对文件进行碎片整理。在处理每个文件时,PageDefrag都将在启动时开始屏幕上显示文件名称以及碎片整理成功与否。如果它成功减少了碎片化,它将告诉您开始时文件中簇的数量以及碎片整理后它包含的簇数量。在某些情况下,PageDefrag可能无法减少一个或多个文件中的碎片化,此时它将在启动时的蓝屏上予以说明。发生这种情况的原因可能是驱动器上没有足够的空间用于碎片整理,或者可能是可用空间本身就非常碎片化。为达到最佳效果,您应该将PageDefrag与商业碎片整理实用程序或者我的免费Contig碎片整理程序配合使用。命令行选项通过为需要的设置指定命令行选项,您可以用非交互式的方式运行PageDefrag:用法:pagedefrag-e|-o|-n-t-e每次启动时都整理碎片-o整理一次-n永远不整理-t将倒数计时设置为指定的秒数Step4点击OK按钮,即完成了软件的设置。当下一次系统启动时,软件便会对虚拟内存文件进行碎片整理,以提高其运行速度。下载PageDefrag(70KB)十六、ProcessMonitor简介ProcessMonitor是一个用于Windows的高级监视工具,可以显示实时文件系统、注册表和进程/线程活动。它结合了两个传统Sysinternals实用工具(Filemon和Regmon)的功能,并增加了大量增强功能,其中包括丰富且不具破坏性的筛选功能、全面的事件属性(如会话ID和用户名)、可靠的进程信息、完整的线程堆栈(支持每个操作的集成符号)、同一文件并行日志记录等功能。异常强大的功能使ProcessMonitor成为系统故障排除和恶意软件捕获工具包的核心实用工具。ProcessMonitor可在Windows2000SP4(装有更新汇总1)、WindowsXPSP2、WindowsServer2003SP1和WindowsVista以及64位版本的WindowsXP、WindowsServer2003SP1和WindowsVista上运行。ProcessMonitor优于Filemon和Regmon的增强功能ProcessMonitor的用户界面和选项类似于Filemon和Regmon的用户界面和选项,但它是全新编写的程序,并且包括许多重要的增强功能,如:监视进程和线程的启动和退出(包括退出状态代码)监视映像(DLL和内核模式设备驱动程序)加载为操作的输入和输出参数捕获更多数据不具破坏性的筛选器可让您在不丢失数据的情况下设置筛选器为每个操作捕获线程堆栈,可以在许多情况下找出操作的根本原因可靠地捕获进程详细信息,其中包括映像路径、命令行、用户和会话ID任何事件属性的可配置、可移动列可以为任何数据字段设置筛选器,其中包括没有配置为列的字段高级的日志记录体系结构可以记录几千万个捕获的事件,日志数据可达几个GB进程树工具可以显示所有在跟踪中引用的进程之间的关系本地日志格式保留要加载到不同ProcessMonitor实例中的所有数据进程工具提示有助于查看进程映像信息使用详细的工具提示可以方便地访问没有填充到列中的格式化数据可取消的搜索所有操作的引导时间日志记录熟悉ProcessMonitor功能的最佳方法是阅读帮助文件,然后在真实系统中访问每个菜单项和选项。屏幕截图下载ProcessMonitor(913KB)十七、PsFile此软件同下面的十八的“PsTools”同系列软件,详细介绍见下面。十八、PsToolsPsTools是一套组件,它包含12款软件。01.psexecpsexec是一个远程执行工具,你可以像使用telnet一样使用它。它的使用格式为:psexec远程机器ip-uusername-ppassword-c-f-i-dprogramarguments它的参数有:-u后面跟用户名-p后面是跟密码的,如果建立ipc连接后这两个参数则不需要。(如果没有-p参数,则输入命令后会要求你输入密码)-c:拷贝文件到远程机器并运行(注意:运行结束后文件会自动删除)-d不等待程序执行完就返回,(比如要让远程机器运行tftp服务端的时候使用,不然psexec命令会一直等待tftp程序结束才会返回)-i在远程机器上运行一个名为psexesvc进程,(到底什么用弄不明白)假设我在远程机器ip有一个账号,账号名是:abc密码是:123比如想要用telnet一样在远程系统上执行命令可以打:psexec远程机器ip-uabc-p123cmd如果想要远程机器执行本地c:srm.exe文件可以打:psexec远程机器ip-uabc-p123-cc:srm.exe如果想要让远程机器执行本地上tftp服务端,(假设tftp服务端在本地c:tftp32.exe),可以打:psexec远程机器ip-uabc-p123-cc:tftp32.exe-d(后面例子不再重复-u和-p的用法)02.psfilepsfile是一个显示机器上的会话和有什么文件被网络中的用户的打开的命令。它的使用格式为:psfile远程机器ip-uUsername-pPasswordId|path-c它的参数有:-u后面跟用户名-p后面是跟密码的,如果建立ipc连接后这两个参数则不需要。(如果没有-p参数,则输入命令后会要求你输入密码)-c:关闭会话或文件比如我想看看远程机器上的会话和被远程用户打开的文件可以打:Psfile远程机器ip接着就会显示33C:WINNTUser:ADMINISTRATORLocks:0Access:Read63PIPEsrvsvcUser:ADMINISTRATORLocks:0Access:ReadWrite接着我想关闭id为33,路径为c:winnt的这个会话可以打psfile远程机器ip33-c或psfile远程机器ipc:winnt-c03.psgetsidpsgetsid是一个远程获取账号sid信息的工具。它的使用格式为:psgetsid远程机器ip-uusername-ppasswordaccount它的参数有-u后面跟用户名-p后面是跟密码的,如果建立ipc连接后这两个参数则不需要。(如果没有-p参数,则输入命令后会要求你输入密码)比如要看远程机器上账号名为abc的sid信息可以打:psgetsid远程机器ipabc04.psinfopsinfo是一个搜集机器软硬件信息的工具,它可以获得操作系统信息,硬件信息和软件信息。它的使用格式为:psinfo-h-s-d-c远程机器ip-uusername-ppassword它的参数有:-u:后面跟用户名-p:后面是跟密码的,如果建立ipc连接后这两个参数则不需要。(如果没有-p参数,则输入命令后会要求你输入密码)-h:是显示它安装了哪些补丁包-s:是显示它装了哪些软件-d:是显示磁盘信息。比如我只想看远程机器的软

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论