Linux的安装--分享

第一章:Linux 的安装

每次学习我碰到的第一个问题就是环境问题,我总想第一时间搭建一个学习的环境。尤其是Linux 这种的企鹅动物类的确是一个需要亲历亲为才能掌握的冬冬。于是我,一个 Linux 新手,第一件事情就是在自己常去的技术网站和 google 寻找 RHEL 的最新的安装盘片了。(我总是喜新厌旧,总想要找到最新的版本,不过也是,最新版本应该也是最简单的版本,因为软件总是在不断进步的,越来越好用才对。)不辞辛苦,你总能找到的,我就在网站 找到iso 盘片,下载并安装的。如果在公司使用有盗版问题的话,对于 RHEL 来说, CentOS 是一个很好的替代品,其实就是用 redhat 源代码重新编译,大家可以去 centos.org 下载,其实是完全一样的东西,而且是 free 的,很棒哦。我都开始转向 CentOS 了,懒得去每次找 RHEL 的最新版本。

有了安装盘片,就可以开始安装了。可以在自己的家用电脑上安装windows+linux 双系统,如果在公司,我想大家最好的办法还是使用 VMWare 或者是 Virtual PC 这样的虚拟机。虽然本人觉得 VMWare 更好用和更健壮,不过 Virtual PC 没有版权问题,对于我们这种只是用于学习的人来说也是已经足够的了。我个人就在家使用 vmware ,在公司使用 virtual pc

我以前安装过RHEL3 ,感觉 RHEL4 的安装过程更加友好了,不过在 virtual pc 上却给我带来很多的麻烦。我把我的安装经历和我觉得应该知晓的预备知识 document 在这里。

.            预备知识:
         分区
PC BIOS 的工作真的是很简单,做完机器自检之后,如果是从硬盘启动的,只会认定硬盘的 0 磁面 0 磁道 1 扇区,将之读入内存,并将控制权交给它。这个 0 磁面 0 磁道 1 扇区就是我们常常称为硬盘主引导扇区的 MBR (Master Boot Record) ,我们知道一个扇区只有 512 个字节,还被分成了三个部分:前面部分是启动代码,叫作主引导记录,共 446 个字节,接着后面的是 64 个字节是硬盘分区表 DPT (Disk Partition Table) ,用于存放主分区信息, MBR 的最后是结束标志 2 字节。
由于PC 硬盘的最初的分区方案只允许 4 个主分区( Primary Partition  )。实际使用中这太少了,为克服这个设计问题,人们发明了扩展分区( Extended Partition )。这个方法允许将基本分区分为若干子分区,这个基本分区被称为扩展分区,而其子分区被称为逻辑分区( Logical Partition )。硬盘是一个整体,每个主分区都有一个启动扇区。
最简单的主引导记录包括一段小程序,读入分区表,检查哪个分区是活动分区( 即启动分区 ) ,并读入活动分区的第一个扇区:该分区的启动扇区 (MBR 是整个硬盘的启动扇区 ) 。这个启动扇区包括另一个小程序,读入这个分区 ( 假设是可启动的 ) 上操作系统的第一个部分,然后把控制权交给它。

大家都知道在Linux 中一切都是文件,包括我们的硬盘和分区!在 Linux  里硬盘和分区都是设备文件,存放在 /dev 目录下。 IDE 设备是 /dev/hdX ,而 SCSI 设备是 /dev/sdX X 是设备标签。 IDE 设备标签一般从 a ,为什么,因为我们只有两个 IDE 接口,而每个 IDE 接口只能接最多两个硬盘。 /dev/hda 代表主板上主 IDE 插口上的主设备, /dev/hdb 代表主板上主 IDE 插口上的从设备, /dev/hdc 代表主板上从 IDE 插口上的主设备, /dev/hdd 代表主板上从 IDE 插口上的从设备。我没有 SCSI 硬盘,所以不做过多讲述。

如果我们有了一个连接在主板上主IDE 插口上的主设备位置的硬盘 /dev/hda  ,我们开始为硬盘分区,从上面所讲,我们知道硬盘最多可以有 4 个主分区,而在 Linux 就这么约定的 1-4 是主分区 ( 不管实际上有几个主分区 ) 5-8 是逻辑分区 ( 不管它在哪个基本分区中 ) ,所以从 /dev/hda1 /dev/hda4  4 个分区设备文件是为主分区预留的。扩展分区可以是从 /dev/hda2 /dev/hda4 中的任意一个,但逻辑分区只能是从 /dev/hda5 开始,而且一定是从 /dev/hda5 开始的。分区使用的 fdisk 我想大家应该都会使用吧,而且在 Linux 安装过程之中可以使用图形化的工具 Disk Druid ,很容易,使用确省选项就很好。

