第1章 Linux 简介与安 装 本章学习目标 .了解Linux的起源、特点以及内核版本和发行版本的区别; .了解硬盘分区、MBR 和GPT; .熟练掌握Ubuntu的安装。 Linux是一种优秀的操作系统,被广泛应用在多种计算平台。本章首先简要介绍Linux 的起源、特点以及内核版本和发行版本的区别,然后详细介绍Ubuntu的安装过程。 1.iux简介 1 Ln Linux是一款诞生于网络,成长于网络并且成熟于网络的操作系统,是一套免费使用和 自由传播的类UNIX 操作系统,它主要运行在基于Intelx86 系列CPU 的计算机上。Linux 是由世界各地的成千上万的程序员设计和实现的,其目的是建立一个不受任何商品化软件 版权制约的,全世界都能自由使用的UNIX 兼容产品。Linux是一个自由的、遵循GNU 通 用公共许可证(GPL)的类于UNIX 操作系统。 Linux最早由一位名叫LinusTorvalds的芬兰赫尔辛基大学计算机科学系的学生开发,他 的目的是设计一个代替MINIX 的操作系统,这个操作系统可用在386 、486 或奔腾处理器的个 人计算机上,并且具有UNIX 操作系统的全部功能。Linux以它的高效性和灵活性著称,能够 在个人计算机上实现全部的UNIX 特性,具有多用户、多任务的能力。Linux可在GNU (GNU..snotUNIX)公共许可权限下免费获得,是一个符合POSIX 标准的操作系统。 Linux之所以受到广大计算机爱好者的喜爱,主要原因如下:第一,由于Linux是一套自由 软件,用户可以无偿地得到它及其源代码,可以无偿地获得大量的应用程序,而且可以任意修 改和补充它们,这对用户学习、了解UNIX 操作系统非常有益。第二,它具有UNIX 的全部功 能,任何使用UNIX 操作系统或想要学习UNIX 操作系统的人都可以从Linux中获益。 Linux不仅为用户提供了强大的操作系统内核功能,而且提供了丰富的应用软件。用 户不但可以从Internet上下载Linux及其源代码,而且可以从Internet上下载许多Linux 的应用程序。可以说,Linux本身包含的应用程序以及移植到Linux上的应用程序包罗万 象,任何一位用户都能从有关Linux的网站上找到适合自己特殊需要的应用程序及其源代 码,这样,用户就可以根据自己的需要修改和扩充操作系统或应用程序的功能。 Linux的开放性也给我国操作系统软件开发商带来一个良好的机会,可以开发具有自 UbuntuLinux操作系统(微课视频版) 主知识产权的操作系统,打破国外厂商在计算机操作系统上的垄断。我国有多家软件公司 致力于开发基于Linux内核的操作系统平台,如中科红旗,并且有产品成功地应用在很多 领域。 1.1 Lnx的起源 1.iu 在20世纪70年代,UNIX操作系统的源程序大多是可以任意传播的。互联网的基础 协议TCP/IP就是产生于那个年代。在那个时期,人们在创作各自的程序中享受着从事科 学探索、创新活动所特有的那种激情和成就感,那时的程序员并不依靠软件的知识产权向用 户收取版权费。 1979年,AT&T宣布了UNIX的商业化计划,随之出现了各种二进制的商业UNIX版 本。于是就兴起了基于二进制机读代码的“版权产业”(copyrightindustry),使软件业成为 一种版权专有式的产业,围绕程序开发的创新活动被局限在某些骨干企业的小范围内,源程 序被视为核心“商业机密”。这种做法,一方面产生了大批的商业软件,极大地推动了软件业 的发展,诞生了一批软件巨人;另一方面封闭式的开发模式阻碍了软件业的进一步深化和提 高。由此,人们为商业软件的bug付出了巨大的代价。 1983年,RichardStalman面对程序开发的封闭模式,发起了一项国际性的源代码开放 的所谓“牛羚”(GNU)计划,力图重返20世纪70年代的基于源代码开放来从事创作的美好 时光。他为保护源代码开放的程序库不会再度受到商业性的封闭式利用,制定了一项GPL 条款,称为Copyleft版权模式。Copyleft带有标准的Copyright声明,确认作者的所有权和 标志。但它放弃了标准Copyright中的某些限制。它声明:任何人不但可以自由分发该成 果,还可以自由地修改它,但你不能声明你做了原始的工作,或声明是由他人做的。最终,所 有派生的成果必须遵循这一条款(相当于继承关系)。GPL有一个法定的版权声明,但附带 (在技术上去除了某些限制)在该条款中,允许对某项成果以及由它派生的其余成果的重用, 修改和复制对所有人都是自由的。 注意:GNU计划是由RichardStalman在1983年9月27日公开发起的,由自由软件 基金(n,FSF)支持,目标是创建一套完全自由的操作系统。GPL fresoftwarefoundatio(generalpubliclicense)是指GNU通用公共许可证。大家常说的Linux准确来讲应该称为 GNU/Linux,Linux这个词本身只表示Linux内核,但实际上人们已经习惯用Linux来表示 整个基于GNU/Linux内核且使用GPL软件的操作系统。 1987年6月,RichardStalman完成了11万行源代码开放的“编译器”(GNUgc),获 得了一项重大突破,做出了极大的贡献。 1989年11月,M.Tiemann以6000美元开始创业,创造了专注于经营开放源代码 CygnusSupport(天鹅座支持公司)计划(注意,Cygnus中隐含着g、n、u三个字母)。Cygnus 是世界上第一家也是最终获得成功的一家专营源代码程序的商业公司。Cygnus的“编译 器”是十分优秀的,它的客户有许多是一流的IT企业,包括世界上最大的微处理器公司。 ura0.u 1991年9月,LinsTovlds公布了Linux0.1版内核,该版本的Linx内核被芬兰 赫尔辛基大学FTP服务器管理员AriLemmke发布在Internet上。最初Torvalds将其命 名为Fra是自由(r和奇异(ra的结合, 以配合所谓的类UNIX系 ex, fe) fek) 并且附上X字母, 统。FTP服务器管理员觉得Freax不好听,因此将其命名为Linux。这完全是一个偶然事 2 第1章Linux简介与安装 件。但是,Linux刚一出现在互联网上,便受到广大的“牛羚”计划追随者们的喜欢,他们将 Linux加工成了一个功能完备的操作系统,叫作GNULinux。 1995 年1月,BobYoung创办了RedHat公司,以GNULinux为核心,集成了400 多 个源代码开放的程序模块,开发出了一种冠以品牌的Linux,即RedHatLinux,称为Linux 发行版,在市场上出售。这在经营模式上是一种创举。BobYoung称:我们从不想拥有自 己的“版权专有”技术,我们卖的是“方便”(给用户提供支持和服务), 而不是自己的“专有技 术”。源代码开放程序促进了各种品牌发行版的出现,极大地推动了Linux的普及和应用。 1998 年2月,以EricRaymond为首的一批年轻的“老牛羚骨干分子”终于认识到: GNULinux体系的产业化道路的本质并非是什么自由哲学,而是在市场竞争的驱动下创办 了OpenSourceIntiative(开放源代码促进会), 在互联网世界里展开了一场历史性的Linux 产业化运动。在以IBM 和Intel为首的一大批国际重量级IT 企业对Linux产品及其经营 模式的投资并提供全球性技术支持的大力推动下,催生了一个正在兴起的基于源代码开放 模式的Linux产业,也有人称为开放源代码(opensource)现象。 2001 年1月,4版内核发布,进一步地提升了SMP 系统的扩展性,同时它也集 Linux2. 成了很多用于支持桌面系统的特性———USB 、PC 卡(PCMCIA), 以及内置的即插即用等 功能。 2003 年12 月,6版内核发布。相对于2.6版内核在对系统的支持 Linux2.4版内核,2. 上有很大的变化。这些变化如下。 (1)更好地支持大型多处理器服务器,特别是采用NUMA 设计的服务器。 (2)更好地支持嵌入式设备,如手机、网络路由器或者视频录像机等。 (3)对鼠标和键盘指令等用户行为反应更加迅速。 (4)对块设备驱动程序做了彻底更新,如与硬盘和CD 光驱通信的软件模块 。 Linux发展的重要阶段如下 。 1991 年9月:LisTovls公布了Linx0.1版内核 。 nuradu0. 1994 年3月:Linx1.Liu u0版内核发行,nx转向GPL 版权协议 。 1996 年6月:Li0版内核发布 。 nux2. 1999 年1月:Li2版内核发布;x的简体中文发行版相继问世 。 nux2.Linu 2001 年1月:Linx2. u4版内核发布 。 2003 年12 月:Linx2. u6版内核发布 。 2009 年12 月:Lix2.32 版内核发布,为长期支持版 。 nu6. 2011 年5月:Linx2.39 版内核发布 。 u6.2011 年7月:Linx3.为长期支持版(nsTovls坦言:Liu0 u0版内核发布, Liuradnx3. 版内核并没有巨大变化,只是在Li40 提升为3. 2012 年1月:Linx3. x诞生20 周年之际将2.0而已)。 u2版内核发布。 2013 年6月:Linx3.为长期支持版。 nu6. u10 版内核发布 , 2014 年8月:Li16 版内核发布,为长期支持版 。 nux3. 2016 年1月:Li4版内核发布,为长期支持版 。 nux4. 2018 年8月:Linx4. u18 版内核发布。 2021 年10 月:Li15 版内核发布,为长期支持版。Ub04LTS 使用该版本 nux5.untu22. 3 UbuntuLinux操作系统(微课视频版) 内核。 Linx内核下载网址:hs:kre.r/。 utp//www.enlog 1.1.2 Linux的特点 Linux操作系统在较短的时期内得到了非常迅猛的发展,这与Linux具有的良好特性 是分不开的。Linux包含了UNIX的全部功能和特性,简单来说,Linux具有以下主要特性: 开放性、多用户、多任务、良好的用户界面、设备独立性、可靠的系统安全、良好的可移植性, 并且遵循GNU/GPL,提供了丰富的网络功能。 Linux可以运行在多种硬件平台上,如x86 、x64(AMD64 )、ARM 、SPARC和Alpha等 处理器的平台。此外,x还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游Linuu4版内核,e 戏机上。2001年1月发布的Linx2.已经能够完全支持Intl64位芯片架构。同 时,Linux也支持多处理器技术。多个处理器同时工作,使系统性能大大提高。 1.3 Lnx的版本 1.iu Linux的版本号分为内核版本和发行版本两部分。 1.Linux的内核版本 对于Linux的初学者来说,最初会经常分不清内核版本与发行版本之间的关系。实际 上,操作系统的内核版本指的是在LinusTorvalds领导下的开发小组开发出的系统内核的 版本号,通常由x、y、z3个数字组成。 x:内核主版本号,有结构性变化时才变更。 y:内核次版本号,新增功能时才发生变化。一般奇数表示测试版,偶数表示稳定版。 z:表示对此版本的修订次数 。 注意:2. x 已经不适用了,1内核是稳定版本 。 x 规则在3.如3. Linux操作系统的核心就是它的内核,LinusTorvalds和他的小组在不断地开发和推出 新内核。内核的主要作用包括进程调度,内存管理,配置管理虚拟文件系统,提供网络接口 以及支持进程间通信。像其他所有软件一样,Linux的内核也在不断升级。 2.Linux的发行版本 一个完整的操作系统不仅只有内核,还包括一系列为用户提供各种服务的外围程序。 所以,许多个人、组织和企业开发了基于GNU/Linux的Linux发行版,他们将Linux系统 的内核与外围应用软件和文档包装起来,并提供一些系统安装界面以及系统设置与管理工 具,这样就构成了一个发行版本。实际上,Linux的发行版本就是Linux内核再加上外围实 用程序组成的一个大软件包而已。相对于操作系统内核版本,发行版本的版本号是随发布 者的不同而不同,与Linux系统内核的版本号是相对独立的。 Linux的发行版本大体可以分为两类:一类是商业公司维护的发行版本;另一类是社区 组织维护的发行版本。前者以著名的RedHatLinux为代表;后者以Debian为代表。 下面简要介绍一些目前比较知名的Linux发行版本。 1)RedHat系列 RedHatLinux是非常成熟的一种Linux发行版,无论是在销售还是在装机数量上都是 4 第1章Linux简介与安装 市场上的第一。中国老一辈Linux爱好者中大多数是RedHatLinux的使用者。 目前RedHat系列的Linux发行版主要包括RHEL(RedHatEnterpriseLinux,Red Hat的企业版)、Fedora、CentOS(communityenterpriseoperatingsystem,社区企业版)、 CentOSStream 、RockyLinux、OEL(OracleenterpriseLinux)和SL(scientificLinux)。 2)SUSE SUSE是德国非常著名的Linux发行版,在全世界范围中享有较高的声誉。SUSE自主 开发的软件包管理系统YaST也大受好评。SUSE于2003年的年末被Novel 收购。 3)Debian系列 目前Debian系列的Linux发行版主要包括Debian、Ubuntu、Kali和Depin。Debian由 IanMurdock于1993年创建,是严格遵循GNU规范的Linux系统,是100%非商业化的社 区类Linux发行版,由部分黑客自愿进行开发和维护。KaliLinux旨在渗透测试和数字取 证,预先构建了用于渗透测试的多种工具,如Metasploit框架、Nmap、Wireshark、Maltego、 Etercap等。Depin(深度操作系统)是由武汉深之度科技有限公司在Debian基础上开发的 Linux操作系统。 4)Ubuntu Ubuntu(乌班图)由开源厂商Canonical公司开发和维护。Ubuntu是基于Debian的 unstable版本加强而来,拥有Debian的所有优点。根据Ubuntu发行版本的用途来划分,可 分为UbuntuDesktop(Ubuntu桌面版)、UbuntuServer(Ubuntu服务器版)、UbuntuCloud (Ubuntu云操作系统)和UbuntuTouch(Ubuntu移动设备系统),涵盖了IT产品的方方面 面。除了标准Ubuntu版本之外,Ubuntu官方还有几大主要分支,分别是Kubuntu、 Lubuntu、Mythbuntu、UbuntuMATE 、UbuntuKylin、UbuntuStudio和Xubuntu。 22. Ubutlong-termsuppor 年份+月份”组成,如22. nu会在每年4月和10月发布新版本。版本号由“ 04 、 10 。偶数年加4月的版本为LTS(t)版本,享受长达5年的官方技术支 持。LTS一般每两年发布一次,发布月份选在4月。非LTS版本支持周期为9个月左右。 Ubuntu每个版本都有一个版本名字,该名字由一个形容词和一个动物名组成,并且形 容词和动物名的首字母都是一致的。从D版本开始又增加了一个规则,首字母要顺延上个 版本,如果当前版本是D, ut10的版本名字为Imps 则下个版本就是E。比如,Ubnu21.ih i,04的版本名字为Jh。 IndrUbuntu22.ammyJelyfis5)RedFlag/中标麒麟 RedFlag由中科红旗(北京)信息科技有限公司研发。中标麒麟是由中标软件有限公司 和国防科技大学共同研制开发的Linux发行版。 6)Slackware Slackware由PatrickVolkerding创建于1993年,是历史非常悠久的Linux发行版。 7)Gentoo Gentoo是一套通用、快捷、完全免费的Linux发行版,它面向开发人员和网络职业人 员。GentooLinux拥有一套先进的包管理系统,叫作Portage。Gentoo最初由Daniel Robbins创建。2002年发布首个稳定的版本。Gentoo的出名在于它高度的自定制性, Gentoo适合比较有Linux使用经验的老手使用。 5 UbuntuLinux操作系统(微课视频版) 8)Arch Arch是一款基于64位x86架构的Linux发行版,主要由自由和开源软件组成,支持社 区参与,注重代码正确、优雅和极简主义,期待用户能够愿意去理解系统的操作。pacman是 ArchLinux的软件包管理器,具有依赖处理和构建软件包的功能。与Gentoo类似,不同于 其他大部分主流Linux发行版(如Fedora和Ubuntu)。ArchLinux并没有跨版本升级的概 念,通过更新,任何时期的ArchLinux都可以滚动更新到最新版本。 9)Mandriva Mandriva的原名是Mandrake,最早由GalDuval创建并在1998年7月发布。早期的 Mandrake是基于RedHat进行开发的。 10)Android Android是一种基于Linux的自由及开源的操作系统,主要用于移动设备,如智能手机 和平板电脑,由Google公司和开放手机联盟(openhandsetaliance)领导开发。 1.硬盘分区 2 Linux的安装是一个比较复杂的过程,它和Windows操作系统的不同之处在于,它们的 文件组织形式不同。安装Linux过程的重点和难点在于怎样给硬盘分区。 在安装Ubuntu的过程中可以对硬盘进行分区操作,不过笔者建议读者在安装Ubuntu 之前使用专门的分区工具(比如,在Linux中可以使用gparted、gdisk、fdisk,在Windows中 可以使用DiskGenius、AOMEI分区助手等)对硬盘分区。 硬盘有两种分区格式,即MBR(masterbootrecord,主引导记录)和GPT(globalyuniqueidentifierpartitiontable,全局唯一标识磁盘分区表)。 2TB大小的硬盘空间,MBR和GPT的区别:①MBR分区表最多只能识别2.大于 2.2TB的硬盘空间将无法识别;GPT分区表能够识别2. 2TB以上的硬盘空间。②MBR分 区表最多支持4个主分区或3个主分区加上1个扩展分区(扩展分区中的逻辑分区个数不 限);默认情况下GPT分区表最多支持128个主分区。③MBR分区表的大小是固定的;在 GPT的表头中可自定义分区数量的最大值,也就是说GPT的大小不是固定的。 1.1 MBR 分区 2. MBR早在1983年DOS2.包含已安装操作 0中就已经提出。MBR是硬盘的第一扇区, 系统的启动加载器和驱动器的逻辑分区信息。它由三部分组成,即启动加载器、DPT(disk partitiontable,硬盘分区表)和硬盘有效标志。在总共512字节的MBR里启动加载器占 446个字节,偏移地址为0000H~0088H,负责从活动分区中装载并运行系统引导程序;DPT 占64个字节;硬盘有效标志占2个字节(55AA )。采用MBR的硬盘分区如图1-1所示。 启动加载器是一小段代码,用于加载驱动器上其他分区上更大的加载器。如果安装了 Windows,则Windows启动加载器的初始信息就放在这个区域里———如果MBR的信息被 覆盖导致Windows不能启动,需要使用Windows的MBR修复功能来使其恢复正常。如果 安装了Linux,则位于MBR里的通常会是GRUB加载器。 DPT偏移地址为01BEH~01FDH,每个分区表项占16个字节,共64字节,为分区项 6 第1章Linux简介与安装 图1-1 硬盘分区(MBR) 1、分区项2、分区项3、分区项4,分别对应MBR 的4个主分区。 硬盘有效标志也就是结束标志字,偏移地址为01FE~01FF,占2个字节,固定为 55AA 。如果该标志错误,系统就不能启动。 1. 硬盘设备 在Linux系统中,所有的一切都是以文件的方式存放于系统中,包括硬盘,这是与其他 操作系统的本质区别之一。按硬盘的接口技术不同,将硬盘种类分为以下三种。 1)并口硬盘( IDE) 在Linux系统中,它将接入IDE 接口的硬盘文件命名为以hd 开头的设备文件。 例如,第一块IDE 硬盘被命名为hda,第二块IDE 硬盘被命名为hdb,其他以此类推。 系统将这些设备文件放在/dev目录中,如/dev/hda、/dev/hdb 、/dev/hdc。 2)微型计算机系统接口硬盘(SCSI) 连接到SCSI 的设备使用ID 进行区别,SCSI 设备ID 为0~15,Linux对连接到SCSI 的 硬盘使用/dev/sdx 的方式命名, x 的值可以是a、b、c、d等,即ID 为0的SCSI 硬盘名为 /de/dID 为1的SCSI 硬盘名为/dvs其他以此类推。 vsa,e/db, 3)串口硬盘(SATA) 在Linux系统中,串口硬盘的命名方式与SCSI 硬盘的命名的方式相同,都是以sd开 头。例如,第一块串口硬盘被命名为/dev/sda,第二块被命名为/dev/sdb 。 注意:分区是一个难点,在分区之前,建议读者备份重要的数据。 2. 硬盘分区 硬盘可以划分为三种分区,即主分区(primarypartition)、扩展分区(extension partition) logicalpartitio 和逻辑分区(n)。 一个硬盘最多有4个主分区。如果有扩展分区,那么扩展分区也算是一个主分区,注意 只可以将一个主分区变成扩展分区。在扩展分区上,可以以链表的方式建立逻辑分区。Red HatLinux对一块IDE 硬盘最多支持63 个分区,对SCSI 硬盘支持15 个分区。 1)Linux硬盘分区的命名 Linux通过字母和数字的组合对硬盘分区命名,如hda2、hdb6 、sda1等。 第1和2个字母表明设备类型,如hd 指IDE 硬盘,d指SCSI 硬盘或串口硬盘。 s 第3个字母表明分区属于哪个设备,如hda是指第1个IDE 硬盘,db 是指第2个SCSI s 硬盘。 7 UbuntuLinux操作系统(微课视频版) 第4个数字表示分区,前4个分区(主分区或扩展分区)用1~4表示。逻辑分区从5开 始,如hda2是指第1个IDE硬盘上的第2个主分区或扩展分区,hdb6是指第2个IDE硬盘 上的第2个逻辑分区。 2)Linux硬盘分区方案 安装Ubuntu时,需要在硬盘建立Linux使用的分区,在大多数情况下,建议至少需要 为Linux建立以下3个分区。 (1)/boot分区:该分区用于引导系统,占用的硬盘空间很少,包含Linux内核以及 grub的相关文件。建议分区大小为500MB左右。 (2)/(根)分区:Linux将大部分的系统文件和用户文件保存在/(根)分区上,所以该分 区一定要足够大。建议分区大小要大于20GB 。 (3)wa原则上是物理内存的1.~当物理 sp分区:该分区的作用是充当虚拟内存, 52倍( 内存大于1GB时,p分区为1GB即可)。 swa 提示:如果架设服务器,建议采用如下分区方案。 /boot:用来存放与Linux系统启动有关的程序,如启动引导装载程序等。建议大小 为500MB 。 /:Linux系统的根目录,所有的目录都挂在这个目录下面。建议大小为20GB 。 /usr:用来存放Linux系统中的应用程序,其相关数据较多。建议大于15GB 。 /var:用来存放Linux系统中经常变化的数据以及日志文件。建议大于10GB 。 /home:存放普通用户的数据,是普通用户的宿主目录。建议大小为剩下的磁盘空间。 swap:实现虚拟内存。建议大小是物理内存的1~2倍。 1.2 GPT分区 2. GPT是可扩展固件接口(UEFI)标准的一部分,用来替代BIOS所对应的MBR分区表。 采用GPT的硬盘分区如图1-2所示。每个逻辑块地址(logicalblockaddres,LBA)占 512字节(一个扇区),每个分区的记录占128字节。负数的LBA地址表示从最后的块开始 倒数,-1表示最后一个块。 在MBR硬盘中,分区信息直接存储在MBR中。在GPT硬盘中,分区表的位置信息存 储在GPT头中。但出于兼容性考虑,硬盘的第一个扇区仍然用作MBR,之后才是GPT头。 传统MBR信息存储在LBA0中,GPT头存储在LBA1中,GPT本身占用32个扇区;接下 来的LBA34是硬盘上第一个分区的开始。GPT会为每一个分区分配一个全局唯一标识 符。理论上GPT支持无限个磁盘分区,默认情况下,最多支持128个磁盘分区,基本可以满 足所有用户的存储需求。在每一个分区上,这个标识符是一个随机生成的字符串,可以保证 为地球上的每一个GPT分配完全唯一的标识符。 LBA0:为了兼容问题,GPT在磁盘的最开始部分,仍然存储了一份传统的MBR,叫作 保护性MBR,可以防止设备不支持UEFI,并且可以防止不支持GPT的硬盘管理工具错误 识别并破坏硬盘中的数据。在使用MBR/GPT混合分区表的硬盘中,这部分存储了GPT 的一部分分区(通常是前4个分区),可以使不支持从GPT启动的操作系统从这个MBR启 动,启动后只能操作MBR分区表中的分区。 LBA1:分区表头定义了硬盘的可用空间以及组成分区表的项的大小和数量。默认情 8 第1章Linux简介与安装 图1-2 硬盘GPT 分区 况下,最多可以创建128 个分区,即分区表中保留了128 个项,其中每个都是128 字节(EFI 标准要求分区表最小要有16384 字节,即128 个分区项的大小)。主分区表头还记录了这块 硬盘的GUID,记录了分区表头本身的位置和大小(位置总是在LBA1)以及备份分区表头 和分区表的位置和大小(在硬盘的最后)。它还存储着它本身和分区表的CRC32 校验。固 件、引导程序和操作系统在启动时可以根据这个校验值来判断分区表是否出错,如果出错 了,可以使用软件从硬盘最后的备份GPT 中恢复整个分区表;如果备份GPT 也校验错误, 硬盘将不可使用。所以GPT 硬盘的分区表不可以直接使用十六进制编辑器修改。主分区表 和备份分区表的头分别位于硬盘的第二个扇区(LBA1)以及硬盘的最后一个扇区(LBA-1)中。 备份分区表头中的信息是关于备份分区表的。 LBA2~LBA33:GPT 分区表使用简单而直接的方式表示分区。一个分区表项的前 16 字节是分区类型GUID 。接下来的16 字节是该分区唯一的GUID(这个GUID 指的是该 分区本身,而之前的GUID 指的是该分区的类型)。再接下来是分区起始和末尾的64 位 LBA 编号,以及分区的名字和属性。 注意:如果将一块硬盘从MBR 分区转换成GPT,会丢失硬盘内的所有数据。所以在 更改硬盘分区格式之前需要先备份重要数据,然后使用磁盘管理软件将硬盘转换成GPT 格式。 ESP:ESP(EFIsystempartition,EFI 系统分区)本质上是一个FAT 分区(FAT32 或 FAT16,建议使用FAT32 )。使用分区程序给GPT 磁盘分区时会提醒建立一个指定大 小的ESP,并且命名为ESP 。EFI 使用ESP 来保存引导加载程序。如果计算机已经预装 了Windows7/8/10,那么ESP 分区就已经存在,可以在Linux上直接使用;否则,建议创 建一个大小为500MB 的ESP,并且给ESP 设置一个“启动标记”或名为EF00 的类型码。 9 UbuntuLinux操作系统(微课视频版) 10 其他分区:除了ESP,不再需要其他的特殊分区。读者可以设置根(/)分区、swap分 区、/opt分区或者其他分区,可以参考1.2.1小节中BIOS模式下分区。 Ubuntu安装完成以后,进入系统,在命令行中执行如下命令,可以查看分区的相关 信息。 #gdisk -l /dev/sda #fdisk -l /dev/sda #parted -l #blkid # [ - d /sys/firmware/efi ] && echo " Machine booted with UEFI" || echo " Machine booted with BIOS" 示例如下: #gdisk -l /dev/sda Number Start (sector) End (sector) Size Code 1 2048 1050623 512.0 MiB EF00 #/dev/sda1, boot, EFI System Partition 2 1050624 5244927 2.0 GiB 8200 #/dev/sda2, Linux swap 3 5244928 6293503 512.0 MiB 8300 #/dev/sda3, Linux filesystem, ext2 4 6293504 72353791 31.5 GiB 8300 #/dev/sda4, Linux filesystem, ext4 5 72353792 134215679 29.5 GiB 8300 #/dev/sda5, Linux filesystem, ext4 1.3 实例———在VirtualBox中安装Ubuntu VirtualBox是一款最早由德国InnoTek公司开发的开源虚拟机软件,以GNU General PublicLicense(GPL)释出。InnoTek 公司后来被Sun Microsystems 公司收购,将 VirtualBox改名为SunVirtualBox,性能得到很大的提高。SunMicrosystems被Oracle收 购后,被更名为OracleVM VirtualBox。可以在VirtualBox上安装并运行的操作系统有 Windows、Linux、MacOS、Android-x86、OS/2、Solaris、BSD、DOS等。 安装VirtualBox 1.3.1 安装VirtualBox 读者计算机中的操作系统如果是Windows7/10/1164位,并且内存 在8GB 以上,CPU 为4 核4 线程或4 核8 线程以上,则可以通过 VirtualBox安装Ubuntu,进而学习Ubuntu。 读者可以从清华大学开源软件镜像站(https://mirror.tuna.tsinghua. edu.cn/virtualbox/)下载Windows版的VirtualBox安装文件VirtualBox- 6.1.4-136177-Win.exe以及VirtualBox扩展包文件Oracle_VM_VirtualBox_Extension_ Pack-6.1.4-136177.vbox-extpack。读者可以下载最新版本的VirtualBox,需要注意 VirtualBox的安装文件和扩展包文件的版本要一致。 双击VirtualBox-6.1.4-136177-Win.exe,进入安装向导,开始VirtualBox的安装。单击 “下一步”按钮,进入自定义安装界面,如图1-3所示,可以选择安装位置和功能。连续单击 “下一步”按钮,即可完成VirtualBox的安装。 注意:VirtualBoxNetworking默认选择将整个功能安装到本机硬盘上。