出版时间:2010-12 出版社:人民邮电出版社 作者:孙海勇 页数:542
Tag标签:无
前言
本书献给我敬爱的父母,祝愿他们健康长寿、生活开心!写书的背景十几年前我的哥哥买了一台386的计算机,从那时起我逐渐喜欢上了计算机。几年前一个偶然的机会使我开始接触制作Linux系统,虽然以前我对Linux也有所了解,但从那以后我对Linux系统的可定制性有了更加深入的了解,也使我开始对开源有了更为具体的理解。几年中,我不断学习制作Linux系统的相关知识,在网络上认识了许多“高手”,在和他们的交流中发现自己知识匮乏,我不断地从他们那里学习和了解许多我以前不知道的知识。其中很多人我不知道他们叫什么名字,只知道网名,但我非常真心地感谢他们的帮助。目前市面上还没有专门讲解如何制作Linux系统的书籍,因此我萌发了一个念头,就是撰写一本这样的书。本书主要内容本书所讲解的主要原理有一部分来自于LFS,在讲解中对LFS的方法进行了补充,增加了一些原创的构建方法,同时本书也对LFS未涉及的一些内容进行讲解,希望能帮助读者更加深入地了解操作系统定制的原理和机制。本书的主要内容如下。(1)用本地编译的方式制作GNU/Linux系统。第2~5章主要讲解如何使用软件包的源代码在x86平台的pc上建立一个简单、功能可扩充的GNU/Linux系统,如何通过GNU/Linux中的软件包源代码一步一步制作一个可用的GNU/Linux系统,读者只要根据书中的步骤操作就可以自行打造出一个属于自己的Linux系统。读者在制作Linux系统的过程中还可以知道每个软件包的安装命令,了解这些命令的功能。(2)制作“随身”Linux系统。第6章介绍了如何在第5章完成的Linux系统基础上建立一个可以启动的光盘系统,即LiveCD。
内容概要
本书以如何使用源代码搭建一套Linux系统这一独特的角度介绍Linux系统的构成,主要内容包括走进GNU/Linux、LFS,Linux系统定制原理,制作GNU/Linux系统的准备工作,本地定制GNU/Linux系统——临时系统,本地定制GNU/Linux系统——目标系统,LiveCD/DVD的制作,LiveUSB的制作,交叉编译GNU/Linux系统原理,交叉编译GNU/Linux系统过程,交叉编译GNU/Hurd系统的制作等内容。 本书适合Linux编程爱好者学习和阅读,也可作为大中专院校相关专业师生的参考书。
作者简介
孙海勇,从事Linux系统定制研究和开发,发表过多篇LFS相关的文章并被众多IT技术网站转载。首个Linux内核级UTF-8编码文字显示补丁的作者,第一位制作了在龙芯CPU下运行的纯64位Linux系统及发行版。
书籍目录
第1章 走近GNU/Linux、LFS 1.1 GNU、Linux、Hurd及开源软件 1.2 GNU/Linux的发行版 1.3 创造自己的GNU/Linux系统——LFS 1.4 GNU/Linux相关标准化介绍 1.5 源代码定制系统相关网络资源 第2章 基础准备——Linux系统定制原理 2.1 Linux系统的组成及架构 2.2 Linux的启动过程 2.3 本地定制Linux系统的原理 2.4 本地定制GNU/Linux系统的制作步骤设计 第3章 制作GNU/Linux系统的准备工作 3.1 准备好你的计算机 3.2 下载必要的软件 3.3 保存和恢复工作状态的方法 3.4 创建制作分区 第4章 本地定制GNU/Linux系统——临时系统 4.1 设置环境变量 4.2 编译软件包的一般步骤 4.3 预工具链 4.4 临时工具链 4.5 临时系统第5章 本地定制GNU/Linux系统——目标系统 5.1 目标系统环境设置 5.2 目标系统工具链的制作 5.3 目标系统的制作 5.4 使系统可以启动 5.5 如何提高成功率以及部分常见问题的解决方法 第6章 LiveCD/DVD的制作 6.1 LiveCD启动原理 6.2 LiveCD相关技术介绍 6.3 LiveCD制作的准备工作 6.4 LiveCD最终系统的制作 6.5 LiveCD专用内核制作 6.6 LiveCD初始化辅助系统的制作 6.7 LiveCD的生成 6.8 完成之后 第7章 LiveUSB的制作 第8章 交叉编译GNU/Linux系统原理 第9章 交叉编译GNU/Linux系统过程 第10章 GNU/Hurd系统的制作 参考文献
章节摘录
插图:子环境的运行方式和从分区启动的方式虽然根目录是一致的,但就整个系统来说还是有很多差别的,比如有些目录(女lJ/dev、/proc等)中的内容都是系统启动过程中创建的,并且会在运行过程中发生变化,这些目录中的内容有时会影响系统的制作,如果想让两种方式的效果最为接近就需要让这些目录中存放的内容相似。这些目录中的内容多与内核相关,但子环境的运行方式所使用的内核是主系统中的内核,因此目标系统和主系统的内核应当尽量保持兼容,这样就可以利用主系统中相应目录中的内容来补充目标系统中这些目录中的内容。想让主系统和目标系统对应目录中的内容保持一致,最容易想到的办法就是复制目录,但复制的方式对于/proc目录并不适合,因为该目录中的内容是内核当前状况的反映,复制过来就不能随着系统运行而变化,所以不能采用复制的方法。让两个目录的内容一致而又不复制目录还可以通过建立软链接文件的方式,访问链接文件就如同访问它所链接到的目录一样,但软链接文件的一个问题是目标文件或目录必须存在且能被当前的运行环境所访问。来看一个例子:在主系统的根目录下存在/proc这个目录,现在系统在/opt/目录下建立一个proc-a链接文件并指~/proc,当前运行环境中访问/opt/proc』中的内容就如同访问/proc中的内容,但如果将/opt作为虚拟根目录启动一个新的运行环境时,原先的/opt/proc-a将变成/proc-a,它所指向的/proc无法在这个运行环境中被访问到,导致链接文件失效。所以链接文件的方式也不能采用。现在介绍另一种使两个目录内容保持一致的方式,即“目录映射”,被映射的源目录和映射目录内容上保持一致,对它们中任何一方目录内的改动将直接导致另一方同样的修改。与链接文件处理方式不同,源目录和映射目录都必须是实际的目录而不是链接文件,目录映射并不依赖源目录的存在位置,即使在建立好目录映射后,改变源目录的名称或者位置都不会影响到映射目录的内容,因此使用映射方式建立的目录一致性将在进入新的运行环境中继续产生作用。如图2.33所示。
图书封面
图书标签Tags
无
评论、评分、阅读与下载