专栏首页Python程序员杂谈ubuntu下硬盘安装win7和archlinux

ubuntu下硬盘安装win7和archlinux

上周末在家两天的时间只做了一件事,那就是装系统。不同于在很早之前没事就拿张ghost盘给人装系统(win的),这次的折腾是比较有技术含量的。整个过程中弄坏了一个sdcard的卡托,sdcard也被我格了无数遍。到最后发现其实全硬盘安装就可以了。

这个过程中学到了什么呢?简单的说就是通过grub引导系统,通过硬盘安装系统,还有就是原来卡托(或说读卡器)里面是有芯片的(之前一直以为它只是起连接的作用)。

先说环境

我的笔记本是完全的ubuntu系统,之前需要使用到win的地方都跑在虚机里面,速度比较慢。因此就有了这样的念头,在ubuntu下装一个win系统。同时也想尝试下archlinux,因此最终的理想结果是装一个archlinux和ubuntu的双系统。

大概过程

先win后archlinux

本来想法的很简单,先把系统重装为win系统,然后在装一个archlinux。网上这方面的资料比较多,装起来也比较容易。无奈把winxp写入sdcard之后启动,发现无法找到硬盘,估计是我把整个硬盘格为ext4的缘故,发现这条路行不通,于是找到另一个方案。

直接在ubuntu下安装win

既然不能先装win,那就换个方案,网上找到关于在linux下装win的文章。这里面走了一些弯路,主要是一开始没有考虑到安装win所需要的磁盘分区,以及通过grub安装只能引导安装版的系统,ghost的没办法安装。因此就先用做一个gparted的live盘,然后进入系统,从磁盘上划出一个ntfs的分区。然后通过grub引导win7的安装镜像进行安装。折腾到这基本上搞懂了怎么用grub引导系统了。

正题,在ubuntu下安装win7

建立分区

像上面所说,如果你也是完全的linux环境,那就要先建个ntfs的分区出来。然后再来配置grub。

你需要系统要安装在哪个分区,通过 sudo fdisk -l 可以查看,比如我的是:

Device Boot      Start         End      Blocks   Id  System
/dev/sda1            2048   371175423   185586688   83  Linux
/dev/sda2   *   575975424   616935423    20480000    7  HPFS/NTFS/exFAT

其中/dev/sda2就是我划分出来的ntsf分区,那我就要把win系统安装到这里。

写入iso镜像

ubuntu下建立iso镜像要比win下容易多了,根本不需要其他软件,只需要一句命令:

mkdir /mnt/win7
sudo mount -o loop windows7.iso /mnt/win7
sudo cp -rv /mnt/win7/* /dev/sda2

这样就把win7写入到你新建的分区中(其实就是把镜像解压到你建立的分区中),然后来引导。

grub引导

其实也就是几个配置的事,如果你的ubunut系统一开机没有选择系统的菜单的话,那你需要在开机之后按下shift来显示。不通过配置文件其实也可以通过在系统选择菜单部分按下c进入grubdos中进行启动。不过那样需要记的东西比较多了。

这里的配置文件是指, 系统中 /boot/grub/grub.cfg配置文件,在这个文件中会看到类似下面的代码,添加的时候,按照同样结构来写。 感谢网友的指出,另外有句话也得说下,博客的价值不仅仅在于文章,评论也有其价值。这个就像是一个开源项目,里面有bug,你发现了,当然发现也是有价值的,但是提个patch价值更大些,于人于己都是如此。

配置文件如下:

menuentry "Windows 7 (loader) (on /dev/sda2)" --class windows --class os {
    insmod ntfs
    set root='(hd0,2)'
    ntldr (hd0,2)/bootmgr
    boot
}

这里需要注意你的win7是安装盘,而不是ghost盘。

这时,重启,在选择操作系统的菜单上你发现了多了一个win7的选项,然后就是正常的安装了,这里需要提醒的是,我给win的分区分了20个G的空间,装好win7及一些基础软件后竟然只剩不到1G,因此磁盘富裕的话要多分些空间。

安装archlinux

安装archlinux的话要麻烦一些,因为你不能直接在你要安装的分区中对系统进行引导。因此你需要先把引导文件系统放到其他分区,比如我这里主分区(/dev/sda1/)中的home/the5fire/arch目录下,然后写grub配置:

menuentry "Arch Install" --class gnu-linux --class gnu --class os {
    insmod part_msdos
    insmod ext2
    set root='(hd0,1)'
    linux (hd0,1)/arch/boot/vmlinuz-linux root=/dev/sda1
    initrd /boot/initramfs-linux.img
}

从这里启动然后就进入安装模式了,其实就是一个终端。

剩下的就可以参考这两篇文章了:

http://eidolon.iteye.com/blog/320923 从第5步开始看。 archlinux中文新手指南

大概就这些了,时间够的话自己折腾一下也不错。

把archlinux装好之后,其实也没有去用它,因为还得去安装GUI,还需要配置n多东西,时间成本不允许,还是在ubuntu下,搞一个轻量的桌面来用。这两天在试用E17桌面。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 10、django开发环境搭建及使用

    django是基于python的一个框架,因此在此之前要先安装python环境,关于python环境的搭建,前面已写过,参考这里:http://www.the5...

    the5fire
  • action执行完后页面乱码-PrintWriter若得祸

    the5fire
  • python中的yield的简单练习

    前一段时间对python的实践并不太多,主要做一些页面的效果,还有关于pdf的打印。前面的工作算是告一段落了,后面需要拿起来python干活了。有空就写写代码实...

    the5fire
  • php 编译安装扩展

    pecl 虽然能方便地安装扩展,但由于网络原因速度很慢。此外,如果有多个 php 版本,pecl 总会将扩展安装在默认的版本上,反而造成不便。因此直接编译安装扩...

    章鱼喵
  • 安装PHP5,安装PHP7

    PHP主流版本是5.x/7.x,不过大部分企业都是使用着PHP5.x版本,因为有些程序是基于5.x版本开发的,如果使用7.x版本可能就会出问题,7.x是这两年才...

    端碗吹水
  • 裸机虚拟机了解一下! ESXi6.7安装流程和bug处理

    sean_yang
  • ubuntu系统wine运行《暗黑破坏神2》

    1. 添加wine的官方ppa,这个可以去看一下wine官方网站,可以下载最新的版本。

    ianzhi
  • 腾讯有哪些优秀开源项目?

    云+社区沙龙online「开源之道」,本周五正式起航,快来看看腾讯都有哪些优秀的开源技术吧~扫描海报二维码或点击文末“阅读原文”即可预约报名~

    腾小云
  • Sccm2012 之部署前准备

    5. IIS配置WEBDAV 在服务器管理器中,打开角色,WEB服务器(IIS),依次展开,定位到SCCM站点,展开默认网站。

    李珣
  • mysql初学

    1 insert into customer(mid,name) values('ID','姓名');

    机器学习和大数据挖掘

扫码关注云+社区

领取腾讯云代金券