Windows如何读取Linux,Linux下读取Windows注册表
原本以为Linux下读取Windows的注册表是个异想天开、无法实现的想法,忽然发现了老外写的一段小文章 http://www.linuxidc.com/Linux/2011-04/34100p2.htm,才知道原来早就有人做过了。
为了在linux下能够解读注册表文件,需要几个小工具:首先是一个Pascal语言写的dumphive,负责将windows注册表文件转换为文本格式;另外还需要Win32-Registry-File-1.10,这是一个用perl语言写的,分析、读取注册表的工具,同时Win32-Registry-File-1.10还依赖另外一个perl工具Tie-IxHash-1.22。
dumphive的下载地址为http://gitorious.com/canaima-gnu-linux/dumphive/commits/upstream,Win32-Registry-File-1.10为http://search.cpan.org/~avatar/Win32-Registry-File-1.10/File.pm,Tie-IxHash-1.22为http://search.cpan.org/~chorny/Tie-IxHash-1.22/lib/Tie/IxHash.pm
在正式开始工作前,先要将工具软件安装好,首先解压缩dumphive包,由于它是由Pascal语言写出的,所以要下载free Pascal的编译器,在Ubuntu下,用apt-get install fpc即可,然后进入src目录下,直接make就可以获得dumphive可执行程序了。再安装Win32-Registry-File-1.10和Tie-IxHash-1.22,这两个perl程序的安装方法类似,先解压,在运行perl MakeFile.pl 生成makfile,再运行make,最后make install
真正的工作就可以开始了
1.首先将windows所在分区挂载到/mnt/目录上,(如果挂载不了,需要下载并安装ntfsprogs)
2.cp /mnt/WINDOWS/system32/config/SYSTEM /tmp/system 将注册表文件拷贝到tmp目录下
3.dumphive /tmp/system /tmp/system.reg 将注册表文件转换为文本格式
4.再编写一个test.pl脚本 ,比如:
use Win32::Registry::File;
$reg = new Win32::Registry::File();
$reg->open('system.reg');
use Data::Dumper;
print Dumper($reg->get(['system\ControlSet001\Control']));
然后perl test.pl就可以看的ControlSet001\Control下的结构了。注意这里的get后的参数中的system,跟第2步时生成的文件名有关,如果将windows下的注册表文件拷贝成aaa,再用dumphive去转换,则生成的注册表文本文件都是以aaa开头的。当执行用cat system.reg,后就可以明显的看出来。
另外Win7跟xp的注册表文件,在linux下解读出来还是有很大差异的,每一个字段前都有一个类似UUID的值。
Windows如何读取Linux,Linux下读取Windows注册表相关推荐
- 56-20210402华为海思Hi3516DV300的linux系统下读取TF卡(eMMC模式)
56-20210402华为海思Hi3516DV300的linux系统下读取TF卡(eMMC模式) 2021/4/2 15:02 https://xueqiu.com/7970718062/159110 ...
- 关于linux环境下访问Windows数据库的处理方法
** 关于linux环境下访问Windows数据库的处理方法 1 首先需要知道windows系统下的ip地址,打开cmd控制台,输入ipconfig这个命令,获取window的本地ip地址,方便lin ...
- QT在linux环境下读取和设置系统时间
QT在linux环境下读取和设置系统时间 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境: 主机:Fedora12 开发软件:QT 读取系统时间 ...
- 组策略 计算机 用户账户控制,Windows 10 (用户帐户控制组策略和注册表) - Microsoft 365 Security | Microsoft Docs...
用户帐户控制组策略和注册表项设置 04/19/2017 本文内容 适用范围 Windows 10 Windows Server 2016 组策略设置 UAC 管理中心可以配置 10 个组策略 (用户帐 ...
- C/C++语言 Windows API更改文件、文件夹或注册表权限的所有者
C/C++语言, 调用Windows API更改文件.文件夹或注册表权限的所有者 所用到的函数 GetUserName //获取当前登陆用户名 LookupAccoun ...
- windows更换壁纸cmd命令,window修改注册表更换壁纸,已设壁纸缓存地址
windows更换壁纸cmd命令,window用注册表更换壁纸,已设壁纸缓存地址 1.修改注册表更换壁纸 1.打开运行: cntrl + R 2.输入 regedit 3.找到壁纸地址对应的键值对 4 ...
- Windows用于控制 TCP 确认 (ACK)行为的注册表项 -TcpAckFrequency
Windows用于控制 TCP 确认 (ACK)行为的注册表项 -TcpAckFrequency 笔者说: 此修改,在测试TCP吞吐量时,可能会提高,需要根据实际的环境进行对弈验证.我测试时修改为20 ...
- Linux系统下挂载Windows分区
1. 手工挂载 在Linux中也可以读取Windows分区,包括fat32格式的和ntfs格式的.首先你得知道Linux下对硬盘分区的称呼.比如Windows下的C盘通常是hda1,D盘是hda5,E ...
- 在虚拟机linux环境下编译windows版adb fastboot
原文出自:http://blog.chinaunix.net/uid-20546441-id-1746200.html 我根据虚拟机编译遇到的问题进行一些添加 [前提条件] Linux Android ...
- 图灵机器人 linux,群晖Docker下通过VNC打开Linux环境下的windows程序,Q酷图灵机器人...
这也是一个思路,在linux环境下,我们通常通过wine来运行windows程序,这个是酷Q官方的Docker映像,有Dockerfile参考,对于明白原理的人可以移植很多windows程序到我们的群 ...
最新文章
- SDNU 1330.Max Sum(最大子序列和)
- 【DevOps进行时】C/S端界面自动化测试:微软UIAutomation实践
- AI技术的“践行者” — 云测试成为企业降本增效利器
- load()是python文件操作的函数_python基础总结(函数,文件操作)
- 岳云鹏:买128G手机仅112G可用!手机系统占用存储空间应厂商消化?
- ToB销售的成交,需要客户对供应商有三个信任
- 尴尬的风险管理如何深入下去-某公司为例
- python3虚拟环境的设置
- 学习PetShop3.0(9)工厂的资料
- 各地的磁倾角_全国各地区地磁场强度表
- 关于虚拟机IP更改问题教给大家一个必杀技
- x86 android 显卡 tablet2,Re: android4.4.2将tablet更改为phone
- DTCC 回顾:技术破局,分布式数据库创赢未来
- ODM和OEM的区别
- “计算机诺贝尔奖”的首位华人得主姚期智
- 成长的痛苦:流播放服务令音乐人版税受损
- uboot usb网卡分析
- android网易云信使用方法,网易云信Android版demo修改为自己所用
- python3思维导图.xmind_Xmind和FreeMind思维导图格式互转
- 多系统折腾记录(老电脑MBR分区)