实用-计算机网络linux_第1页
实用-计算机网络linux_第2页
实用-计算机网络linux_第3页
实用-计算机网络linux_第4页
实用-计算机网络linux_第5页
已阅读5页,还剩190页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

LINUX--LINUX--PAGE8第一章系统安装和启动过第二章S高级编第三章用户管理第四章文件系统第五章系统第六章内核管理第七章日志管理第八章系统备份第九章NFS 第十二章DHCP第十二章第十三章X本节要点系统安装(分区安装NFSFTPGRUB简GRUB安装&启动过GRUB参GRUB菜GRUB举系统启动过GRUB简介:GRandUnifiedGRUB在x86机器上,提供一个真正基于命令行的,于操作系统(pre-OS)的环GRUB的配置能在每次系统引导时GRUB支持直接和链式装载的引导方GRUB与启动引导GRUB的功命令行交互界支持LBA模式(逻辑块寻址(lilo要求内核文件存放在硬盘的1024柱面以下:安装安装grub软件安装grub到1、装载基本的引导装载程在硬盘的前5122、装载第二引导装载程3、装载在一个特定分区上的操作系4、内核正常加载,运行INIT进设备名使用”()”号和”,”号表达一个设IDE或SCSI接口硬盘统称软盘用fd标硬盘和分区一律从0开EG:第二块scsi硬盘的第三个分区文件名一、在文件系统中加载文件:文件名必须在设备二、不在文件系统中加载文件:用块列表表示此文件在盘的位块列表EG:0+50,50+100载入一个链式装载文件(如windows启动器roothd0,0)或chainloaderGRUBGRUB的接一、菜单界面:[、[e][c][a]二、菜单编辑界[o]、[0][e][d][b][Esc][c]三、命令行接口命令参考下 户通过按[Esc]键,可以看到标准的GRUB菜单timeout:设置默认菜单自启动延时时间,以秒为单位title:装载一个菜单LINUX--LINUX--boot:载入操作系统或链式装载程chainloader:载入一个链式装载程序。使用+1指定分区一扇区内的文displaymem显示当前内存的使用情况initrd使用户能够指定一个在引导时可用的初始RAM盘。installp:安装GRUB到系统的主引导记录kernel:引导操作系统内核,kernel命令指定内核从GRUB的根文件系统中载入。kernel传给内核。lock:锁定GRUB引导菜单项,输入才可启map:虚拟某驱动器quit:退出GRUBroot:将GRUB的根分区设置成特定的设备和分区,比如说(hd0,0并挂入这个分区,这样文件可以被rootnoverify:做root命令同样的事情,只是不挂入分setup自动安装grub-grub-md5-GRUBGRUB––LINUX--Grub.conf配置某系统启动项格设置内核的相应参启defaulttimeouttitleredhatrootkernel/boot/vmlinuz-2.4.20-8roinitrd/boot/initrd-2.4.20-mapmap #unhide(hd0,0):取消隐root #hide(hd0,1GRUBGRUBLINUX--LINUX--defaulttimeoutcolorblack/yellowyellow/blackpasswordwbwtitleMyRed#lock(锁定)/password--md5wbw1(设定独立口令)root(hd0,6)#设置grub根设备为linux内核所在分区kernel/vmlinuz-2.4.18-14roroot=LABEL=/initrd/initrd-2.4.18-14.imgtitleW2Krootnoverify(hd0,0(如果启动不了,请用chainloader#map(hd0)(hd1) #makeactivechainloader+1启动第二个硬盘中的LINUX--LINUX--GRUBmkfsmount/dev/fd0grub-install–root-umount grub>find grub>setup mke2fsmount/dev/fd0mkdir/mnt/floppy/boot/grubcp/boot/grub/stage1/mnt/floppy/boot/grubcp/boot/grub/stage2/mnt/floppy/boot/grubgrub>root(fd0)grub>setupLINUX--LINUX--安装GRUB到install(hd0,0)/grub/stage1d(hd0,0)(hd0,0)/boot/grub/stage2p .lst文件内容就是你的grub.conf的配置文内安装GRUB到软盘ddif=stage1of=/dev/fd0bs=512ddif=stage2of=/dev/fd0bs=512注意:应在 中执LINUX--LINUX--LINUX启动特运行级别init风格:UNIXSystem(使用运行等级配置选项使用init:initializtion#:行是注释Id:惟一标志字段,2-4个字符runlevels:定义本行适用运行等action:采取的行process:应该运行的进LINUX--LINUX--只要进程停止,该进和便重新启进程运行一次,init等待到它停进程运行一系统引导过程中,进程运行,忽略等系统引导过程中,进程运行,init等待结无任何行系统默认运行等系统引导则运行,优先于boot或电源故障后发送信号给init,等待进程终ctrla当init收到SIGINT信号时,该进程运UPS恢复则向init发送SIGINT信LINUX--LINUX--这个是优于其它进程运inittab设置:主机名称,启动交换分区,检查文件系统,装载内核模块启 结构 - - (optional-- LINUX--LINUX--保存所有运行等级需要的所功能:启动、停止、重启某些服系统改变运行等级,通过此检/etc/rc.d/cXd 在运行等。以及运行/etc/rc.d/rcX.d中所有S的X是要改变的运行等LINUX--LINUX--功能:每一运行等级默认启动方法:到格式K{Two-digitnumber}{scriptS{Two-digitnumber}{scriptK:以stop参数运S:以start参数运Two:数字代表执行顺rc.local:在2,3,5运行等级结束时执LINUX--LINUX--一、init首先运行rc.sysinit,使用默认运行等级:inittab中id:3:initdefault:定二、init启动三、rc启动rc3.d中S开头 使用start参数,以stop方式运rcX.d中的以K开头一、init二、格式:shutdowntsecarhcfFtimer:h:F:tsec:告诉initk:c:取消以前执行的time特殊有法:nowLINUX--LINUX--第二章S高级编介变置条件结构和流控循环命函文本过信号与调bash_bash_LINUX--LINUX--bas本bash开始(init_grtty_login_bash,登陆 的改变bash/etc/profile系统初始化文件(检查邮件,/etc/motd~/.bash_profile set和shopt设置bash选项(set–oshopt–ps提示符(PS1=“$(unamen基本提示符(/etc/bashrc特殊转义序列(man搜索路径bash_bash_–echo–echo“byeronow$LOGNAME.thetime+%TLINU退出状态(echo建立S步#thisisthefirstbashsprogramofthe#scriptname:#writtenecho“o$LOGNAME,it’snicetalkingtoecho“yourpresentworkingdirectoryisecho“youareworkingonamachinecalled‘uname-echo“hereisalistofyourLINUX--LINUX--bash_本地变量(用户的一个生命周期中局部变量(仅在创建它的S中有效环境变量(所有的S及子进程、export、su-位置变量($0$1标准 变量特殊变量($$$$$变量LINUX--LINUX--位置变量(set命令测试$0的名$取位置参量的个$*/$@列位置参量(区别“$*展为一个参$1……${10}单个位置参set‘applepie’pearforiin$*[“$*”$@echoLINUX--LINUX--bash_变量_S变定义:在s初始化的时候被设定并运用的变常用s变量PWD:被cd命令设置,当前工EXINITVIUID:当前用户的IDRANDOMSECONDS:记录下s启动的秒IFS:分割符,默认是:\t\n,\t是tab,\nPATHHOMEEXINIT、HOME、IFS、LOGNAM、MAILCHECK、MAILPATH、TERMPATH、TZ、PS1、PS2、EDITOR、PWD、 、MANPATH、LINUX--LINUX--参数:是启动时传递给的数据列$$当前进程的ID$!运行的最后一个进程的ID$-显示S的当前选$?命令的推出状$*所有的参数被双重,如两个参数被替换成$@所有的参数被单独双LINUX--LINUX--标量变量:一次只能赋一个值的变数组变量:可以被赋多个值的变量(一组变量一、变量取名二、变量赋值(建立标量、读区变量1、标量变量:格式:name=value2、格式:name[index]=valuewbw[0]=yes1、格式:name=(value1value2 注:数组只有bash2.0三、变1、标量变量:在标量前加”$2、格式:${name[index${wbw[0]}、特例:${name[*]}或${name[@]}表示数组所有项${name[*]}和${name[@]}方式异同点相同点:出所有项目不同点:*是出所有项目,@是单独每一个 例:wbw[1]=“yes1用${wbw[*]}被认为是两项,因为里面有空而${wbw[@]}被认为是一项,因为它单独每个变四、只读变量 readonly变量五、删除变量 unset变量LINUX--LINUX--bash_元字符:在s中具有特殊意义的字置换:s将包含元字符的字符串根据其意义转换成新字符串的过种类文件名置换(*、?、[characterslsb*h:列举以b开头,hlsb??h:列举以b开头,中间有两个字母,并以hlswbw]*:列举以”wbwlswbw]*:列举非以”wbwLINUX--LINUX--bash_ 显示变量的 显示变量的如果设置了name,则显示其值wbw(name值不变),如果未设置name或为空,显示用户定义的错误信息${name:-如果未设置name或为空,则显示其值wbw(name值不变如果未设置name或为空,设置其值为wbwunsetecho“wbwisecho“t1is注:同理把“-”改成“=/+/?”测试,但要把第二行换成LINUX--LINUX--命令置使用反引号或$(),用命令结果置换当name=$(echo算式置格式可以进行简单的整数运LINUX--LINUX--bash_功能:关闭s对特殊字符含义的解析处理被称为目标:使用单引号、双引号、反斜一、反斜线:取消其后字符的特殊含–需要被的符号:*?[]‘“\$;&()|^!二、单引号所括内容全被处普通字符被没有影特殊字符被则取消原功例:echo三、双引号了除:$和`以外的所有元字例:printfLINUX--LINUX--bash_规则和场1、处理忽略单词界例:printf2、在命令中的处理组例:printThe‘$wbw’variablecontainsthisvalue3、处理换printfkkkkk\(回车,接着输入以下内容printfdsf(4、处理特殊文件例:rm 5、处理通配符以适合find.–namefind.–name6、处理正则表达例:grep0-9][0-9]*$’w1LINUX--LINUX--Bash_整数declare–i示整数变declare–iwbw(变量wbw为整数wbw=oecho$wbw(字符串赋值为wbw=“55”和表达和使用不同的进制(declare–iwbw=5orlet“wbw=+((wbw+=4–((wbw=wbw-2LINUX--LINUX--流:在一个S脚中令执行顺序称作的流程控制:能让的流根据条件而改变令称为条件流控制命退出状态$?真/假在s中用0表示真,非0表示test命字符串判断(=z–n逻辑(复合)判断(-aowbw&&||整数判断(-eqnegtgeltS两大流控制命令IfCase语LINUX--LINUX--test字符串判String1=string2String1==string2String1!=string2-nstring-zstringtest算术判exp1–eqexp2exp1–neexp2exp1–gtexp2:exp1>exp2exp1–geexp2:exp1>=exp2exp1–ltexp2:exp1<exp2exp1–leexp2:exp1<=exp2 test逻辑判–[string1–[string1–:string1test逻辑复合判 pattern1和pattern2 pattern1或pattern2 patternLINUX--LINUX--bash_条件 –如果list1的结果为真,则执行list2;否则再看list3结LINUX--LINUX--bash_test测试文件,结果满足返回”真”,否则返回当你自建一个test的时候,注意文件的同名情-f:是否正常文-h:测试是否文件等等,iftest–f #[[-fwbw.confcpwbw.conf注:set-uid,set-gid对 不起作LINUX--LINUXbfile-cfile-dfile:文件是一 ,结果为-efile-hfile:文件是符号,结果为-pfile-ffile-gfile:set-group-id-rfile-sfile:长度不为0-ufile:set-user-id-wfile-xfile注:-w,-xLINUX--LINUX--bash_Casecase

23、可在一个pattern中用“|4、一般最后一个pattern是*LINUX--LINUX--fornamein注意:name:变量名,word1到wordN是一组用空格分开的字符列,每次循环时,name的值被设为单词列表中的下一个单词forwbwinod755将当 下以w开头的txt文件属性改成LINUX--LINUX-- 1、执行3、如果cmd的退出状态为零,则执行4、当list while注:循环可嵌套,s无层次限LINUX--LINUX--whileread注意:while对filename中的每一行进行处whilereadechodone<LINUX--LINUX--until注意:一直执行循环,直到cmd结果为真中#scriptname:wbw-hourlethour=0until((hour>24))#[hour–gt24

case“$hour”[0-9]1[0-1])echo“Good echo“lunch1[3- echo“siesta echo“GoodletLINUX--LINUX-- inword1word2…1、word所有项随着一个数字显示出2、显示一个命令提示3、当用户输入一个值时,$REPLY被替6、在list中应该有控制中止循环,否则继续下次循改变提示符–PS3=“Pleasemakea#!/bin/shselectselectwbwin"iptables"“test2"“test4“case$REPLYselectiptincase$REPLYin5)break;;

echo“下面是当 iptables-*)

LINUX--bash_shift参量表位移指定次数(默认左位移一位setwhile(($#>0))#[$#-gt0]echobreak省略n则退出本层循环(如果只有一层则直否则退出到外n层循结束本次循环,不过不是退出循fornameinwbwwbw1if[[$name==wbw1]]then

mail$name

LINUX--bash_bash_LINUX--LINUX--函数是提供一种从一个名字到一系命令的的方,可以为一个命令或一组命令的集合。定义name(){listfunctionname(){list执行:name(可以在name后跟上参数传递给函declare-f export-echo}printerrmsg1、可在函数中调用另一函数,但另函数的定义需在调用此语句的前w1(){w2w2(){echo“wbw”此程序在执行会报2、向函数传递参 在调用函数时直接在后面跟上参3、取消函 unset4、全局变 默认所有的用户变量都是全局变5、局部变 用local或typeset定义一局部变递归_函数可以调用自己且没有次数限functionif[$#-gt0];thentypesetarg=“$1”wbw“$@”echo“$arg”}wbw返回值:运行结束,用exit或return返回一个代0:代表正常,非0代表错数据共功能:实现多函数间数据共实现:依靠栈机制实现和DIRSTACK变量(是一个数组系统命令:popd、pushd、函数定义:只包含函数的script文件称函数使用:用.funfilename到当前文LINUX--LINUX--bash_head-n:只输出头ntail+n:只输出尾部n行或除了前n-1行外的所有tail-f:文件uniq:文件中查找重复的-c,--count-d,--repeated-D,--all-repeated-i,--ignore-case-u,--uniquesort:对文件排序、合-d:按字典顺序(只对空格/字母/数字-f:-t:-r,--reverse-n,--numeric-sort-c,--check-u,--uniqueLINUX--LINUX--格式功能:将set1转换成参数-c:-d:-s:-t:EG:tr*[]()’‘’将这些符号转换成空1、set1长度=set22、set1长度>set2长度:循环对应set1和set2tr-s‘’<用来压缩空格,如果结合expandfilename|trs就能删除tabLINUX--LINUX--grep-n显示行号h不显示文件l只显示文件v反向匹w完整匹i字符串比较忽略大小c统计有多少行匹配,而不显示具体的正则表达组成:普通字符、元字普通字符:a-z,A-Z,0-9,空格,下划线元字符:.*^$[^EG:^$^.*$ 行的开 行的结 一个字 零或多个字 括号中的字[^a- 不在括号中的字 词的开 词的结 b次 至少b次w 至少b次,至多w LINUX--LINUX--定义:sed一次只处理一行文件(或输入)并输出到屏幕,是一流线式的非交互式的编辑格式:sed/pattern/action’pattern是一个正则表达式,action是一个命令动作p打印d删s替e多点编r读入文w写入文a追in下一y变q退sed-n‘/wbw/p’sed‘3d’sed‘3,$d’sed‘/wbw/d’sed-n‘s/^wbw/wbw1/g’sedsed-e‘1,3d’-e‘s/wbw/wbw1/’sed‘/wbw/rnewfile’sed-n‘/wbw/wnewfile1’sed‘/^wbw/a\wangbiwen’sed‘/wbw/i\wangbiwen’sed‘/wbw/{n;s/home/HOME/;}’sed‘1,3y/root/ROOT/’sed‘5q’EG:(wbw.txt是一个价格示例文件sed ‘/0\.[0-9][0- sed 重复使用表达式的值,使用&号。使得pattern3pattern2EG:sed‘s/wbw/(&)/g’多重应用格式:sedecmdesed-e‘s/wbw/(&)/g’-eLINUX--LINUX--定义:linux下用来数据和产生报告的程序语言。是S和管理小型数据库的必须工具awk由awk版本(linux操作系统使用的版本awk帮awk语法格命令输入格式(df|awk$4文件输入格式(lsl语法:awk[-FfspatternactionFfs:允许awkscript:–pattern:是一个正则表达式(如果省略,表示所有行–actions:in_file:awkLINUX--LINUX--输出函数date|awk‘{print“Month:”$2“\nYear:”ls-lawk‘{print$1$9}’awk'/.*\$[1-9]*\.[0-9][0-9]*/{print$0,"*"}/9][0-9]/{print;}'输出函数printf(格式化输出转换字修正格式化说明printfformatawkprintfthefilenameis25s大小%8d\n”,$9,$5}’–awk–awk–F‘[:\t]’‘{print$1}’LINUX--/^wbw/{print“o{printawk-fwakfile记录:默认以换行符结束的$0变量(整条记录域awk‘{printNR,$9,$5,$1,NF}’域分隔输出域分隔符LINUX--LINUX--bash_awk关系运算符~value~/pattern/:如果vlaue匹配样式,则为value!~/pattern/:如果value不匹配,则为awk-F:‘$1~/wbw/’awk‘$5>100{printf“%-15s\n”,$9;}awk-F:‘$1~/^w[a-z]*/{print 条件表达awk‘{print($5>100?“bf:”$9:“sf:”$9)}’运算符*取余)^(逻辑运算符&&||–awk‘$5>50&&$5<=–awk‘$2==2||$5>=–awk‘!($5>50&&$5<=awkroot/,/haltetc/passwd(范围检测程序-password-LINUX--LINUX--bash_awk数字和字符串常量(内型由内容确定自定义变量(字母、下划线、数字基本定义和功能与s变量一样,但变量不加$递增和递减操作符(x++、{x=1;y=x++;print{x=1;y=++x;printawk‘/^$/{x=x+1;printx #统计wbw.txtBEGIN模块:其后紧跟着动作块,在awk输入文件行前执awk‘BEGIN{FS=“:”;OFS=“\t”;$1,$2,$3}’END模块:不匹配任何输入文件,但执行动作块中所有动作END模块在整个输入文件处理完毕后被处理awk‘END{print“therecordsis”NR}’BEGIN{actions}/pattern/{actions}……/pattern/END下标分下标分隔LINUX--变 解 默认 命令行参数个 当前被处理文件的ARGV标志符(第几个文件) 从s传递过来的包含当前环境变量的数组 当前文件的记录 输入域分隔 空 当前文件的记录 数字输出格 输出域分隔 空 输出记录分隔 新 输入记录分隔 新LINUX--LINUX--重定向输awk‘$5>100{print$9,$5>“wbw.bak”}’重定向输入awk‘BEGIN{“date”|getlined;printd}’awk‘BEGIN{“date”|getlined;split(d,mon);printawk‘BEGIN{printf“whatisyourname?”;getlinename<“/dev/tty”}$1~name{print“Found”name“online”,NR”.”}END{print“seeyou,”name“.”}’awk‘BEGIN{while(getline<“/etc/passwd”0)wbw++;print管awk‘{print$1,$2|“sort-r+1-2+0-1”}’awk‘{print$9|“sort+1”}END{close“sortLINUX--LINUX--{if(expr1){actions1}elseif(expr2){actions2}else{action3}}1、判断expr13、expr1是假,判断expr25、expr2为假,执行action3并能出>100)print$9“Too>50&&$5<=100){print“OK”}}’>100)print$9“istoobig”;else$9“issmall”}’awk‘{if($5>100){print$3}else{print$1}’和while唯一和while唯一的区别是do至少执行一次循环LINUX--while(expr)判断expr值为真,则执行循环体,为假则退出循#testwhileawk‘{x=NF;while(x>0){prinf(“%16s\n”,$x);x-print“”;}’EG:awkwhile($wbw<=NF){printdoactions}whileexpr)LINUX--LINUX--for 循环变量初 增 tr,结束条 trawkprintf}printf awk‘{for wbw=1;wbw<=NF;wbw++)NF,$wbw}’•exit语•exit语LINUX--bash_awk_{for(x=3;x<=NF;x+=1)if($x<0)){print“wbw#breaksoutoffor如果$x小于O,则退出循环体{for(x=3;x<=NF;x++)if($x==0){print“getitem”;continue}#startnextiterationofthefor如果$x等于0,循环重新从顶端开始next:跳过后面的表达式检查,进行下一行文件检awk‘$3>30{printf$0,next;}$3>20$3>30后,如果条件满足就不应该再执行$3>0了,nextwbw.txt文件后的其它行检查{if($1~/wbw/){next}elseLINUX--LINUX--1、共享s变量例awk‘x=“‘$name’”{printf("%s",x)}'注:$name是s变量,必需先赋值给awk变此变量要引号和单引号括2、将s命令的执行结果送给awk处whou|awk'{printf("%s正在执行3.sscript程序读awk的执行结who-u|awk'{print$2}'|whileread echo 4.awkawk‘{name[x++]=$9};END[for(i=0;i<NF;i++)print5.在awk中执行s命令 嵌入函数awk‘{print“ok”;system(“echono”)}’LINUX--LINUX--length(string)求串string中的字符个数index(search,string)返回string中search串的位置length(string)求串string中的字符个数match(string,regreg匹配的string中的位置sub(reg,string,)第一次当常规表达式reg匹配,替换串substr(string,position,len)返回一个以position开始lentotower(stringstring中对应的小写字符toupper(stringstring中对应的大写字符atan(x,y)x的余切(弧度)cos(xx的余弦(弧度)exp(x)e的x幂int(x)x的整数部分log(xx的自然对数值rand(0-1之间的随机数sin(x)x的正弦(弧度)sqrt(x)x的平方根sprintf(format,variableformatvariablesLINUX--LINUX--信号:是用一种用来标示重要事件发生的软件常用信值–A1–A2–A3–9–A–A缺省动作:定义在程序缺少信号处理器的情况下系统对程序采取的动作A.默认动作是中止程B.默认动作是忽略信C.默认动作是终止进程并产生core文D.默认动作是停止进E.信号不允许F.信号不能被忽发送信kill-s信 进程ID 信号代 进程ID信号处理方式1忽略信在关键代码段忽略信12315123第一次是对这些信号捕捉,但没有第二次是恢复对这些信号的默认处理方LINUX--LINUX-- name "c;exit2”123if[-f "Cleaning"Cleanecho"nosuch}whilesleepLINUX--LINUX--语法检查执行程序方式1、 arg1arg22、/bin/bashoptionscriptarg1arg2命选含‐bash-x‐bash-v按照输入执行以前的‐bash-n‐set- ‐set 关闭$-:当打个某个选项后,此变量中会包含相应以下代码在程序中检查当前调试环case$-*v*)echoverbose*x*)echotrack…对于大程序,可对部分检查语法和调试或只在需要的地方打/bin/bash–nscript arg2…有的在执行时不能产生错误,这时需保证绝对无错误,LINUX--LINUX--if[$1–ne0echoecho}echo“Deletingoldbackups,pleasewaitrm–rfbackup/*>/dev/nullFailedecho“Makereadcase$wbw[yY]|[yY][eE][Ss])echo“Makingwaitcp–r [nN]|[Nn][Oo])echo“BackupLINUX--LINUX--getopts命格式 option- 1、getopts检查所有令行参数,查找以-开头的参给定的option-string4、重复1-31、var一般用2、可在参数后加:号,表示此选项还有附加参3、每次getopts检查某选项时,如果此选项有附加参数,它赋予给4、当输入一个错误参数时,getopts会报错( USAGE="`basename$0`[-c][-v][-f]whilegetoptsf:cvOPTION2>/dev/nullcase"$OPTION"f)FILENAME="$OPTARG"

echo"$USAGE"exit1echobash_bash_ls|xargsls|xargsn20cat:表示只传递前20LINU--需要s在置换后再执行时需echoo结果是:而用:evalechoo检查一个命令在系统$PATH中的路退出码为0表示在$PATH中找从标准输入中接受单词列表,并把这些单词作为参数传指定ls|xargsbash_bash_LINUX--LINUX--用法1:expr3*算术运用法2:w=1234abc;expr$w后面用一个正则表达式,统计符合要求的字符用法 abcdef:expr后跟一个常量,显示后面正则表达式括号中的内暂停给定的秒whilesleepdone>>LINUX--LINUX-- •••••LINUX--LINUX--口令文 口令文口令文组文组文组口令文LINUX--LINUX--用户用户配置文GROUP=100默认组ID是100,在默认的有组时有HOME=/home用户 顶INACTIVE=-1当口令到期后,帐号变成非活,-1表示激EXPIRE=MM/DD/YY帐号将被多长时–如果手工创建,则该–如果手工创建,则该LINUX--LINUX--帐户及帐户的分–单用户多任务,多用户多任帐户的分–帐户相关的配置文帐户的添加 、删除(useradd、usermoduserdel、组及帐户和组的关–组及组的分类(私有组、标准组–帐户和组的对应关组的添加 、删除(groupadd、groupmodgroupdel、LINUX--LINUX--令finger查询用户信息及默认用户环 可以查看一个用户的UID和 显示曾经登录到计算机的用户列adduser同newusersnew-batch批量加入大量用户(new-同passwd 测试口令(rpmqapwconv/pwunconvgroups[username]显示当前用户所在的newgrpgroup切换到某组运行(必须已属此组LINUX--LINUX--1、用Host_Alias关键字定义主机列如:Host_Alias2、用User_Alias关键字定义用户别名列如:User_Alias3、用Cmnd_Alias关键字定义命令别名列如:Cmnd_Alias4、用Runas_Alias定义运行别名列定义格userhost=[runasuser]command如:wbw LINUX--LINUX--/etc/bashrc:系统定义令别名和函/etc/profile:系统环境说明和启动程/etc/inputrc:系统键盘设$HOME/.bashrc:用户自定义命令别名和函$HOME/.bash_profile:用户环境说明和启动程LINUX--LINUX--支持限额资源1、索引节点数2、磁盘分区块数1、配置内核支持(在filesystem中2、安装quota程序3、配置 4、编写启动过程中的检5、LINUX--LINUX--‐‐‐mount- (重新/etc/fstab文件‐quotacheck-cug (创建文件)quotacheck-quotacheckvug (启用当前磁盘用量表‐edquota (为用户设置‐quota (查看或验证用户的设置‐edquota-pwbw-uu1u2(‘awk-F:’$3>499>{print‐edquota-g (为用户组设置quotagwbwedquota (设置软限制过度repquota (repquota–a)(报告磁盘限额‐quotacheck-vug‐quotaon-vug-a或 (启用‐quotaoff-vug-a或 (关 LINUX--LINUX--第四 文件系统管 一.Linux文件系统的树型结Linux的层次结构, 和文件组成。 名和文件名一 是一个驻留在磁盘上的文件,称 文 文件系 Linux 个inode,它们有唯一的,称为inode号二.文件的类三.文件的权 LINUX--LINUX--文件 的权 的含r读权文件内可以列 的文件列W写权修改文件内 创建、删除文X执行权执行该文可以使用cd命进入LINUX--LINUX--文件权限的数字表示(2、3、4位0没12431+2⬄51+4⬄62+4⬄write+71+2+4⬄LINUX--LINUX--文件权限的数字表示法(第11Stickybit(在内存中保存镜像2GroupID4UserID3567LINUX--LINUX--权限字r(读w(写x(执行设定方–+: –-:删除权:分配权限,同时删除旧的权 改变文件 的权 属 属主的 其他用 所有用LINUX--LINUX--Ext2Linux最初的文件系统是Minix(较大的局限性)陷:是个实验文件系只支持14个字符的文件只支持文件大小在64M以没有日志机1992年4月推出EXT(EXTendedFile1993年推出了EXT2文件系统(Linux的标准文件系统优点:使LINUX的文件系统采用了VFS(VirtualFile缺点:仍有很多性能上的限LINUX--LINUX--文件是在块设备上的物理块为单位物理块是块设备上划分的大小相同1024/4096CPU负担,牺牲器利用率当文件在块设备上时也被划分成与物理块大小相等逻辑在是系辑块序列组成的。一个文件系统一般使用块设备上的一个独立的逻分区在文件的逻辑分区中除了表示文件内容的逻辑(称为数据块)外,还设置了若干包含管理和控信息的逻辑块EXT2文件系统也是由逻辑块序列组成的EXT2文件系统把所使用的逻辑分区划分成块并从0开始依次每个块组中包含若干数据块,数据块中就 或文件容块组中包含着几个用于管理和控制的信息块超级块、组描述符表、块位图、inode位图和inode表LINUX--LINUX-- 超级块对于文件系统的使用和是至关重要的超级块位于每个块组的最前面,每个块组中包含超级块内容是相同的在系统运行期间,需要把超级块到内存的系统0。Linux中,EXT2超级块定义为ext2_super_block结构–LINUX--LINUX--ext2_super_block结构是超级块在磁盘中的形态在系统运行期间磁盘上的超级块要读入到内存,内存建立一个超级块的映像/include/linix/ext2_fs_sb.hLINUX--LINUX--组描述符表的每个表项是一个组描述符Linux的组描述符为32字节,每一个块组 LINUX--LINUX--EXT2文件系统中数据块的使用状况由块位图来描块位图一般占用一个逻辑块。EXT2块位图装入一个高速缓存在超级块的内存映像ext2_sb_info结构中s_loaded_block_bitmapss_block_bitmapExt2文件系统Ext2文件系统LINUX--LINUX--在Ext2文件系统inode是基本的构件,表示文件系统树型结构的节点。每一个节点是一个文件或 。Ext2文件系统中的每个文件有一个inode描述,且只能有一inode描述在Linux中Ext2文件系统的inode定义为struct①i_mode指定了inode文件的类型和权限②i_block[]指针数组,指向文件内容所在的数据块i_flags是文件属性的标志EXT2inode在内存中的映EXT2文件系统的inode与文件一起存放在外在系统运行时,把EXT2的inode写入内存建立映/usr/include/linux/ext2_fs_i.hext2_inode_infoinode表和inode位inodeinode表inode号。inode在块组中所有数据块之前。inode位图反映了inode表中各个表项的使用情况,为1表示对应的表项已占0inode位图也装入一个高速缓存中。s_loaded_inode_bitmaps:装入高速缓存的inodes_inode_bitmap[]:相应inode两个数组大小EXT2_MAX_GROUP_LOAD(当前值为8)LINUX--LINUX--Ext2文件系统 在EXT2中 是一个特殊的文件,称 文件在 文件中, 项ext2_dir_entr结构体,它们前后连接成一个类似链表的形式。structext2_dir_entry u32 /*inode u16rec_len;/ u16name_len;/*文件名长度charname[EXT2_NAME_LEN*文件名只是一个特殊的文件,由Inode得到此块数据上面用到EXT2_NAME_LEN是255LINUX--LINUX--符号连接实际上就是一个文件记录一个路径字符 /etc/wbw记录的是字符串如何保存一个符号方法–最直接的想法用是wbw指向的block中记录这个字串。但这比较浪费,因为短短的字串也要占用一个方法二–如果字串比较短,根本不用block,前面提到的指向block的 u32i_block[EXT2_N_BLOCKS]可以省下来保存这个给定某Inode,找到此文件所占据的所有分析1、找到此分区的 (注,非系统root), Inode号固定为2、Inode号作用范围是本分3、读出:superblocks_inodes_per_group得到每有多少个注:Inode从1开始,而block从0开始,所以下式要减Inode(ino1s_inodes_per_groupoffset=(ino-1)%s_inodes_per_group给定一 Inode,找出 下的一级子内分析1、按文件方式找到 所占据的数据2、 块中按dir_entry的结构取出所有数据,就得出一个文件的Inode号

LINUX--优点一个全新设计的新型文件系日志式文件系处理小文件(小于4K)特别优秀,因为它的文件数据和索引是紧临在一起,存放在B*树的叶结动态分配索尾文件压缩(能提高性能,但降低了速度工具使用LINUX--技术特1、64位文件系2、把设备分成8个或的大小相同的区域(分配组),这样,I/O3、两根B+树,一棵按空间大小来空闲空间的范围,一棵物理位置的排序来这些区域4、尽量使用B+5、相对reiserfs来说:它在重启时给为空的块置零,更频繁将暂挂元数据写到磁盘6、使用延迟分配技术:可优化磁盘写7、文件系统权不局限于ugo的rwx,可随意填8、支持扩展属内核补patch-p1</path/to/xfs-1.1-2.4.18-工具软xfsprogs-

LINUX--1、最小文件系统:16MByte,最大文件系统:512万亿2、真正的64位3、动态Inode分4、两 组织: (可组织八项内容在Inode中),(使用B+树LINUX--LINUX--1、处理大文件:XFS比较合2、处理小文件:ReiserFS比较合3、JFS性能一般,但稳定、健4、EXT3性能很好,并完全兼容LINUX--LINUX--软件RAID产生的背IDE不适合企业(财务数据、产品技术资料SCSIRAIDRAID的原RAID:(RedundantarrayofinexpensivedisksRAID实现:硬件RAID(PC适配器)和软件RAID(linux内核RAID0(延展、接口)2块磁盘进行操作(一块磁盘的不同分区上也可以操作,但意义不大),分散在多个磁盘上速度快,可靠性差。RAID1(镜像)至少有两块磁盘进行操作,同时写入不同磁并行操作,两块磁盘数据完全,速度稍慢,但可靠 需要三块磁盘,和3级别相似,利用奇偶校验恢复坏的数据,交互各个磁盘LINUX--LINUX--文件RAID_配置/etc/raidtab文件,用以下参raiddevraid- –nr-raid-2–nr-spare-0–chunk-size–persistent-1– –raid- –device–raid-disk–device–spare- 然后用mkraid/dev/md0初始化后就有了/dev/md0LINUX--LINUX--1、persistent-superblock:持久超级–是在mkraid时在所有设备的开始创建一个超级块,使内直接读出所有参与RAID设备的配置2、chunk-size:写入设备的最小数据块大–选择合适大小的块,提高操作性能(如,对于raid0,块大4K16Kdisk0和第四块写入disk1)LINUX--LINUX--LVM:logicalvolume优点:(磁盘空间的动态划分和调整硬盘的多个分区由LVM统一为卷组管理,可以方便的加入或移走分区以扩大或减小卷组的可用容量逻辑卷上建立文件系统并且可在卷组容量范围内LVM可以跨分区建立文件系LINUX--LINUX--LVM_物理卷:Physicalvolume,分区或整个硬盘或RAID卷组:Volumegroup,一个或多个物理卷组成的逻辑卷:logicalvolume,物理区域:physicalextent,物理卷中可用于分配的最小单元逻辑区域:logicalextent,逻辑卷以相同的块大小,逻辑区域建立物理卷(pvdisplaypvcreate建立卷组(vgcreate建立逻辑卷(lvcreateL10Mn卷组中添加新物理卷(vgextend扩充逻辑卷容量(lvextendL4Mdev––LINUX--lvm设备文pvscanvgscanlvscan物理卷命pvchange改变pvpvcreate 卷组命 备份卷组中VGDA信息到 从文件中恢复物理卷的 检测卷组中VGDA ––LINUX--卷组命 合并两个已存在的卷 重新建立已有卷组中的卷 和设备文 逻辑卷命 逻辑卷中ext2 LINUX--LINUX--一、模式逻辑块与物理块模1、线2、交替:提高逻辑卷性能,但不能扩展逻辑先安装工再 PATakeFile中的有关重编译内LVM_LVM_LINUX--LINUX--1、2立物理卷针对整个硬盘:pvcreate针对分区,修改分区类型为 pvcreate3、建立卷–vgcreate /dev/sda14、激活卷–vgchange–ay5、移除卷– 6、添加物理–vgextend 7、显示物理卷信–pvdisplay8、从卷组移除物理–vgreducetestvg9、lvcreate选项–n辑卷名组名pv-istripes:采用交错方式,stripes是卷组中PV-Istripe_size:交错方式的块大小,必须是2-lLes:LV-Lsize:LV-sLV的snapshot-n:例:lvcreate–l10230testvg–nlvcreate–i2–I4–l100–nmylv110、lvremove移除逻辑–lvremove11、lvextend展第一如:lvextendL12G/或:lvextendL+12G/第二1、针对resize2fs(使用前卸载文件系统e2fsadm(如果用此命令可省略第一步如:e2fsadm reisize_reiserfs-f3、针对例 12、缩小针对e2fsadm-L- Resize_reiserfs–s-1Glvreduce–L-1G针对13、在PV间转移数– 14、系统启动和关/sbin/vgchange-a/sbin/vgchange–apv间转移数 用snapshot做备lvcreate–L500M–s–n 加载对于ext2/ext3对于xfs用,-onouuid,norecovery,ro转变根文件系统为转移原根文件系统到新的使用lvmcreate_initrd建立initrdLINUX--LINUX--第五章系统系CPU(处理指令和程序–忙(执行用户态进程或内核态进程–闲(等待I/O或空转I/O(系统数据的输入输出整体性能(top、sar、uptime、ps、cpu(mpstat、sar-内存(sar- LINUX--LINUX--系统_分/etc/rc.d/init.d/sysstatstart(负责数据的收集/usr/lib/sa/sa1(收集信息令-A:-r:器信-R:-u:CPUsaru58(时间间隔5秒,采样8uptime、ps(监视系统内活动进程状态vmstatvmstatt t秒时间内n次采样mpstat(多处理器监视mpstat–p1报告第二块CPU的使用情况(MPSTAT对cpu的从0iostat(iostat-dLINUX--LINUXi:显示设备参-c:16/32位传输开-A:预读开-m:多扇区操-d:DMA模式开-X:传输模-u:中-F:设置光驱速度(倍速EG:hdparm-X66-d1-u1-m16-c3LINUX--LINUX--内核利用设备驱动程序与硬件通所有设备都在/dev下创建虚拟设备文文件中参数:文件名、主设备号、从设备号、设符、管道、无缓存的字符设创建命令:mknod[optionsdeviceb!c!p!u主设备号备可加载内核模块LINUX--LINUX--编译内核过[针对2.4内核[makemrproper makexconfig/makemakeclean清make //产生内make //编译模make //安装模 中[针对2.6内核makemakemakemakeLINUX--LINUX--第七章日志管理日志的主要功能系统发现试图系统安全的重复举动(也就是一个者试图冒root那些想要越权的用户(也就是那些使用sudo命令作为root执异常的使用模式(user1l从9点工作到5点而日志显示在3AMuser2CPU时间实时侵入日志子系LINUX--LINUX--由多个程序执行,让管理员能谁在何时登录进入系统/var/run/utmp(who、w、users)/var/log/wtmp(last,lastlog)3、把用户信息写入wtmp内核启动日志(内核执行,记录系统启动和内核的实时日志 输出:dmesgn系统事件日syslog向文件/var/log/messages/var/log/syslog告LINUX--LINUX--服务名 其他系统守护进程,如 系统:lpr、 网络系 由syslogd产生的消 UUCPlocal0~local7信息等 warn或者waringerror或者 emerg或者panic:系统 记录行为(举例)描 发送消息到控制/var/adm/messages把消息写到文件 把消息发到其它的日志记录服务 传送消息给用 传送消息给所有的用LINUX--LINUX--#Logallthmessagesinone #Savandnewserrorsoflevelerrandhigheraspecialuucp,news.crit#Everybodygetsemergencymessages,pluslogthemon*.emerg#RootandWbwgetalertandhigher*.alert#Logallkernelmessagestotheconsole#Loggingmuchelsecluttersupthescreenkern.*/dev/console#Loganything(exceptmail)oflevelinfoor#Don'tlogprivateauthentication*.info:mail.none;authpriv.none•n轮•n轮换方案中的版本EG:vi添加 logger–plocal4.warning“testlogrotate(处理日志文件 压缩日志文件的所有非当前版daily,weekly,monthly指定轮换日志间missingok如果日志不存在,不会发出抱press压缩最近之外的所有版 标记prerotate或postrotate结erros 向指定的mail报告错notifempty日志为空则不postrotate轮换日志后则运行prerotate轮换日志前要运行

LINUX--LINUX--LINUX--Rotateinclude/bin/kill–HuP`cat}/var/log/samba/*.log/bin/kill–HUP`cat}LINUX--LINUX-- 记录系统的安全信 记录谁登陆过系统,用last命令查看/var/log/boot.log:记录开启或者关闭系统的信息/var/log/message:记录系统发生的错误信/var/log/auth.log:日志 内核消息 FTP会LINUX--LINUX--第八章系统备份备份设备和介1、软2、超级软3、CD-R和CD-4、DigitalLinearTape)DEC公司产5、AIT(高级智能磁带)Soney公司产6、硬LINUX--LINUX--c:选项标识创建一个存W:写入备份内容到备份设备以后再读出来进行验M:指示tar若需要时可以多张磁f:通知将存档写入到哪t:产生备份列x:解压z:压缩方式备p:指示tar在解压缩时保留原始文件的所和权-r添加文件到磁A:添加文件到文--delete:从文档删除几个文LINUX--LINUX--优点可以多卷磁任何类型的文权限、归属关系和修改时间都被保存能有增量的方式进u:让dump备份后更新f:通知dump输出发送到别B:指定磁带长度b:块大小(默认大小是d:设置磁带密W:指示哪些文件系统需要备份rdump使用:(rdump选项主机名:设备名要备份文EG:dump-5u–B10000–f/dev/st0LINUX--LINUXx:-r:完整恢复文件系统(用mt命令来跳到正确的文件系统处先用ssh登录,再用此命令恢复,用法同备rsync-vazu-essh./*scp-p 恢复wget-m-c-nHftp://username:password@3LINUX--LINUX--NFS:(Netwokfile建立在RPC底层可用tcp或udpNFS的安装rpm-qnfs-utilsNFS配置文LINUX--LINUX--••••exports文件格共 客户端地址(设置选项共 :系统中输出作为共享 路客户端地•指定ip地址的主 •指定的主•指定网络段中的所有主 •网络 @groupname(NIS网络组•指定域中的所有主机•所有主 •设置选•syncnfs服务器同步写磁盘,防止数据丢共只共读写(默认方启动/停止 portmap 配置文件实时数据文件导出命令检查命令类语含NISCIDR-风LINUX--LINUX--ro:以只读方式导rw=list:大多数客户机为只读,list的主机允许以可写方式安装NFS,其他所主机必须以只读方式安root_squash:将UID0和GID0anonuid和anongid所指定的no_root_squash:运行root正all_squash:将所有的UID和到它们各自的版本 anongid=XXX:指定 被的GID号sSecure:必须 端口发insecure:运行从任何端noaccess:防 这 及其子录(用于嵌套导出安装标志rw:以读写方式安装文件系统(也必须要以相同的方式来导出ro:以只读方式安装文件系bg:如果安装失败,则在尝hard:如果服务器不,试图它它的操作被阻塞,直到服务器恢soft:如果服务器当机,则返回失败消intr:允许用户中断被阻塞的操nointr:不允许用户中retrans=n以soft方式安装,在返回出错消息前重复发出请求的次为(以十分之一秒为单位LINUX--LINUX--viLINUX--LINUX--LINUX--LINUX-- samba samba samba netbois samba/etc samba的web 添加samba samba的客户工 samba sambaSamba客户端变%a:客户端体系:比如:Win95WfWgWinNT,Samba...%I:客户端IP地%m:客户端NetBios%M:客户端DNS用户变%g:用户%u要%H:用户%u%U:Unix前用户共享变%P:当前共享的%S:当前的共享名服务器变%h:Samba服务器的DNS名%L:Samba服务器的Netbios名%v:Samba版本%T:当前日期和时%N:NIS共享

LINUX--LINUX--LINUX-- //共户 //共 //共 设以上为系统自带的,用户也可以根据实际需要定义共 [自定义 自定义的共LINUX--LINUX--netbiosinvalid不允 验证(依赖:passwordserverso

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论