硬盘安装Linux系统


从硬盘安装linux,比如SUSE、RHEL
  硬盘安装的好处:

  1)节省盘片¥¥¥¥
  2)不用换盘,开始安装后可以该干嘛干嘛直到安装结束
  3)硬盘安装速度快
  4)ISO在磁盘上面,可以随时挂载查看源,suse更可以将ISO镜像池作为更新源,使用yast更新软件包的时候远远比用光盘的方式简便高效,即使从光盘安装的用户我也建议将光盘制作成iso镜像并动态挂载以方便更新软件包

  linux系统的启动过程:
  首先BIOS会将磁盘MBR上面的一段代码加载并将控制权授予这段代码,然后MBR上的代码会全磁盘上面找/boot/grub下面的menu.lst文件并让用户选择从哪个分区启动。这段代码通常是grub,也可能是lilo,虽然lilo已经是淘汰的东西——grub能引导许多操作系统比如linux、windows、solaris等,因为它是开源的,只要厂商或者自由开发者愿意,原则上能引导所有windows、linux分区习惯的系统,甚至可能引导非此类分区的系统;而lilo(linux loader)仅仅设计成引导linux。grub读取menu.lst并接受引导分区系统的指令,然后设定root分区磁盘位置,使用kernel命令自动加载该分区下面的kernel二进制文件,加载该分区下面的initrd.img二进制文件,最后用boot指令将系统控制权交给内核代码kernel,由kernel结合initrd完成系统的引导。

  所以如果要从磁盘安装,最好能进grub,然后用grub指令引导系统。

  进入正题:
  1)通常pc安装了win系统,没有win系统很多工作都没办法干了,尤其生产环境中。到http://grub4dos.jot.com/WikiHome?下载grub_for_dos,并将里面的grldr这个二进制文件copy到C盘根目力下面,然后修改boot.ini文件,在该文件最下面添加一行C:\grldr="GRUB"。grldr可以放置在任何文件系统的分区里面,例如ntfs,fat32,因为根据第三步实际上此时已经可以从任意win分区里面读取数据了。

  2)将所有需要安装的文件放到一个足够大的fat32或者ntfs分区下面,suse直接支持ntfs读写,所以可以放到任意win分区下面的一个目录例如ntfs d:\SLES\*.iso,RHEL不支持ntfs分区读写,所以需要放到fat32 d:\RHEL\*.iso。

  同时必须将第一个iso里面的两个文件复制到同一个磁盘根目录下面,例如C或者D盘。这两个文件在RHEL系统里面是/CD1/isolinux里面的vmlinuz和initrd.img,在SLEL里面是/CD1/boot/loader/下面的linux和initrd这两个二进制文件

  3)重新引导windows,启动后进入黑白屏选择GRUB引导,记住立刻按住上下键,否则默认grldr会在C盘寻找menu.lst,实际上menu.lst并不存在——没有必要学习详细的grub-for-dos如何使用,我们只需要知道怎么引导进入grub界面就万事大吉了。当出现菜单的时候选择command line。

  4)进入熟悉的grub界面。首先使用命令find xx确定内核文件所在的分区:在SLEL下面是find vmlinuz在RHEL下面是find linux。通常显示为(hd0,4)等,这里假设是这样。找到了内核文件所在的分区,就可以加载它了,使用命令kernel (hdx,x)/kernel_image_file,kernel_image_file是SLEL下面的linux,RHEL下面的vmlinuz。然后加载initrd文件,命令为initrd (hdx,x)/initrd或者initrd (hdx,x)/initrd.img。

  然后用命令boot将控制权交给内核文件,你将可以看到linux已经引导起来了

  5)安装过程中会让你指定iso映像位置,选择磁盘。在RHEL下面比如:指定到磁盘,指定分区比如/hd0/hda5,这时别忙按enter,应该按tab键到指定路径上面,将路径设置为/RHEL也就是刚才存放iso镜像的磁盘目录;SLEL下面则要指定第一个安装iso映像所在的分区目录,并且路径格式如/SLEL/SLES-10-x86-CD1.iso。可能要注意大小写,unix类系统都是大小写敏感的。

  如果你不想从iso镜像安装系统,也可以将第一张iso根目录下面所有的文件和剩余磁盘的RPM包放到一个目录结构下面,那样也能安装。这样做的唯一原因是你正在安装不支持iso安装的系统,例如较老的系统,否则没有任何理由这么做。

  这时你将开始linux的安装进程。如果你成功做到了这一步,恭喜你了。

  注意事项:如果你的笔记本只有4200RPM的磁盘,安装RHEL的时候千万别选择安装everything,如果你一定那样做的话建议你考虑颐和园一日游,这会儿颐和园全部景区都开放了哦。

  另外在安装SLEL的时候不要选择extra CDs,比如典型的SDK 4CD也不要安装,而要等到系统安装完成后再安装,这样做的理由是SLEL安装的一个缺陷,它加载了安装4CD iso后,如果当前CD的软件包已经安装完毕,安装程序会umount掉这些CD,导致安装如SDK的时候找不到umount掉的这些ISO。

  实际生产环境中都是从光盘引导安装,而在自己的PC上面做测试完全可以如上面的方法。

  大体就是这样,希望诸位能喜欢这篇文章。本人也是新人,望指点错误,共同学习。

相关内容