




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 知识库开源软件GPLKernelRedHatFedoraCoreLinux分区EXT3SWAP根目录GRUBFirefox浏览器Linux命令Shell命令解释器内部命令外部命令管道重定向输出绝对路径相对路径归档与压缩VI编辑器VI的工作模式Linux应用程序RPM软件包源代码软件包提供安装程序绿色免安装编译安装源代用户账号组账号的软件包的软件包码包UID和GID号用户账号文件组账号文件rwx权限字符ugoa用户类别SET位权限粘滞位权限文件系统挂载文件系统卸载文件系统磁盘配额软限制硬限制LVM逻辑卷管理PV物理卷VG卷组LV逻辑卷Linux的引导流程INIT进程初始化runlevels运行
2、级别进程后台运行进程调度启动进程at一次性任务crontab周期性任务BashBash常用功能命令历史命令别名标准输入输出和重定向管道操作用户自定义变量环境变量位置变量预定义变量执行Shell脚本整数值比较字符串比较逻辑测试if语句for循环语句while循环语句case语句until循环语句shift语句循环控制语句Shell函数Linux日志日志优先级别MBRTOC o 1-5 h z开源软件4GPL4Kernel5RedHat5Linux分区6EXT36SWAP6根目录6GRUB6Firefox浏览器6Linux命令8Shell命令解释器8内部命令8外部命令8管道8重定向输出8绝对路径8
3、相对路径8归档与压缩9VI编辑器9VI的工作模式9Linux应用程序10RPM软件包10源代码软件包10提供安装程序的软件包10绿色免安装的软件包10编译安装源代码包10用户账号11组账号11UID和GID号11用户账号文件11组账号文件11rwx权限字符12ugoa用户类别12SET位权限12粘滞位权限12文件系统12挂载文件系统13卸载文件系统13磁盘配额13软限制13硬限制13LVM逻辑卷管理13PV物理卷13VG卷组14LV逻辑卷14Linux的弓|导流程14INIT进程初始化15runlevels运行级别15进程15后台运行进程15调度启动进程15at次性任务16crontab周期性
4、任务16Bash16Bash常用功能17命令历史17命令别名17标准输入输出和重定向18管道操作18用户自定义变量18环境变量18位置变量19预定义变量19执行Shell脚本19整数值比较20字符串比较20逻辑测试20if语句20for循环语句21while循环语句21case语句22until循环语句23shift语句23循环控制语句24Shell函数24Linux日志24日志优先级别24MBR25开源软件开放源代码软件(OpenSourceSoftware)简称开源软件,其最重要的一个特性是源代码开放,即任何人都可以免费获得开源软件的所有源代码。开源软件的出现对传统的商业软件模式(封闭源代
5、码是一个极大的挑战,自从20世纪80年代以来,开源软件从诞生到逐渐兴起,再到今天的朝气蓬勃,已逐渐演变成了一种潮流。广义上的开源软件包括任何开放源代码的软件,遵守GPL协议的所有自由软件都可以称为开源软件,但是开源软件不一定是自由软件(虽然这种情况较少),如微软公司曾经对部分国家开放过一小部分源代码,但这并不意味着对应的Windows系统也是自由软件。开源软件典型的有Linux系统,另外还有很多应用软件,如Firefox、OpenOffice、Apache等。GPLGPL(GNU通用公共许可证),是GeneralPublicLicense的缩写,是一份GNU通用公共授权非正式的中文翻译。它并非
6、由自由软件基金会所发表,亦非使用GNU通用公共授权的软件的法定发布条款,只有GNU通用公共授权英文原文的版本始具有此等效力。大多数软件许可证决意剥夺你的共享和修改软件的自由。对比之下,GNU通用公共许可证力图保证你的共享和修改自由软件的自由。一一保证自由软件对所有用户是自由的。GPL适用于大多数自由软件基金会的软件,以及由使用这些软件而承担义务的作者所开发的软件。(自由软件基金会的其他一些软件受GNU库通用许可证的保护)。你也可以将它用到你的程序中。当我们谈到自由软件(freesoftware)时,我们指的是自由而不是价格。我们的GNU通用公共许可证决意保证你有发布自由软件的自由(如果你愿意,
7、你可以对此项服务收取一定的费用);保证你能收到源程序或者在你需要时能得到它;保证你能修改软件或将它的一部分用于新的自由软件;而且还保证你知道你能做这些事情。为了保护你的权利,我们需要作出规定:禁止任何人不承认你的权利,或者要求你放弃这些权利。如果你修改了自由软件或者发布了软件的副本,这些规定就转化为你的责任。例如,如果你发布这样一个程序的副本,不管是收费的还是免费的,你必须将你具有的一切权利给予你的接受者;你必须保证他们能收到或得到源程序;并且将这些条款给他们看,使他们知道他们有这样的权利。我们米取两项措施来保护你的权利。(1)给GPL软件以版权保护。(2)给你提供许可证。它给你复制,发布和修
8、改这些软件的法律许可。同样,为了保护每个作者和我们自己,我们需要清楚地让每个人明白,自由软件没有担保(nowarranty)。如果由于其他某个人修改了软件,并继续加以传播。我们需要它的接受者明白:他们所得到的并不是原来的自由软件。由其他人引入的任何问题,不应损害原作者的声誉。KernelKernel,这里指Linux操作系统内核。操作系统内核是指大多数操作系统的核心部分。它由操作系统中用于管理存储器、文件、外设和系统资源的那些部分组成。操作系统内核通常运行进程,并提供进程间的通信。Linux操作系统的第一个版本来源于Linus改写的Unix源码,由于Linux的开放源代码使得Linux操作系统
9、飞速发展,也成为一些中小IT企业常用的开发环境。目前比较常用的Linux内核版本有2.4和2.6&3.0(为最新版本)。Linux2.4内核源码目录:arch包括所有和体系结构相关的核心代码;include包括编译内核所需要的大部分头文件;init包含内核的初始化代码(不是系统的引导代码),有main.c和Version.c两个文件;mm包含所有的内存管理代码;drivers包含系统中所有的设备驱动程序;ipc包含核心进程间的通信代码;fs存放Linux支持的文件系统代码;kernel包含内核管理的核心代码;net内核的网络部分代码,其每个子目录对应于网络的一个方面;lib包含核心的库代码;s
10、cripts包含用于配置核心的脚本文件;Documentation些文档,是对每个目录作用的具体说明。查看Linux内核版本命令:uname-a或者cat/proc/version;内核编译命令:makemenuconfig配置编译选项makedep提供变量依赖关系信息makeclean删除生成的模块和目标文件makezImage编译内核生成压缩的映像makemodules编译模块makemodules_install安装编译完成的模块RedHatLinux发行版本厂商,是成立较早的公司,其推出的RedHatLinux系列的发行版本得到了软硬件厂商的广泛支持,目前也代表着大多数Linux发行版
11、本的实际标准。RedHat公司的中文官方网址为:/。RedHat是全球最大的开源技术厂家,其产品RedHatLinux也是全世界应用最广泛的Linux。RedHat公司总部位于美国北卡罗来纳州。在全球拥有22个分部。其他Linux发行厂商还有Novell、Debian、Mandriva、Ubuntu、红旗等。FedoraCoreFedoraCore是RedHat公司停止RedHatLinux系列产品开发后建立的Linux社区版本,可以理解为Fedora是RedHatLinux系列产品的后继者,但是区别在于RedHatLinux系列是RedHat公司开发的产品。虽然FedoraCore是由Fed
12、ora社区负责管理维护的Linux发行版项目,但RedHat公司是Fedora项目的主要贡献者和管理者,所以在很大程度上主导着Fedora项目的发展。FedoraCore主要定位于桌面用户,追求绚丽的桌面效果,使用最新的应用软件,故FedoraCore版本更新周期很短,自2003年发布1.0版以来,目前最新版本是1.0。Fedora社区的官方网址为:/。Linux分区在Linux中,硬盘表示为“hdX”(IDE接口硬盘)或“sdX”(SCSI接口硬盘),X为a、b、c、d等字母,表示硬盘的序号。表示分区时,以硬盘设备的文件名作为基础,在后边添加该分区(无论主分区、扩展分区、逻辑分区)对应的数字
13、序号即可。例如,第1个IDE硬盘中的第1个分区表示为hda1,第2个SCSI硬盘中的第3个分区表示为sdb3。EXT3第3代扩展文件系统,是目前大多数Linux系统中(包括RHEL5)默认使用的文件系统类型,属于较典型的日志型文件系统。其特点是保持有磁盘存取记录的日志数据,便于恢复,性能和稳定性更加出色。之前使用的EXT2文件系统正在逐渐被淘汰。SWAP交换文件系统,主要用于为Linux系统建立交换分区。交换分区的作用相当于虚拟内存,能够在一定程度上缓解物理内存不足的问题。一般建议将交换分区的大小设置为物理内存的1.52倍,例如对于拥有256MB物理内存的主机,其交换分区的大小建议设置为512
14、MB。如果服务器的物理内存足够大(如8G以上),甚至可以不设置交换分区。交换分区不用于直接存储用户的文件和目录等数据。根目录在Linux系统中,将所有的目录和文件数据组织为一个“树型”的目录结构,所有的分区、目录、文件等都具有一个相同的位置起点一一“根目录”,Linux系统中只能有一个根目录,不像在Windows系统中每个分区都有一个根目录。Linux中根目录用“/”符号表示,根目录是Linux文件系统的起点,其所在的分区称为根分区。在根目录下,Linux系统将默认建立一些特殊的子目录,分别用于不同的用途。常见的子目录有:/boot、/bin、/dev、/etc、/home、/root、/sb
15、in、/usr、/var、/tmp。GRUBGRUB(GrandUnifiedBootloader,极好的统一引导器)是目前大多数Linux发行版本中使用的多系统引导程序,通过在系统启动时显示一个选择菜单,分别提供进入不同操作系统的入口。可以在主机中同时安装WindowsLinux等多个操作系统,开机后通过GRUB菜单进行切换使用。Firefox浏览器MozillaFirefox,非正式中文名称火狐,是一个开源网页浏览器,使用Gecko引擎(即非ie内核),由Mozilla基金会与数百个志愿者所开发。原名Phoenix”(凤凰),之后改名“MozillaFirebird(火鸟),再改为现在的名
16、字Firefox。目前最新的正式版本为Firefox15.0。火狐浏览器是可以自由定制的,一般电脑技术爱好者都喜欢用。它的插件又是世界上最丰富的,这点得到了网友公认。下载来的火狐一般是纯净版,功能比较少,要根据自己的喜好进行定制!火狐浏览器是一个自由的,开放源码的浏览器,适用于Windows、Linux和MacOSX平台,它体积小速度快,还有其它一些高级特征,主要特性有:标签式浏览,使上网冲浪更快;可以禁止弹出式窗口;自定制工具栏;扩展管理;更好的搜索特性;快速而方便的侧栏这个版本做了脱胎换骨的更新,代码更优秀,功能更强大,包括安装程序,界面和下载管理器都作了改进。此软件安装程序让您迅速安装F
17、irefox,而崭新的迁移系统可将您的收藏夹、储存密码以及其它各种设置等数据自动从IE及其它浏览器中导入Firefox,您立刻能在网络上四处游玩。火狐浏览器对网络营销人员应用更加方便,下载他不仅可以方便地了解你所浏览网页的PR值,而且还可以用来检查网页设计对火狐浏览器与IE浏览器的兼容性问题,因为一些网页设计在IE浏览器和火狐浏览器中可能会有不同的表现,有时甚至会出现严重问题。Firefox是Mozilla基金会开发的一个轻便、快速、简单与高扩充性的浏览器(与MozillaSuite区分)。Firefox已经是Mozilla开发的焦点,并将成为Mozilla基金会的官方浏览器,并可能成为Moz
18、illaSuite的一部份(与MozillaThunderbird电子邮件客户端共同组成)。Firefox专案一开始是戴夫海厄特(DaveHyatt)与布雷克罗斯(BlakeRoss)由Mozilla浏览器专案分支出来的一个实验专案。他们认为Mozilla浏览器专案受到网景通讯公司赞助的商业需求所拖累,并且有过度开发者导向的功能蔓延。目前专案开发由本古德杰(BenGoodger)主持。主要特点如下:免费下载,完全开源。火狐浏览器是开源基金组织Mozilla研发的产品,属于完全开源的免费软件,任何人都可以得到它的源代码,并可对其加以修改。正是由于这种免费下载完全开源的特点使其得到不断完善。安全性
19、高,稳定性好。火狐浏览器之所以被大家评为最好的浏览器,其安全性高是重要的指标。火狐浏览器有着阻止弹出式窗口功能,可以有效阻止未经许可的弹出窗口。不加载有害的ActiveX控件,不让恶意的间谍程序入侵您的计算机。Firefox3,只有那些可以安全升级的附加组件才可以被安装.运行速度快,占用系统资源少。huohu2.0大小仅为5.7M,是ie的八分之一。其浏览网页时采用的分页浏览的方式,可以加快页面加载的速度,这也是其成为最好的网页浏览器的重要原因之一。个性化十足。火狐浏览器是最容易定制的浏览器,可以定制工具栏添加按钮,可以选择安装不同的插件来增加新功能,还可以选择不同的浏览器皮肤来展示个性。hu
20、ohu功能多少、体态大小,都可以由自己来决定。功能完善。火狐浏览器可以方便的查看历史浏览记录,改变浏览器查看网页的文字大小,查看网页源代码。附带有google工具条,可以不用打开新网站直接就可以搜索任何网站。而且可以使用google搜索来浏览外国网站并可使用google工具条的在线翻译工具来翻译英文网站,标志关键字的位置等。Linux命令在Linux系统中,凡是在字符操作界面中输入的、能够完成特定操作和任务的字符串,都可以称之为“命令”严格来说,“命令”通常只代表了实现某一类功能的指令或程序的名称。Linux命令的执行必须依赖于Shell命令解释器。通用的命令行使用格式如下:命令字选项参数Sh
21、ell命令解释器Shell命令解释器实际上是在Linux系统运行的一种特殊程序,它位于操作系统内核与用户之间,负责接收用户输入的命令并进行解释,将需要执行的操作传递给系统内核执行,Shell在用户和内核之间充当了一个“翻译官”的角色。当用户登录到Linux系统时,会自动加载一个Shell程序,以便给用户提供可以输入命令的操作环境。内部命令指的是集成于Shell解释器程序(如Bash)内部的一些特殊指令,也称为内建(Built-IN)指令。内部命令属于Shell的一部分,所以并没有单独对应的系统文件,只要Shell解释器被运行,内部指令也就自动载入内存了,用户可以直接使用,内部命令无需从硬盘中重
22、新读取文件,因此执行效率更高。外部命令指的是Linux系统中能够完成特定功能的脚本文件或二进制程序,每个外部命令对应了系统中的一个文件,是属于Shell解释器程序之外的命令,所以称为外部命令。Linux系统必须知道外部命令对应的文件位置,才能够由Shell加载并执行。管道使用竖杆符号“|”表示,用于将前面命令的屏幕输出结果作为后面命令的操作对象(输入)。就好像一根管道一样,从这头塞入内容,从另一头出来。重定向输出使用大于符号“”表示,前面的命令成功执行以后,其屏幕输出结果将保存到“”号后边指定的文件中,而不是直接输出到屏幕,因此称为重定向。绝对路径这种方式以根目录“/”作为起点,如“/boot
23、/grub”表示根目录下boot子目录中的grub目录。若要确切表明grub是一个目录(而不是一个文件),可以在最后也加上一个目录分隔符,如表示为“/boot/grub/”。因为Linux系统中的根目录只有一个,所以不管当前处于哪个目录中,使用绝对路径都可以非常准确地表示一个目录(或文件)所在的位置。但是如果路径较长,输入的时候会比较繁琐。相对路径这种方式一般以当前工作目录作为起点,在开头不使用“/”符号,因此输入的时候更加简便。相对路径主要包括如下几种形式:直接使用目录名或文件名,用于表示当前工作目录中的子目录、文件的位置。如“grub.conf。使用一个点号”开头,可明确表示以当前的工作目
24、录作为起点,如“./grub.conf。使用两个点号“开头,表示以当前目录的上一级目录(父目录)作为起点。使用“用户名”的形式开头,表示以指定用户的宿主目录作为起点,省略用户名时缺省为当前用户。20归档与压缩归档操作相当于打包,即将许多个文件和目录合并保存为一个整体的包文件,以方便传递和携带。而压缩操作可以进一步降低打包好的归档文件所占用的磁盘空间,充分提高备份介质的利用率。打包类比于将松散的书籍裹在一起,压缩则将书籍整理,去掉多余空间,去掉水分,捆压包裹。Linux系统中较常用的压缩命令工具有gzip、bzip2,最常用的归档命令工具为tar。使用tar命令可通过特定选项自动调用gzip或b
25、zip2程序,以完成归档、压缩的整套流程,当然也可以解压归档文件的整套流程。VI编辑器VI是一个功能强大的全屏幕文本编辑工具,一直以来都作为类UNIX操作系统的默认文本编辑器。vim是vi编辑器的增强版本,在vi编辑器的基础上扩展了很多实用的功能,但是习惯上也将vim称作vi。为了使用方便,可以设置一个命令别名,将vi指向vim程序。VI的工作模式在vi编辑器界面中可以使用三种不同的工作模式,分别为命令模式、输入模式和末行模式,在不同模式中能够对文件进行的操作也不相同。命令模式:启动vi编辑器后默认进入命令模式,该模式中主要完成如光标移动、字符串查找,以及删除、复制、粘贴文件内容等相关操作。输
26、入模式:该模式中主要的操作就是录入文件内容,可以对文本文件正文进行修改、或者添加新的内容。处于该输入模式时,vi编辑器最后一行会出现“-INSERT-”的状态提示信息。末行模式:该模式中可以设置vi编辑环境、保存文件、退出编辑器,以及对文件内容进行查找、替换等操作。处于末行模式时,vi编辑器的最后一行会出现冒号“:”提示符。rootlocalhost#晰文件名Linux应用程序应用程序一般需要在操作系统之外再另行安装,提供相对独立于操作系统的功能,有时候等同于“软件”的概念。应用程序一般没有固定的执行格式,运行方式由程序开发者自行定义。应用程序可能会使用到图形界面,形式多样。应用程序的执行文件
27、通常放在/usr/bin、/usr/sbin和/usr/local/bin、/usr/local/sbin等目录中。有些应用程序提供的执行文件,能够使用像Linux命令一样的运行格式,所以也经常被称为程序命令。而Linux命令的执行文件大多比较小,通常放置在/bin和/sbin目录中。命令文件一般在安装操作系统时一起安装,用于辅助操作系统本身的管理。命令行大多适用于“命令字选项参数”形式的一般格式,命令只在字符操作界面中运行,其中内部命令由Bash集成在程序内,而不是独立的执行文件。RPM软件包Linux中应用程序封装的一种类型,这种软件包文件的扩展名为“.rpm”,只能在使用RPM(RPMP
28、ackageManager,RPM软件包管理器)机制的Linux操作系统中安装,如RHEL5、Fedora9、SuselO等。RPM软件包一般针对特定版本的系统量身定制,因此依赖性较强。安装RPM包需要使用Linux系统中的rpm命令。另外还有DEB软件包等。源代码软件包这种软件包是程序员开发完成的原始代码,一般被制作成“.tar.gz”、tar.bz2”等格式的压缩包文件,因多数使用tar命令打包而成,所以经常被称为“TarBall”。安装源代码软件包需要使用相应的编译工具,如Linux中的C语言编译器gcc。由于大部分Linux系统中都装有基本的编译环境,因此使用源码软件包要更加灵活。提供
29、安装程序的软件包这种软件包的扩展名不一,但仍以TarBall格式的居多。软件包中会提供用于安装的可执行程序或脚本文件,如install.sh、setup等,有时候会以“.bin”格式的单个安装文件形式出现。只需运行安装文件就可以根据向导提示完成安装。绿色免安装的软件包这种软件包直接包含有编译好的执行程序文件,因此不需要特别安装,只要将下载回来的文件解压或复制到某个目录中即可使用。如针对Linux平台的Firefox浏览器、Thunderbird邮件客户端等软件,都可以找到免安装的绿色版本。编译安装源代码包获得所需安装的软件源代码以后,安装的基本过程包括解包、配置、编译及安装这几个通用步骤,大多
30、数开源软件的安装都遵循这些过程。当然,这4个步骤并不是一成不变的,具体安装时应参考软件包中提供的相关文档(如INSTALL、README等)。(1)解包:对于TarBall形式的源代码包,可用tar进行解包。(2)配置:进入源代码目录,使用./configure来进行配置。(3)编译:在源代码目录使用make进行编译。(4)安装:编译完后使用makeinstall进行安装。用户账号在Linux系统中,根据系统管理的需要将用户账号分为不同的类型,其拥有的权限、担任的角色也各不相同。主要包括超级用户、普通用户和程序用户。超级用户:root用户是Linux系统中默认的超级用户账号,对本主机拥有至咼无
31、上的完全权限。普通用户:普通用户账号需要由root用户或其他管理员用户创建,拥有的权限受到一定限制,一般只在用户自己的宿主目录中有完全权限。程序用户:在安装Linux系统及部分应用程序时,会添加一些特定的低权限用户账号,这些用户一般不允许登录到系统,而仅用于维持系统或某个程序的正常运行。例如:bin、daemon、ftp、mail等。组账号基于某种特定联系(如都需要访问FTP服务)将多个用户集合在一起,即构成一个用户组,用于表示该组内所有用户的账号称为组账号。每一个用户账号至少属于一个组,这个组称为该用户的基本组(或私有组);如果该用户同时包括在其他的组中,则这些组称为该用户的附加组(或公共组
32、)。UID和GID号Linux系统中的每一个用户账号都有一个数字形式的身份标记,称为UID,对于系统核心来说,UID作为区分用户的基本依据,原则上每个用户的UID号应该是唯一的。root用户账号的UID号为固定值0,而程序用户账号的UID号默认在1499之间,普通用户账号默认在50060000之间。与UID类似,每一个组账号也有一个数字形式的身份标记,称为GID。Root组账号的GID号为固定值0,而程序组账号的GID号默认在1499之间,普通组账号使用的GID默认为50060000。用户账号文件与用户账号相关的配置文件主要有两个,分别是/etc/passwd、/etc/shadow。前者用于
33、保存用户名称、宿主目录、登录shell等基本信息,后者用于保存用户的密码、账号有效期等信息。在这两个配置文件中,每一行对应一个用户账号,不同的配置项之间使用冒号“:”进行分隔。组账号文件与组账号相关的配置文件也有两个,分别是/etc/group、/etc/gshadow。前者用于保存组账号名称、GID号、组成员等基本信息,后者用于保存组账号的加密密码字串等信息(但是很少使用到)。某一个组账号包含有哪些用户成员,将会在group文件内最后一个字段中体现出来(默认不包括基本组对应的用户账号),多个组成员之间使用“,”分隔。rwx权限字符访问权限字符r、w、x用于表示可读、可写、可执行,但是其对于文
34、件和目录来说,具体含义是存在一些差别的,例如用户只要对目录有写入权限,就可以删除该目录下任何文件或子目录,而不管这些文件或子目录是否属于该用户。r:查看文件或目录内容。w:修改文件内容或目录内容(在目录中新建、移动、删除文件或子目录)。X:执行该文件(程序或脚本)或者执行cd命令进入或退出该目录。ugoa用户类别ugoa表示该权限设置所针对的用户类别,u代表文件属主,g代表文件属组内的用户,o代表其他任何用户,a代表所有用户(u、g、o的总和)。SET位权限SET位权限多用于给可执行的程序或脚本文件进行设置,其中SUID表示对属主用户增加SET位权限,SGID表示对属组内的用户增加SET位权限
35、。执行文件被设置了SUID、SGID权限后,任何用户在执行该文件时,将获得该文件属主、属组账号对应的身份。为执行文件添加SET位权限同样可以通过chmod命令实现,使用“u+s”、“g+s”的权限模式分别用于设置SUID、SGID权限。若使用数字形式,SUID对应八进制数字“4”、SGID对应八进制数字“2”,在权限模式中可采用“nnnn”的形式,如“4755”表示设置SUID权限、“6755”表示同时设置SUID、SGID权限。设置SUID、SGID权限后,使用ls命令查看该文件的属主时,对应设置的“x”将变为“s”。粘滞位权限粘滞位主要用于为目录设置特殊的附加权限,当目录被设置了粘滞位权限
36、以后,即便用户对该目录有写入权限,也不能删除该目录中其他用户的文件数据。对一个目录设置粘滞位以后,正好可以保持一种动态的平衡:允许各用户在目录中任意写入、删除数据,但是禁止随意删除其他用户的数据。使用chmod命令设置目录权限时,“+1”、“-t”权限模式可分别用于添加、移除粘滞位权限。将数字权限模式“nnnn”中的第1位数字改为“1”、“0”,也可以实现添加、移除粘滞位权限。设置粘滞位权限的目录,使用ls查看,其他用户权限处的x将变为1。文件系统文件系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构;即在磁盘上组织文件的方法。也指用于存储文件的磁盘或分区,或文件系统种类。操作系统中负责
37、管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。文件系统由三部分组成:与文件管理有关软件、被管理文件以及实施文件管理所需数据结构。从系统角度来看,文件系统是对文件存储器空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等。Window系统下常用的文件系统格式有FAT16、FAT32、NTFS、exFAT,Linux系统下有:Ext2、Ext3、Ext4等。另外还有CDFS、Btrf、ZFS、HFS、ReiserFS、JFS、VMFS、XFS、UFS、VXFS等。挂载
38、文件系统在Linux系统中,对各种存储设备中资源访问(如读取、保存文件等)都是通过目录结构进行的,虽然系统核心能够通过“设备文件”的方式操纵各种设备,但是对于用户来说,还需要增加一个“挂载”的过程,才能像正常访问目录一样访问存储设备中的资源。当然,像“/”分区、“/boot”分区等自动建立或识别的分区通常会由系统自动完成挂载。后来新增加的硬盘分区、USB盘、光盘等设备,有时候需要管理员手动进行挂载。挂载一个分区时,必须指定一个目录作为挂载点,用户通过这个目录访问设备中的文件、目录数据。挂载文件系统的命令是mount命令。卸载文件系统当不需要使用挂载的设备后,通常需要卸载该文件系统,使用的命令是
39、umount,需要指定挂载点目录或对应设备文件名作为参数。因同一设备可能被挂载到多个目录下,所以一般建议通过挂载点目录的位置来进行卸载。磁盘配额当Linux根分区的磁盘空间耗尽时,Linux系统将无法再建立新的文件,从而出现服务程序崩溃、系统无法启动等故障现象,为了避免在服务器中出现类似的磁盘空间不足的问题,可以设置启用磁盘配额功能,对用户在指定文件系统(分区)中使用的磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,保持系统存储空间的稳定性和持续可用性。磁盘配额的限制类型有:磁盘容量限制、文件数量限制。磁盘配额的限制方法有:软限制、硬限制。软限制指定一个软件的配额数值,
40、在固定的宽限期(默认为7天)内允许暂时超过这个限制,但系统会给出警告信息。硬限制指定一个硬性的配额数值,是绝对禁止用户超过的限制值,当达到硬限制值时,系统也会给出警告并禁止继续写入数据。硬限制的配额值应大于相应的软限制值,否则软限制将失效。LVM逻辑卷管理LVM是Linux系统中对磁盘分区进行管理的一种逻辑机制,它是建立在硬盘和分区之上,文件系统之下的一个逻辑层,在建立文件系统时屏蔽了下层的磁盘分区布局,能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高了磁盘管理的灵活性。LVM逻辑卷管理涉及创建和管理PV物理卷、VG卷组、LV逻辑卷。PV物理卷物理卷是LVM机制的基本存储设备,通常对应
41、为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元PE(PhysicalExtent),从而构成物理卷。物理卷一般直接使用设备文件名称,如“/dev/sdbl”、“/dev/sdb2”等。用于转换成物理卷的普通分区,建议先使用fdisk工具将分区类型的ID标记号改为“8e”,若是整个硬盘,可以将所有磁盘空间划分为一个主分区后再作相应调整。VG卷组由一个或多个物理卷组成的一个整体,即称为卷组,在卷组中可以动态地添加或移除物理卷。许多个物理卷可以分别组成不同的卷组,卷组名称由用户自行定义。LV逻辑卷逻辑卷
42、是建立在卷组上的,与物理卷没有直接关系。对于逻辑卷来说,每一个卷组就是一个整体,从这个整体中“切出”一小块空间,作为用户创建文件系统的基础,这一小块空间就称为逻辑卷。使用mkfs等工具在逻辑卷上创建文件系统以后,即可挂载到Linux系统中的目录下使用。一1MBR引异If-C31UB起单9JU篥禅覆(femel)ft-ff.etc/rc.dnv丰自动min刖tty:S程.etc.rcO.i1*/etc.rcLA1.l,etc.l,rc2.4l,+/etc/rcS孔M.etc.rci.i1*.etc/rrf孔怙/etc.rcfi.i1*运行INTI富程at.fetc*iittab配直文佯开机自蜡(
43、BIOS)Linux的引导流程Linux操作系统的引导流程一般包括以下几个阶段:开机自检、MBR引导、GRUB菜单、加载Linux内核、INIT进程初始化。其中初始化过程涉及的操作最多,也直接关系着系统启动后的运行状态。RedHatEnterpriseLinus:Serrre1$as5(Titianga)Kerne12.6l18-8.elSshutdown-hnow/按Ctrl+D键提交任务atjob1at2009-09-1423:45rootlocalhost#atq12009-09-1423:45arootcrontab周期性任务按照预先设置的时间周期(分钟、小时、天)重复执行用户指定的命
44、令操作,属于周期性计划任务。服务脚本名称:/etc/init.d/crond主要设置文件:全局配置文件,位于文件:/etc/crontab系统默认的设置,位于目录:/etc/cron.*/用户定义的设置,位于文件:/var/spool/cron/用户名Crontab文件内容如下:rootlocalhost#cat/etc/crontabSHELL二/bin/bashPATH二/sbin:/bin:/usr/sbin:/usr/binMAILTO二rootHOME二/#run-parts01*rootrun-parts/etc/cron.hourly024*rootrun-parts/etc/c
45、ron.daily224*0rootrun-parts/etc/cron.weekly4241*rootrun-parts/etc/cron.monthlyBashBash(GNUBourne-AgainShell)是许多Linux平台的内定Shell(包括RedHat公司的Linux系统也是使用Bash),事实上,还有许多传统UNIX上用的Shell,像tcsh、csh、ash、bsh、ksh等等,ShellScript大致都类同,当您学会一种Shell以后,其它的Shell会很快就上手,大多数的时候,一个ShellScript通常可以在很多种Shell上使用。Bash是Bsh的升级替代品。
46、bash是一个为GNU项目编写的Unixshell。它的名字是一系列缩写:Bourne-AgainSHell这是关于Bourneshell(sh)的一个双关语(Bourneagain/bornagain)oBourneshell是-个早期的重要shell,由StephenBourne在1978年前后编写,并同Version7Unix一起发布。bash则在1987年由BrianFox创造。在1990年,ChetRamey成为了主要的维护者bash是大多数Linux系统以及MacOSXv10.4默认的shell,它能运行于大多数Unix风格的操作系统之上,甚至被移植到了MicrosoftWindo
47、ws上的Cygwin系统中,以实现windows的POSIX虚拟接口。此外,它也被DJGPP项目移植到了MS-DOS上。bash的命令语法是Bourneshell命令语法的超集。数量庞大的Bourneshell脚本大多不经修改即可以在bash中执行,只有那些引用了Bourne特殊变量或使用了Bourne的内置命令的脚本才需要修改。bash的命令语法很多来自Kornshell(ksh)和Cshell(csh),例如命令行编辑,命令历史,目录栈,$RANDOM和$PPID变量,以及POSIX的命令置换语法:$(.)。作为一个交互式的shell,按下TAB键即可自动补全已部分输入的程序名,文件名,变
48、量名等等。Bash常用功能Bash常用功能如下:Tab键自动补齐:按tab键补全命令或目录命令编辑快捷键:左右方向键、HOME、END、CTRL+U、CTRL+K命令历史:保存用户曾经执行过的命令操作命令别名:为使用频率较高的复杂命令行设置简短的调用名称标准输入输出重定向重定向操作:改变标准输入、标准输出、标准错误的方向管道操作:连接左右两个命令,将左侧的命令输出的结果,作为右侧命令的输入(处理对象)命令历史命令历史功能具有保存用户曾经执行过的命令操作。历史命令存放位置为:/.bash_history文件。查看历史的命令:使用按键逐条翻看,允许编辑并重复执行执行:history清除历史命令执行
49、:history-c命令别名Bash中的命令别名功能可以将频繁使用的复杂命令定义为简短的别名,当用户需要执行该条复杂命令时,只需要使用别名即可完成对应的操作,降低了操作复杂性,提高了输入效率。别名功能主要通过alias、unalias这两个命令进行设置和取消。存放位置:/.bashrc查看命令别名格式:alias别名设置命令别名执行:alias别名二实际执行的命令取消已设置的命令别名格式:unalias别名取消所有设置的命令别名:unalias-a标准输入输出和重定向标准输入:从该设备接收用户输入的数据标准输出:通过该设备向用户输出数据标准错误:通过该设备报告执行出错信息类型设备文件文件描述编
50、号默认设备标准输入/dev/stdin0键盘标准输出/dev/stdout11=1二巳巨显示器标准错误输出/dev/stderr21=1二巳巨显示器通过改变标准输入、标准输出、标准错误的方向,而不使用默认的标准输入输出设备(键盘和显示器),这种操作称为“重定向”类型操作符用途重定向标准输入将命令的执行结果输出到指定的文件中,而不是直接显示在屏幕上将命令执行的结果追加输出到指定文件重定向标准错误2清空指定文件的内容,并将标准错误信息保存到该文件中2将标准错误信息追加输出到指定的文件中重定向标准输出和标准错误&将标准输出、标准错误的内容全部保存到指定的文件中,而不是直接显示在屏幕上管道操作管道用于
51、连接左右两个命令,将左侧的命令输出的结果,作为右侧命令的输入(处理对象)。管道操作符号“|”。格式:cmdl|cmd2.|cmdn举例:rootlocalhost#free-m|head-2totalusedfreesharedbufferscachedMem:503339163087199rootlocalhost#free-m|grepMem|awkprint$2,$4503163用户自定义变量用户自定义变量是由系统用户自己定义的变量,只在用户自己的Shell环境中有效,因此又称为本地变量。在编写Shell脚本程序时,通常会需要设置一些特定的自定义变量,以适应程序执行过程中的各种变化,满足
52、不同的需要。环境变量Shell的环境变量是指用户登录后Linux系统预先设定好的一类Shell变量,其功能是设置用户的Shell工作环境,包括用户宿主目录、命令查找路径、用户当前目录、登录终端等。在实际使用过程中,环境变量并没有严格的区分定义,用户自己设置的变量也可以作为环境变量。环境变量的名称比较固定,通常使用大写字母、数字和其他字符组成,而不使用小写字母。环境变量的值一般由Linux系统自行维护,会随着用户状态的改变而改变,用户可以通过读取环境变量来了解自己的当前状态。位置变量Bash引入位置变量用于方便通过命令行给程序提供操作参数。在执行Shell命令操作时,除了输入的第一个字段(命令名
53、或脚本程序名)以外,其余的字符串参数按照从左到右的顺序依次赋值给位置变量。需要引用这些位置变量的值(有时为位置参数)时,采用$n”的格式,其中“n”是参数的位置序号(从19)。例如,当执行Servicenetworkrestart”命令行时,service脚本程序的第1个位置参数用$1”表示,对应值network”,第2个位置参数用$2”表示,对应值为“restart”。$0代表所执行命令或脚本程序的名称。预定义变量预定义变量是由Bash程序预先定义好的一些特殊变量,用户只能使用预定义变量,而不能创建新的预定义变量,或直接为预定义变量赋值。所有的预定义变量都是由“$”符号和另一个符号组成的,较
54、常用的Shell预定义变量如下:$#:命令行中位置参数的个数$*:所有位置参数的内容$?:上一条命令执行后返回的状态,当返回状态值为0时表示执行正常,非0值表示执行异常或出错$:当前所在进程的进程号$!:后台运行的最后一个进程号$0:当前执行的进程/程序名执行Shell脚本Bash程序不仅可以作为用户管理Linux系统的命令操作环境,同时也可以作为一种优秀的脚本程序语言。凡是使用Shell编程语言编写的程序文件都可以称为Shell脚本,通俗一点说,只要将一些Linux命令行按顺序保存到一个文本文件中,并给予这个文件可执行权限,那么这个文件就可以称为Shell脚本。(1)建立包含执行语句的脚本文
55、件脚本文件中包括的内容运行环境设置:#!/bin/bash注释信息:以#开始的说明性文字可执行的Linux命令行(2)为脚本文件添加可执行权限举例如下:rootlocalhost#virepboot.sh#!/bin/bash#Toshowusageof/bootdirectoryandmodeofkernelfile.echoUseageof/boot:du-sh/bootechoThemodeofkernelfile:ls-lh/boot/vmlinuz-*rootlocalhost#chmoda+xrepboot.sh运行Shell脚本程序的方法:直接执行具有“x”权限的脚本文件,例如:
56、./repboot.sh使用指定的解释器程序执行脚本内容,例如:bashrepboot.sh、shrepboot.sh通过source命令(或.)读取脚本内容执行,sourcerepboot.sh或.hello.sh整数值比较整数值比较是根据给定的两个整数值,判断第一个数是否大于、等于、小于第2个数等操作,可以使用的操作选项如下:-eq:等于(Equal)-ne:不等于(NotEqual)-gt:大于(GreaterThan)-lt:小于(LesserThan)-le:小于或等于(LesserorEqual)-ge:大于或等于(GreaterorEqual)字符串比较字符串比较可以用于检查用户
57、输入,判断是否匹配。例如,在提供交互式操作时,判断用户输入的选择项是否与指定的变量内容相匹配。=字符串内容相同!=字符串内容不同!感叹符号表示相反的意思-z用于检查字符串内容是否为空格式:字符串1=字符串2字符串1匸字符串2-z字符串逻辑测试逻辑测试是指同时使用的两个(或多个)条件表达式之间的关系。用户可以同时测试多个条件,根据这些条件是否同时成立或者只要有其中一个条件成立等情况,来决定采取何种操作。逻辑测试可以使用的操作选项如下:-a或&:逻辑与,“而且”的意思。表示前后两个表达式都成立时整个测试结果才为真,否则为假-o或|:逻辑或,“或者”的意思。表示操作符两边至少一个为真时,结果为真,否
58、则结果为假!:逻辑否。表示当指定的条件不成立时,返回结果为真if语句使用if语句,可以更好地体现有选择性执行的程序结构,使得层次分明,清晰易懂。单分支if语句if条件测试命令then命令序列fi双分支if语句if条件测试命令then命令序列1else命令序列2fi多分支if语句if条件测试命令1;then命令序列1elif条件测试命令2;then命令序列2elif.else命令序列nfifor循环语句使用for循环语句时,可以为变量设置一个取值列表,每次读取列表中不同的变量值并执行相关命令操作,变量值用完以后则退出循环。Shell中的for语句不需要执行条件判断,其使用变量的取值来自于预先设置的值列表。for语句格式如下:for变量名in取值列表do命令序列Donewhile循环语句While循环语句,可以根据特定的条件重复执行一个命令列表,直到该条件不再满足时为止。除非有特别需要,否则在脚本程序中应该避免出现无限循环执行命令的情况,因为若无法跳出循环的话,后
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 心房颤动及护理
- 企业计划管理培训课程
- 2025年学校班主任班级工作方案措施
- 管理学实训报告
- 小学语文教师基本功笔试试卷
- 酒具相关知识培训课件
- 2025年幼儿园秋季资助工作方案
- 绵阳职业技术学院《日语精读》2023-2024学年第二学期期末试卷
- 广东省江门蓬江区五校联考2025届初三中考5月模拟考试物理试题含解析
- 河南医学高等专科学校《多元数据分析与建模》2023-2024学年第二学期期末试卷
- 无人机租赁的合同范本
- 语文新课标“整本书阅读”深度解读及案例
- 年处理4万吨丙酮-水连续精馏塔设计
- 音乐鉴赏与实践教案:第一单元第四课2.音乐的力量(下)
- 创新创业实战学习通超星期末考试答案章节答案2024年
- 中国肿瘤药物治疗相关恶心呕吐防治专家共识(2022年版)解读
- 大学生职业素养训练(第六版)课件 第十一单元树立诚信意识
- 建筑CAD赛项样题-绘图样题
- 《钢铁是怎样炼成的》读书分享 课件
- DB34∕T 4010-2021 水利工程外观质量评定规程
- 卫生专业技术人员认定、聘用、管理、考核、奖惩制度
评论
0/150
提交评论