Linux复习资料整理(jxust)
- 格式:doc
- 大小:235.00 KB
- 文档页数:13
1《LINUX系统及其编程》复习大纲21.Linux系统的类型、结构(内核、shell用户界面的作用)32.安装Linux时需要收集哪些信息?43.Linux磁盘分区(分区方式、分区工具、分区类型、分区参数)54.交换分区的作用65.Linux分区与目录的关系76.用户帐号的设置8习题1-8、1-9、1-12、1-13、1-1597.Linux终端及其工作方式(Linux终端的选择方法及其字符命令行方10式与图形操作界面的转换方法)8.什么是shell?shell命令解释器的作用11129.shell提示符1310.Linux系统中的文件类型(主要文件类型的标识)11.Linux的文件目录结构(系统目录:/usr、/home、/dev、/bin、1415/etc,/var的作用,用户主目录:/home/用户名~,“.”、“..”目录)1612.通配符(*、?[、]、-)转义字符(\)的使用方法1713.目录和文件的基本操作18(cat、more、less、cp -r 、rm -r、mv、mkdir、rmdir、cd、pwd、ls -al)1914.链接类型及其不同链接类型之间的区别,链接的作用。
习题 2-1~2-5、2-8~2-15、2-17、2-22202117.vi编辑器(三种基本工作模式及其转换、保存文件和退出vi的方法)22习题 3-1、3-2、3-32318. X Window系统(组成部分及其每部分的作用)2419.Linux系统两种主要的桌面系统环境是什么2520.桌面系统与X Window和窗口管理器的关系26习题4-1、4-2、4-3、4-7~4-102721.挂载一个存储设备(需要的信息,挂载卸载命令以及使用注意事项) 2822.Linux所支持的文件系统类型2923.Linux系统中存储设备的名称3024. 虚拟文件系统(VFS)的作用3125.自动挂载及其配置文件配置文件/etc/fstab32习题 6-2、6-3、6-4、6-5、6-8、6-93326.配置网络接口设备的几种方法3427. 常用的网络服务管理工具3519.常用网络服务的作用及其启动和关闭的方法3620.Linux帐号的分类(UID和GID)3721.用户帐号信息的配置文件/etc/passwd及其内容3822.在Linux系统中如何保存用户口令信息3923.基本用户管理命令(adduser、passwd、userdel、usermod、su)4024.文件权限管理命令(chown、chmod)4125.Linux系统进程的类型4226.Linux系统启动进程的方式4327.Linux系统进程管理命令(at、batch)44习题 9-1、9-2、9-3、9-8、9-11、9-12、9-13、9-164528.什么是shell程序?说明shell程序的一般格式。
一、选择题:(本题共小题,每题1分,共20分)1.Linux的创始人是谁?()A、TurbolinuxB、AT&T Bell LaboratryC、University of HelsinkiD、Linus Torvalds2.在Linux中,命令解释器是哪个?()A、管道B、分级文件系统C、字符型处理器D、shell3.Linux安装程序提供了两个引导装载程序( )A、GROUP和LLTOB、DIR和COIDC、GRUB和LILOD、以上都不是4.如果当前目录是/home/sea/china,那么“china”的父目录是哪个目录?()A、/home/seaB、/home/C、/D、/sea5. Linux的根分区系统类型是()。
A. FAT16B.FAT32C. ext3D. NTFS6. 下列()不是Linux的特点。
A. 多任务B. 单用户C. 设备独立性D. 开放性7. 可以删除文件或目录的命令是()。
A. mkdirB. rmdirC. mvD. rm二、填空题(本题共,每空0.5分,共20分)1. GUN的含义是()。
2. 安装Linux最少需要两个分区,分别是()和()。
3. Linux默认的系统管理员账号是()。
4. 用于复制文件或目录的命令是()。
5. tar命令的功能是()。
6. 设定账号密码的命令是()。
7. 如果当前目录为/home,进入目录/home/stud1/test的命令是( )。
8.Linux中用()表示第一块网卡。
9.指令#ifconfig eth0 193.168.1.10 Mask 255.255.255.0 的功能为()和()。
10.ip地址127.0.0.1表示()的地址。
11.netstat命令的功能是()。
12.删除用户使用()命令。
三、简答题(每题4分,共20分)1. 简述linux系统的主要特点及发展优势。
2. 简述RedHat Linux系统磁盘命名规则。
linux考试知识点总结Linux操作系统是一种开源的操作系统,广泛应用于服务器、嵌入式设备和智能手机等领域。
由于其稳定性、安全性和灵活性,越来越多的企业和个人选择使用Linux系统。
而对于一名Linux系统管理员或者开发人员来说,掌握Linux系统的相关知识是非常重要的。
为了帮助大家更好地备战Linux考试,本文将对Linux考试的知识点进行总结和整理。
一、Linux基础知识1. Linux概述Linux是一种开源的类Unix操作系统,最初由芬兰计算机科学家Linus Torvalds在1991年创建。
Linux操作系统基于Unix操作系统,其内核是由C语言编写的,并被授权为GNU通用公共许可证下的自由软件。
Linux系统具有很高的稳定性、安全性和灵活性,广泛应用于服务器、嵌入式设备和智能手机等领域。
Linux系统的发展离不开全球开源社区的贡献,目前已经发展成为一个庞大、强大的操作系统。
2. Linux文件系统Linux文件系统是Linux系统中用于管理文件和目录的一种系统。
Linux文件系统有多种不同的类型,其中包括ext3、ext4、XFS、btrfs等。
每种文件系统都有各自的特性和适用场景,可以根据实际情况在不同的文件系统之间进行选择。
3. Linux命令行操作在Linux系统中,命令行操作是非常重要的一部分。
通过命令行操作,可以方便地对系统进行管理和操作。
常用的Linux命令包括ls、cd、pwd、cp、mv、rm、mkdir、rmdir、touch、cat、more、less、head、tail、chown、chmod、grep等等。
4. 用户和用户组管理在Linux系统中,用户和用户组是非常重要的概念。
每个用户都有自己的用户名和密码,同时还可以属于一个或多个用户组。
通过用户和用户组管理,可以对系统资源进行灵活的分配和管理。
5. 文件和目录权限管理在Linux系统中,每个文件和目录都有自己的权限。
test.sh
–
是
所以“
表示真。
试。
可写,
看,
所以返回真。
引用变量“
是一个特殊变量,
邻的前驱命令的返回值。
例1:根据用户输入的目录名称判断该目录是否存在,如果存在则进入该目录,否则测试同名文件是否存在,如果存在,则退出shell程序,否则新建同名目录,并进入该目录。
在Linux系统下,提供了数学函数库,其中静态库文件为
功能描述:显示文件系统的空间大小.
功能描述:显示文件使用的空间大小
$ du - sm / collect
127 / collect
总空间为127MB,不加s显示此目录下每个文件的大小。
查看系统的逻辑分区:fdisk -l(root权限下,若不能执行可尝试执行:/dev/hda5上创建ext2文件系统。
mkfs ext2 /dev/hda5 文件系统建立后,需对其挂载到系统中才可以访问,挂载方式有mount命令进行手工挂载
fstab文件自动挂载。
《AIX/Linux操作系统》复习第1章绪论1.了解计算机4项基本功能2.掌握操作系统的基本功能(1)为用户和应用程序之间提供一个控制底层硬件功能的接口;(2)给用户和应用程序分配硬件资源;(3)按用户要求加载和执行应用程序。
3.掌握操作系统的分层结构及各层的基本功能第2章Unix操作系统1、了解UNIX发展历史(考点)•1964年,贝尔实验室、MIT和GE 共同参与研发MULTICS(MULTiplexed Information and Computing Service)多路信息与计算系统(第二代分时系统)•1974年6月,UNIX V5——第一个高级语言操作系统•1979年1月,发布了UNIX V7 (UNIX Time-Sharing System, Seventh Edition)——第一个商业版本•1983年1月,AT&T发布UNIX System V2、掌握UNIX两大派系(考点)•AT & T UNIX System V–版本:UNIX 1-7,System Ⅱ, Ⅲ, Ⅳ, Ⅴ–UNIX System V Release 4.2 (SVR4.2)–现今的AIX 、SCO UNIX等•Berkeley UNIX (BSD)–计算机系统研究小组(CSRG)的BSD UNIX(Berkeley Software Distributions)–较有影响的版本4.3BSD–现今的FreeBSD、Solaris等–工作站上的UNIX一般属于这一派系3、了解AIX基本知识(考点)(1)AIX (Advanced Interactive eXecutive),高级交互式执行系统(2)AIX系统的用户界面,CDE,通用桌面环境(COMMON DESKTOP ENVIRONMENT)(3)AIX的几个重要技术SMIT-SYSTEM MANAGEMENT INTERFACE TOOL系统管理界面工具LVM-LOGICAL VOLUME MANAGER逻辑卷管理器:应用与硬件之间进行管理的软件层次。
LINUX复习资料填空题:1、Linux内核主要是由进程调度、内存管理、虚拟文件系统、网络接口和进程间通信组成2、Linux系统定义了五种状态进程状态:就绪状态、可中断等待状态、不可中断等待状态、停止状态、中止状态RT-Linux中的德实时任务在运行过程当中总是处于以下三种状态之一:等待状态是指正在执行某些事件而无法等到执行,放弃CPU而处于暂停状态;就绪状态也是因为有更高优先级的任务正在使用CPU而不能投入运行,任务处于等待CPU 的状态,处于就绪队列中;运行状态是任务正在CPU上运行。
3、从Linux的调度来看,支持非实时(普通)和实时两种进程4、考虑到中断处理的效率,Linux的中断处理程序分为两个部分:上半部(top half)和下半部(bottom half)5、由外部设备引发的中断叫外部中断,处理器响应中断请求而执行的程序模块叫中断服务例程6、交换机制:将不用或暂不用的页框中的页移出,装上新的页面7、linux三级分页结构:页目录、中间页目录、页表8、进程的通信与同步机制有管道、信号、消息队列、共享内存和信号量集等9、Linux的管道有:匿名管道和命名管道10、从信号的可靠性方面,信号可以分为:可靠信号和不可靠信号11、linux设备驱动注册的基本参数有设备名称,设备驱动的数据结构、设备号和次设备号12、lsmod把现在kernel中已经安装的modules列出来;insmod把某个module安装到 kernel13、嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
14、嵌入式系统的组成部分是嵌入式系统硬件平台、嵌入式操作系统和嵌入式系统应用。
其中,嵌入式系统硬件平台为各种嵌入式器件、设备(如ARM、PowerPC、Xscale、MIPS等)16、嵌入式操作系统是指在嵌入式硬件平台上运行的操作系统,目前主流的嵌入式操作系统有嵌入式Linux、μCLinux、WinCE、μC/OS-Ⅱ、VxWorks等17、RTOS有QNX,pSOS,vxworks,RT-Linux等18、Linux用户进程:进程控制块、系统堆栈、用户堆栈、程序代码及数据段组成;Linux可以管理512个进程,进程调度的police域有:SCHED_OTHER; SCHED_FIFO; SCHED_RR Linux的进程控制相关的系统调用函数有:fork,exit,vfork,wait,execve等19、Linux 虚拟文件系统维护描述整个虚拟文件系统以及实际已挂装的文件系统的数据结构20、嵌入式Linux系统中常见的文件系统有:yaffs, jsffs, cramfs等21、文件系统的安装必须调用mount命令,把其他子系统安装到已经存在于文件系统的空闲节点上。
LINUX 考试知识点总结一.填空题1. 文件权限二. 简答题1.linux 的特点 与 Windows 的区别特点:①•真正的多用户多任务操作系统② •良好的兼容性,开发功能强③ .可移植性强④ .高度稳定性⑤ .丰富的图形用户界面区别:①•多用户方面:同一时刻不同的用户访问② .GUI (图形用户界面)方面Linux 与内核相互独立Windows 与内核结合③ •共享资源的相互访问— rwxrwx rwx 类型 user group other d rwx rwx rwx 文件 文件夹2. 文件编辑器的基本操作 w 保存 q 退出 q !强制退出3. 文件链接命令 软链接: ln -s目标 硬链接: ln4. 创建文件 /文件夹 touchmkdir5. 文件不同对比命令diff6. 显示文本cat less more7. 删除命令 rm rm -f 强制删除rm -r 递归删除8. 移动文件 /重命名 mv 文件名目标目录 mv 文件名 新文件名 9. 复制命令#cp -a#cp -r 目录 目标目录 #cp 文件名 新文件名 链接名rmdir 删除非空文件夹 rmdir -r 递归删除非空文件夹 移动重命名保留文件权限复制复制目录 重命名④•配置文件Win dows在注册表Linux 由指定的存放位置女口:/etc /dev2. 查找命令归总find 命令不根据数据库查找,速度慢,默认区分大小写在指定的目录开始,递归的搜索各个子目录,查询满足条件的文件并对应采取相关操作Slocate 命令slocate本身具有一个数据库,里面存放了系统中文件与目录的相关信息。
语法:slocate [-u][--help][--version][-d < 目录>][查找的文件]使用一u选项更新数据库数据whereiswhereis指令会在特定目录中查找符合条件的文件。
这些文件的烈性应属于原始代码,二进制文件,或是帮助文件语法:whereis [-bfmsu][-B < 目录>...][-M < 目录〉...][-S < 目录>...][文件…]whichwhich指令会在环境变量$PATH设置的目录里查找符合条件的文件。
Linux复习总结汇总第一章概述3、Linux系统由哪些部分组成?Linux内核处于什么位置?答:(1)符合POSIX标准的操作系统内核、Shell和外围工具。
(2)C语言编译器和其他开发工具及函数库。
(3)X Window窗口系统。
(4)各种应用软件,包括字处理软件、图象处理软件等。
Linux内核是所有Linux 发布版本的核心。
第二章内存寻址2、在保护模式下,MMU如何把一个虚地址转换为物理地址?答:分段机制把一个虚拟地址转换为线性地址;接着,分页机制把一个线性地址转换为物理地址。
5.为什么在设计两级页表的线性地址结构时,给页目录和页表各分配10位?如果不是这样,举例说明会产生什么样的结果?答:所谓两级页表就是对页表再进行分页。
第一级称为页目录,其中存放的是关于页表的信息。
4MB的页表再次分页(4MB/4K)可以分为1K个页,同样对每个页的描述需要4个字节,于是可以算出页目录最多占用4KB个字节,正好是一个页,其示意图如2.9所示。
页目录共有1K个表项,于是,线性地址的最高10位(即22位~ 31位)用来产生第一级的索引。
两级表结构的第二级称为页表,每个页表也刚好存放在一个4K字节的页中,包含1K 个字节的表项。
第二级页表由线性地址的中间10位(即21位~ 12位)进行索引,最低12位表示页内偏量。
举例:如果页目录占用31~24位,页表项占用23~12位,偏移地址占11~0位,则有2^8个页表项,一个页面有2^12(4k)个表项,每个表项大小为4字节,2^12的范围为4页面,而不是以一个页面为准。
6、深入理解图2.12,并结合图叙述线性地址到物理地址的转换。
答:第一步,用32位线性地址的最高10位第31~22位作为页目录项的索引,将它乘以4,与CR3中的页目录的起始地址相加,获得相应目录项在内存的地址。
第二步,从这个地址开始读取32位页目录项,取出其高20位,再给低12位补0,形成的32位就是页表在内存的起始地址。
第1章Linux系统简介及安装1.内核版本是由Linux内核社区统一进行发布的,次版本号为奇数是开发版本,次版本号为偶数是稳定版本。
2.Red Hat Linux已停止开发,最高版本为9.0。
现在分为Red Hat Linux企业版简称RHEL和Fedora Core社区版3.IDE硬盘设备使用hda、hdb等设备文件名表示主分区使用hda1、hda4、hdb1等设备文件名表示扩展分区用于容纳(建立)逻辑分区,逻辑分区使用hda5、hda6等设备文件名表示sd代表SCSI硬盘设备或者USB接口设备4.EXT2和EXT3都是Linux操作系统默认使用的文件系统类型5.RHEL4支持从光盘和USB存储设备引导安装程序。
从光盘读取软件包进行安装是RHEL4提供的缺省安装方式,安装程序可读取硬盘中保存的安装光盘镜像文件(ISO文件)进行安装。
安装程序可从NFS、FTP和HTTP网络服务器中读取文件进行安装第2章常用命令及帐户管理1.获得命令帮助的方法: help pwd touch --help man ls info ls2.目录操作命令: ls pwd cd mkdir rmdir3.文件操作命令: file touch cp rm mv find locate whereis mkisofs4.文本文件查看命令: cat more less head tail5.光盘的基本使用: 光盘驱动器设备文件/dev/cdrom挂载光盘使用mount命令# mount -t iso9660 /dev/cdrom /media/cdrom光盘内容的读取,使用命令访问光盘挂载点目录# ls /media/cdrom/卸载光盘使用umount命令# umount /dev/cdrom6. 弹出光盘驱动器托盘# eject收回光盘驱动器托盘# eject -t7. 使用cp命令制作光盘镜像文件: # cp /dev/cdrom mydatacd.iso8.使用mount命令挂载光盘镜像文件, # mount -o loop -t iso9660 mydatacd.iso /media/cdrom/ 9. U盘的使用方法: /dev/sda /dev/sdb # fdisk –l使用mount命令挂载U盘, # mount -t vfat /dev/sda1 /mnt/通过挂载点目录访问U盘的内容# ls /mnt使用umount命令卸载U盘# umount /mnt10. 建立用户帐号# adduser st0111.设置用户口令# passwd st0112. 设置用户帐号属性,锁定用户帐号禁止登录# usermod -L st0113.删除用户帐号# userdel -r st01 同时删除配置文件14. 用户帐号信息保存在passwd文件中/etc/passwd用户的加密口令保存在shadow文件中/etc/shadow用户的宿主目录是home目录中与用户名称相同的目录/home/teacher,用户的初始配置文件来在skel目录(配置模版)/etc/skel15.添加用户组# groupadd class1在建立用户时指定用户组# adduser -g class1 st03更改用户的组帐号# usermod -g class1 st01删除用户组# groupdel class116.更改文件对于某类用户的操作权限chmod [ugoa...][[+-=][rwx] FILE...查看文件权限$ ls -l afile-rw-rw-r-- 1 st01 class1 0 Apr 3 16:52 afile增加文件属主st01的执行权限(x)$ chmod u+x afile去除文件属组class1的写权限(w)$ chmod g-w afile设置其他用户的文件权限为可执行$ chmod o=x afile17. chown命令用于设置文件的属主和属组chown OWNER[:[GROUP]] FILE...设置文件afile的属主为用户st01# chown st01 afile设置文件afile的属组为用户组class1# chown :class1 afile设置文件afile的属主为st03,并设置文件的属组为class2# chown st03:class2 afile第3章文本编辑器1.vi编辑器中有三种状态模式:命令模式,输入模式,末行模式2.打开新的文件到vi编辑器中:e filename3.打开新的文件到vi编辑器中,并放弃对当前文件的修改:e! filename4.读取文件内容到当前vi编辑器中:r filename5.保存对vi编辑器中已打开文件的修改:w6.另存为文件将vi编辑器中的内容另存为指定文件名:w myfile7.未修改退出:q8.保存并退出:qw9.不保存退出:q!10.h向左移动光标l向右移动光标k向上移动光标j向下移动光标11.^将光标快速跳转到本行的行首字符$将光标快速跳转到本行的行尾字符12.:set nu在编辑器中显示行号13.:set nonu取消编辑器中的行号显示14.1G跳转到文件的首行15.G跳转到文件的末尾行16.#G跳转到文件中的第#行17.进入输入模式i a A o O cw c$ c^18.删除操作:x,dd,dw,de,d$,d^,J19.撤销操作:u20.u命令撤销的操作进行恢复:Ctrl + r21.复制与粘贴:yy22.粘贴:p23.字符串查找: /word从上而下在文件中查找字符串“word”?word从下而上在文件中查找字符串“word”24.字符串替换操作:s/old/new将当前行中查找到的第一个字符“old”串替换为“new”:s/old/new/g将当前行中查找到的所有字符串“old”替换为“new”:#,#s/old/new/g在行号“#,#”范围内替换所有的字符串“old”为“new”:%s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”:s/old/new/c在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认第4章Shell的使用1.文件Shells中保存了Linux系统中可使用的Shell程序列表/etc/shells2.改变用户的当前Shell [teacher@localhost ~]$ bsh3.用户使用的登录Shell保存在passwd文件的记录中/etc/passwd4.查看环境变量set5.常用环境变量USER UID SHELL HOME PWD PA TH PS1 PS26.环境变量配置文件/etc/bashrc /etc/profile ~/.bash_profile ~/.bashrc7.自定义变量的设置$ DAY=sunday8.自定义变量的查看与引用$ echo $DAY9.自定义变量的输出$ export DAY10.自定义变量的清除$ unset DAY11.历史命令的查看$ history12.用户命令历史保存文件~/.bash_history13.命令历史的清除$ history –c14.命令别名的显示$ alias15.命令别名的定义$ alias grep='grep -i'16.命令别名的取消$ unalias -a17.系统别名定义文件RHEL4系统中为用户预定义的命令别名保存在“/etc/profile.d/”目录的配置文件中18.将标准输出重定向到文件$ ls /etc/ > etcdir19.将标准输出重定向追加到文件$ ls /etc/sysconfig/ >> etcdir20.将错误输出重定向到文件$ nocmd 2> errfile21.将标准输出和错误输出重定向到文件$ ls afile bfile &> errfile22. Shell脚本的概念: Shell脚本程序是Shell命令语句的集合,用于实现特定的功能;Shell脚本程序保存在文本文件中,可以使用文本处理程序进行阅读和编辑;Shell脚本程序是由Shell环境解释执行的,不需要在执行前进行编译;执行Shell程序时,Shell脚本文件需要具有可执行(x)的属性23使用文本编辑器(vi)建立Shell脚本文件脚本中应包括的内容脚本运行环境设置#!/bin/bash注释行以#开始# Clean command history,清除用户命令历史脚本语句history -c设置脚本文件为可执行24. 设置脚本文件为可执行运行脚本程序使用Shell命令程序执行脚本程序$ bash hello.sh 使用“.”命令执行脚本程序$ . hello.sh 直接执行具有执行属性的脚本程序$ ./hello.sh第5章Linux应用程序安装与管理1. rpm -qa查询Linux系统中的所有软件包rpm -q 包名称查询指定名称的软件包是否安装rpm -qi包名称查询指定名称软件包的详细信息rpm -ql包名称查询指定名称软件包中所包括的文件列表rpm -qf文件名称查询指定文件所属的软件包rpm -qpi包文件名查询指定RPM包文件的详细信息rpm -qpl包文件名查询指定RPM包中包含的文件列表2.RPM安装命令rpm -ivh vim-common-6.3.035-3.i386.rpmrpm –Uvh vim-common-6.3.035-3.i386.rpm3. RPM包卸载rpm -e vim-enhanced4.RPM包升级rpm -U vim-enhanced-6.3.035-3.i386.rpm5. 源代码安装的一般步骤确认当前系统中具备软件编译的环境$ rpm -qa | grep gcc获得应用程序的源代码软件包文件解压缩源代码软件包文件tar jxf prozilla-2.0.4.tar.bz2进行编译前的配置工作./configure进行程序源代码的编译make将编译完成的应用程序安装到系统中make install第6章Linux系统管理1. 显示运行级别# runlevel2.关机操作# init 03.重新启动操作# init 64.显示全部服务的启动状态# chkconfig --list5.显示指定服务的启动状态# chkconfig --list syslog6. 设置独立服务的启动状态实例:设置syslog服务在运行级别2和4中不启动# chkconfig --level 24 syslog off7.设置非独立服务的启动状态实例:设置rsync服务在xinetd服务中有效# chkconfig rsync on8.系统脚本rc.sysinit,rc.local9. 查看进程命令:p s ,top pstree10. 后台启动需要在命令尾加入“&”# cp /dev/cdrom mycd.iso &11. 把当前终端中运行的进程调入后台使用“Ctrl+z”组合键12.查看后台的进程$ jobs13.将后台的进程恢复到前台运行$ fg 114. 终止正在执行的命令“Ctrl + c”15. 使用kill命令终止进程kill -9 250116. cron服务的启动与停止查询crond服务状态# service crond status停止crond服务# s ervice crond stop启动crond服务# service crond start重新启动crond服务# service crond restart查看crond服务的开机启动状态# chkconfig --list crond17.查看用户的cron任务# crontab -l编辑用户的cron任务编辑并覆盖原有的cron任务# crontab调用文本编辑器对cron任务进行编辑# crontab -e删除用户现有的cron任务# crontab –r18. 保存cron任务的文件所有用户的cron任务(使用crontab命令创建的任务)都被保存在目录“/var/spool/cron/”中的文件中19. cron的配置文件和目录系统任务配置文件:“/etc/crontab”任务脚本目录在“/etc”目录中有名为cron.hourly 、cron.daily 、cron.weekly 和cron.monthly20. 日志文件的位置:/var/log/21. 日志文件分析Apr 7 05:05:12 localhost rc: Starting pcmcia: succeeded时间标签主机名生成消息的子系统的名字消息22. i修改“fstab”文件在文件系统的配置记录中添加“usrquota”和“grpquota”配置选项LABEL=/ / ext3 defaults,usrquota,grpquota 1 1ii重新挂载文件系统,重新启动系统可以使文件系统的quota配置生效# reboot或者mount –o remount/iii创建配额文件,使用quotacheck命令可创建用户配额文件er 和组配额文件aquota.group quotacheck -cmug /ⅳ开启配额服务,[root@linux ~]# quotaon –a/dev/hdb1 [/disk2]: group quotas turned on/dev/hdb1 [/disk2]: user quotas turned onⅴ设置配额,使用edquota命令可以编辑对用户和组的配额设置[root@linux ~]# edquota -u quser1Disk quotas for user quser1 (uid 502):Filesystem blocks soft hard inodes soft hard /dev/hdb1 0 45000 50000 0 0 0容量软容量硬数量软数量硬[root@linux ~]# edquota –t软限制的时间限制Grace period before enforcing soft limits for users:Time units may be: days, hours, minutes, or secondsFilesystem Block grace period Inode grace period/dev/hdb1 1days 7days ⅵ quota命令用于显示用户和组的配额情况 # quota -u st0123.tar命令建立归档对文件和目录进行归档$ tar cf myfiles.tar files/对文件和目录进行压缩归档$ tar czf myfiles.tar.gz files查看归档文件中的目录列表 $ tar tf myfiles.tar.gz查看压缩归档文件中的目录列表$ tar tzf myfiles.tar恢复归档文件$ tar xf myfiles.tar恢复压缩的归档文件$ tar xzf myfiles.tar.gz恢复归档文件到指定目录 $ tar xzf myfiles.tar.gz -C restore/第7章Linux基本网络配置1.查看所有活动网络接口的信息$ /sbin/ifconfig查看所有网络接口(包括非活动网络接口)的信息$ /sbin/ifconfig -a查看指定网络接口信息$ /sbin/ifconfig eth02.ifconfig命令可以设置网络接口的ip地址# ifconfig eth0 192.168.152.133 netmask 255.255.255.03.route命令可查看主机的路由信息$ /sbin/route4.使用ping命令测试网络连结,使用“Ctrl + c”组合键结束ping命令执行5.traceroute命令测试当前主机到目的主机之间经过的所有网络节点$ traceroute 192.168.1.16.hostname命令可显示当前主机的名称,hostname命令还可以对当前主机的名称进行设置hostname命令设置的主机名称是即时生效的系统重新启动后将会恢复为系统原有的主机名称7.nslookup命令可进行域名的查询8.route命令可以维护系统路由表信息删除缺省网关# route del default gw 192.168.152.2添加缺省网关# route add default gw 192.168.152.29. 显示使用的DNS服务器地址# nslookup> serverDefault server: 192.168.152.2Address: 192.168.152.2#5310.RHEL4中提供了网络配置工具# netconfig11.网络服务启动脚本“network”服务程序用于对RHEL4中的网络属性进行配置生效network服务的启动脚本在“/etc/init.d”目录中/etc/init.d/network启动network服务# /etc/init.d/network start停止network服务# /etc/init.d/network stop12.网络接口配置文件,网络接口的文件位于目录“/etc/sysconfig/network-scripts/”中网络接口eth0的配置文件是ifcfg-eth0# cat /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0ONBOOT=yesBOOTPROTO=staticIPADDR=192.168.152.133NETMASK=255.255.255.0GATEWAY=192.168.152.213.停用网络接口# ifdown eth014.启用网络接口# ifup eth015.主机名称配置文件 network文件位于“/etc/sysconfig/”目录中,其中保存了主机的名称配置,在文件“/etc/sysconfig/network”中对HOSTNAME配置项进行配置后,需要重新启动计算机使新设置的主机名生效# cat /etc/sysconfig/networkNETWORKING=yesHOSTNAME=localhost.localdomain16./etc/hosts”文件保存本地的主机名与ip地址的对应记录# cat /etc/hosts127.0.0.1 localhost.localdomain localhost17.系统使用的DNS服务器的ip地址保存在“resolv.conf”文件中,文件中最多可以有3个“nameserver”配置记录# cat /etc/resolv.confnameserver 192.168.152.2第8章NFS文件系统1.NFS服务器的安装portmap软件包nfs-utils软件包2.NFS服务器的配置文件“exports”文件用于配置NFS服务器中输出的共享目录# cat /etc/exports/home/share *(sync,ro) nfs共享目录名客户端主机地址设置选项exports文件中“客户端主机地址”字段可以使用多种形式表示主机地址实例说明192.168.152.13指定IP地址的主机指定域名的主机192.168.1.0/24指定网段中的所有主机*指定域下的所有主机*所有主机设置选项sync:设置NFS服务器同步写磁盘,这样不会轻易丢失数据,建议所有的NFS共享目录都使用该选项ro:设置输出的共享目录只读,与rw不能共同使用3.NFS服务器的启动与停止查询服务器的状态为了保证NFS服务器能够正常工作,系统中需要运行portmap和nfs两个服务程序# service portmap status# service nfs status4.启动服务器# service portmap start# service nfs start5.停止服务器运行# service nfs stop6.showmount命令用于查询显示NFS服务器的相关信息显示当前主机中NFS服务器的连接信息# showmount显示指定主机中NFS服务器的连接信息# showmount 192.168.152.131显示当前主机中NFS服务器的输出列表 # showmount -e显示指定NFS服务器中的共享目录列表# showmount -e 192.168.152.131显示NFS服务器中被挂载的共享目录# showmount -d显示当前主机中NFS服务器的客户机信息 # showmount -a显示指定主机中NFS服务器的客户机信息 # showmount -a 192.168.152.1317. 重新输出共享目录# exportfs -rv停止输出所有目录# exportfs -auv输出(启用)所有目录# exportfs -av8.Linux客户端挂载NFS文件系统mount -t nfs 192.168.152.131:/home/share/ /mnt/9.系统启动时自动挂载NFS文件系将NFS的共享目录挂载信息写入“/etc/fstab”文件,可实现对NFS共享目录的自动挂载# tail -1 /etc/fstab192.168.152.131:/home/pub /mnt nfs defaults 0 0。
第一章概述1、什么是POSIX标准,为什么现代造作系统的设计必须遵循POSIX标准?答:POSIX表示可移植操作系统接口(Portable Operating System Interface)。
POSIX是在Unix标准化过程中出现的产物。
POSIX 1003.1标准定义了一个最小的Unix 操作系统接口。
任何操作系统只有符合这一标准,才有可能运行Unix程序。
2、什么是GNU?Linux与GNU有什么关系?答:GNU是GNU Is Not Unix的递归缩写,是自由软件基金会的一个项目。
GNU项目产品包括emacs编辑器、著名的GNU C和Gcc编译器等,这些软件叫做GNU软件。
GNU软件和派生工作均适用GNU通用公共许可证,即GPL(General Public License)。
Linux的开发使用了众多的GUN工具。
3、Linux系统由哪些部分组成?Linux内核处于什么位置?答:(1)符合POSIX标准的操作系统内核、Shell和外围工具。
(2)C语言编译器和其他开发工具及函数库。
(3)X Window窗口系统。
(4)各种应用软件,包括字处理软件、图象处理软件等。
Linux内核是所有Linux 发布版本的核心。
第二章内存寻址1、在80x86的寄存器中,哪些寄存器供一般用户使用?哪些寄存器只能被操作系统使用?答:通用寄存器EAX,EBX,ECX,EDX,EBP(基址指针),ESP(堆栈指针),ESI(扩展源指针),EDI(扩展目的指针),还有EFLAGS(标志寄存器).专供操作系统使用的寄存器:IDTR中断描述符寄存器,GDTR全局描述符表寄存器,LDTR局部描述符表寄存器,TaskRegisters任务寄存器,DebugRegister调试寄存器,ControlRegister控制寄存器,Model-SpecificRegisters模型专用寄存器。
3、请用C语言描述段描述符表。
答:#include <stdio.h>#include <stdlib.h>#define BASE_H 0xff00#define BASE_M 0x00ff#define BASE_L 0xffff#define LIMIT_H 0x000f#define LIMIT_L 0xffff#define GRANULARITY 0x0080#define SEGMENT_P 0x8000#define SYSTEM_TYPE 0x1000#define DPL 0x6000#define TYPE_E 0x0800#define TYPE_ED_C 0x0400#define TYPE_RW 0x0200#define TYPE_A 0x0100struct {unsigned char base_high;unsigned char g : 1;unsigned char other : 3;unsigned char limit_high : 4;unsigned char P : 1;unsigned char dpl : 2;unsigned char S : 1;unsigned char E : 1;unsigned char ED_C : 1;unsigned char RW : 1;unsigned char A : 1;unsigned char base_middle;unsigned short base_low;unsigned short limit_low;} gdt_t;int main(int argc, char *argv[]){// int gdt[4] = {0x0fff, 0x0000, 0x9a00, 0x00c0} ; // 0x08// int gdt[4] = {0x7fff, 0x0000, 0x9a01, 0x00c0} ; // 0x10// int gdt[4] = {0x0002, 0x8000, 0x920b, 0x00c0} ; // display memory// int gdt[4] = {0xffff, 0xffff, 0xffff, 0xffff} ; // testint gdt[4] = {0x03ff, 0x0000, 0xf201, 0x00c0} ; // ldt0unsigned int base, limit;unsigned int granularity;unsigned int present, dpl, system_type, segment_type;unsigned int type_e, type_ed_c, type_rw, type_a; base = (gdt[3] & BASE_H) << 16;base += (gdt[2] & BASE_M) << 16;base += gdt[1] & BASE_L << 0;limit = (gdt[0] & LIMIT_L) << 0;limit += (gdt[3] & LIMIT_H) << 16;granularity = (gdt[3] & GRANULARITY) >> 7; present = (gdt[2] & SEGMENT_P) >> 15;dpl = (gdt[2] & DPL) >> 13;system_type = (gdt[2] & SYSTEM_TYPE) >> 12; type_e = (gdt[2] & TYPE_E) >> 11;type_ed_c = (gdt[2] & TYPE_ED_C) >> 10;type_rw = (gdt[2] & TYPE_RW) >> 9;type_a = (gdt[2] & TYPE_A) >> 8;printf("base\t\t0x%x\t%d\n", base, base);printf("limit\t\t0x%x\t%d\n", limit, limit);printf("\n"); printf("G\t\t%d\t(0=bype, 1=4KB)\n",granularity);printf("\n");printf("P\t\t%d\n", present);printf("DPL\t\t%d\n", dpl);printf("S\t\t%d\t(0=system, 1=code or data)\n",system_type);printf("TYPE_E\t\t%x\n", type_e);printf("TYPE_ED_C\t%x\n", type_ed_c);printf("TYPE_RW\t\t%x\n", type_rw);printf("TYPE_A\t\t%x\n", type_a);printf("\n");printf("E=0, data segment\n");printf("ED=0, data segment\n");printf("ED=1, stack segment\n");printf("W=0, not writable\n");printf("W=1, writable\n");printf("\n");printf("E=1, code segment\n");printf("C=0, ingore privilege\n");printf("C=1, use privilege\n");printf("R=0, not readable\n");printf("R=1, readable\n");return EXIT_SUCCESS;}4、Linux是如何利用段机制又巧妙的绕过段机制的?在内核代码中如何表示各种段,查找最新源代码并进行阅读和分析。
1、Linux可以运行在两种模式用户模式和内核模式2、VFS及其的四个数据结构虚拟文件系统是Linux内核中的一个软件层,用于给用户空间的程序提供文件系统接口;它也提供了内核中的一个抽象功能,允许不同的文件系统共存。
系统中所有的文件系统不但依赖VFS共存,而且也依靠VFS协同工作。
四个数据结构:超级块对象、索引结点对象、文件对象以及目录项对象3、进程号、用户号?Linux系统上所有运行的东西都可以称为一个进程。
进程的基本状态三种:运行态、就绪态和阻塞态(或等待态)。
进程大致上来讲可分为两大类:系统进程与用户进程。
4、Linux进程有五种状态linux上进程有5种状态:1. 运行(正在运行或在运行队列中等待)2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)5、函数库人们把大量的基础性操作编写成一个个独立的函数,这些函数具有低耦合、高内聚的特点,这些函数集合成一个已经编译好的不完整的二进制代码文件,就是函数库写出函数原型或函数功能(字符串、开方)测试参数所对应的字符是否为拉丁字母#include <ctype.h>int isalpha(int c);测试参数所对应的字符是否为大写字母(isupper)或小写字母(islower)#include <ctype.h>int isupper(int c);int islower(int c);测试参数所对应的字符是否为阿拉伯数字(isdigit)或十六进制数字(isxdigit)#include <ctype.h>int isdigit(int c);int isxdigit(int c);测试参数所对应的字符是否为拉丁字母或阿拉伯数字#include <ctype.h>int isalnum(int c);测试参数所对应的字符是否为空白字符#include <ctype.h>int isspace(int c);测试参数所对应的字符是否为标点符号或特殊符号#include <ctype.h>int ispunct(int c);测试参数所对应的字符是否为可打印字符。
#include <ctype.h>int isgraph(int c);int isprint(int c);测试参数所对应的字符是否为ASCII码字符#include <ctype.h>int isascii(int c);将参数转化为ASCII码字符#include <ctype.h>int toascii(int c);将参数转化为小写字母或大写字母#include <ctype.h>int tolower(int c);int toupper(int c);将字符串转化成整型#include <stdlib.h>int atoi(const char *nptr);将字符串转化成长整型#include <stdlib.h>long atol(const char *nptr);将字符串转化成双精度浮点型#include <stdlib.h>double atof(const char *nptr);将所提供的数字转化成字符串#include <stdlib.h>char *gcvt(double number, size_t ndigits, char *buf);将字符串转化成长整型#include <stdlib.h>long strtol(const char *nptr, char **endptr, int base);将字符串转化成无符号长整型#include <stdlib.h>unsigned long strtoul(const char *nptr, char **endptr, int base); 将字符串转化成双精度浮点型#include <stdlib.h>dobule strtod(const char *nptr, char **endptr, int base);找到字符串第一次出现某一字符(或字符代码)的位置#include <string.h>char *index(const char *s, int c);char *strchr(const char *s, int c);找到字符串最后一次出现某一字符(或字符代码)的位置#include <string.h>char *rindex(const char *s, int c);char *strrchr(const char *s, int c);计算字符串的长度#include <string.h>int strlen(const char *s);字符串拷贝#include <string.h>char *strcpy(char *dest, const char *src);char *strncpy(char *dest, const char *src, size_t n);拷贝字符串,目标字符串地址在堆空间申请#include <string.h>char *index(const char *src);将两个字符串连接成一个字符串#include <string.h>char *strcat(char *dest, const char *src);char *strncat(char *dest, const char *src, size_t n);不区分大小写按照ASCII码的顺序,比较两个字符串#include <string.h>int strcasecmp(const char *s1, const char *s2);int strncasecmp(const char *s1, const char *s2, size_t n); 查找字符串#include <string.h>int strstr(const char *haystack, const char *needle); 取绝对值#include <stdlib.h>int abs(int j);#include <math.h>double fabs(double x);取整操作#include <math.h>double ceil(double x);double floor(double x);计算乘方#include <math.h>double pow(double x, double y);计算开方#include <math.h>double sqrt(double x);计算e的x次幂#include <math.h>double exp(double x);计算以e(log)或10(log10)为底x的对数#include <math.h>double log(double x);double log10(double x);计算三角函数正弦(sin)、余弦(cos)或正切(tan)#include <math.h>double sin(double x);double cos(double x);d算反三角函数反正弦(asin)、反余弦(acos)或反正切(atan)#include <math.h>double asin(double x);double acos(double x);double atan(double x);ouble tan(double x);6、源代码安装软件命令rpm –qa|grep xxx 查找安装软件rpm –ivh xxx.rpm 文件名rpm –e xx 卸载软件tar -jvxf /tmp/gcc-4.4.0.tar.bz2tar -zvxf /tmp/gcc-4.4.0.tar.gzMakeMake install配置源文件需要使用“gcc-4.4.0”目录下的“configure”工具--prefix=PATH 安装体系结构独立文件的目标路径,默认路径为/usr/local。
7、人员与用户类型、权限Linux系统规定了4种不同类型的用户,分别是文件主(u)、同组用户(g)、其他用户(o)、超级用户。
Linux系统规定3种访问文件和目录的方式。
(1)读(r)对文件表示只允许指定用户读取该文件的内容,禁止做任何更改操作;对目录表示可以列出存储在该目录下的文件。
(2)写(w)对文件表示允许指定用户打开并修改该文件;对目录表示允许从该目录中删除或添加新的文件。
(3)执行(x)对文件表示允许指定用户执行该文件;对目录表示允许在该目录中进行查找,能用cd命令将工作目录改为该目录。
8、内核包含四个子系统9、压缩文件后缀(见源代码安装软件命令).bz2 .gz ..tar.bz解压:tar jxvf FileName.tar.bz压缩:未知.tar解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!).tar.gz 和 .tgz解压:tar zxvf FileName.tar.gz(x时还原意思,c时备份的意思)压缩:tar zcvf FileName.tar.gz DirName———————————————..tar.bz2解压:tar jxvf FileName.tar.bz2(有无-号都是可以的)压缩:tar jcvf FileName.tar.bz2 DirName———————————————.bz解压1:bzip2 -d FileName.bz解压2:bunzip2 FileName.bz压缩:未知———————————————解压:rar x FileName.rar压缩:rar a FileName.rar DirName10、Shell、Shell的功能用途、Shell的工作流程Shell是系统的用户界面,提供用户与内核进行交互操作的一种接口。