关系linux和window双系统

来源:互联网 发布:mysql日期排序 编辑:程序博客网 时间:2024/05/22 23:04
楼主环境:256G固态硬盘    1T机械硬盘,机械硬盘在sd0,固态硬盘是sd1

1、假设是先安装window,后面安装linux。
      先安装window,则在磁盘的起始地址会被安装程序放置windows的启动代码。类似于linux的bootloader。当我们在bios内部选择从SSD启动时,最先开始读SSD的磁盘起始地址内的数据,反之如果设置的时机械硬盘,则最先开始读的时机械硬盘内的其实数据。windows启动后,先硬盘或者SSD盘头的bootloader代码,bootloader代码是知道真正的系统在哪里,然后执行完后调到windows的存储地址,从而启动windows系统。
2、假设先装的时linux系统,则同1,在磁盘的扇区的前面放入bootloader的代码,启动后bootloader的代码会启动系统。
3、先装windows再安装linux。
      先安装windows后,盘头的loader代码执行完后,会跳转到windows系统的起始地址。但是安装linux后,linux会改变盘头起始地址的指向,让其不能直接指向window,而是让其指向grub工具的起始地址。也就是说,以前的流程是:起始地址---------windows系统。后面改成:起始地址---------grub。到了grub后,grub是能识别window的起始地址和linux的起始地址的,grub提供选项让你跳到windows或者linux。这里就能看到安装双系统后,会有一个界面让你选择跳到linux还是windows。
4、先装linux再安装windows。
     由于磁盘头数据被后安装的windows改变了,故window能启动,linux不能启动。

卤煮遇到的问题:
   卤煮的环境是:机械硬盘在前,固态硬盘在后。
   卤煮想把系统安装在固态银盘中,完成后,卤煮设定bios从固态硬盘启动。但是后面看到整个系统起不来。
   后面卤煮从PE中看到,即使卤煮将系统装在了固态硬盘中,机械硬盘还是划分了一个500m的盘用于引导系统启动,放置loader代码。也就是说由于机械盘在前面,即使设置从固态硬盘启动,也会需要先从机械硬盘的500m空间读取启动信息。由于卤煮只是将系统放置在固态硬盘没有将启动信息也放置在固态硬盘中,因此卤煮设置从固态硬盘启动时,系统起不来。后来卤煮想如果启动代码在500m的机械硬盘中,那么设置机械硬盘启动应该可以。(卤煮未尝试)。
    后面卤煮直接将机械硬盘拆掉,直接格式化固态硬盘,然后新建安装盘,系统自动划分了一个500m的启动盘,再安装系统。后期系统全部到固态硬盘中,一切顺利。





原创粉丝点击