书签 分享 收藏 举报 版权申诉 / 42
上传文档赚钱

类型GNU-Linux编程课件-第3章.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:2688493
  • 上传时间:2022-05-18
  • 格式:PPT
  • 页数:42
  • 大小:1.12MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《GNU-Linux编程课件-第3章.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    GNU Linux 编程 课件
    资源描述:

    1、第第3章章 Linux系统的定制系统的定制内容提要内容提要磁盘管理磁盘管理引导加载程序引导加载程序 grubLinux内核定制内核定制Linux应用环境的初始化应用环境的初始化磁盘管理磁盘管理基本概念基本概念盘片盘片盘面盘面磁头磁头磁道磁道柱面柱面扇区扇区磁盘结构磁盘结构Disk Partitions整个存储设备被分成互不重叠的若干区域,即分区整个存储设备被分成互不重叠的若干区域,即分区Partition #1Partition #2Partition #3unusedMBR硬盘的第一扇区称为主引导记录(硬盘的第一扇区称为主引导记录(MBR, MASTER BOOT RECORD)MBR 的长

    2、度为的长度为512字节。字节。第一部分为引导(第一部分为引导(PRE-BOOT)区,占了)区,占了446个字节个字节第二部分为分区表(第二部分为分区表(PARTITION PABLE),共有),共有64个个字节,记录硬盘的分区信息。字节,记录硬盘的分区信息。MBR的格式的格式MBR分成三个区分成三个区:bootloader 程序程序(例如例如:grub)分区表分区表 MBR标识标识 (即即 0 x55, 0 xAA)MBR标识标识 (2 bytes)分区表分区表(64 bytes)引导加载片段引导加载片段(446 bytes) 512bytes磁盘分区磁盘分区分区的了分区的了ii型型主分区主分

    3、区扩展分区扩展分区逻辑分区逻辑分区Linux系统中的分区的命名系统中的分区的命名 在在Linux系统中,磁盘设备和分区的命名系统中,磁盘设备和分区的命名有一定的规则,有一定的规则,hd代表代表IDE硬盘,硬盘,sd代表代表SCSI硬硬盘;同类型设备从字符盘;同类型设备从字符a开始编号,开始编号,a代表第一个代表第一个硬盘,硬盘,b代表第二个硬盘,依次类推。主分区和代表第二个硬盘,依次类推。主分区和扩展分区的编号从扩展分区的编号从1到到4。扩展分区中的逻辑分区。扩展分区中的逻辑分区从编号从编号5开始,开始,实例分析实例分析磁盘格式化工具磁盘格式化工具命令命令含义含义n n创建一个分区创建一个分区

    4、d d删除一个分区删除一个分区q q退出但不保存退出但不保存w w保存退出保存退出p p显示分区信息显示分区信息m m显示帮助信息显示帮助信息t t改变分区的类型号码改变分区的类型号码格式化文件系统格式化文件系统选项选项含义含义-t-t选择文件系统类型选择文件系统类型-c-c检查设备中是否有坏块检查设备中是否有坏块-v-v详细显示模式详细显示模式-N-N说明说明i-i-节点的数量,适用于节点的数量,适用于ext2 ext2 -m-m为超级用户预留的块数,默认为超级用户预留的块数,默认5%5%。用于。用于ext2ext2-L-L说明文件系统的卷标,适用于说明文件系统的卷标,适用于ext2ext2

    5、ext2文件系统文件系统ext2是是Linux系统默认的的文件系统,支持系统默认的的文件系统,支持Unix文件系统的文件系统的特征。例如,目录、设备文件和链接文件等。从文件系统特征。例如,目录、设备文件和链接文件等。从文件系统内部数据结构的角度,可将内部数据结构的角度,可将ext2分为超级快、分为超级快、i-节点表和节点表和数据区三个部分数据区三个部分ext2文件系统文件系统超级块包含整个文件系统的布局信息和参数设置。例如,逻超级块包含整个文件系统的布局信息和参数设置。例如,逻辑块大小、辑块大小、i-节点表的区域、文件系统类型和卷标等。可节点表的区域、文件系统类型和卷标等。可使用使用dumpe

    6、2fs工具来查看文件系统的超级块信息。例如:工具来查看文件系统的超级块信息。例如:$ dumpe2fs -h /dev/sda2 # 查看分区查看分区/dev/sda2中文件系中文件系统的超级快信息统的超级快信息i-节点表节点表i-节点表定义了文件系统中所有的节点表定义了文件系统中所有的i-节点,节点,i-节点用于存放文节点用于存放文件的管理信息。例如,文件类型、权限、大小、数据在数件的管理信息。例如,文件类型、权限、大小、数据在数据区的分布信息等,但据区的分布信息等,但i-节点中不包含文件名,文件名及节点中不包含文件名,文件名及其对应的其对应的i-节点号以目录项的形式保存在目录文件中。节点号

    7、以目录项的形式保存在目录文件中。ext2文件系统文件系统数据区数据区数据区存放文件的内容,其基本单位为逻辑块。一个文件包数据区存放文件的内容,其基本单位为逻辑块。一个文件包含若干个逻辑块,这些逻辑块以编号的形式存放于文件所含若干个逻辑块,这些逻辑块以编号的形式存放于文件所对应的对应的i-节点中,在读写文件时,根据读写指针的位置,节点中,在读写文件时,根据读写指针的位置,可计算出当前数据所在的逻辑块。可计算出当前数据所在的逻辑块。ext2文件系统的结构文件系统的结构ext2文件系统文件系统图图3-3是是ext2文件系统的实例,图中,文件文件系统的实例,图中,文件demo.c在在i-节点节点表中的

    8、编号为表中的编号为102609,该,该i-节点中存放了节点中存放了demo.c文件的文件的属性,其中,块号为属性,其中,块号为208的数据块中存放了该文件的内容。的数据块中存放了该文件的内容。使用使用ls -il命令显示命令显示demo.c相关信息。相关信息。$ ls -il demo.c102609 -rw-r-r- 1 shangs student 150 Jul 20 2011 demo.c文件系统的挂载文件系统的挂载选项选项含义含义-t-t指定文件系统类型指定文件系统类型-w-w安装有读安装有读/ /写权限的文件系统写权限的文件系统-r-r安装只读文件系统安装只读文件系统-a-a安装安

    9、装/etc/etc/fstabfstab中定义的文件系统中定义的文件系统mount命令命令显示当前文件系统的挂载状况显示当前文件系统的挂载状况$ mount/dev/sda2 on / type ext3 (rw)none on /proc type proc (rw)/dev/sda1 on /boot type ext2 (rw)none on /dev/pts type devpts (rw,gid=5,mode=620)/dev/sda5 on /home type ext3 (rw)none on /dev/shm type tmpfs (rw)mount命令命令将将usb 挂载至目

    10、录挂载至目录/mnt/usb$ mount /dev/sdb1 /mnt/usb 在挂载在挂载usb设备时,应先通过命令设备时,应先通过命令fdisk l查看当前查看当前USB设备对应的设备名。设备对应的设备名。 将第将第1个个SCSI磁盘扩展分区第磁盘扩展分区第2个逻辑分区个逻辑分区(第第6个分区)挂个分区)挂载至载至/mnt目录目录$ mount /dev/sda6 /mntmount命令命令将光盘挂载至目录将光盘挂载至目录/mnt/cdrom$ mount -t iso9660 /dev/cdrom /mnt/cdrom/$ mount /dev/cdrom /mnt/cdrom在不指定

    11、文件系统类型的情况下,系统将自动匹配内核所支在不指定文件系统类型的情况下,系统将自动匹配内核所支持的文件系统类型,若找到匹配的文件系统类型,则成功持的文件系统类型,若找到匹配的文件系统类型,则成功挂载,否则,失败。挂载,否则,失败。mount命令命令在实际操作中,直接挂载一个在实际操作中,直接挂载一个windows分区,中文的文件名分区,中文的文件名和目录名会出现乱码,为了避免这种情况,可指定字符集。和目录名会出现乱码,为了避免这种情况,可指定字符集。挂载挂载fat32 的分区的分区 :$ mount -t vfat o iocharset=cp936 /dev/hda6 /mnt/d # c

    12、p936代表简体中文代表简体中文挂载挂载ntfs的分区的分区 $ mount -t ntfs -o iocharset=cp936 /dev/hda2 /mnt/c # cp936为简体中文,为简体中文,cp950为繁体中文为繁体中文umount命令命令umount命令命令语法语法umount 功能功能断开设备与挂载点目录的链接断开设备与挂载点目录的链接umount命令命令实例分析实例分析$ umount /dev/cdrom # 卸载光盘卸载光盘$ umount /mnt/cdrom # 卸载光盘,若卸载光盘,若/mnt/cdrom为光盘的挂载点为光盘的挂载点$ umount /dev/fl

    13、oppy # 卸载软盘卸载软盘$ umount /dev/usb /卸载卸载usb盘盘在卸载某文件系统前,如果有用户正在使用该文件系统,则在卸载某文件系统前,如果有用户正在使用该文件系统,则必须等所有用户结束了对该文件系统的访问后,该文件系必须等所有用户结束了对该文件系统的访问后,该文件系统才能被成功卸载。卸载后用统才能被成功卸载。卸载后用df查看。查看。引导加载程序引导加载程序 grub引导加载引导加载(boot loader)引导程序引导程序 引导程序是计算机加电后首先执行的代码片段,它是进一引导程序是计算机加电后首先执行的代码片段,它是进一步运行后续代码的基础。步运行后续代码的基础。加载

    14、程序加载程序 加载程序是将操作系统内核搬运至内存适当位置并将控制加载程序是将操作系统内核搬运至内存适当位置并将控制权移交的的程序片段。权移交的的程序片段。引导加载程序引导加载程序 引导加载程序往往作为一个整体,完成引导和加载的一系引导加载程序往往作为一个整体,完成引导和加载的一系列过程。列过程。grub grub(Grand Unified Bootloader)是桌面是桌面Linux发行发行版中常用的引导加载程序,它是一个基于版中常用的引导加载程序,它是一个基于GNU项目的自项目的自由软件,可用于引导多种操作系统。例如,由软件,可用于引导多种操作系统。例如,Linux 、freebsd和和w

    15、indows等。它提供基于命令行的操作接口,等。它提供基于命令行的操作接口,用户可通过命令与用户可通过命令与grub进行交互。同时,进行交互。同时,grub也提供了也提供了启动配置文件,用户可根据需要对配置文件进行修改,启动配置文件,用户可根据需要对配置文件进行修改,grub在启动时,将根据配置文件的要求,完成对操作系在启动时,将根据配置文件的要求,完成对操作系统的加载。统的加载。GRUB的术语GRUBGRUB下的设备名称下的设备名称指定硬盘分区的形式指定硬盘分区的形式 :( (hdX,YhdX,Y) )指定整个硬盘的形式指定整个硬盘的形式 :( (hdXhdX) )GRUBGRUB下的文件名

    16、下的文件名( (hdX,YhdX,Y)/path/to/file)/path/to/file( (fdXfdX)/path/to/file)/path/to/file安装安装grub在磁盘上可同时装有多个操作系统,例如,在磁盘上可同时装有多个操作系统,例如,Linux系统和系统和Windows系统,但不同的安装次序会影响系统的正常启系统,但不同的安装次序会影响系统的正常启动。例如,先安装动。例如,先安装Linux后,若需在其他分区安装后,若需在其他分区安装windows系统,必须至少留有一个主分区,在安装完系统,必须至少留有一个主分区,在安装完windows系统后,会发现系统后,会发现Linu

    17、x系统无法正常启动,其主系统无法正常启动,其主要原因是要原因是Windows修改了原先由修改了原先由Linux系统安装的系统安装的grub MBR,windows的主引导记录不具有引导多操作系统的的主引导记录不具有引导多操作系统的能力,因此,必须进行恢复。能力,因此,必须进行恢复。 安装安装grub重新安装重新安装grub MBR,假设,假设stage1和和stage2已存放在硬盘第已存放在硬盘第二个分区的二个分区的/grub目录中。目录中。root test root # grubgrub root (hd0,1) # 挂载第一个硬盘的第二个分区挂载第一个硬盘的第二个分区grub setup

    18、 (hd0) # 安装安装grub的的MBRgrub quit GRUB引导配置 /etc/grub.conf 或者是或者是 /boot/grub/menu.lst 内核安装过程已经在内核安装过程已经在GRUB启动引导器的配置文件启动引导器的配置文件 “grub.conf”中对新内核的引导进行了适当的配中对新内核的引导进行了适当的配置:置:title Red Hat Linux (2.4.20-8custom) root (hd0,0) kernel /boot/vmlinuz-2.4.20-8custom ro root=LABEL=/ initrd /boot/initrd-2.4.20-

    19、8custom.img# reboot重新启重新启动系统,并选择动系统,并选择新内核进行引导。新内核进行引导。使用新内核启动图形登录图形登录系统登录系统登录Linux系统启动流程grub的启动过程的启动过程Linux内核定制内核定制定制定制Linux内核的过程内核的过程1, 从从http:/www.kernel.org上下载上下载Linux-2.6.10.tar.gz2. 解压缩解压缩linux-2.6.10.tar.gz$ tar zxvf linux-2.6.10.tar.gz3. 配置配置Linux内核,根据需要,选择所需模块内核,根据需要,选择所需模块$ make menuconfig

    20、 # 配置配置Linux内核内核4. 编译内核映像编译内核映像$ make bzImage 5. 编译模块编译模块$ make modules6. 安装内核模块安装内核模块$ make modules_install7. 安装内核安装内核$ make install配置配置Linux内核内核Linux应用环境的初始化应用环境的初始化init进程进程 Linux内核在完成初始化后,创建内核在完成初始化后,创建init进程进程,其进程号为其进程号为1,它建立整个应用环境的起点,它建立整个应用环境的起点,init进程通过读取配置文件进程通过读取配置文件/etc/inittab,决定,决定以何种方式启

    21、动以何种方式启动Linux系统,系统,inittab是一个不是一个不可执行的文本文件,它有若干行指令所组成。可执行的文本文件,它有若干行指令所组成。inittab 的语法结构的语法结构语法语法label:runlevels:action:process语义语义(1) label label用来标识输入的值。一些系统只支持用来标识输入的值。一些系统只支持2个字符的标签。个字符的标签。.(2) runlevels 定义了进行何种处理,系统共定义了定义了进行何种处理,系统共定义了7种运行级别,每种运行级别对应种运行级别,每种运行级别对应一组命令集合,定义哪些命令运行,下面给出系统定义的一组命令集合,定义哪些命令运行,下面给出系统定义的7种运行级种运行级别。别。(3) action描述了所要采取的动作。描述了所要采取的动作。(4) process定义了具体的执行程序。定义了具体的执行程序。inittab 的语法结构的语法结构

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:GNU-Linux编程课件-第3章.ppt
    链接地址:https://www.163wenku.com/p-2688493.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库