windows 之中每个硬盘或者分区都有个盘符,好像 C :,  D :之类的。这一点 Linux 是与之大不相同的,在 Linux 之中一切皆文件,我们知道 /dev 之下的设备文件代表了这个硬盘或者分区,如果分区要能够被我们使用的话,其实最终也需要在其上建立文件系统(就是格式化啊),并最终成为一个目录。所以可能 /usr /boot 是在两个不同的分区(甚至硬盘)之下的。不要认为大家都在 / 之下就认为在一个分区之内。

我把这种目录叫做接挂点(mount point) ,比如 /opt / 不在同一个分区之内,如果我只是把 / mount 了,而没有 mount /opt ,我会发现虽然在 / 之下有一个 /opt 目录 ( 怎么发现,使用 ls 或者 dir 命令嘛 ) ,但是这时候你会发现 /opt 这时只是一个空目录而已。所有的接挂目录都必须事先存在的,好像我们要 mount 一个 cdrom /mnt/cdrom ,我们必须事先建立一个空的 /mnt/cdrom 目录。

Note:
e2label 又是什么东西呢,我觉得就是我们给分区取的别名。比如我们把 hda1 分区的 mount point 设为了 /boot ,那么我们如果引用 /boot 的时候,其实也就是在引用 hda1 。这种资料应该记录在分区的 super block 之中。在使用 fdisk 等分区工具创建新的分区的时候,已经帮我们用接挂目录建立了别名。当然我们可以通过 e2label 命令进行更改,不过最好不要更改,因为如果在 Bootloader 或者其他什么脚本使用了 LABEL=/ 之类的引用的话,会导致我们的 linux 的无法正常启动。有兴趣可以做个小实验,启动 linux 之后,在 shell 之中打入以下命令,使用 fdisk –p /dev/hda  列出分区(不要用 swap 分区做实验, swap 分区没有别名的),然后使用 e2label /dev/hda?  逐个查看一下它的别名,找到 /boot 分区,我知道一般 GRUB 会用 LABEL 来引用他们,现在使用 e2label /dev/hda? newlabel 来更改它的别名,不要再叫 /boot 。好了,  reboot 后看看结果吧。
        BootLoader
Bootloader 的出现也是因为原来的引导代码只是将控制交给活动分区的启动扇区,这样的代码实在太简单了,现实之中有很多更多的需要,比如我们要实现在多个系统之中选择性的启动某个系统。于是出现了更加强大的启动代码,在 Linux 之中常用的就是以下两个: LILO GRUB 。现在我们没有必要知道这两个 Bootloader 的不同之处,反正这两个都可以被安装在 MBR 之中(直接控制启动过程)或者安装在某个分区(需要是活动分区或者需要其他 Bootloader 的配合)完成启动的任务, GRUB 是更新的产品,所以一定比 LILO 更好些。
对于启动Linux 的主要任务是接手控制,加载指定内核,并最终把控制交给内核。

       PC Linux 启动过程

我简叙我所理解的Linux 的启动过程:
1 BIOS 读取 MBR 主引导扇区( LILO 或者 GRUB 的一部分一般已经写入 MBR );
2 .于是 LILO 或者 GRUB 被加载入内存;
3 LILO 或者 GRUB 会负责加载 LINUX 内核;
4 .内核取得控制权之后会接挂根文件系统 / ,启动 init ,一切进程的 鼻祖 ,读取 /etc/inittab 文件;
5 .允许所有运行级别 1 指定的脚本程序;
6 .在运行级别 1 的结尾处告诉系统前进到运行级别 n(/etc/inittab 之中指定 )
允许所有运行级别n(/etc/inittab 之中指定 ) 指定的脚本程序;系统就绪;

          双系统
通过硬盘分区和相应的BootLoader 可以使 Windows Linux 在一台电脑上和平共处。
    虚拟机的安装
1  VMWare ,我是用的 VMWare workstation 5
2  Virtual PC
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值