一、在之前的学习过程中,我们知道在Linux系统中,一切皆文件,其中也必然包括一些硬件设备,比如说IDE接口的硬盘、u盘、鼠标、打印机以及CD ROM和DVD ROM等等。那如何决定设备文件名呢?这就要根据Linux内核检测到磁盘的顺序来决定。
IDE硬盘在Linux中的文件名:/dev/hd[a-d]
U盘(SATA): /dev/sd[a-p]
鼠标:/dev/usb/mouse[0-15],/dev/psaux
打印机:/dev/usb/lp[0-15],/dev/lp[0-2]]
CD ROM/DVD ROM:/dev/cdrom
二、我们要用Linux操作系统来进行工作学习就要先进行安装Linux,那Linux系统是安装在计算机组件的哪个部分呢?没错,就是磁盘。
一块磁盘可以被分区成多个分区(partition),也就是Windows中的C盘D盘各种盘,然而我们都知道在Linux中一切皆文件,那么分区的文件名是什么呢?
首先我们应该知道,磁盘主要由盘片、指针、磁头和主轴组成。盘片上面又可以细分为扇区(Sector)和(Cylinder)两种单位,其中每个扇区为512bytes。
磁盘的第一个分区记录了整个磁盘的重要信息,主要分为:
1、 主引导分区(MBR):可以安装加载引导程序的地方有446bytes。
2、 分区表(partition table):记录整块硬盘分区的状态,有64bytes。
在分区表的所在的64bytes容量中,总共分为四组记录区,假设该硬盘设备文件名为/dev/sda,那么这四个分区在Linux系统中的设备文件名则分别为:/dev/sda1,/dev/sda2,/dev/sda3,/dev/sda4,这四个分区被称为主分区(primary)和扩展分区(extended,最多只能有一个)。
注意:在磁盘分区时,如果设置四个主分区后还有剩余空间存在,那将无法继续分区,
上述内种中我们可以了解到,硬盘默认的分区表可以分为四组分区,并且是针对于分区表的64bytes进行设置,这四组分区被我们称为主分区和扩展分区,最小的单位是柱面。
扩展分区可以继续进行分区,分出来的新分区被称为逻辑分区(logical partition),并且扩展分区是使额外的扇区来记录分区信息,本身并不能被拿来格式化后作为数据访问也不能被格式化。所以才要继续分逻辑分区。逻辑分区的设备名称由/dev/sda5,也就是数字5开始。
三、开机流程:
电源àBIOS(开机主动执行的一个写入到硬件上的一个软件程序)àMBR(第一个可开机设备的第一个分区内的主引导分区块,内包含引导加载程序)àBoot loader(一支可读取内核文件夹来执行的软件)à内核文件(开启操作系统的功能)
Boot loader主要有以下几个任务:
提供菜单:即多重引导,用户可选择不同的开机选项。
载入内核文件:直接指向可开机的程序区段来开始操作系统。
转交其他loader:将引导加载功能转交给其他loader负责
引导加载程序处理可以安装在MBR之外,还可以安装在每个分区的引导扇区(boot sector).
总结:
每个分区都拥有自己的启动扇区。
可开机的内核文件是放置到各个分区内的。
Loader只认识自己的系统分区内的可开机内核文件,以及其他loader。
Loader可直接指向或者是间接将管理权转交给另一个管理程序。
实际生活中,人们常说:‘如果要安装多重引导,最好先安装Windows再安装Linux,这是为什么呢???’
因为linux的引导加载程序grub既能识别linux的核心启动文件,也能识别windows的核心启动文件。而windows的引导加载程序却不能识别linux的核心启动文件,如果先装linux的,后装windows的话,由于windows默认把引导加载程序安装在MBR与超级块中,这样的话就覆盖掉原来的linux的grub了,导致磁盘的MBR只能识别windows的而不能进入linux了,所以每次加载BIOS信息后,你只能毫无选择的进入windows了(等于没装...)不过还是有解决办法的,不过就是有点麻烦,这里就简单的介绍下解决方法:
1. 选用CentOS的安装光盘启动计算机,选择rescue选项。
2. 使用fdisk -l查看磁盘信息,找到linux安装的分区。
3. 输入grub命令进入到grub操作状态,依次输入以下命令,不包括分号及其后内容
>root (hdX,Y) ;注意命令中有空格,X为磁盘号,一般为0,Y为分区号hda1234等等,注意,此时的Y需要比采用fdisk -l查询到的linux主分区号减一。该命令只做查看用,可以不写。
>setup (hd0)
>quit
输入exit重新启动计算机
注:在装系统时,在创建内存交换空间swap的分区时,swap最好为物理内存的1.5~2倍之间。
当你安装好了系统并想要测试下现在这台主机是否分定时,那么我们可以在这台主机上面运行一些比较耗系统资源的程序,让系统在高负载的情况下去运行一段时间。操作如下:
放入安装系统的DVD光盘并重启,在进入菜单时输入memtest86即可。
接着系统就会进入这支内存测试的程序中并且一直不断的对内存写入写出。若想要结束,ESC即可重新启动。