C盘根目录下文件大揭秘
8 o* g- S9 i6 u; i" @: g经常见到一些网友,跟U盘病毒作斗争久了,养成了看到磁盘根目录的隐藏文件就删的“职业习惯”,结果当自己买来新电脑的时候,一下子看到C盘下有那么多“病毒”,就全部删了,结果……下次开机的时候系统就起不来了,汗……: p3 u5 u7 m* G
$ k3 m5 z$ F! w所以,我感觉有必要跟大家讲一讲C盘下这些系统文件的作用,以及简要介绍一下系统的启动过程。下面,就请我为大家一一道来:: q9 B- z5 Z! z( h$ m F
1 w- h- b( _6 ^ \; z* T. G
CONFIG.SYS5 x6 {% c6 C4 K* O; N
1 p5 r ?! U1 i" x) m5 K
CONFIG.SYS是包含在DOS(磁盘操作系统,Disk Operating System)中的一个文本文件命令,它告诉操作系统计算机如何初始化。多数情况下,CONFIG.SYS命令制定内存设备驱动和程序,以控制硬件设备;开启或进制系统特征;以及限制系统资源。CONFIG.SYS在autoexec.bat(自动批处理程序)文件执行前载入。
; [) ], E5 i' @1 w6 l, f# Q/ B8 C) B9 [: B9 Q( b1 a
AUTOEXEC.BAT
, @) s: q* a: G( a; R7 ^9 S2 C1 ~* ~2 { S" ~8 x$ Z
DOS在启动会自动运行autoexec.bat这个文件,一般我们在里面装载每次必用的程序,如: path(设置路径)、smartdrv(磁盘加速)、 mouse(鼠标启动)、mscdex(光驱连接)、 doskey(键盘管理)、set(设置环境变量)等。6 n8 [) C8 F6 a7 F; S
) t) P u$ Y8 \) K; fIO.SYS
/ H$ P8 z& |2 y$ _/ h! g$ N0 P% [8 c0 U* j' E/ P/ I: a: A! j9 t
IO.SYS提供标准硬件的输入/输出接口和DOS的中断调用,在电脑启动过程中,此文件会根据用户通过输入设备的信号执行相应的操作。大家常挂在嘴边的“开机按F8进入安全模式”就是来自于这个文件的作用* h" r S* u4 o
6 k0 b7 ~ D& a1 L. Mboot.ini
2 b5 e# K; ~% ^: @6 _6 \' g: o: m7 h- d5 K) J- I6 L2 L
当我们在电脑中安装了多系统(如Windows 2000和Windows XP)之后,每次启动计算机时都会出现一个系统引导菜单,在此选择需要进入的系统后回车即可。这个引导程序就是Boot.ini,在安装Windows 2000(XP)时程序自动被安装,使用它我们可以轻松对电脑中的多系统进行引导,还可以通过该引导文件,设置个性化的启动菜单。
( o5 u& Z, B3 x7 H7 Y
, n* Z( d/ X* D' w% ^系统主要依赖Boot.ini文件来确定计算机在重启(引导)过程中显示的可供选取的操作系统类别。Boot.ini在缺省状态下被设定为隐含和系统文件属性, 并且被标识为只读文件。
3 N! I \7 K5 u( l) h
* E) w# U" ?% m0 Y& p# ~3 C: r- `, A双击boot.ini,我们通常能看到如下的内容, u/ @- w0 w, l$ i* z f, U
# M. x: k# ?; m' a3 g1 [6 A4 ]6 D[boot loader]
& K8 Q7 ? t# o8 r8 p1 u, U+ {: n6 q
timeout=30
2 U2 Q! B% N( a0 a$ P; J4 q2 Y# ]3 z1 z
default=scsi(0)disk(0)rdisk(0)partition(1)\WINDOWS
: u, K* J# K' ]' r" }" v9 w# t
# K% P5 S" e# _[operating systems]2 F: P1 `$ d {: M
& ?+ J/ a, h' K. w1 ]scsi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect' Z- i" i. \( R3 C1 t
9 n0 z2 i; B2 T! ^: H" B/ q
对其分析,主要有以下功能
: i8 H; g D& Z5 R2 {9 f8 b4 b2 s6 M& D- e$ x3 t/ u
“timeout”指定在选择默认的操作系统之前 Windows等待的时间。
6 {$ c% T% O; B$ d" I" a& O! [3 w+ n. D3 |' ]2 O: {
“default”指定默认的操作系统。
u& F: ]1 G( b* ]) L, Z8 P1 I( R1 q: b* S; k! W
“scsi(0)”表示主控制器(通常也是唯一的控制器)负责此设备。如果有两个 SCSI 控制器并且磁盘与第二个控制器相关联,则第二个控制器称为“scsi(1)”。
: ]5 p0 @. Y* X* x* ?
r- [) |8 L- c" v3 c3 ^9 e如果系统使用 IDE、增强的 IDE (EIDE) 或增强的小型设备接口 (ESDI) 驱动器,或者如果系统使用没有内置 BIOS 的 SCSI 适配器,请将“scsi”替换为“multi”。' e$ r9 u: R( _6 }6 r1 B
& s/ X/ `8 f1 ?/ ^
“disk(0)”指要使用的 SCSI 逻辑单元 (LUN)。它可以是独立的磁盘,但是大多数 SCSI 设置对每个 SCSI ID 只有一个 LUN。
' p* J7 V7 b# e5 x3 \; z6 K5 S3 i7 ~2 f) H5 d
“rdisk(0)”指物理磁盘1。0 Y- j0 d, X) q. h# h1 w1 U* s
6 d+ C6 D# B- A) v }+ s0 ]“partition(1)”是计算机中第一个驱动器上的第一分区。如果有两个分区(C 和 D),则分区 C 为 partition(1),分区 D 为 partition(2)。
2 s e7 x+ W, W: L) R9 |" ?" _4 Z+ {3 V c% O x: ~
“/noexecute=optin /fastdetect”指定快速监视并调试信息,启动时不检查串行口和并行口。
4 d7 {; T" K) p! B" t4 S8 z8 q4 x* v9 A u0 |4 m
bootfont.bin# e4 E0 M4 e& W6 m
- h$ b4 g) G/ h5 ABOOTFONT.BIN是用来汉化引导菜单的,删除后引导菜单会变成英文
; `/ L: {% ?+ n+ v! h$ R" j- S' `+ p0 Y% m/ T
MSDOS.SYS
G9 R4 `/ E1 f8 w2 I" u# M( m' M3 K5 ?0 B1 C
MSDOS.SYS是DOS的核心文件之一。, Y( {% ?% y& |; ^
, I6 {% Y6 i, F* ^0 k0 bMSDOS.SYS 在微软非NT内核的操作系统中经常可以看到它。MSDOS.SYS可以修改,但改坏了可能会导致系统无法启动,可以用记事本打开,内面是一些启动参数,如:开机时显示菜单、开机时进行磁盘扫描、开机时显示LOGO等等。
' i6 v2 p0 \! }9 z
: `4 `" Z( q5 C# [* rNTDETECT.COM
/ B: U0 Q/ D: T5 X- Z% [% U1 K; W9 F y; h2 i
Ntdetect.com会收集如下类型的硬件信息:
$ n0 y$ C+ A% C( @
$ n, p- o3 t+ \4 [! r# w; {系统固件信息,例如时间和日期等
5 t; ?$ ^) n( W! O4 S' T- s1 U; C% g# V9 C* s D. F
总线适配器的类型
0 | D& d, S0 q: B& ?! X( x: n7 Y+ H& `. ?1 T O6 U% ~
显卡适配器的类型
/ e) V1 z( s( B3 V# R6 t* }. Y! U G k$ `) Z+ D# J
键盘
, S/ a. F5 _, h8 ~+ c
- p8 d3 K9 [% C7 i: S通信端口: r7 I$ L6 B, e9 e8 ~& \& v5 b
/ Q' z( }# y+ A7 c! y+ q. O5 M
存储设备
: p; h' ?; a* _& q- r6 \% P# \: n" M$ d
其它输入设备,例如鼠标等0 r% k% G, G( v# K' x, O
- h& \! m" f3 q) D- R0 m U并口
& z( ^, t2 R2 t: _/ j4 Q1 {" ?* @8 ~. U5 J
安装在ISA槽中的ISA设备1 y4 I: t. Y6 t( g7 o* o
1 g3 x; \ k! |, X' J: d9 Z
完成信息的检测之后,系统就会在屏幕上显示那个Windows图标,并出现一个滚动条,告诉用户Windows 的启动进程5 A# c& l: b$ K( W! }2 j+ d) D. T
4 s( Q: ?/ J3 M. z) i( d- g/ n4 Entldr: T; y5 r8 J+ T
7 n$ _) F( f5 z" p! G' ZNTLDR全称是NT Loader,是系统加载程序,用来装载操作系统。) D4 T- T1 S, }6 i: j7 H
! H" u; v, Q# v7 X
NTLDR文件是系统的引导文件,当此文件丢失时启动系统会提示"NTLDR is missing..."并要求按任意键重新启动,不能正确进入系统。$ ]9 a3 J) | [" n
& c, ?4 [& S9 V+ \3 M) X! m
下面简要介绍系统的启动过程:
4 U* u6 B( x2 w/ r, W8 q
! |8 L) ` o0 v# k S) E x1、电源BIOS自检程序开始运行
4 W- ]2 {1 \. c9 `% l/ x. w; A- t4 r# s s% W7 p
2、主引导记录被装入内存,并且程序开始执行
% S% [( R1 E o4 n
4 }$ k2 X0 H% L6 C7 G3、活动分区的引导扇区被装入内存4 o y# E% d/ v# S N
2 `9 d0 F) r) B9 N! P+ }4 E4、NTLDR从引导扇区被装入并初始化# c% A) h+ J$ l
3 H/ M( S+ {9 l9 S3 g5 r5、将处理器的实模式改为32位平滑内存模式+ {: f; S t0 b; L$ @3 K0 w1 [
/ [5 q* ?7 }! g0 I$ o3 b6、NTLDR开始运行适当的小文件系统驱动程序(小文件系统驱动程序是建立在NTLDR内部的,它能读FAT或NTFS)
* V4 z! Z% p- e
+ J+ ]! a* r! J7 H8 ~: J' S7、NTLDR读boot.ini文件7 S) k9 D% _: }# N
3 _) O' w/ m# E* P
8、NTLDR装载所选操作系统" |) f' |4 t+ r4 I5 [( w3 S
) b7 e# j0 g8 N, l9、Ntdetect.com 搜索计算机硬件并将列表传送给NTLDR,以便将这些信息写进HKE Y_LOCAL_MACHINE/HARDWARE中。
: k; K' D8 k F
9 C8 C) R9 d/ @; d% I) z10、然后NTLDR装载Ntoskrnl.exe,Hal.dll和系统信息集合。
( Q: \+ O7 c8 e! j9 Y- v" _8 j# W. p) F: t! q9 L5 K
11、Ntldr搜索系统信息集合,并装载设备驱动配置以便设备在启动时开始工作
+ G' j/ n9 _, C
. B# H5 ]" d. N7 U12、Ntldr把控制权交给Ntoskrnl.exe,这时,启动程序结束,装载阶段开始, x) b9 O! C2 m$ @
$ @& M: X& [: V* w: \1 ~
" }1 N6 g7 O& R: ~; J
. E6 ~8 }3 U1 r; F另外,有的电脑系统盘根目录下还会有下面的两个文件,虽然跟系统启动没有关系,在此也一并介绍吧 m- r1 I( ^3 z; O9 c* y2 w
. A+ e$ M1 ^! D0 Q$ d+ r5 ^pagefile.sys+ ?! [/ J& G& u0 U
2 v/ t5 Z1 s& o% i9 N R简单说说吧,其实这就是传说中的虚拟内存啦,可以用这个文件的空间做内存,从而弥补RAM空间的缺乏。虚拟内存管理器会选择最近没有用过的、低优先级的内存部分写到这个文件上去
) `# T( `% D' d# z j- g3 A7 h' _1 I- u$ g/ J$ h$ P6 i: q$ h
hiberfil.sys
+ {, J6 N" i% R/ l8 R7 G: i& J1 R
这个文件只在启用了系统休眠的电脑上可见,而且其大小与电脑的内存大小一致。
# I2 t0 b7 y) k o# e& j- z: C9 d% V5 c2 B* Q, J
当电脑进入休眠状态时,内存会把自身的内容完全拷贝到这个文件里,当下一次电脑启动,内存被加电唤醒的时候,又会从这个文件里把内容调回来, x* J8 h1 W' z
% \& K/ M( F( E
如何才能显示上面的这些文件?5 T( U- u" ^& r+ N" o# M$ D/ \
2 o _ ^8 L9 Y) D. J% ^7 ]4 j打开“我的电脑”——工具——文件夹选项——查看
; k `* E; E& ]/ e* g$ {+ `; M, y9 o f# [4 y3 w& l4 @! H! w
勾选“显示系统文件夹的内容”
! u: a* }7 A5 v4 ]7 v1 m# r, o7 d9 q( o$ b, A @7 ?+ ]2 N
取消勾选“隐藏受保护的操作系统文件”, X! a+ W) f- j
; V" |* e3 Q* ~& }5 [9 P选择“显示所有文件和文件夹”4 x% u7 N) J) \6 {( D
5 I: Q" E- Z* Q* }1 l
如果误删了这些文件,该如何修复呢?
+ d6 e0 Y6 T& ~& B
) t# g8 f0 {6 z! x最简单的方法,就是找另一台电脑,把那些文件完全拷贝过来: |! `, U% i5 H' ~0 t
, I4 ]" W* {! q- O
如果已经关机了,无法启动,先用工具光盘引导启动,然后执行上面的步骤就ok了! |