admin 管理员组文章数量: 887042
Windows基本命令
文件/目录
命令 /? ==> 可以显示作用和用法
cd
cd /d d:\ #切换到d盘 改变驱动器需要使用/d
C:\Users\Administrator>cd c:\ #没有改变驱动器不需要使用/d
#具体操作可以通过 cd /? 进行查看
绝对路径 和 相对路径
- 相对路径:以当前为起点
- ./ 当级目录
- …/ 上一级目录
- 绝对路径:以驱动器为起点
dir
用于显示目录和文件列表
dir c:\
dir /a:h c:\ #显示隐藏文件
dir /o:-n c:\ #使用字母逆序排序
#具体操作可以通过 dir /? 进行查看
c:\>dir 公司文件
驱动器 C 中的卷没有标签。
卷的序列号是 AEE7-B786
c:\公司文件 的目录
2022/05/21 10:32 <DIR> .
2022/05/21 10:32 <DIR> ..
2022/05/21 10:29 <DIR> IT基建
2022/05/21 10:31 <DIR> 公司制度
2022/05/21 10:31 <DIR> 公司网站
2022/05/21 10:32 <DIR> 客户IT项目
2022/05/21 10:31 <DIR> 常用软件
2022/05/21 10:31 <DIR> 技术资料
0 个文件 0 字节
8 个目录 53,069,594,624 可用字节
md 或 mddir
用于创建目录(文件夹) 也可以创建多级子目录
md 颖宝
md 学习\安全\渗透 #安全文件如果不存在 直接创建
rd
用于删除目录
rd 安全 #直接使用只能删除空目录
rd \s 安全\杜 #如果要删除目录及其下的所有的文件要加上 \s
move
用于移动和重命名
d:\>move duyun.exe c:\ #d盘移动到c盘
d:\>move c:\duyun.exe c:\ying.exe #重命名
copy
用于复制文件(复制目录有问题)
copy c:\1.txt d:\wendang #直接复制文件到目录
copy 1.txt+2.txt 3.txt #将两个文件的内容
xcopy
用于复制目录
xcopy /s c:\duyun d:\ #/s是复制目录及其下的所有的文件
del erase
用于删除文件
del 1.txt
ren
用于文件或目录重命名
ren xuexi 颖宝
tree
用于显示目录结构
c:\>tree 公司文件
文件夹 PATH 列表
卷序列号为 AEE7-B786
C:\公司文件
├─IT基建
├─公司制度
├─公司网站
├─客户IT项目
├─常用软件
└─技术资料
replace
替换文件【即使这个文件在使用,仍然可以替换成功】
replace d:\love.mp3 d:\mp3
// 使用d盘下的love.mp3强制替换d盘mp3目录中的love.mp3文件
attrib
查看或修改文件或目录的属性 【A:存档 R:只读 S:系统 H:隐藏】
attrib 1.txt // 查看当前目录下1.txt的属性
attrib -R 1.txt // 去掉1.txt的只读属性
attrib +H movie // 隐藏movie文件夹
assoc
设置’文件扩展名’关联到的’文件类型’
assoc // 显示所有'文件扩展名'关联
assoc .txt // 显示.txt代表的'文件类型',结果显示.txt=txtfile
assoc .doc // 显示.doc代表的'文件类型',结果显示.doc=Word.Document.8
assoc .exe // 显示.exe代表的'文件类型',结果显示.exe=exefile
assoc .txt=txtfile // 恢复.txt的正确关联
ftype
设置**‘文件类型’关联到的’执行程序和参数’**
ftype // 显示所有'文件类型'关联
ftype exefile // 显示exefile类型关联的命令行,结果显示 exefile="%1" %*
ftype txtfile=C:\Windows\notepad.exe %1 // 设置txtfile类型关联的命令行为:C:\Windows\notepad.exe %1
当双击一个.txt文件时,windows并不是根据.txt直接判断用notepad.exe打开
而是先判断.txt属于txtfile’文件类型’;再调用txtfile关联的命令行:txtfile=%SystemRoot%\system32\NOTEPAD.EXE %1
文件查看
type
- 用于显示文本文件的内容
c:\xuexi>type 1.txt
123
- 重定向 “>” (很多种用法)
c:\>ipconfig > c:\ip.txt #>把 ipconfig 的内容写入 ip.txt
c:\>type ip.txt
问题:重定向用法和场景:
- 管道符 “|”
- 将前面命令执行的结果作为后面命令的操作对象
more
逐屏的显示文本文件内容
more conf.ini // 逐屏的显示当前目录下conf.ini的文本内容 【空格:下一屏 q:退出 】
findstr
用于检索文本内容
c:\>findstr 192 .\ip.txt #查找包含 192 的字段
c:\>findstr /n 192 .\ip.txt #查找包含 192 的字段 并表明行
c:\>findstr /n/v 192 .\ip.txt #查找不包含 192 的字段 并表明行
@#@
&
顺序执行多条命令,而不管命令是否执行成功
c:\>cd /c c: & taskmgr
文件名、目录名或卷标语法不正确。
//第一条错误但是依旧执行第二个
&&
顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令
find "ok" c:\test.txt && echo 成功 // 如果找到了"ok"字样,就显示"成功",找不到就不显示
||
顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令
find "ok" c:\test.txt || echo 不成功 // 如果找不到"ok"字样,就显示"不成功",找到了就不显示
| 管道命令
dir *.* /s/a | find /c ".exe" // 先执行dir命令,然后对输出结果(stdout)执行find命令(输出当前文件夹及所有子文件夹里的.exe文件的个数)
>
将当前命令输出以覆盖的方式重定向
tasklist > p1.txt // 将tasklist的输出结果(stdout)以覆盖的方式重定向到p1.txt文件中(注:tasklist的输出结果就不会打印到屏幕上了)
>>
将当前命令输出以追加的方式重定向
tasklist >> p2.txt // 将tasklist的输出结果(stdout)以追加的方式重定向到p2.txt文件中(注:tasklist的输出结果就不会打印到屏幕上了)
<
从文件中获得输入信息,而不是从屏幕上,一般用于date time label等需要等待输入的命令
date <temp.txt // temp.txt中的内容为2005-05-01
@ 命令修饰符
在执行命令前,不打印出该命令的内容
set和echo
echo. // 输出一个"回车换行",空白行
echo off // 后续所有命令在执行前,不打印出命令的内容
echo on // 后续所有命令在执行前,打印出命令的内容
echo 123 // 输出123到终端屏幕
echo "Hello World!!!" // 输出Hello World!!!到终端屏幕
echo %errorlevel% // 每个命令运行结束,可以用这个命令行格式查看返回码;默认值为0,一般命令执行出错会设errorlevel为1
echo test > p1.txt // 输出test的字符串到当前目录中的p1.txt文件中(以覆盖的方式)
set // 显示当前用户所有的环境变量
set path // 查看path的环境变量值(准确的说是查看以path开头的环境变量)
set path= // 清空path变量
set path=d:\execute // 将path变量设置为d:\execute(注:修改的path只会影响当前回话,也不会存储到系统配置中去;当前cmd窗口关闭,新设置的path也就不存在了)
set path=%path%;d:\execute // 在path变量中添加d:\execute(注:修改的path只会影响当前回话,也不会存储到系统配置中去;当前cmd窗口关闭,新设置的path也就不存在了)
path // 显示当前path变量的值
path ; // 清除所有搜索路径设置并指示cmd.exe只在当前目录中搜索
path d:\xxx;%PATH% // 将d:\xxx路径添加到path中
\---------------------------------------------------
set p=aa1bb1aa2bb2 // 设置变量p,并赋值为aa1bb1aa2bb2
echo %p% // 显示变量p代表的字符串,即aa1bb1aa2bb2
echo %p:~6% // 显示变量p中第6个字符以后的所有字符,即aa2bb2
echo %p:~6,3% // 显示第6个字符以后的3个字符,即aa2
echo %p:~0,3% // 显示前3个字符,即aa1
echo %p:~-2% // 显示最后面的2个字符,即b2
echo %p:~0,-2% // 显示除了最后2个字符以外的其它字符,即aa1bb1aa2b
echo %p:aa=c% // 用c替换变量p中所有的aa,即显示c1bb1c2bb2
echo %p:aa=% // 将变量p中的所有aa字符串置换为空,即显示1bb12bb2
echo %p:*bb=c% // 第一个bb及其之前的所有字符被替换为c,即显示c1aa2bb2
set p=%p:*bb=c% // 设置变量p,赋值为 %p:*bb=c% ,即c1aa2bb2
set /a p=39 // 设置p为数值型变量,值为39
set /a p=39/10 // 支持运算符,有小数时用去尾法,39/10=3.9,去尾得3,p=3
set /a p=p/10 // 用 /a 参数时,在 = 后面的变量可以不加%直接引用
set /a p="1&0" // &运算要加引号。其它支持的运算符参见set/?
net命令
net start // 查看已经启动的服务
net start "Task Scheduler" // 开启任务计划服务
net stop "Task Scheduler" // 关闭任务计划服务
net start dnscache // 开启dns缓存服务
net stop dnscache // 关闭dns缓存服务
net share // 查看当前用户下的共享目录
net share workFile /delete // 取消名为workFile的共享状态
net share xxx=c:\360Downloads // 将c:\360Downloads设为共享,并取名为xxx
net share ipc$ // 开启ipc$共享
net share ipc$ /del // 删除ipc$共享
net share c$ /del // 删除c盘共享
net use \\192.168.1.166\ipc$ " " /user:" " // 建立192.168.1.166的ipc空链接
net use \\192.168.1.166\ipc$ "123456" /user:"administrator" // 直接登陆后建立192.168.1.166的ipc非空链接(用户名为administrator 密码为123456)
net use h: \\192.168.1.166\c$ "123456" /user:"administrator" // 直接登陆后映射192.168.1.166的c盘到本地为h盘(用户名为administrator 密码为123456)
net use h: \\192.168.1.166\c$ // 登陆后映射192.168.1.166的c盘到本地为h盘
net use \\192.168.1.166\ipc$ /del // 删除ipc链接
net use h: /del // 删除本地的h盘的映射
net view // 查看本地局域网内开启了哪些共享
net view \\192.168.1.166 // 查看192.168.1.166的机器上在局域网内开启了哪些共享
net time \\127.0.0.1 // 查看本地机器的日期及时间
net time \\localhost // 查看本地机器的日期及时间
net time \\192.168.1.166 // 查看192.168.1.166机器的日期及时间
net time \\192.168.1.166 /set // 设置本地计算机时间与192.168.1.166主机的时间同步,加上参数/yes可取消确认信息
net user // 查看当前机器上的用户
net user Administrator // 查看当前机器上的Administrator用户的信息
net user Guest /active:yes // 启用Guest用户
net user dev 123456 /add // 新建一个名为dev,密码为123456的用户
net localgroup administrators dev /add // 把名为dev的用户添加到管理员用户组中,使其具有管理员权限
net user dev /del // 删除名为dev的用户
网络相关操作
配置TCP/IP参数
-
TCP/IP 参数
- IP地址:标示着网络中的某一台主机
- 子网掩码:用于标识你的IP所在的范围。子网掩码越大,网络范围越小
- 默认网关:标识与主机直连的路由器的IP地址
- DNS 服务器:用于域名解析
#静态配置IP地址、子网掩码、默认网关 # Ethernet0 网卡名字 C:\>netsh interface ip set address "Ethernet0" static 192.168.100.100 255.255.255.0 192.168.100.254
#自动获取 TCp/IP 参数 C:\>netsh interface ip set address "Ethernet0" dhcp
#静态配置DNS 服务器 C:\>netsh interface ip set dnsserver "Ethernet0" static 12.12.12.12 #添加备用 DNS 服务器 C:\>netsh interface ip add dnsserver "Ethernet0" 222.66.66.66 index = 2 #index = 2表示索引 表示备用DNS #自动获取 DNS 服务器 C:\>netsh interface ip add dnsserver "Ethernet0" dhcp
查看TCP/IP参数
- 常用
ipconfig #查看所有网卡的TCP/IP参数 (IP地址 子网掩码 默认网关)
ipconfig/all #查看所有网卡的TCP/IP参数 (IP地址 子网掩码 默认网关 mac地址 dhcp地址 dns地址 主机名)
ipconfig/release #释放TCP/IP参数
ipconfig/renew #重新获取TCP/IP参数
ipconfig/flushdns #刷新DNS缓存 每次访问域名之后会在系统中生成缓存记录,下次访问不需要去dns获取
ping命令
用于测试TCP/IP配置是否正确
默认32字节 四个包
ping -n次数 -l长度 网址 #-n是代表多少个包 -l是长度
ping -t 网址 #一直ping
ping -a 192.168.192.130 #可以获取物理机的主机名称 IP的主机名
tracert
用于路由跟踪
tracert 39.156.66.14
route
用于操作网络路由表
- 0.0.0.0 代表任何网络
#打印路由表
routr -4 print
#添加路由条目 112.53.42.52目标地址 /32代表子网掩码 112.53.42.0目标网络 /24代表子网掩码
route add 112.53.42.52/32 192.168.192.2
#删除路由条目
route delete 112.53.42.52 #(112.53.42.52目标)
netstat
netstat -anop tcp #查看所有的tcp链接 包括进程 以数字的形式展示
netstat -r #查看路由表 等价于 route print(IPv4 IPv6等都打印)
Windows用户管理
用户账户
什么是用户账户?
-
不同的用户身份拥有不同的权限
-
每个用户包含一个用户和密码
-
每个用户账户具有唯一的安全标识符(SID)(并不是账号)
-
查看Windows用户:
net user
-
查看SID 一般管理员的SID是500 普通用户的SID从1000开始
-
whoami /user
主机名\用户名 SID -
使用注册表查询
-
regedit
-
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
-
-
wmic useraccount get name,sid
查看所有用户的sid
-
-
如何进行用户管理?
-
创建用户
-
方法一、Windows管理工具-> 计算机管理-> 本地用户和组-> 用户-> 新建用户
-
方法二、cmd命令创建:
-
net user 名字 / add #无密码 net user 名字 密码/ add #明文输入密码 `net user 名字 / add* #密文输入密码
-
-
用户名:系统的显示的名字
-
全名:用户登录的时候显示的名字
-
密码:默认要符合密码的复杂度(secpol.msc打开本地安全策略-> 账户策略-> 密码策略)
-
账户已锁定:如果开启了账户锁定阈值,输错密码多次账户会被锁定
-
-
-
管理用户
-
删除用户
-
net user 名字 /del
-
-
-
设置密码
-
net user 名字 密码 #明文修改密码 net user 名字* #密文修改密码
-
-
隐藏用户
-
在用户的后面加上$符号,隐藏用户使用net user是看不到的
-
net user duyun$ /add
问题:创建隐藏用户,提升为管理员权限(使用命令操作)
运行“命令提示符”,输入“net user duyun$ 123456789 /add”,回车,成功后会显示“命令成功完成”。接着输入“net localgroup administrators duyun$ /add”回车,这样我们就利用“命令提示符”成功得建立了一个用户名为“duyun$”,密码为“123456789”的简单“隐藏账户”,并且把该隐藏账户提升为了管理员权限。
-
Windows内置用户
services.msc
打开服务
与使用者关联的
- 管理员:administrator:在使用者具有最高的权限 ,如果没有其他管理员的情况,不建议禁用
- 普通用户:具有一般的读取权限,权限较低
- 来宾用户 guest:一般提供给访客使用,在使用者中权限最低,默认是禁用
与Windows组件关联的
- system 本地系统,拥有最高权限
- local service 本地服务 ::权限比普通用户组users低一点
- network service 网络服务::权限和普通用户组users一样
Windows组的管理
用户组
用户
与人员相关
- administrator
- guest
- 普通用户
与组件相关
- system
- local service
- network service
概念
- 一组用户的集合
- 组中所有的用户具备所组的权限
管理组
创建组
-
net loaclgroup 名字/add
删除组
-
net loaclgroup 名字 /del
组内添加账户
-
net localgroup 组的名字 账户名字 /add
组内删除账户
-
net localgroup 组的名字 账户名字 /del
内置组账户
需要人为添加的
- administrators:管理员组,完全访问权限
- guests:来宾用户组
- power users:向下兼容的组,现在一般没有使用
- users:标准用户组,创建用户后默认处于此组中
- backup operators:备份用户
- 。。。。等等
动态包含成员的组
- interactive:动态包含在本地登录的用户(切换用户进入待机,两个用户在任务管理器都会显示)
- authenticated users:动态包含通过验证的用户
- everyone:所有人,包含了来宾用户
NTFS权限
NTFS:是[Windows NT](https://baike.baidu/item/Windows NT/759962)内核的系列操作系统支持的、一个特别为网络和磁盘配额、文件加密等管理安全特性设计的磁盘格式,提供长文件名、数据保护和恢复,能通过目录和文件许可实现安全性,并支持跨越分区。
文件系统
-
Windows
- 早期使用 FAT16或FAT32
- 目前的Windows操作系统基本使用的 NTFS 系统
- NTFS优势:
- ACL(访问控制列表,支持设置权限)
- EFS(加密文件系统,使用BitLocker进行磁盘加密)
- 压缩及磁盘配额
- ReFS文件系统(没有广泛使用)
-
Linux
- swap:交换文件系统,主要将磁盘的一部分空间划分给内存使用
- ext4
-
文件系统转化
-
convert e:/fs:ntfs //e代表要转化的盘符 C:\Users\26737>convert e:/fs:ntfs 文件系统的类型是 FAT32。 ESD-USB 卷创建了 2022/1/1 14:58 卷序列号为 DEF1-3F0A Windows 正在校验文件和文件夹... 已完成文件和文件夹验证。 Windows 已扫描文件系统并且没有发现问题。 无需采取进一步操作。 总共有 15,547,392 KB 磁盘空间。 24 个隐藏文件中有 576 KB。 668 个文件夹中有 5,416 KB。 3,659 个文件中有 9,289,056 KB。 6,252,336 KB 可用。 每个分配单元中有 8,192 字节。 磁盘上共有 1,943,424 个分配单元。 磁盘上有 781,542 个可用的分配单元。 正在确定文件系统转换所需的磁盘空间... 磁盘总空间: 15563776 KB 卷上的可用空间: 6252336 KB 转换所需的空间: 45254 KB 正在转换文件系统
-
早期的FAT文件系统不支持单个大文件(4GB)
-
文件权限
设置文件权限
- 读取文件
- 写入文件
- 附加文件
- 删除文件
- 执行文件
文件夹权限
- 列出文件夹
- 创建文件夹
- 创建文件
- 删除
- 删除子文件夹
权限分类
-
完全控制
-
修改
-
读取和执行
-
读取
-
写入
-
特殊权限
NTFS权限规则
权限的累加
- 用户分配的有效权限 是分配给用户所有权限的累加
- 假设一个用户设置了读取权限,给其用户组添加了修改权限,用户最终的权限等于 读取+修改权限
拒绝权限
- 拒绝的权限大于一切,优先级最高
继承权限
- 文件火或文件夹的访问控制列表默认情况会继承上级文件的权限
特殊权限
- 读取权限(和读取文件或者文件夹的内容 没有关系)
- 读取文件或文件夹的访问控制列表
- 针对用户访问文件的内容,此权限必须勾选
- 更改权限(和修改文件或者文件夹的内容 没有关系)
- 修改文件或文件夹的访问控制列表,由于此权限是可以为用户增加或者删除权限,会造成很多不安全因素,所以一般都不会给设置此权限
- 要想更改前提是可以读取
- 取得所有权
- 前提必须的读取和修改
- 能够修改文件或文件夹的所有者
本地安全策略
本地安全策略基本内容
概念
- 主要是对登录到计算机的账户进行一些安全设置
- 主要影响的本地计算机安全设置
打开方式
-
开始菜单 – 管理工具 – 本地安全策略
-
secpol.msc
-
从本地组策略进去
-
gpedit.msc
-
-
强制更新策略
-
gpupdate /force
-
账户策略
密码策略
-
密码必须符合复杂性要求(开启之后听他的)
-
默认情况下,window serve操作系统是开启的
-
要求
-
不能包含用户的帐户名,不能包含用户姓名中超过两个连续字符的部分 至少有六个字符长 包含以下四类字符中的三类字符: 英文大写字母(A 到 Z) 英文小写字母(a 到 z) 10 个基本数字(0 到 9) 非字母字符(例如 !、$、#、%)
-
-
最短密码长度
-
默认值: 在域控制器上为 7。
在独立服务器上为 0。
-
-
密码最短使用期限
-
密码最长使用期限(默认42天)
-
强制密码历史
- 设置数字 表示 不能使用历史上的前几次密码
-
用可还原的加密来储存密码(默认值是禁用)
账户锁定策略
管理员不受限制
- 账户锁定时间 60分钟
- 账户锁定阈值 3次
- 重置账户锁定计数器时间 30分钟之后
- 锁定时间:用户输入密码错误三次之后会锁定60分钟
- 账户锁定计数器时间:用户输入密码错误两次之后30分钟之后机会会变成三次
- 账户锁定时间>=重置账户锁定计数器时间
问题:管理员不受账户锁定策略的限制,管理员的用户名又是固定的:administrator,易被骇客爆破攻击,什么办法将管理员隐藏?使骇客无法实施爆破?
-
cmd中输入 regedit 打开注册表,寻找一下路径 : “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon”
-
右击 “Winlogon”,选择新建一个名为 “SpecialAccounts” 的项,并且在新建的“新建一个SpecialAccounts”项的下面再新建一个“UserList”的项
-
选择“新建”一个 DWORD(32位)值,值名填入要隐藏的用户名,再并其值设置为“0”。
UserList中创建的32 位 DWORD 值名必须和netplwiz 工具中查到的登录名完全一致才可以,如果你不需要再登录界面隐藏账户,那么将相应的值直接修改为“1”即可搞定。
远程桌面命令
mstsc
本地策略
审核策略
服务器默认开启一些
查看审核日志
Windows管理工具-》事件查看器
用户权限分配
安全选项
了解
Windows文件共享
共享要求
一般是局域网内使用
1.物理上处于同一局域网(虚拟机都设置的是 NAT)
- 同一个公司的网络
- 同一家庭的网络
- 同一个手机热点下的网络
2.逻辑上处于同一局域网(使用的是同一网络的IP地址)
- 直接可以ping通对方主机
共享权限
1、共享权限
- 一般设置为everyone完全控制
2、NTFS权限
- 前面已经设置完成
3、用户从网路访问服务器的最终权限
- 由共享权限和NTFS权限的交集组成
- 举例:
- 张三的共享权限是读取,NTFS权限是读取和写入,张三从网路访问服务器的最终权限是读取
- 经常设置方法
- 共享权限设置最大,NTFS权限进行精细化设置
- 共享权限默认有一个everyone组是读取,everyone代表着所有人
访问共享
\\192.168.192.155 #服务器的IP地址
\\WIN-IA82H14MIPG #服务器的主机名
经典需要输入账号密码;仅来宾就是以来宾的身份访问
组策略应用
组策略基本概念
概念
组策略(英语:Group Policy)是微软[Windows NT](https://baike.baidu/item/Windows NT/759962)家族操作系统的一个特性,它可以控制用户帐户和计算机帐户的工作环境。组策略提供了操作系统、应用程序和活动目录中用户设置的集中化管理和配置。组策略的其中一个版本名为本地组策略(缩写“LGPO”或“LocalGPO”),这可以在独立且非域的计算机上管理组策略对象。
打开方式
gpedit.msc
刷新组策略
gpupdate /force
模块
- 计算机配置
- 针对于本地计算机生效
- 用户配置
- 针对于用户生效
案例
组策略:隐藏桌面系统图标
用户配置 - > 管理模板 - > 桌面 - > 隐藏和禁用桌面上所有项目
组策略:保护“任务栏”和开始菜单
用户配置 - > 管理模板 - > 开始菜单和任务栏 - > 阻止更改任务栏和开始菜单设置
保护个人的文档隐私(最近 使用文件)
用户配置 - > 管理模板 - > 开始菜单和任务栏 - > 退出系统时清楚最近打开的文档历史 不保留最近打开文档的历史
禁用在浏览器上新窗口中打开
可以避免广告的自动跳转
禁用控制面板
打开控制面板的命令:
control.exe
禁用自动播放
防止自动运行,防止u盘里面的病毒
关闭自动更新
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2l7QCMny-1653466413900)(C:\Users\26737\AppData\Roaming\Typora\typora-user-images\image-20220522125854612.png)]
注册表
注册表基础
概述
注册表是Microsoft Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息,其中存放着各种参数,直接控制着**windows**的启动、硬件驱动程序的装载以及一些windows应用程序的运行,从而在整个系统中起着核心作用。
早期注册表:以ini为扩展名的文本文件的配置文件
win95之后:注册表编辑器
结构
-
注册表以树状结构进行呈现
- 子树(实际上只有两颗子树,分为了五棵子树)
- HKEY_LOCAL_MACHINE:记录关于本地计算机系统的信息,包括硬件和操作系统数据
- HKEY_USERS:记录关于动态加载的用户配置文件和默认配置文件的信息
- HKEY_CURRENT_USER:(从HKEY_USERS分来的子树):指向“HKEY_USERS\当前用户的安全id”包含当前以交互方式登录的用户的用户配置文件
(current_user 和 administrator 一样)
- HKEY_CLASSES_ROOT:(HKEY_CURRENT_USER子树)包含用于各种OLE技术和文件类关联数据的信息
- HKEY_CURRENT_CONFIG:(HKEY_LOCAL_MACHINE子树),指向HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles\Current 包含在启动时由本地计算机系统使用的硬件配置文件和相关信息加载的设备驱动程序、显示时要使用的分辨率
- 项
- 可以简单的理解为文件夹。项中包含项和值
- 值
- 每个注册表项或子项都可以包含称为值的数据
- 部分值用于某个用户的信息
- 部分值用于计算机所有用户的信息
- 值由三部分组成(值名称、值类型、值数据)
- 子树(实际上只有两颗子树,分为了五棵子树)
操作
- 创造项 : 右键
- 创造值(六种类型)
- 字符串值(REG_SZ):固定长度的文本字符串
- 二进制值(REG_BINARY):原始二进制数据。多数硬件组件信息都以二进制数据存储
- DWORD值(REG_DWORD):数据由4字节长的数表示。设备驱动程序和服务的很多参数都是这种类型
- QWORD值(REG_QWORD):数据由8字节长的数表示。
- 多字符串值(REG_MULTI_SZ):多重字符串。包含列表或多值的值通常为该类型
- 可扩充字符串值(REG_EXPAND_SZ):长度可变的数据串。该数据类型包含在程序或服务使用该数据时解析的变量
- 修改、删除和重命名值
案例
1.个性化时间设置
HKEY_CURRENT_USER\Control Panel\International\sTimeFormat
2.在欢迎屏幕自定义信息
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\legainoticetext
3.禁用任务管理器
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system新建值 DisableTaskMgr 为 1(1为开启)
win+r开启 任务管理器 (TaskMgr)
4.禁用控制面板
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer的值NoControlPanel设置为1
5.去除快捷方式下面的小箭头
HKEY_CLASSES_ROOT\lnkfile 删除 isShortcut 值
6.隐藏管理员
注册表的维护
注册表被破坏后的常见现象
- 无法启动系统
- 无法运行或者正常运行合法的应用程序
- 找不到启动系统或运行应用程序所需的文件
- 没有访问应用程序的权限
- 不能正确安装或装入程序驱动
- 不能进行网络连接
- 注册表条目错误
注册表被破坏的原因
- 应用程序错误:在系统中安装过多的软件后,可能彼此之间发生冲突
- 驱动程序不兼容:安装系统时有很多驱动都是自动安装,容易产生不同硬件驱动程序不兼容情况。建议官网下安装稳定版的
- 硬件问题:主要出现在硬件质量上,比如硬盘或内存质量不过关造成读写错误、超频、CMOS、病毒等
- 误操作:误操作是最常见的问题,可能会导致注册表出现错误,严重则导致系统崩溃或无法启动系统
备份注册表
右击 导出
恢复注册表
导入 之前导出的注册表
锁定和解锁注册表
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system 设置值 DisableRegistryTools 为1
当注册表被锁定的时候,要使用外部第三方注册表编译工具进行打开
注册表的优化
1、优化内容
- 清楚多余的dll文件
- dll文件:动态连接库,向运行于Windows操作系统下的程序提供代码、数据或函数。
- 多个应用程序共享代码和数据
- 在钩子程序过滤系统消息时必须使用动态连接库
- 动态连接库以一种自然的方式将一个大的应用程序划分为几个小的模块,有利于小组内部成员的分工与合作
- 为了实现应用程序的国际化,往往需要使用动态连接库
- 打开注册表编辑器HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDLLs 存放的是共享的dll信息,括号里面的数字表示共享文件的数目,如果是0可以删除
- dll文件:动态连接库,向运行于Windows操作系统下的程序提供代码、数据或函数。
- 安装卸载应用程序的垃圾信息
- HKEY_CURRENT_USER\SOFTWARE和HKEY_LOCAL_MACHINE\SOFTWARE
- 系统安装时产生的无用信息
- 删除多余时区
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
- 删除多余的语言代码(英文 0409 中文 0804)
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\Locale
- 删除多余的键盘布局
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout
- 删除多余时区
版权声明:本文标题:Windows基础 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1725919909h892827.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论