简介面向Windows7用户和Linux初学者的双系统安装图解笔记围绕系统盘制作、手动分区与引导项设置等关键环节展开帮助零基础读者避开常见的MBR引导冲突同时保留原系统正常启动。这份PDF共1个文件、4MB内容涵盖安装准备、启动盘制作、正式安装、引导设置和注意事项五个板块每步配截图对照适合边看边操作。文档特别建议将Kali的引导放在/boot分区而不是MBR中日后重装Windows7后仍可借助简单引导继续使用Linux同时还给出4G优盘、UNetbootin刻录工具、1.0.4镜像及30G以上磁盘空间等具体选型建议并推荐初学者使用图形化安装模式。截图来自较早版本个别步骤顺序可能颠倒可按上下文对应查看。已有957位读者下载学习适合希望理顺双系统引导逻辑、减少踩坑的入门用户。1. Windows 7 下安装 Kali Linux 双系统老机器再战渗透先看清三件事标题《Windows7下安装KaliLinux双系统.pdf》指向的是一个很具体的诉求手里一台还在跑 Windows 7 的老机器配置不高但想继续用来做安全测试、取证或者 CTF 练习装 Kali Linux 又不想动原系统。Kali 对硬件要求远没有传说中高2GB 内存加 20GB 磁盘就够起步真正的门槛不在配置而在启动方式、分区布局和引导修复这三件事。动手前先确认机器是 Legacy BIOS 还是 UEFI磁盘是否留得出连续未分配空间将来要用的无线网卡能不能被 Kali 内核认出来。三件事不确定就开装后面每一步都在踩坑。这篇把整条路拆开讲透给你一份照着做就行的方案。2. 双系统装之前启动方式与分区布局决定成败Windows 7 时代的机器启动方式五花八门。判断方法是重启进 BIOS我一般连续按 F2 或 Del看 Boot 选项里有没有 UEFI 字样或者直接在 Windows 7 的磁盘管理里看系统盘是 MBR 还是 GPT。Win7 大多数是 Legacy BIOS 加 MBR但 2013 年后出厂的品牌机不少默认 UEFI甚至开着 Secure Boot。这条岔路选错轻则装完直接进 Windows重则安装器连硬盘都看不见。所以这一章先把选型逻辑讲透再给分区数值建议。2.1 Legacy BIOS 与 UEFI 的分区策略差异Legacy BIOS 配合 MBR 的引导链路是这样的BIOS 读取磁盘第 0 扇区的前 446 字节引导代码再由这段代码跳转到 GRUB 的 core.imgcore.img 加载 /boot/grub 下的模块最后显示菜单。MBR 的分区表只有 64 字节所以最多记录 4 个主分区单分区大小上限 2TB。如果你手里的 Win7 系统盘是 MBR分区又被厂商恢复分区占了几个名额装 Kali 时新建分区会直接失败。UEFI 的逻辑完全不同固件直接从 EFI 系统分区ESP通常是 FAT32 格式里读取 .efi 引导文件不经过 MBR 那段脆弱代码。磁盘分区表推荐 GPT分区数量不受 4 个主分区限制。但 UEFI 有个附加条件——Secure Boot 最好关掉否则 GRUB 的 shim 签名验证不通过卡在 Verifying shim SBAT data failed 这类报错上。这里有条重要的判断经验如果 Win7 系统盘是 MBR就保持 Legacy 模式装 Kali如果是 GPT就走 UEFI 模式。两条路线尽量不要混搭。不要试图在一块 MBR 盘上用 UEFI 启动 Kali也不要让 Legacy GRUB 去引导 GPT 盘上的系统混搭是双系统 grub invalid signature这类怪异报错的主要来源。你可以在 BIOS 里把 CSM兼容支持模块设为 Enabled这样 Legacy 和 UEFI 都能启动但 Kali 安装器里选引导设备时仍然要明确选对。还有一个老机器独有的前置坑SATA 控制器模式。很多 Win7 机器 BIOS 里 SATA Mode 显示的是 IDE 而非 AHCI。这种情况下进 Kali 安装器很可能看不到内置硬盘。常见做法是先把 Win7 的 AHCI 驱动注册表项打开再进 BIOS 切换模式。具体操作是 WinR 打开运行框输入 regedit定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\msahci把 Start 值从 3 改为 0关机后重启进 BIOS 把 SATA Mode 改成 AHCI。这么一改Windows 7 下次启动会主动加载磁盘驱动不会蓝屏。改完 AHCI 再装 Kali安装器就能正常识别硬盘了。提示如果你的 BIOS 里 SATA Mode 本来就是 AHCI这步直接跳过。判断依据是 Win7 设备管理器里存储控制器名字带 AHCI 字样。2.2 分区规划根分区给多大、swap 要不要单独分给 Kali 做分区规划先回答三个问题。第一个问题根分区多大。只做工具链学习和端口扫描这类轻量练习20GB 足够要跑虚拟机、存抓包样本和取证镜像直接给 40 到 60GB。老 Win7 机器大多是机械硬盘连续读写速度一般但 Kali 本身不依赖极高 I/Oext4 文件系统足够。第二个问题swap 要不要单独分区。Kali 默认启用 zram但内存 4GB 以下跑 metasploit、nessus 这类工具时系统还是容易触发 OOM killer直接把进程杀掉。我建议 4GB 内存以下的机器单独划一块 8GB swap内存 8GB 以上可以只留 4GB 或者干脆依赖 zram。第三个问题/home 要不要独立。双系统方案里我建议不单独分把全部空间都给 /日常使用不会有任何问题。独立 /home 的好处是重装系统时数据还在但对这批老机器来说多个分区就多一处容量浪费不值得。给一张可以直接抄的分区表分区挂载点大小文件系统说明sda5/40 GBext4系统与工具全部装这里sda6swap8 GBswap内存 4GB 以下的机器建议保留分区的顺序要记住先在 Windows 7 里压缩出未分配空间再由 Kali 安装器接管这部分空间创建分区。反向操作会导致 Windows 7 磁盘管理不认 Linux 分区虽然不影响启动但以后想在 Win7 里删掉 Linux 分区会很别扭。Windows 7 磁盘管理压缩卷有个限制压缩卷只能缩短分区不能移动分区。如果 C 盘里 hiberfil.sys 和 pagefile.sys 被系统固定在卷末尾就算分区显示有 30GB 可用压缩卷也只能压出几 GB。处理办法是先把休眠关掉、页面文件转移走再执行压缩。具体命令放到下一章的操作步骤里一起写。3. 动手安装从启动 U 盘到 GRUB 修复的完整流程这章进入实操。你会依次完成三件事制作 Kali 启动 U 盘、在 Windows 7 里压缩出空闲空间、跑 Kali 安装器并把 GRUB 写到正确位置。每一步我都会给出工具选择和参数含义照着敲就行。3.1 制作启动 U 盘Rufus 的 DD 模式与 dd 命令行Kali 官方提供的是混合 ISO 镜像写入方式不对会启动失败。Windows 7 机器上最稳妥的工具是 Rufus免安装打开即用。操作步骤插入 U 盘8GB 及以上运行 Rufus设备栏选中它。引导类型选择下载好的kali-linux-installer-amd64.iso文件。分区类型选 MBR目标系统类型按前面判断的启动方式选 BIOS 或 UEFI。文件系统保持 FAT32簇大小默认。点击开始后Rufus 会弹窗询问写入模式必须选以 DD 镜像方式写入。DD 模式是逐字节把镜像内容写到 U 盘上写完后 U 盘是一个整体镜像不再有普通分区表ISO 模式则是把镜像里的文件解出来按普通存储设备格式化。Kali 官方混合镜像两种方式都能启动但 DD 模式兼容性最好在部分老 BIOS 上不会出现找不到引导扇区的问题。如果你身边只有一台 Linux 机器用 dd 命令更直接# 假设 U 盘是 /dev/sdb务必先确认写错会清掉整个磁盘 sudo dd ifkali-linux-installer-amd64.iso of/dev/sdb bs4M statusprogress oflagsync参数说明if是镜像文件路径of是磁盘设备名这里必须是/dev/sdb而不是/dev/sdb1写到分区上 U 盘无法引导bs4M指定块大小4MB 是写入速度和机械硬件兼容性的平衡点statusprogress显示实时写入进度oflagsync让数据落盘后再返回防止拔 U 盘时缓存还没刷完导致启动盘损坏。写入完成后把 U 盘插到目标机器开机进 BIOS把 U 盘设为第一启动项。注意 UEFI 机器要选带 UEFI 前缀的那个 U 盘项Legacy 机器直接选普通 U 盘项。保存重启看到 Kali 引导菜单说明启动盘没问题。3.2 压缩 Windows 7 分区磁盘管理工具与 DiskGenius 的取舍先在 Windows 7 里把空间腾出来。右键计算机→管理→磁盘管理找到 C 盘右键选压缩卷。要压出 48GB 就输入 49152 MB确认后磁盘末尾会出现一段未分配空间。如果发现可压缩空间远小于预期比如整个磁盘已用不到一半压缩卷却只显示 5GB说明 pagefile.sys 或 hiberfil.sys 占住了卷尾。用管理员身份打开 CMD 执行powercfg /h off这条命令关闭 Windows 7 休眠并删除 hiberfil.sys。执行完重新打开磁盘管理再压缩。页面文件如果还是挡住空间就先把虚拟内存改成无分页文件重启压缩完成后再改回来。顺序不能反否则系统没有页面文件时会频繁提示内存不足。我个人的习惯是优先用磁盘管理压缩卷因为它是 Win7 原生功能对系统分区记录改动最保守。只有压缩卷失效时才用 DiskGenius它可以直接把分区尾部的空闲空间切割成独立分区也能调整分区位置。但 DiskGenius 对分区表做的是底层写入操作前一定要备份重要数据特别是整块盘只有一个分区的老机器断电或误操作就是数据灾难。给分区表做变更这类事谁都不敢保证百分之百安全。3.3 Kali 安装器手动分区与 GRUB 写入位置U 盘引导后选Graphical install图形化安装。语言建议选中文键盘布局选汉语或英语都可以主机名不要用默认的 kali改成自己能识别的名字比如 pentest-lab。网络配置保持 DHCP 即可老机器有线网卡多半会被安装器认出来。到分区这一步选手动。界面会列出磁盘现有分区和你刚才压缩出的空闲空间。我的推荐操作选中空闲空间新建分区大小 40960 MB主分区用于 ext4挂载点选/。再选剩余空闲空间新建分区大小 8192 MB逻辑分区用于 swap。剩余空间全部并入根分区不要手动新建 /home。分区确认后安装器开始复制系统文件。等进度条走完到安装引导加载器步骤它会问把 GRUB 装到哪块磁盘。Legacy 模式下选/dev/sda整块盘不要选具体分区。此时 GRUB 会把引导代码写进 MBR覆盖 Windows 7 原有的引导记录但 Windows 7 的引导文件仍然在 C 盘里安然无恙之后由 GRUB 负责把它链进来。安装结束后拔掉 U 盘重启正常情况下会看到 GRUB 菜单里面有 Kali 和 Windows 7 两个条目。如果直接进了 Windows别慌这一章的 GRUB 修复命令就是为这种情况准备的。还有一个细节老机器安装过程可能很慢进度条卡住几分钟不冻是机械硬盘的正常表现不要断电。4. 避坑排查五个让双系统翻车的常见问题与解决装双系统的过程里翻车点非常集中。这里写出五个最高频的问题每个都按现象 → 原因 → 解决的顺序给出来。遇到不在列表里的问题优先去看/var/log/installer/syslog安装器的大部分祕密都记在里面。4.1 开机直接进 WindowsGRUB 菜单没出现现象安装全程没有任何报错重启后直接进 Windows 7 桌面看不到 GRUB 菜单。原因GRUB 没有写进 MBR。常见于安装器安装引导加载器步骤被跳过或者 UEFI 模式下 GRUB 虽然装进了 ESP但 BIOS 启动顺序里 Windows Boot Manager 排在前面。解决用启动 U 盘进入 Kali Live 环境打开终端挂载根分区再用 chroot 修复。假设根分区是/dev/sda2sudo mount /dev/sda2 /mnt sudo mount --bind /dev /mnt/dev sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys sudo chroot /mnt grub-install /dev/sda update-grub exit参数说明mount --bind把设备、进程、系统三个虚拟文件系统映射进 chroot 环境没有它们 grub-install 运行时拿不到硬件信息grub-install的设备参数写整块盘/dev/sda而不是/dev/sda2update-grub会自动扫描磁盘把 Windows 7 的引导条目写进 GRUB 菜单。如果之前装的是 UEFI这个命令要改成grub-install --targetx86_64-efi并且先把 EFI 分区挂载到/mnt/boot/efi再 chroot。4.2 GRUB invalid signature 报错现象开机屏幕黑底白字显示error: invalid signature卡在 GRUB 命令行无法进入系统。原因这是双系统装机里最像玄学的问题。实质是启动方式与分区表不匹配磁盘是 GPT 分区表GRUB 却在 Legacy 模式下找 MBR或者 UEFI 固件找不到.efi引导文件回退到 Legacy 模式后双方签名信息对不上。混合分区表MBR 和 GPT 共存的磁盘最容易触发。解决先确认 BIOS 里的启动模式与磁盘分区表一致。Legacy BIOS 配 MBRUEFI 配 GPT不要混搭。UEFI 机器进 BIOS 关闭 Secure Boot。如果已经卡在 grub 命令行可以临时用ls查看磁盘分区比如set root(hd0,gpt2)再手动引导 Linux 内核但这只是救急根因不消除下次开机还会复现。4.3 无线网卡找不到 wlan0现象进桌面后右上角网络图标显示无网络设备终端里执行ip a只有 lo 和 eth0。原因驱动问题分三个层次。第一层是网卡固件缺失Linux 内核可以识别芯片但加载不了 firmware第二层是内核模块没被自动加载第三层是网卡芯片太新或太冷门当前内核树里根本没有对应驱动。老 Win7 机器最常见的是一二层Broadcom 和早期 Realtek 芯片居多。解决先接有线网卡保证网络连通然后执行sudo apt update sudo apt install firmware-b43-installer sudo modprobe b43说明firmware-b43-installer会把 Broadcom 43xx 系列网卡的固件从驱动包里提取出来装进/lib/firmwaremodprobe b43手动加载内核模块。装完执行ip a确认 wlan0 出现。如果提示无法定位软件包说明更新源没配好先做 5.1 的换源再重试。Intel 网卡对应firmware-iwlwifiRealtek 绝大多数型号在 Kali 较新的内核里已经原生支持。4.4 开机黑屏或花屏桌面起不来现象内核日志走完、屏幕灯还亮着但画面黑掉偶尔能看到鼠标光标在移动。原因NVIDIA 独显在开源驱动 nouveau 下没有被正确初始化。nouveau 的性能和兼容性本来就一般遇到老 GPU 黑屏概率很高而且它是个黑匣子出问题日志里什么都看不出来。解决重启在 GRUB 菜单选中 Kali 后按e编辑启动项在quiet splash后面加参数nouveau.modeset0按CtrlX引导。这个参数让内核在初始化显示设备时跳过 nouveau 的 mode-setting。能进桌面后安装闭源驱动sudo apt install nvidia-driver安装完成重启这时可以把之前加的启动参数删掉了。如果是核显加独显的机器还要进 BIOS 确认显卡输出模式有些老机器需要把首选项改成核显或独显直连以你显示器接的线为准。NVIDIA 驱动在黑屏问题里属于高发区但靠这两个步骤解决的概率也不低。4.5 Windows 7 资源管理器停止工作或网卡驱动消失现象装了 Kali 后首次回 Windows 7桌面图标加载明显变慢资源管理器报停止工作右下角网络图标变成未连接状态。原因双系统安装完成后Windows 7 在启动时会对硬件变更做重新扫描部分非官方签名的驱动被系统标记异常设备管理器里网卡出现黄色叹号。这不是系统坏了是驱动状态被重置。解决先不要重装系统。打开设备管理器找到带叹号的网卡右键更新驱动程序→自动搜索。如果 Win7 已经不能上网就找一台可用机器下载 Windows 7 通用网卡驱动整合包用 U 盘拷过来离线安装。这类整合包包含多家有线网卡的厂商驱动先把有线网络恢复再在线更新其他硬件驱动。如果问题升级到资源管理器频繁崩溃先考虑是否在前面的步骤里改动过 SATA 模式或分区位置这两项最容易让 Win7 对磁盘设备状态产生误判。用原版 Windows 7 镜像修复安装会比重装省事得多。5. 装完系统不是终点更新源、中文输入法与网卡驱动的三件套Kali 默认装完是能用的但离好用还差三步软件源要换成国内可达的节点、中文环境要自己装、无线网卡驱动要按需补全。这三件事做完这台老机器才算真正进入工作状态。5.1 替换更新源与 apt full-upgrade 的参数选择Kali 是滚动发行版默认软件源在境外更新速度不理想。先打开源配置文件sudo nano /etc/apt/sources.list把官方源注释掉写入下面的内容deb http://mirrors.ustc.edu.cn/kali kali-rolling main contrib non-free non-free-firmware deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main contrib non-free non-free-firmware提示不要只保留 main 组件。contrib、non-free 和 non-free-firmware 里放着大量闭源网卡固件和驱动5.3 节装无线网卡时要靠它们只配 main 后面有得哭。保存后执行更新sudo apt update sudo apt full-upgrade -yfull-upgrade和upgrade的区别要讲清楚前者允许 apt 安装新包、删除旧包来解决依赖关系后者只升级现有包。Kali 是滚动发行桌面组件和内核经常一起升级只用 upgrade 会把系统留在半新半旧的依赖状态。第一次升级在老机械硬盘上可能要跑二三十分钟属正常现象。之后养成习惯每隔一两周跑一次apt update apt full-upgrade就行。如果更新时遇到公钥签名提示The following signatures couldnt be verified通常是几年没更新的老系统。新版本的 Kali 源已经不用手动导公钥但老系统常见的做法是把 KEYID 导入后再更新。这类问题优先级不高不影响双系统本身的稳定性。5.2 中文输入法与中文字体装完英文界面的 Kali 后浏览器打开中文网页全是方块字这步不能省。执行sudo apt install fonts-noto-cjk fcitx5 fcitx5-chinese-addonsfonts-noto-cjk提供中日韩文字的 Noto 字体解决网页和文档的乱码问题fcitx5是输入法框架fcitx5-chinese-addons提供拼音和五笔输入。装完后在终端执行im-config选 fcitx5 作为默认输入法注销重新登录后右上角会出现输入法托盘按CtrlSpace切换中英文。老机器如果跑的是 Xfce 桌面fcitx5 的托盘可能不显示但输入法功能照常工作。GNOME 桌面则要注意Kali 默认 GNOME 时 fcitx5 需要装fcitx5-config-qt才有完整的图形配置界面。这一步完成后中文环境就算齐了。5.3 无线网卡驱动的合法补装firmware 与 dkms安装器没识别出的网卡在系统装完后还有补救机会。先看当前内核里有没有驱动线索lspci -k | grep -A3 -i network dmesg | grep -i firmwarelspci -k会显示网卡芯片型号和系统正在使用的内核模块如果 Kernel driver in use 一栏是空的说明驱动没加载dmesg里的 firmware 报错能直接定位缺哪个固件文件。拿到芯片型号后按套路装sudo apt install firmware-iwlwifi # Intel 无线网卡装完重启生效Realtek 老网卡多数在内核里直接支持Broadcom 网卡用 4.3 节提到的firmware-b43-installer。部分较新的芯片不在发行版固件包里需要从芯片厂商官网下载 Linux 驱动源码用 dkms 注册编译sudo apt install dkms build-essential sudo dkms add ./驱动源码目录 sudo dkms install rtl8821ce/1.0dkms add把驱动源码注册进内核模块管理系统dkms install完成编译并装载。注意版本号要跟源码包目录里的实际名称一致这里只是演示格式。编译驱动这类操作在老机器上容易超时失败失败时先看journalctl -xe的 gcc 报错一般缺什么头文件就补什么包。另外如果 5GHz 频段扫描不到部分信道可以把无线监管域设置成中国echo options cfg80211 ieee80211_regdomCN | sudo tee /etc/modprobe.d/wifi-regdom.conf重启后生效。这属于合法频段的正常配置很多国行网卡默认的监管域设置不一样导致 5GHz 频段列表不完整改完就正常了。6. 验证引导链健康度顺便做一份后悔药双系统装完最后一个动作不是立刻开始跑工具而是花十分钟验证引导链并准备一条退路。验证的第一步是让 GRUB 重新生成菜单并确认 Windows 7 被识别sudo os-prober sudo grub-mkconfig -o /boot/grub/grub.cfgos-prober扫描所有磁盘分区找可引导的操作系统grub-mkconfig读取/etc/default/grub和/boot/grub/grub.cfg模板生成最终菜单。执行完看到输出里有 Found Windows 7 (loader) 这类字样说明菜单正常。如果没找到检查根分区挂载是否正常以及 Windows 7 的bootmgr文件还在不在。验证的第二步是调两个常用参数。打开/etc/default/grubsudo nano /etc/default/grubGRUB_DEFAULT默认是0指菜单第一项。想默认进 Windows 就把系统盘里的 Windows 7 对应条目序号填进去比如GRUB_DEFAULT2或者更省心的写法GRUB_DEFAULTsaved配合GRUB_SAVEDEFAULTtrue每次记住上次选中的系统。GRUB_TIMEOUT默认 5 秒改成 10 能给手速慢的人留出选择时间。改完记得重新跑一次grub-mkconfig。最后是后悔药。如果哪天想把 Kali 卸了、恢复纯 Windows 7不需要重装系统。用 Windows 7 安装光盘引导进入修复模式打开命令提示符执行bootrec /fixmbr bootrec /fixboot/fixmbr重写 MBR 引导代码/fixboot修复系统分区的引导扇区。执行完重启Windows 7 会直接接管启动GRUB 菜单消失。但要注意这只恢复 Windows 引导Kali 的分区还留在磁盘上想彻底清理还得进 Windows 磁盘管理删掉那两个 Linux 分区再重新扩展 C 盘。我的习惯是装完双系统一定先把grub-mkconfig的输出留档把用了哪些命令记在笔记里。老机器折腾的变数太多留一份自己的操作记录比网上搜任何教程都可靠。等 Kali 跑了一周没出问题这套组合才算真正稳定。希望这篇把能踩的坑都提前排掉的笔记能让你少走几步弯路。本文还有配套的精品资源点击获取