Linux根文件系统构建实验

上传人:痛*** 文档编号:221518144 上传时间:2023-07-06 格式:PPT 页数:31 大小:150KB
返回 下载 相关 举报
Linux根文件系统构建实验_第1页
第1页 / 共31页
Linux根文件系统构建实验_第2页
第2页 / 共31页
Linux根文件系统构建实验_第3页
第3页 / 共31页
点击查看更多>>
资源描述
LinuxLinux根文件系统构建实根文件系统构建实验验博创科技 嵌入互动 2005 博创科技嵌入式Linux根文件系统构建实验Linux根文件系统介绍根文件系统的目录结构使用Busybox生成工具集根文件系统启动流程根文件系统烧写流程博创科技 嵌入互动 2005 博创科技Linux根文件系统介绍内核启动的最后步骤挂载根文件系统,包含:Init进程Shell文件系统、网络系统等等的工具集系统配置文件链接库博创科技 嵌入互动 2005 博创科技Linux根文件系统目录结构bin 必要的用户命令(二进制文件)*boot 引导加载程序使用的静态文件dev 设备文件及其他特殊文件etc 系统配置文件*home 用户主目录lib 必要的链接库,例如:C链接库、内核模块mnt 临时挂载的文件系统的挂载点“*”目录在嵌入式Linux上为可选的。博创科技 嵌入互动 2005 博创科技Linux根文件系统目录结构*opt 附加软件的安装目录proc 提供内核和进程信息的proc文件系统*root root用户主目录sbin 必要的系统管理员命令tmp 临时文件目录usr 大多数用户使用的应用程序和文件目录var 监控程序和工具程序存放的可变数据博创科技 嵌入互动 2005 博创科技Linux根文件系统目录结构/dev目录设备文件及其他特殊文件当配置内核支持设备文件系统devfs时,此目录中的设备节点由内核和驱动程序自动创建博创科技 嵌入互动 2005 博创科技Linux根文件系统目录结构/lib目录存放系统必要的动态链接库,支持系统的正常启动:ld动态链接器必要libc主C链接器进程必要libm数学进程数学函数需要用到libcrypt密码学进程多数涉及认证的应用程序需要使用完整说明参见glibc使用手册博创科技 嵌入互动 2005 博创科技Linux根文件系统目录结构/etc目录系统配置文件fstab 挂载文件系统的配置文件passwd Password文件inetd.conf Inetd守护进程的配置文件groupGroup文件init.d/rcS 缺省的 sysinit 脚本博创科技 嵌入互动 2005 博创科技使用Busybox生成工具集很小的应用程序提供完整的工具集的功能Init进程Shell文件系统、网络系统等等的工具集http:/ 嵌入互动 2005 博创科技Busybox的配置和交叉编译(1)在http:/ menuconfig博创科技 嵌入互动 2005 博创科技Busybox的配置和交叉编译(2)博创科技 嵌入互动 2005 博创科技Busybox的配置和交叉编译(3)选择Busybox的编译方式:Build OptionsBuild BusyBox as a static binary(no shared libs)缺省配置为使用链接库博创科技 嵌入互动 2005 博创科技Busybox的配置和交叉编译(3)配置交叉编译器:Build Options*Do you want to build BusyBox with a Cross Compiler?(/home/wbn/arm2410/tools/usr/local/arm/3.4.1/bin/arm-linux-)Cross Compiler prefix 安装路径:Installation Options(./_install)BusyBox installation prefix博创科技 嵌入互动 2005 博创科技Busybox的配置和交叉编译(4)配置其他工具集:Archival Utilities CoreutilsConsole UtilitiesDebian UtilitieEditorsFinding UtilitiesInit UtilitiesLogin/Password Management UtilitiesMiscellaneous UtilitiesLinux Module UtilitiesNetworking UtilitiesProcess UtilitiesShells System Logging UtilitiesLinux System Utilities博创科技 嵌入互动 2005 博创科技Busybox的配置和交叉编译(4)配置其他工具集:Init Utilities*init*Support reading an inittab file?*Support running init from within an initrd?编译后/bin/linuxrc-bin/busybox/sbin博创科技 嵌入互动 2005 博创科技Busybox的配置和交叉编译(4)配置其他工具集:Archival Utilities工具:tar、zip、unzipCoreutils常用命令:basename cat chgrp chmod date dd df echo env ln ls mkdir mknod mv pwd rm rmdir sleep sort sync wc whoami等等Editors编辑命令:vi awk sed等Finding Utilities查找命令:find grep xargs博创科技 嵌入互动 2005 博创科技Busybox的配置和交叉编译(4)配置其他工具集:Login/Password Management UtilitiesLogin:getty login passwdNetworking Utilities网络命令集:hostname ifconfig inetd netstat ping routeProcess Utilities进程命令:free ps sysctl topShellsshell工具:ash等System Logging Utilities 日志工具:syslogd klogd Linux System Utilities系统工具:dmesg fdisk getopt more mount umount博创科技 嵌入互动 2005 博创科技Busybox的配置和交叉编译(5)编译Busybox:#make dep#make#make install博创科技 嵌入互动 2005 博创科技Busybox的配置和交叉编译(6)编译生成的目录结构:/bin/linuxrc/sbin/usr/usr/bin/usr/sbin博创科技 嵌入互动 2005 博创科技构建根文件系统在$root/etc目录下,建立配置文件:init.d/rcS 缺省的 sysinit 脚本/etccat init.d/rcS#!/bin/sh/bin/mount-a/bin/mount-n-t ramfs ramfs/var/bin/mount-n-t ramfs ramfs/root/bin/mkdir/var/tmp/bin/mkdir/var/modules/bin/mkdir/var/run/bin/mkdir/var/logexec/usr/etc/rc.local博创科技 嵌入互动 2005 博创科技构建根文件系统在$root/etc目录下,建立配置文件:fstab 挂载文件系统的配置文件/etccat fstabnone /proc proc defaults 0 0none /dev/pts devpts mode=0622 0 0tmpfs /dev/shm tmpfs defaults 0 0/dev/mtdblock/1/mnt/yaffs yaffs defaults 1 1/dev/scsi/host0/bus0/target0/lun0/part1/mnt/udisk vfat noauto,codepage=936,iocharset=cp936 0 0/dev/ide/host0/bus0/target0/lun0/part1/mnt/hdap1 vfat noauto,codepage=936,iocharset=cp936 0 0/dev/ide/host0/bus0/target0/lun0/part2/mnt/hdap2 vfat noauto,codepage=936,iocharset=cp936 0 0/dev/ide/host0/bus0/target0/lun0/part3/mnt/hdap3 vfat noauto,codepage=936,iocharset=cp936 0 0/dev/ide/host0/bus0/target1/lun0/part1/mnt/hdbp1 vfat noauto,codepage=936,iocharset=cp936 0 0/dev/mmc/disc0/part1/mnt/sdcard vfat noauto,codepage=936,iocharset=cp936 0 0博创科技 嵌入互动 2005 博创科技构建根文件系统在$root/etc目录下,建立配置文件:inetd.conf services protocolsInetd守护进程的配置文件/etccat inetd.conf#ftp stream tcp nowait root /sbin/ftpd ftpdtelnet stream tcp nowait root /sbin/in.telnetd in.telnetdinetd.conf只能使用/etc/services中限定的服务inetd.conf只能使用/etc/protocols中限定的协议博创科技 嵌入互动 2005 博创科技构建根文件系统在$root/etc目录下,建立配置文件:profile:ash的配置脚本/etccat profile#/etc/profile:executed by bash(1)for login shells.HOME=/rootPS1=wPATH=$PATH:./export FRAMEBUFFER=/dev/fb/0LD_LIBRARY_PATH=/mnt/yaffs/libcd/mnt/yaffsalias ll=ls-lalias mntnfs=mount-t nfs-o nolockif -f/mnt/yaffs/.profile;thencp-a/mnt/yaffs/.profile/fiecho runing/etc/profile ok博创科技 嵌入互动 2005 博创科技构建根文件系统在$root/etc目录下,建立配置文件:/etc/passwdpassword文件 格式:account:password:UID:GID:GECOS:directory:shellaccount用户段password密码段UIDuser id段GIDgroup id段GECOS:信息段(可选)directory用户登陆目录shell login时运行的shell 示例:root:0:0:root:/:/bin/shbin:*:1:1:bin:/bin:博创科技 嵌入互动 2005 博创科技构建根文件系统在$root/etc目录下,建立配置文件:/etc/hosts静态域名解析表格式:#IP_address canonical_hostname aliases127.0.0.1 localhost.localdomain localhost192.168.0.43server.localdomainserver博创科技 嵌入互动 2005 博创科技根文件系统启动流程KERNEL起来之后,将运行第一个进程init,实际上执行的为Busybox的/sbin/initinit的工作是根据/etc/inittab脚本来进行系统的初始化格式::runlevels:action:process sysinit 指定运行的第一个程序/脚本 respawn 若该进程结束,init会再起 一个进程执行同样的命令 ctrlaltdel 指定在用户按下Ctrl-Alt-Del时执行的命令/etccat inittab:sysinit:/etc/init.d/rcS:respawn:-/bin/sh:ctrlaltdel:/bin/umount-a r博创科技 嵌入互动 2005 博创科技根文件系统启动流程init进程运行脚本:/etc/init.d/rcS,在rcS中挂载文件系统,并且执行脚本/usr/etc/rc.local在rc.local中继续设置,最后运行用户的启动运行脚本init.sh博创科技 嵌入互动 2005 博创科技根文件系统烧写流程构建基于yaffs的根文件系统下载根文件系统至yaffs文件系统挂载目录:/mnt/yaffs设定vivi的启动参数:root=/dev/mtdblock/1博创科技 嵌入互动 2005 博创科技根文件系统烧写流程vivi中,使用xmoderm协议下载load flash root xkernel启动后,使用imagewrite工具imagewrite/dev/mtd/0 root.cramfs:1216k博创科技 嵌入互动 2005 博创科技 谢谢大家!结束语结束语谢谢大家聆听!谢谢大家聆听!31
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 成人自考


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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