Linux之系统裁减指南 .pdf

上传人:C****o 文档编号:39714150 上传时间:2022-09-07 格式:PDF 页数:45 大小:368.76KB
返回 下载 相关 举报
Linux之系统裁减指南 .pdf_第1页
第1页 / 共45页
Linux之系统裁减指南 .pdf_第2页
第2页 / 共45页
点击查看更多>>
资源描述

《Linux之系统裁减指南 .pdf》由会员分享,可在线阅读,更多相关《Linux之系统裁减指南 .pdf(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 Linux 系统裁减指南(LiPS)目录目录.11 引言.41.1 编写目的.41.2 背景.41.3 定义.41.4 参考资料.42 总体描述.52.1 硬件环境.52.2 软件环境.62.3 需求规定和约束.63 总体设计.63.1 基本设计概念.63.2 软件结构.64 内核.74.1 创建内核的方法.74.2 内核配置.74.2.1 概述.74.2.2 Loadable module support.84.2.3 Processor type and features.94.2.4 General setup.94.2.5 Plug and Play configuration.10

2、4.2.6 Block devices.104.2.7 Multi-device support(RAID and LVM).114.2.8 Networking options.114.2.9 ATA/IDE/MFM/RLL support.124.2.10 SCSI support.134.2.11 Network device support.134.2.12 Character devices.144.2.13 File systems.154.2.14 Console drivers.164.2.15 USB support.164.3 提示.174.3.1 EXTRAVERSION

3、.174.3.2.config.185 根文件系统.185.1 根文件系统.181名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 45 页 -5.2 文件系统的内容.195.2.1 应用程序(applications).195.2.2 设备文件(device files).195.2.3 脚本和配置文件(scripts and configuration files).205.2.4 库文件(libraries).215.2.5 必要的目录.225.3 初始化 RAM 盘(initrd).225.3.1 操作步骤.225.3.2 引导选项.235.3.3 安装.235.3.4 改

4、变根目录设备.245.3.5 使用场合.255.3.6 淘汰的根转换机制(change_root).265.4 系统初始化(init).265.4.1 init 的任务.265.4.2 SysVinit.265.4.3 两种风格:Slackware vs.Debian.275.5 PAM.275.5.1 什么是 PAM.275.5.2 PAM 的结构.285.5.3 配置文件.285.5.4 other.285.6 再论 initrd.295.6.1 根到底在哪里.305.6.2 linuxrc.305.6.3 根转换机制:新的?旧的?.325.7 提示.345.7.1 文件系统目录层次结构.

5、345.7.2 mklips.sh(制作 LiPS 的脚本).345.7.3 lips.conf(LiPS 配置文件).345.7.4 cp dpR.345.7.5 如何判断一个程序依赖哪些文件.355.7.6 带库文件复制lcp().355.7.7 库文件的命名.366 引导.376.1 引导过程概述.376.2 几种引导方式.376.3 grub 引导器.376.4 USB 引导.386.4.1 制作步骤.386.4.1.1 创建文件系统.386.4.1.2 复制文件.396.4.1.3 安装 grub.396.5 提示.392名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共

6、45 页 -6.5.1 版本问题?.397 远程串口控制台.407.1 概述.407.2 配置方法.407.3 提示.407.4 Linux 远程串口控制台指南.408 系统安装光盘.438.1 概述.438.2 boot.iso 光盘的文件结构分析.433名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 45 页 -1 引言1.1 编写目的说明Linux 系统裁减的过程及解决的主要技术问题。本文档的编写是为了说明LiPS 的详细设计过程,也可以作为构造一个小型化Linux 系统的指南。本文档内容的组织如下所述:这一部分是引言,第2 部分是对项目软、硬件环境和需求的总体描述,第3

7、部分说明了裁减LINUX的相关基本概念。后面几个部分是具体实现方法的详细说明,46分别详细描述了创建内核、创建根文件系统和引导系统的方法。最后的内容可以看作附录,其中7 说明了一般Linux 系统安装光盘的创建方法,8 列出了相关的配置文件和源代码。1.2 背景华中科技大学计算机存储系统国家专业实验室,NAS 项目(2003.3 2003.8)。1.3 定义O boot loader:引导器O kernel:内核O root filesystem:根文件系统O USB:通用串行总线1.4 参考资料1 DIY:自己动手做一个迷你Linux 系统.IBM developerWorks 中国网站.h

8、ttp:/ Linux From Scratch.http:/clfsbook.mylab.idv.tw/index.html4名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 45 页 -3 Linux 启动过程综述.http:/ 译 版).http:/www.linux.org.tw/CLDP/gb/Bootdisk-HOWTO.html5 Using the initial RAM disk(initrd)./usr/src/linux-2.4/Documentation/initrd.txt.(译文:http:/zope.slat.org/Project/3ybaby/di

9、scuss-area/c d-boot/cdboot_refer/initrd.htm)6 Quickmouse 于 2003.1 发表于白云黄鹤BBS(http:/ Linux”。7 Filesystem Hierarchy Standard.http:/ LINUX ALLOCATED DEVICES./usr/src/linux-2.4/Documentation/device.txt.或者最新的列表在http:/www.kernel.org/pub/linux/docs/device-list/9 Karim Yaghmour.Building Embedded Linux Syste

10、ms.OReilly,April 2003.10 Alessandro Rubini.Take Command:Init.http:/www.linux.it/kerneldocs/init/,November 1998.11 深入 Linux PAM 体系结构.IBM developerWorks 中国网站.http:/www-90/ 2 总体描述2.1 硬件环境开发主机:Intel 845 芯片组主板,P4赛扬 1.8GHz CPU,256M 内存,60G IDE 硬盘,RTL8139 网卡。目标机:与主机同构。5名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 45 页 -2

11、.2 软件环境开发主机:Redhat Linux 7.3(kernel 2.4.18-3),或者 Redhat Linux 9(kernel 2.4.20-8)。可以根据需要使用其他版本的内核,比如Redhat 7.3kernel 2.4.20。目标机:LiPS,以及应用程序。2.3 需求规定和约束我们目标系统LiPS,即 Linux Powered Storage 是一个 嵌 入式 Linux 操作系统,主要着眼 于提 供各 种文件服 务,不包括X GUI;并且足够小,可以装入32M USB 盘或者DOC/DOM 等常 用设备引导。3 总体设计3.1 基本设计概念“提 起裁减 Linux”,

12、最容 易想 到的方法是以一个已经 安装 好 的系统为基础,删除掉不需要的文件,以减小整个系统的 尺寸。而事 实上这个方法几乎 是行 不 通的,因为通过光盘安装的一个Redhat 9 Linux 系统,即 便是只 选择了比 较少 的软件 包,其所 占空间 也可以 轻松达 到 300500MB,想在这个基 础上 裁减到 30MB 左右 是比 较困难 的。更困难 的是 确 定哪些 东西 是可以 删除 的?如 果删除 了系统必 须的文件,可能导致系统 不能 引导。“另一个 途径 是 从零 开始根据需要构建整 个系统。Linux From Scratch”采 用的 就是这种方式,一个个安装需要的软件包。

13、类似 的,更简单 的方法是,安装一个完整 的 Linux 系统,然后 将必要的软件(可执行程序)、配置文件、库文件、内核 等复制出 来 构建一个小系统。我们 采取 后一种方式。3.2 软件结构 LiPS 包括 3 部分:Linux 内核,根文件系统和引导器。内核(Kernel)提 供了一个操作系统的基本功能,如内存 管理、进 程调度、文件系统、6名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 45 页 -网络等,以及设备驱动程序。根文件系统(Root filesystem)是存 放运 行、维护 系统所必 须 的各种 工具软件、库文件、脚本、配置文件和其他特殊 文件(比如设备节点)

14、的 地方,也可以安装各种软件 包。通 常根文件系统位于 某个磁盘分区,而在 LiPS 中应用了initrd(初始 RAM 盘)机制,将根文件系统 放在 RAM Disk 中。引导器(Boot Loader)的任务是从引导设备装载 内核,引导系统运行。Linux 系统 常见的引导器 包括早期 的 LILO 和近期 的 GRUB。LiPS 用的是 GRUB。4 内核4.1 创建内核的方法 Linux 提供了方 便灵活 的方法 来 定制内核,主要步骤包括:下 载安装内核源代码树,配置内核,编译内核。具体方法请参考相关文档。关键 指令如下:cd/usr/src/linux-2.4make menuco

15、nfigmake dep;make clean;make bzImage编译 成功 的内核文件为arch/i386/boot/bzImage.4.2 内核配置4.2.1 概述 make menuconfig 之 后可以看到类似 如下的内容(编号 是为了描述方便而加上 的)。根据内核版本的不 同,列出的项目会有差异。而变化主要发生 在发行版为标准内核 打的 各种补丁上 面,其实标准内核是比 较稳 定的。如下所示,我们配置的内核版本为2.4.20-8“,这个-8”就是 Redhat所 打 的补丁 版本 号。补丁 一般是对标准内核 错误 的修正 和新 增的 功能。与 2.4.20 内核配置选项比较会

16、 发现,10,25,30都属 于 Redhat的补丁。一般 地,这些 补丁 选项 都不 是必 须的,因此 我们的LiPS 内核中 都没有包括这些选项。其实,完全 可以通过直接 配置一个标准的内核版本(比如2.4.20)来产生 我们所需要的内核。Linux Kernel v2.4.20-8-R2Lips Configuration1 Code maturity level options -2 Loadable module support -7名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 45 页 -3 Processor type and features -4 Genera

17、l setup -5 Memory Technology Devices(MTD)-6 Parallel port support -7 Plug and Play configuration -8 Block devices -9 Multi-device support(RAID and LVM)-10 Cryptography support(CryptoAPI)-11 Networking options -12 Telephony Support -13 ATA/IDE/MFM/RLL support -14 SCSI support -15 Fusion MPT device su

18、pport -16 I2O device support -17 Network device support -18 Amateur Radio support -19 IrDA(infrared)support -20 ISDN subsystem -21 Old CD-ROM drivers(not SCSI,not IDE)-22 Input core support -23 Character devices -24 Multimedia devices -25 Crypto Hardware support -26 File systems -27 Console drivers

19、-28 Sound -29 USB support -30 Additional device driver support -31 Bluetooth support -32 Kernel hacking -33 Library routines -Load an Alternate Configuration FileSave Configuration to an Alternate File 下面我们以2.4.20 内核为 例,来详细说明内核的配置,也就是选哪些 东西、不选哪些“东西。没有 说明的选项,比如Code maturity level options”,表示 不选。4.2.2

20、 Loadable module support*Enable loadable module support Set version information on all module symbols8名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 45 页 -*Kernel module loader可 加载模块支持。虽然 目前所选项目 全部编译 进 内核,但是内核是 支持模块 的。可以考虑将 一些硬件设备的驱 动程序编译为模块,从而 减小内核 尺寸,同 时增加适 应不同硬件平 台的 灵活性。4.2.3 Processor type and features(Pentium-

21、III/Celeron(Coppermine)Processor family*Machine Check Exception Toshiba Laptop support Dell laptop support/dev/cpu/microcode-Intel IA32 CPU microcode support/dev/cpu/*/msr-Model-specific register support/dev/cpu/*/cpuid-CPU information support(off)High Memory Support Math emulation MTRR(Memory Type

22、Range Register)support Symmetric multi-processing support Local APIC support on uniprocessors Unsynced TSC support 处理 器特性。选 择一下 Processor family,其 余 基本 上都没有 选。High Memory Support也可以 打开,不清楚有 什么用。4.2.4 General setup*Networking support*PCI support(Any)PCI access mode*ISA bus support*PCI device name dat

23、abase EISA support MCA support Support for hot-pluggable devices*System V IPC*BSD Process Accounting*Sysctl support(ELF)Kernel core(/proc/kcore)format Kernel support for a.out binaries Kernel support for ELF binaries Kernel support for MISC binaries*Power Management support9名师资料总结-精品资料欢迎下载-名师精心整理-第

24、9 页,共 45 页 -Kernel support for MISC binaries*Power Management support Advanced Power Management BIOS support*Ignore USER SUSPEND*Enable PM at boot time*Make CPU Idle calls when idle*Enable console blanking using APM*RTC stores time in GMT*Allow interrupts during APM BIOS calls*Use real mode APM BIOS

25、 call to power off总体设置。这一部分选项比较重 要,包括 网络、总线、进程、二进 制文件格式、电源管理等。其中 APM 相关的选项比较搞不清楚,有时候 halt p命令不能 关闭系统 电源跟这里 有关系。4.2.5 Plug and Play configuration Plug and Play support ISA Plug and Play support即 插即用设置。4.2.6 Block devices Normal floppy disk support XT hard disk support Compaq SMART2 support Compaq Sma

26、rt Array 5xxx support Mylex DAC960/DAC1100 PCI RAID Controller support Loopback device support Network block device support RAM disk support(4096)Default RAM disk size*Initial RAM disk(initrd)support*Per partition statistics in/proc/partitions 块设备。软 驱 也可以 不选。这里的关键 选项是 Loopback device,RAM disk 和 init

27、rd,一定要选中。Default RAM disk size多少都没有 关系。10名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 45 页 -4.2.7 Multi-device support(RAID and LVM)*Multiple devices driver support(RAID and LVM)RAID support Linear(append)mode RAID-0(striping)mode RAID-1(mirroring)mode RAID-4/RAID-5 mode Multipath I/O support Logical volume mana

28、ger(LVM)support MD 支持。软 RAID 和 LVM 的支持 在这里选 择,如 果不 使用,也可以不选。4.2.8 Networking options Packet socket*Packet socket:mmapped IO Netlink device emulation*Network packet filtering(replaces ipchains)Network packet filtering debugging*Socket Filtering Unix domain sockets*TCP/IP networking*IP:multicasting*IP

29、:advanced router IP:policy routing IP:equal cost multipath IP:use TOS value as routing key IP:verbose route monitoring IP:large routing tables*IP:kernel level autoconfiguration*IP:DHCP support*IP:BOOTP support*IP:RARP support IP:tunneling IP:GRE tunnels over IP IP:multicast routing IP:TCP Explicit C

30、ongestion Notification support IP:TCP syncookie support(disabled per default)IP:Netfilter Configuration -802.1Q VLAN Support11名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 45 页 -The IPX protocol Appletalk protocol supportAppletalk devices -DECnet Support 802.1d Ethernet BridgingQoS and/or fair queueing -Network t

31、esting -网 络选项。这里选项也比较多,如 果没有 什么 特殊 要求,又不 是 十分理 解这些选项的意义,基本 上可以用 缺省 设置。注意 DHCP 选项,如 果 要用到的 话要记得 选中这个。IP:Netfilter Configuration(跟 iptables 有关)等几个子选项 都没有 选。4.2.9 ATA/IDE/MFM/RLL support A TA/IDE/MFM/RLL supportIDE,ATA and ATAPI Block devices -Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support-Please

32、see Documentation/ide.txt for help/info on IDE drives Use old disk-only driver on primary interface Include IDE/A TA-2 DISK support*Use multi-mode by default*Auto-Geometry Resizing support Include IDE/A TAPI CDROM support Include IDE/A TAPI TAPE support Include IDE/A TAPI FLOPPY support SCSI emulati

33、on support IDE Taskfile Access-IDE chipset support/bugfixes CMD640 chipset bugfix/support RZ1000 chipset bugfix/support*Generic PCI IDE chipset support*Sharing PCI IDE interrupts support*Generic PCI bus-master DMA support Boot off-board chipsets first support Force enable legacy 2.0.X HOSTS to use D

34、MA*Use PCI DMA by default when available Enable DMA only for disks AEC62XX chipset support ALI M15x3 chipset support AMD Viper support CMD64X and CMD680 chipset support CY82C693 chipset support12名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 45 页 -Cyrix CS5530 MediaGX chipset support HPT34X chipset support HPT366/

35、368/370 chipset support*Intel PIIXn chipsets support*PIIXn Tuning support PROMISE PDC20246|62|65|67|68|69|70 support ServerWorks OSB4/CSB5 chipsets support SiS5513 chipset support SLC90E66 chipset support VIA82CXXX chipset support Other IDE chipset support IGNORE word93 V alidation BITS IDE 设备 支持。要用

36、 IDE 硬盘,当然 要选中。CDROM 选项看 情况 也可以 不要。SCSI emulation 似乎 对使用 USB 盘有影响。剩下的 很多都 是跟 IDE chipset 有关的。最 好是用 dmesg命 令找 出目标系统主板芯片组,然 后选中对应的芯片组支持,这 样相当 于安装了IDE 芯片组的 驱 动程序。如果没有 指定应 该也可以,只 是性能 可能会受 到一些影响。4.2.10 SCSI support SCSI support-SCSI support type(disk,tape,CD-ROM)SCSI disk support(40)Maximum number of SCS

37、I disks that can be loaded as modules SCSI tape support SCSI OnStream SC-x0 tape support SCSI CD-ROM support SCSI generic support-Some SCSI devices(e.g.CD jukebox)support multiple LUNs Enable extra checks in new queueing code Probe all LUNs on each SCSI device Verbose SCSI error reporting(kernel siz

38、e+=12K)SCSI logging facilitySCSI low-level drivers -SCSI支持。如 果要用到 SCSI 硬盘 等 SCSI 设备,这里 当然 要选。目前我们的目标系统其实 没有 SCSI 硬盘,但 是为了使用USB 盘,也要选中SCSI 支持。SCSI low-level drivers 子选项中是一些SCSI 卡,都不 用选。4.2.11 Network device support*Network device support13名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 45 页 -ARCnet devices -Dummy ne

39、t driver support Bonding driver support EQL(serial line load balancing)support Universal TUN/TAP device driver supportEthernet(10 or 100Mbit)-*Ethernet(10 or 100Mbit)*EISA,VLB,PCI and on board controllers EtherExpressPro/100 support(eepro100,original Becker driver RealTek RTL-8139 PCI Fast Ethernet

40、Adapter supportEthernet(1000 Mbit)-FDDI driver support PPP(point-to-point protocol)support SLIP(serial line)supportWireless LAN(non-hamradio)-Token Ring devices -Fibre Channel driver supportWan interfaces -网 络设备 支持。主要选 择网卡 类型,Ethernet(10 or 100Mbit)子选项中列出了内核可以支持 的 10/100M 以 太网卡,这里仅列出了我们选中的2 种。其他子选项都

41、没有 选。4.2.12 Character devices*Virtual terminal*Support for console on virtual terminal Standard/generic(8250/16550 and compatible UARTs)serial support*Support for console on serial port Extended dumb serial driver options Non-standard serial port support Unix98 PTY supportI2C support -Mice -Joystick

42、s -QIC-02 tape supportWatchdog Cards -AMD 768 Random Number Generator support Intel i8x0 Random Number Generator support AMD 76x native power management(Experimental)/dev/nvram support Enhanced Real Time Clock Support14名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 45 页 -Double Talk PC internal speech card support

43、 Siemens R3964 line discipline Applicom intelligent fieldbus card supportFtape,the floppy tape device driver -/dev/agpgart(AGP Support)Direct Rendering Manager(XFree86 DRI support)ACP Modem(Mwave)support 字符 设备。这里主要 就是选 择 了最 前面 4个 跟终端 和串口 有关的选项,以支持虚拟终端(远程 登录要用到),支持 标准串口,支持 串口控制台。4.2.13 File systems*Q

44、uota support Kernel automounter support Kernel automounter version 4 support(also supports v3)Reiserfs support Enable reiserfs debug mode*Stats in/proc/fs/reiserfs Ext3 journalling file system support JBD(ext3)debugging support DOS FAT fs support MSDOS fs support UMSDOS:Unix-like file system on top

45、of standard MSDOS fs VFA T(Windows-95)fs support Compressed ROM file system support*Virtual memory file system support(former shm fs)ISO 9660 CDROM file system support*Microsoft Joliet CDROM extensions Transparent decompression extension JFS filesystem support Minix fs support FreeVxFS file system s

46、upport(VERITAS VxFS(TM)compatible)NTFS file system support(read only)OS/2 HPFS file system support*/proc file system support QNX4 file system support(read only)ROM file system support Second extended fs support System V/Xenix/V7/Coherent file system support UDF file system support(read only)UFS file

47、 system support(read only)Network File Systems -15名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 45 页 -Coda file system support(advanced network fs)NFS file system support*Provide NFSv3 client support Root file system on NFS NFS server support*Provide NFSv3 server support SMB file system support(to mount Windows s

48、hares etc.)Use a default NLS NCP file system support(to mount NetWare volumes)Partition Types -Native Language Support -Default NLS Option:iso8859-1 Codepage 437(United States,Canada)Simplified Chinese charset(CP936,GB2312)Traditional Chinese charset(Big5)文件系统。这部分内容比较多,也 很重 要。首先 是 Quota,如 果 目标系统 支持

49、这个 功能,这里就要选中。然后是选择 要支持的文件系统,常用的 有Reiserfs,Ext3,FAT,ISO9660,JFS等等,可以根据情况 选择。/proc 和 ext2 一定要选中。还有 Network File Systems 子选项,可以选择是 否支持 NFS 和 SMB。Native Language Support 子选项 跟所支持 的 语言 有关,这里 没有全 部列出 来,我们选中了英语 和 简体、繁体中文 字符集。4.2.14 Console drivers*VGA text console Video mode selection support控制台 驱动。调试 的时候

50、可以 给 目标系统 接显 示器看一下,实际系统应 该可以不选。4.2.15 USB support Support for USB USB verbose debug messages-Miscellaneous USB options*Preliminary USB device filesystem Long timeout for slow-responding devices(some MGE Ellipse UPSe-USB Host Controller Drivers UHCI Alternate Driver(JE)support OHCI(Compaq,iMacs,OPTi,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