前述:我有台华硕笔记本想装win8.1(x64)+kali双系统,可以说我以前从未用过linux,本次安装过程中参考了网上很多教程,却发现
大部分都不适用我的情况,教程中所用工具(例如easyBCD)都是用在UEFI+MBR环境,并不适用于UEFI+GPT的情况。也发现了好几篇有用的
文章,在此一并感谢!
如何安装Kali到硬盘上
这里有篇官方的 Kali Linux安装之Kali和Windows双引导
可以参考(http://www.linuxidc/Linux/2014-05/102210.htm)
我是用u盘进入live模式来安装kali的。但是我的u盘已经用u盘装机大师(类似老毛桃、大白菜)做好了启动盘,里面PE、各种工具又不想格式化掉,后来我是这么做的:U盘分3个区,一个是u盘装机大师自己生成的启动分区(用来装winpe等,类似于esp分区),一个是平时放东西的分区,另一个是fat32格式的隐藏分区,把kali.iso文件解压缩放到隐藏分区根目录下。用FbinstTool工具打开u盘的启动分区,找到menu.lst文件,添加一段命令来关联隐藏分区下的kali启动文件。这样用u盘启动的时候,选择kali即可进入kali
live模式,而平时在win8里面使用时隐藏分区看不见,很方便。
进入kali之后,账号root,密码toor(注意不是root)
先划一个空闲空间给kali使用,这里无需在win8里面事先建立分区,直接在kali下操作,按alt+F2(好像是这个),在弹出的框中输入gparted,选择一个分区,右键resize/move,调整出你要给kali用的空间大小,执行一下就可以了。重启一下,再次进入kali
live,要开始安装了。点击桌面左上角的applications,在下拉菜单找到一行什么(忘记名字了-_-),反正二级菜单里有install
kali linux之类的话,就开始安装。
分区的时候选”Guided – use the largest
continuous free space”,就是刚才划出的那个分区.
遇到什么更新网络镜像那页,我一开始选否,结果下一步grub安装不了,有人说这里选是就可以了,但是我grub安装不了的提示是grub-pc,而正确的应该是安装grub-efi才对,所以我不确定这里选“是”之后,接下去是不是安装grub-pc,如果是这样的话后面还要卸载再装grub-efi,大家看着办吧,我是选“否”,后面再更新的,如果要选“是”的话,那在一开始进入install
kali linux之前最好先更新一下国内源,不然更新很慢,大概有好几百M。
如果前面选否,后面grub和lilo也跳过去,那安装就结束了。重启用u盘再次进入kali
live,准备安装grub-efi。
进去后先更新一下源(官方的源太慢,可添加国内中科大的源,可参看http://blog.sina/s/blog_6d0d6cff0101ddjb.html),其实就是把国内源的地址添加入
/etc/apt/sources.list 。
进入命令行,用df命令查看磁盘分区情况,找到当前kali所在的分区,我的是/dev/sda8
输入:
sudo mount /dev/sda8 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
chroot /mnt
apt-get update
apt-get dist-upgrade
apt-get install grub-efi-amd64-bin grub-efi-amd64
grub-install /dev/sda8
(这里据别的教程说,如果要安装到esp分区就用/dev/sda即可)(另:我看网上有grub2-install的命令,但系统提示找不到此命令,我只好用grub-install)
update-grub2
然后就可以在\oot\grub\里面找到grub.efi和grub.cfg了,复制到esp分区的efi\grub2\下就可以了,目录自己随便建,一会用easyUefi关联的时候会用到。
另附删除grub的命令:
apt-get purge grub-efi-amd64
(删除grub-efi)
apt-get purge grub-pc (删除grub-pc)
--------------------------------------
参考:(下面有的帖子不适用于安装grub2,参考用)
grub2 for win安装方法
http://wenku.baidu/link?url=q7rFEDb5xtlzP11MltnXbHFiWc0hfVO-2n-G-7YA1r7OEmj6vldEXDqrkCfj0oXDSJt74BIsxa4NOCqgMbJqxt6y2HgbYSdHTH-5gS157Hq
重新安装grub
http://datamining.xmu.edu/bbs/forum.php?mod=viewthread&tid=624
http://tieba.baidu/p/2550500991
--------------------------------------
安装完双系统之后如何实现引导的思路
简单地说,计算机开机后首先调用ESP分区的\efi\boot\bootx64.efi这个文件,再通过其引导操作系统,那么我们只需要替换或者编辑这个bootx64.efi文件,让其显示引导菜单,且链接到win8和kali的启动文件即可。
这里先说一下bootx64.efi这个文件,安装完win8之后,会生成efi\microsoft\boot\bootmgfw.efi,这个文件是win8的启动文件,对应的是开机后按F12或ESC(不同机子的快捷键不同)出现那个启动菜单里面的“Windows
Boot
Manager”这项,但是win8除了生成Bootmgfw.efi它还覆盖了bootx64.efi,这时候它们两个变成了同一个文件了,所以很多人装完linux之后没有出现GRUB的启动菜单,而是直接进入win8,就是这个原因(bootx64.efi被替换了,直接链接到win8启动文件去了)。
-------------------------------------------------
参考:
-------------------------------------------------
下面所谓的几个方法其实大同小异,要么默认启动win8,要么默认启动grub菜单。我觉得用easyUefi来设置引导顺序最方便了。
方法一:开机马上按F12或ESC快捷键进入引导菜单
在这里面选择进入win8还是kali。但一开始只有“Windows Boot
Manager”的选项,这是用来进入win8的,怎么添加Kali的选项呢?可以用easyUEFI和最新版bootICE
v1.331,都支持的,千万别用easyBCD。打开easyUefi,添加一个启动项,比如取名叫kali
boot,类型选linux,然后选择grub.efi所在的路径。还可以调整启动顺序,如果“Windows Boot
Manager”在前面就默认直接进入win8,如果kali
boot在前面,开机默认进入grub菜单。我目前选用这个方式,因为我用win8比较多,所以Windows
Boot
Manager”排在前面,平时开机直接进入win8,想进kali的时候在开机按快捷键进入启动菜单选择即可。
(我试了一下,使用这方法前后,bootx64.efi并没有改变)
方法二:不借助easyUEFI等工具,用Grub引导kali和win8。这里需要用grub.efi替换bootx64.efi,然后再配置grub.cfg让其分别引导到kali和win8。
首先要知道grub.efi在哪里,安装kali时如果选择把grub安装到主引导分区(还是叫主磁盘?忘了)就到EFI目录下找看看,如果安装到kali所在分区,就在kali分区的boot\grub目录下找,把grub.efi和grub.cfg两个文件复制到ESP分区的EFI目录下,然后用easyUefi添加一下引导。
但我在安装kali的时候提示grub-pc无法安装到/target/下,只好跳过grub和lilo的安装那步(即没有安装grub2),这里我有点疑问,我应该安装grub-efi才对,不知道kali为什么默认要安装grub-pc,但提示出错,前者应该是grub2,而后者应该是grub。总之,这里需要重新手工安装grub2。方法在上面有说到了。
这时候可能win8没法引导,需要修改grub.cfg,但grub.cfg好像不建议手工修改,而是通过/etc/default/grub来修改,具体可以参考下面给出的链接学习。我试了两次手工改grub.cfg不行,也没兴趣研究了。
--------------------------------------
参考:
---------------------------------------
方 法三:进bios里面(或者叫UEFI界面?)找到类似于launch efi shell
from filesystem
device的选项,点击进入命令行,输入添加kali和win8引导的命令。这样开机应该会进入一个引导界面让你选择是进入grub引导界面还是进入
win8,但这方法我没试过,只是猜测。
进入launch efi shell from
filesystem device之后,实际上是会进入一个EFI
Shell环境,在这里面编辑引导菜单,但我的笔记本默认没有自带一个EFI Shell,所以我从网上下载了EFI Shell
x64版本,里面有一个shell.efi、一个Bootmgfw.efi和一个apps文件夹(存放各种命令),网上是说把这几个东西复制到U盘->EFI->Boot目录下面,但我的笔记本测试是应该放在u盘根目录下,且自动寻找一个叫shellx64.efi的文件,所以我把shell.efi改成shellx64.efi,但我在添加引导项时,bcfg命令一直不能用,发现apps文件夹里面没有这个文件,不知道是不是我下载的版本有问题,找了好几个版本都没有bcfg.efi文件,就放弃测试这种方法了。
-------------------------------------------------
参考:
百度搜索How to add boot option manually for specific
EFI file boot
-------------------------------------------------
由于我的目的是安装双系统,而不是研究双系统,所以达到目的后就没动力深究了,留下了一些遗憾,如果不解之处可以参考我给出的链接。
最后附上几个和双系统启动无关的问题:
kali原来可以无线上网,update之后变成无线网卡搜索不到热点了。参考这里:http://bbs.51cto/thread-1099230-1-1.html
Diskenius中修改分区esp里面的文件,如果提示分区esp没有被正常卸载,只需在esp分区上右键“指派新的驱动器号(盘符)”就行了。
更多推荐
制作uefi的kali安装盘_UEFI GPT win8.1(64位)环境下通过U盘安装kali linux(1.0.9 amd64版本)到硬盘...
发布评论