网络操作系统课程课件_第1页
网络操作系统课程课件_第2页
网络操作系统课程课件_第3页
网络操作系统课程课件_第4页
网络操作系统课程课件_第5页
已阅读5页,还剩183页未读 继续免费阅读

下载本文档

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

文档简介

Linux网络操作系统易著梁邓志龙Email:yzlmhm@163.comjenod@163.comLinux网络操作系统易著梁邓志龙1你的网络公司管理着在不同地区的多台Linux主机,现状如下:1)这些主机安装有各种发行版的Linux,比如Ubuntu,Fedora等(不同Linux发行版本,图形操作界面可能不太一样),而且有些做服务器Linux主机只提供了文本环境2)Linux主机不在同一地区,因此,管理Linux主机大多使用远程登录方式(Telnet,SSH)——如果你不怕辛劳,也可以事事都身临其境,而远程登录通常采用文本环境登陆作为公司新网管的你要高效率的管理好这些主机,怎么办?项目背景你的网络公司管理着在不同地区的多台Linux主机,现状如下:2项目分解:任务1初识Linux命令任务2使用命令进行文件和目录管理任务3使用命令进行简单系统管理任务4使用命令进行文件压缩和解压缩任务5使用命令进行进程管理与作业控制项目3用Linux命令行操作处理日常业务项目分解:项目3用Linux命令行操作处理日常业务3任务1初识Linux命令1、为什么要使用Linux命令历史原因在Linux早期的版本中,由于不支持图形化操作,用户基本上都是使用命令行方式来对系统进行操作,另一方面,Linux发行版本众多,但不同发行版之间Linux命令操作都是相似的;命令优势现在虽然有了图形化操作界面,但是掌握常用的一些Linux命令是非常方便的。Linux命令是Linux操作系统的一大优势,命令行操作的运行不需要占用过多的系统资源,功能也十分强大,几乎所以的Linux操作都可以通过命令完成。熟练掌握Linux命令操作也是领会Linux系统精髓的必然途径。远程管理(Telnet、SSH)要求作为公司新网管的你要高效率的管理好这些主机,能够熟练使用Linux命令行处理日常业务是必须的。任务1初识Linux命令1、为什么要使用Linux命令42、怎样进入命令环境本机进入1)开机后进入文本环境开机选择恢复模式或者设置开机直接进入文本模式2)图形化环境还提供了一种仿真“终端”,在“终端”下的命令操作与纯文本环境的命令操作是完全一样的,在UbuntuLinux上打开“终端”方法是点击“应用”—“附件”—“终端”。3)使用虚拟控制台:Ctrl+Alt+Fn远程登陆使用Telnet方式2、怎样进入命令环境本机进入53、linux命令格式说明(1)command[-options][arguments(或parameters)]命令名[选项][参数1][参数2]……选项是对命令的特别定义,以-开始,多个选项可用一个-连起来如ls-l-a与ls-la相同单字符选项前使用一个减号(-),单词(多字符)选项前使用两个减号(--)如ls--help参数[arguments]提供命令运行的信息,或者是命令执行过程中所使用的文件名。操作参数可以是文件也可以是目录,有些命令必须使用多个操作参数,如cp命令必须指定源操作对象和目标操作对象。3、linux命令格式说明(1)command[-opti63、linux命令格式说明(2)command[-options][arguments(或parameters)]最简单的命令只有命令名,复杂的Shell令可以有多个参数。命令与参数区分大小写,命令名一般由小写的英文字母构成,往往是表示相应功能的英文单词或单词的缩写如cp是copy的缩写,表示拷贝文件演示命令:date,Date,DATE命令名、参数和操作参数都作为命令执行时的输入,它们之间用空格分隔开。3、linux命令格式说明(2)command[-opti7任务2使用命令进行文件和目录管理要学会使用Linux命令,首先要能够使用命令进行文件和目录管理任务细分任务2.1定位文件与目录教师指导学生完成教材3.2.1任务2.2浏览文件与目录教师指导学生完成教材3.2.2任务2.3搜索文件内容教师指导学生完成教材3.2.3任务2.4操作文件和目录教师指导学生完成教材3.2.4任务2使用命令进行文件和目录管理要学会使用Linux命令8任务2.1定位文件和目录1)pwd-显示用户所在的位置显示用户所在的位置。root@Ubuntu:~#pwd/root 在UbuntuLinux文本环境,对于命令前的“root@Ubuntu:~#”,说明如下:其中“root”表示登录用户名,“Ubuntu”代表计算机名,“:”后边表示的是用户当前目录最后的字符为命令提示符。UbuntuLinux操作系统默认是使用普通用户账号登录系统,默认的命令提示符为“$”,如果使用root即超级用户账号登录系统后,则默认的命令提示符为“#”。任务2.1定位文件和目录1)pwd-显示用户所在的位9任务2.1定位文件和目录2)cd-命令用来改变工作目录在使用cd进入某个目录时,用户必须具有对该目录的读权限。(1)改变当前所处的目录,如果用户当前处于/root目录,想进入/etc目录。root@Ubuntu:~#cd/etc root@Ubuntu:/etc#pwd/etc注意cd后的空格。(2)返回上级目录。root@Ubuntu:~#cd..root@Ubuntu:/#pwd/任务2.1定位文件和目录2)cd-命令用来改变工作10任务2.1定位文件和目录2)cd-命令用来改变工作目录(3)回到用户主目录。root@Ubuntu:/#cd~root@Ubuntu:~#pwd/root返回到用户主目录也可以直接执行命令“cd”。在Linux系统中,“~”表示为登录主目录,“.”表示目前所在的目录,“..”表示目前目录位置的上一层目录。对于“root”用户的主目录是“/root”,其他一般用户的主目录默认在“/home”下,例如,对于“student”用户,默认主目录为“/home/student”。如果要在最近工作过的两个目录间切换,可以执行命令“cd–”。任务2.1定位文件和目录2)cd-命令用来改变工作11任务2.1定位文件和目录3)find-在硬盘上查找文件find是Linux功能最为强大,使用也是较为复杂的命令。Find命令格式:find[<路径>][匹配条件]路径:希望查询文件或文件集的目录列表,目录间用空格分隔。匹配条件:希望查询的文件的匹配标准或说明。任务2.1定位文件和目录3)find-在硬盘上查找12任务2.1定位文件和目录3)find-在硬盘上查找文件下面简单介绍使用:(1)从根目录开始查找文件名为passwd的文件。root@Ubuntu:~#find/-namepasswd/etc/pam.d/passwd/etc/passwd/var/cache/system-tools-backends/backup/2/etc/passwd┆(2)查找/usr目录下前10天访问过的文件(仅第10天这一天)。root@Ubuntu:~#find/usr–atime10任务2.1定位文件和目录3)find-在硬盘上查找文件13任务2.1定位文件和目录3)find-在硬盘上查找文件(3)查找/usr目录下前10天之前访问过的文件。root@Ubuntu:~#find/usr–atime+10(4)查找/usr目录下前10天之后访问过的文件。root@Ubuntu:~#find/usr–atime-10演示以上命令区别(5)列出当前目录下所有扩展名是“doc”的文件。root@Ubuntu:~#find-name"*.doc“./Desktop/第3章Linux基本命令.doc./Desktop/第1章Linux基本命令.doc如果查找目录为空,则在当前目录下寻找。任务2.1定位文件和目录3)find-在硬盘上查找文14任务2.1定位文件和目录3.find-在硬盘上查找文件(6)查找目录/etc与/home下文件大小小于4K的文件。root@Ubuntu:~#find/etc/home–size-4kfind命令可接受的文件尺寸单位有字节(c),块(b,512字节),K(k,1024字节)等。任务2.1定位文件和目录3.find-在硬盘上查找15拓展:find命令选项-name按照文件名查找文件。-perm按照文件权限来查找文件。-prune使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略。-user按照文件属主来查找文件。-group按照文件所属的组来查找文件。-mtime-n+n按照文件的更改时间来查找文件,-n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前。find命令还有-atime和-ctime选项,但它们都和-mtime选项。

-nogroup查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在。-nouser查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在-newerfile1!file2查找更改时间比文件file1新但比文件file2旧的文件。-type查找某一类型的文件,诸如:

b-块设备文件。

d-目录。

c-字符设备文件。

p-管道文件。

l-符号链接文件。

f-普通文件。拓展:find命令选项-name按照文件名查找文件。16-sizen:[c]查找文件长度为n块的文件,带有c时表示文件长度以字节计。-depth:在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找。-fstype:查找位于某一类型文件系统中的文件,这些文件系统类型通常可以在配置文件/etc/fstab中找到,该配置文件中包含了本系统中有关文件系统的信息。-mount:在查找文件时不跨越文件系统mount点。-follow:如果find命令遇到符号链接文件,就跟踪至链接所指向的文件。-cpio:对匹配的文件使用cpio命令,将这些文件备份到磁带设备中。另外,下面三个的区别:

-aminn

查找系统中最后N分钟访问的文件

-atimen

查找系统中最后n*24小时访问的文件

-cminn

查找系统中最后N分钟被改变文件状态的文件

-ctimen

查找系统中最后n*24小时被改变文件状态的文件

-mminn

查找系统中最后N分钟被改变文件数据的文件

-mtimen

查找系统中最后n*24小时被改变文件数据的文件-sizen:[c]查找文件长度为n块的文件,带有c时表17任务2.1定位文件和目录4)locate-用来定位文件或目录。同find命令相比较,locate命令是从数据库中查找,而不是每次搜索文件系统。因为是从数据库中查找,locate的速度远远快于find命令。但是,使用locate命令查找的结果仅仅是在当前数据库,结果可能会没有find准确。查找apt.conf文件。root@Ubuntu:~#locateapt.conf/etc/apt/apt.conf.d/etc/apt/apt.conf.d/01ubuntu/etc/apt/apt.conf.d/10periodic/etc/apt/apt.conf.d/00trustcdrom┆注意以find比较查找速度附:updatedb更新数据库命令任务2.1定位文件和目录4)locate-用来定位文18任务2.2浏览文件和目录1)ls-用来显示用户当前或指定目录的内容在ls命令中还可以使用通配符“*”、“?”。这样可以使用户很方便地查找特定形式的文件和目录。如果不指定目录,将显示当前目录的内容,否则显示指定目录的内容。(1)输出根目录下文件或目录的详细信息。root@Ubuntu:~#ls–l/总用量84drwxr-xr-x2rootroot40962007-05-1905:00bindrwxr-xr-x3rootroot40962007-05-1905:45bootlrwxrwxrwx1rootroot112007-05-1904:26cdrom->media/cdromdrwxr-xr-x12rootroot137202007-07-2023:55dev┆第一组

[文件属性][inode数][拥有者][所有者组][大小][建立日期][文件/目录名]这个结果提供了许多细节信息,共七组,各组之间使用空格分开。任务2.2浏览文件和目录1)ls-用来显示用户当前19任务2.2浏览文件和目录drwxr-xr-x12rootroot137202007-07-2023:55dev┆第一组

[文件属性][inode数][拥有者][所有者组][大小][建立日期][文件/目录名]第一组为文件模式。文件模式中第一位代表文件类型,其余九位用于三组不同用户的三组权限。文件类型有三种,其中“d”表示目录,“-(短线)”表示常规文件,“l”表示到系统上其他位置的另一个程序或文件的符号链接。第二组即连接数。对文件而言,此数表示该文件在系统中保存的备份数,通常为1。对目录而言,表示的是该目录中的子目录数。第三组即所有者名。指出该文件或目录是属于哪个用户的。第四组即组名。指出该用户所属组名。第五组即文件大小。指出该文件或目录占有的字节数。第六组即最后修改日期和时间。说明文件最后一次修改或创建的日期和时间。第七组即文件名。为文件或目录的真实名字。任务2.2浏览文件和目录drwxr-xr-x1220任务2.2浏览文件和目录drwxr-xr-x12rootroot137202007-07-2023:55dev┆第一组

[文件属性][inode数][拥有者][所有者组][大小][建立日期][文件/目录名]在文本模式,Linux的文件类型由第一组的第一列表示。为“d”则是目录;为“–”则是文件,例如上表的第

5行;若是“l”则表示为连结文件(linkfile);若是“b”则表示为块设备文件;若是“c”则表示为字符设备文件另外,在文本模式下,linux个文件类型也可以由显示的颜色决定。蓝色文件:表示目录;白色文件:一般性文件,如文本文件,配置文件,源码文件等;浅蓝色文件:表示链接文件,主要是使用ln命令建立的文件;绿色文件:可执行文件,可执行的程序;红色文件:压缩文件或者包文件。任务2.2浏览文件和目录drwxr-xr-x12r21任务2.2浏览文件和目录(2)列出当前目录下所有文件(包括隐含文件)。root@Ubuntu:~#ls–a..evolution.ICEfile.aptitude.gconfd.kde.qt.bash_history.gimp-2.2.lesshst.recently-used┆Linux系统的隐含文件是文件名“.”以开头。(3)列出目录下所有文件或目录的详细信息。root@Ubuntu:~#ls–ladrwxr-xr-x35rootroot40962007-07-0116:16.drwxr-xr-x21rootroot40962007-07-0115:51..drwx2rootroot40962007-06-2420:03.aptitudedrwxr-xr-x2rootroot40962007-06-1121:09Desktop-rw1rootroot472007-05-1916:35.dmrcdrwxr-xr-x2rootroot40962007-06-0316:00Downloads┆任务2.2浏览文件和目录(2)列出当前目录下所有文件(22任务2.2浏览文件和目录(4)列出包括子目录下的所有文件。root@Ubuntu:~#ls–R.:DesktopDownloads./Desktop:ArlandCatalogue1.xlsScreenshot-Index./Downloads:任务2.2浏览文件和目录(4)列出包括子目录下的所有文件23任务2.2浏览文件和目录2.head-用来查看文件的开头部分本命令只限于查看文件的前几行,看不到文件实际上有多长。按照默认设置,只能阅读文件的前十行。查看文件/etc/profile前五行。root@Ubuntu:~#head-5/etc/profile#/etc/profile:filefilefortheBourneshell(sh(1))#andBournecompatibleshells(bash(1),ksh(1),ash(1),...).if["$PS1"];thenif["$BASH"];then任务2.2浏览文件和目录2.head-用来查看文件的24任务2.2浏览文件和目录3.tail-查看文件结尾部分在缺省状态tail命令用于查看文件结尾的十行,与head命令恰恰相反。这有助于查看日志文件的最后十行来阅读重要的系统消息,还可以使用tail来观察日志文件被更新的过程。(1)即时观察/var/log/messages的变化。root@Ubuntu:~#tail-f/var/log/messagesJul1317:51:54dzlkernel:[1843.605792]InboundIN=ppp0OUT=MAC=SRC=68DST=2LEN=48TOS=0x00PREC=0x00TTL=123ID=56016DFPROTO=TCPSPT=4683DPT=445WINDOW=64800RES=0x00SYNURGP=0Jul1317:55:09dzlkernel:[2037.738192]InboundIN=ppp0OUT=MAC=SRC=5DST=2LEN=52TOS=0x00PREC=0x00TTL=227ID=0DFPROTO=TCPSPT=21495DPT=1080WINDOW=46748RES=0x00SYNURGP=0┆使用此命令,/var/log/messages文件内容一有变化将马上在屏幕显示出来。任务2.2浏览文件和目录3.tail-查看文件结尾部25任务2.2浏览文件和目录4.cat-合并文件或者显示文件的内容cat是“concatenate”的缩写,即合并文件。该命令可以显示文件的内容,或者是将多个文件合并成一个文件。(1)使用cat阅读短文。root@Ubuntu:~#cat/etc/profile(2)建立两个文件并重定向到file1与file2。重定向就是使系统改变它所认定的标准输出,或者改变标准输出的目标。要重定向标准输出,使用“>”符号。把“>”符号放在cat命令之后(或在任何写入标准输出的工具程序和应用程序之后),会把它的输出重定向到跟在符号之后的文件中。root@Ubuntu:~#cat>file1hello,student!回车,按Ctrl+d结束输入。cat>file2Thisisgreat回车,按Ctrl+d结束输入。任务2.2浏览文件和目录4.cat-合并文件或者显26任务2.2浏览文件和目录(3)追加file2文件到file1。root@Ubuntu:~#catfile2>>file1root@Ubuntu:~#catfile1hello,student!Thisisgreat(4)合并file2与file1文件到file3。root@Ubuntu:~#catfile2file1>file3root@Ubuntu:~#catfile3Thisisgreathello,student!Thisisgreat按Ctrl+d结束输入。任务2.2浏览文件和目录(3)追加file2文件到fil27任务2.2浏览文件和目录5.more-显示文件的内容more命令是一般用于要显示的内容会超过一个画面长度的情况。为了避免画面显示时瞬间就闪过去,用户可以使用more命令,让画面在显示满一页时暂停,此时可按空格健继续显示下一个画面,按b键就会往回(back)一页显示或按Q键停止显示。(1)显示/etc/profile文本文件的内容。root@Ubuntu:~#more/etc/profile屏幕在显示满一屏时暂停,此时可按空格健继续显示下一屏,不像cat命令那样对不能一屏显示的就一闪而过到最后一屏。任务2.2浏览文件和目录5.more-显示文件的内28任务2.2浏览文件和目录5.more-显示文件的内容(2)当用ls命令查看文件列表时,如果文件太多,则可配合more命令使用。root@Ubuntu:~#ls-al|more以长格形式显示当前目录下的文件列表,显示满一个画面便暂停,可按空格键继续显示下一画面,或按Q键跳离。任务2.2浏览文件和目录5.more-显示文件的内29任务2.3搜索文件内容搜索文件内容可以使用grep命令1.grep-在文件中查找指定的字串grep除了可以查找固定的字符串,还可以使用较为复杂的匹配模式。要实现复杂的匹配模式,需要使用如下的表达符号:?匹配字符串中的一个字符。*匹配任意个字符。\*匹配“*”字符。\?匹配“?”字符。\)匹配“)”字符。(1)搜索profile文件中字符串then并输出。root@Ubuntu:~#grepthen/etc/profileif["$PS1"];thenif["$BASH"];thenif[-f/etc/bash.bashrc];thenif["`id-u`"-eq0];then任务2.3搜索文件内容搜索文件内容可以使用grep命令30任务2.3搜索文件内容搜索文件内容可以使用grep命令1.grep-在文件中查找指定的字串(2)搜索profile文件中字符串then并以显示行数输出。root@Ubuntu:~#grep-nthen/etc/profile4:if["$PS1"];then5:if["$BASH"];then7:if[-f/etc/bash.bashrc];then11:if["`id-u`"-eq0];then显示说明在/etc/profile文件的4,5,7,11行包含then字符串。任务2.3搜索文件内容搜索文件内容可以使用grep命令31任务2.4操作文件和目录1.cp-复制文件或目录(1)复制文件/etc/profile到当前目录。root@Ubuntu:~#cp/etc/profile.(2)复制/etc/apt目录下所有的内容,包括所有子目录到当前目录。root@Ubuntu:~#cp–R/etc/apt.(3)使用通配符复制etc目录下mail开头的所有文件到当前目录。root@Ubuntu:~#cp/etc/mail*.任务2.4操作文件和目录1.cp-复制文件或目录32任务2.4操作文件和目录2.touch-生成一个空文件或修改文件的存取/修改的时间记录值。(1)将当前下的文件时间修改为系统的当前时间。root@Ubuntu:~#touch*root@Ubuntu:~#ls(2)新建文件。root@Ubuntu:~#touchtestroot@Ubuntu:~#ls-rw-r--r--1rootroot02007-07-1318:10test注:若文件存在,则修改为系统的当前时间;若文件不存在,则生成一个为当前时间的空文件。任务2.4操作文件和目录2.touch-生成一个空文33任务2.4操作文件和目录2.touch-生成一个空文件或修改文件的存取/修改的时间记录值。(3)将test文件的日期改为20110610。root@Ubuntu:~#touch–d20110610testroot@Ubuntu:~#ls-l-rw-r--r--1jenodjenod02007-07-1000:00test任务2.4操作文件和目录2.touch-生成一个空文34任务2.4操作文件和目录3.mv-移动文件可以将文件及目录移到另一目录下,或更改文件及目录的名称(1)将test文件移动上层目录。root@Ubuntu:~#mvtest../(2)将profile改名为profile.back。root@Ubuntu:~#mvprofileprofile1.back任务2.4操作文件和目录3.mv-移动文件35任务2.4操作文件和目录4.rm-删除文件和目录(1)删除文件主目录下file1文件。root@Ubuntu:~#rmprofile(2)删除文件主目录下file2文件时给以提示。root@Ubuntu:~#rm–ifile2rm:是否删除一般文件“file2”?

(3)递归删除目录。root@Ubuntu:~#rm-rapt(4)强制递归删除目录。root@Ubuntu:~#rm–rfapt不给提示直接删除apt目录下的文件与apt目录。任务2.4操作文件和目录4.rm-删除文件和目录36任务2.4操作文件和目录5.mkdir-创建目录(1)在当前目录下建立新目录dir1。root@Ubuntu:~#mkdirdir1(2)若当前目录下无book目录,在当前目录创建book/Linux子目录。root@Ubuntu:~#mkdirbook/Linuxmkdir:无法创建目录‘book/Linux’:Nosuchfileordirectoryroot@Ubuntu:~#mkdir–p/book/Linuxroot@Ubuntu:~#lsbookjenod一次创建多层目录要加-p参数。任务2.4操作文件和目录5.mkdir-创建目录37任务2.4操作文件和目录6.rmdir-删除目录与创建目录类似,加上-p参数表示如果删除一个目录后,其父目录为空,则将其父目录一同删除。(1)删除目录。root@Ubuntu:~#rmdirdir1(2)删除当前目录下的book/Linux子目录,如果book目录为空,也删除该目录。root@Ubuntu:~#rmdir–pbook/Linuxbook目录不为空则保留。任务2.4操作文件和目录6.rmdir-删除目录38常用的命令定位文件与目录命令cdpwdfindlocate浏览文件命令catmoreless目录操作命令mkdirrmdir文件操作命令touchrmcpmvlntargzipgunzipwhereiswhatis常用的命令定位文件与目录命令39命令使用拓展命令行的历史记录通过按向上的光标键可以向后查阅近来在控制台下输入的命令,用向下光标键可以向前查阅,若与Shift键连用,还可以查阅以往在该控制台中的输出。用户也可以编辑旧的输入命令,然后再运行。

按Ctrl+r键后,shell就进入"reverse-i(ncremental)-search"(向后增量搜索)模式。现在即可输入需要查找的命令首字母,如下所示。(reverse-i-search)":.输入i可能会变成:

(reverse-i-search)'i':isdnctrlhangupippp0如果按Enter键,上面的命令将再次执行,而如果按了向左、向右光标键或Esc键,上面的命令将回到普通的命令行,这样就可以进行适当地编辑。

命令使用拓展命令行的历史记录40命令使用拓展编辑命令行通过光标键和功能键(Home、End等键)可以浏览并编辑命令行,如果需要还可以用快捷来完成一般的编辑。

Ctrl+k

删除,从光标到行尾Ctrl+u

删除,从光标到行首Alt+d

删除,从光标到当前单词结尾Ctrl+w

删除,从光标到当前单词开头Ctrl+a

将光标移到行首Ctrl+e

将光标移到行尾Alt+a

将光标移到当前单词头部Alt+e

将光标移到当前单词尾部Ctrl+y

插入最近删除的单词!$

重复前一个命令最后的参数例如,使用命令mkdirpeter/pan/documents/tinkerbell新建了一个目录,然后使用命令cd进入该目录,这时若用cd!$命令,shell将会把前一个命令mkdir的参数添加到现在的cd命令后面。

当用户更深入地了解Linux后,将看到这些快捷方式在其他应用程序下输入命令时,有时非常有效。

命令使用拓展编辑命令行41任务3使用命令进行简单系统管理教师指导学生完成3.3任务3使用命令进行简单系统管理教师指导学生完成3.342简单系统管理1.login-文本环境系统登录Ubuntu默认是以图形环境登录的,登录后按“Ctrl+Alt+F1”键,这时又可以看到一个login提示符,这个就是第一个虚拟控制台。登录系统:Ubuntu7.04tty1dzllogin:rootPasswd:root@Ubuntu:~#登录时用户被允许输入十次密码,如果十次密码都没有通过,login程序自动终止。简单系统管理1.login-文本环境系统登录43简单系统管理2.shutdown-关机命令执行此命令时,每个用户都会收到一条信息,从中可以得到关机的最后期限。一般只有root账号才有权执行此命令。(1)立即关机。root@Ubuntu:~#shutdown–hnow(2)关闭系统后重启系统。root@Ubuntu:~#shutdown–rnow(3)系统1分钟后重启。root@Ubuntu:~#shutdown-r+1minutes简单系统管理2.shutdown-关机命令44简单系统管理2.shutdown-关机命令(4)系统15:30后重启。root@Ubuntu:~#shutdown–r15:30Shutdown常用的时间参数有hh:mm或+m两种模式。hh:mm格式表示在几点几分执行shutdown命令。例如“shutdown10:45”表示将在10:45执行shutdown。+m表示m分钟后执行shutdown。比较特别的用法是以now表示立即执行shutdown。(5)最安全的关机方法。root@Ubuntu:~#Sync;Sync;Sync;shutdown–hnow简单系统管理2.shutdown-关机命令45Shutdown命令拓展该命令还允许用户指定一个时间参数,可以是精确的时间,也可以是从现在开始的一个时间段。精确时间的格式是hh:mm,表示小时和分钟,时间段由“+”和分钟数表示。系统执行该命令后,会自动进行数据同步工作。

-k

并不真正关机,只是发出警告信息;

-r

关机后立即重新启动;

-h

关机后不重新启动;

-f

快速关机,重启动时跳过fsck命令;

-n

快速关机,不经过init程序;

-c

取消已经运行的shutdown程序。

Shutdown命令拓展该命令还允许用户指定一个时间参数,可46简单系统管理3.logname-显示登录时的用户名显示登录时的用户名。root@Ubuntu:~#lognameroot简单系统管理3.logname-显示登录时的用户名47简单系统管理4.who—查看系统中登录的用户(1)查看用户自己的信息。root@Ubuntu:~#who–m(2)显示登录的用户名和数量。root@Ubuntu:~#who-qrootstudent用户数=2简单系统管理4.who—查看系统中登录的用户48简单系统管理5.id-显示当前用户名和所属组名显示当前用户名和所属组名。root@Ubuntu:~#iduid=0(root)gid=0(root)groups=0(root)表示当前用户是root,其组名也是root。简单系统管理5.id-显示当前用户名和所属组名49简单系统管理6.su-改变用户身份su意思是“substituteusers(代替用户)”,在使用某个用户登录系统后,允许改变用户身份,改用其他用户身份继续使用系统。(1)改变超级用户root用户到student用户。root@Ubuntu:~#sustduent$$cd//切换到student用户家目录(2)改变超级用户student用户到root用户。$surootPassword:root@Ubuntu:~#为了安全,变换到root用户时要输入root用户密码。简单系统管理6.su-改变用户身份50su其他用法改变用户身份-,-l,——login登录并改变到所切换的用户环境;-c,——commmand=COMMAND执行一个命令,然后退出所切换到的用户环境;演示命令:su-c'ls-l'su-lc'ls-l'su其他用法改变用户身份51简单系统管理7.man-获得命令帮助要想查看某个命令的使用手册页(manpage),只要输入man后跟该命令的名称即可。(1)查看ls的使用手册。root@Ubuntu:~#manls使用man命令,首先进入manpage环境,要退出manpage帮助直接按q。其他manpage按键:空格 向下翻页pageup 向下翻页pagedown 向下翻页/word 查找word单词(2)查看man自己的使用手册。root@Ubuntu:~#manman使用man查看自己的使用手册是最容易被大家忽略的。简单系统管理7.man-获得命令帮助52简单系统管理8.date-命令可以显示/修改当前的日期时间(1)显示系统当前时间。root@Ubuntu:~#date(2)将时间更改为12月10日10点23分2007年。root@Ubuntu:~#date121010232007简单系统管理8.date-命令可以显示/修改当前的日期53简单系统管理9.cal-显示日历或年历(1)显示当月的日历。root@Ubuntu:~#cal(2)显示2007年12月的日历。root@Ubuntu:~#cal122007(3)显示2003年的日历。root@Ubuntu:~#cal-y2003简单系统管理9.cal-显示日历或年历54简单系统管理10.df-查看磁盘命令检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。(1)查看文件系统各个分区的占用情况。root@Ubuntu:~#df文件系统1k-块已用可用已用%挂载点/dev/hda22883474437850642358495614%//dev/hda1474443209244290225%/bootdf命令默认以K为单位显示分区情况,如果要M为单位命令为:df–m。简单系统管理10.df-查看磁盘命令55简单系统管理10.df-查看磁盘命令(2)查看文件系统的各个分区的占用情况并显示文件类型。root@Ubuntu:~#df–T文件系统1k-块已用 可用已用% 挂载点/dev/hda2ext32883474437850642358495614%//dev/hda1ext3474443 209244290225%/boot简单系统管理10.df-查看磁盘命令56简单系统管理11.du-查看目录或文件容量(1)列出/etc目录下与文件所占容量。root@Ubuntu:~#du/etc(2)以m为单位列出/home目录下与文件所占容量。root@Ubuntu:~#du-m/etc(3)仅仅列出/etc目录容量。root@Ubuntu:~#du-s/etc简单系统管理11.du-查看目录或文件容量57简单系统管理12.free-查看系统内存,虚拟内存(交换空间)的大小占用情况查看系统内存。root@Ubuntu:~#free total

used

free

shared

buffers

cached

Mem:

4149156

41304128744

0

13220

2720160

-/+buffers/cache:

1397032

2752124

Swap:

6289408

144

6289264以上含义:第1行:total内存总数:4149156used已经使用的内存数:4130412free空闲的内存数:18744shared当前已经废弃不用,总是0buffersBufferCache内存数:13220cachedPageCache内存数:2720160Buffers与Cache都是高手缓存,通常也就是说buffer是用于存放要输出到disk(块设备)的数据的,而cache是存放从disk上读出的数据。关系:total=used+free简单系统管理12.free-查看系统内存,虚拟内存(交58简单系统管理12.free-查看系统内存,虚拟内存(交换空间)的大小占用情况查看系统内存。root@Ubuntu:~#free total

used

free

shared

buffers

cached

Mem:

4149156

4130412

8744

0

13220

2720160

-/+buffers/cache:

1397032

2752124

Swap:

6289408

144

6289264第3行:-/+buffers/cache的意思相当于:-buffers/cache的内存数:1397032(等于第1行的used-buffers-cached)+buffers/cache的内存数:2752124(等于第1行的free+buffers+cached)可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。第4行单独针对交换分区。简单系统管理12.free-查看系统内存,虚拟内存(交59拓展其实我们可以从二个方面来解释.对操作系统来讲是Mem的参数,buffers/cached都是属于被使用,所以它认为free只有8744.对应用程序来讲是(-/+buffers/cach),buffers/cached是等同可用的,因为buffer/cached是为了提高程序执行的性能,当程序使用内存时,buffer/cached会很快地被使用。所以,以应用来看看,以(-/+buffers/cache)的free和used为主,所以我们看这个就好了,另外告诉大家一些常识.Linux为了提高磁盘和内存存取效率,Linux做了很多精心的设计,除了对dentry进行缓存(用于VFS,加速文件路径名到inode的转换),还采取了两种主要Cache方式:BufferCache和PageCache。前者针对磁盘块的读写,后者针对文件inode的读写。这些Cache能有效缩短了I/O系统调用(比如read,write,getdents)的时间。拓展其实我们可以从二个方面来解释.60任务4使用命令进行文件压缩和解压缩教师指导学生完成3.4任务4使用命令进行文件压缩和解压缩教师指导学生完成3.461文件压缩和解压缩当需要把一组文件贮存成一个文件以便备份或传输到另一个目录甚至另一台计算机,或者让某些文件占用少量磁盘空间并能更快地通过互联网下载时,通常需要将文件压缩。在Linux中,文件压缩工具gzip、bzip2和zip对应的解压工具分别是gunzip、bunzip2、unzip。bzip2和gzip压缩工具提供了最大限度的压缩,并且可在多数类似UNIX的操作系统上找到,因此得到广泛应用。如果需要在Linux和其他操作系统如Windows间传输文件,应该使用zip,因为该命令与Windows上的压缩工具最兼容。下面简单介绍一下常用的压缩/解压缩命令:文件压缩和解压缩当需要把一组文件贮存成一个文件以便备份或传输62文件压缩和解压缩1.zip和unzip使用zip来压缩文件,使用unzip来解压缩文件,当然也可用zip带参数-d来解压缩。(1)压缩单个文件。root@Ubuntu:~#cp/etc/profile.root@Ubuntu:~#zipstudyprofile上面的命令把profile,然后放入study.zip文件中。(2)压缩多个文件与目录到同一个压缩文件。root@Ubuntu:~#zip-rzip1profilestudy.zip上述命令把profile与man.zip压缩到zip1文件中。文件压缩和解压缩1.zip和unzip63思考如果不想解压缩,仅仅查看压缩文件中得内容思考如果不想解压缩,仅仅查看压缩文件中得内容64文件压缩和解压缩2.gzip和gunzip使用gzip来压缩文件,使用gunzip来解压缩文件,其实gzip其压缩命令与解压缩命令gunzip实际上是同一个程序,文件的大小和参数完全一样,只是命令的名称不同。文件会被压缩,并被保存为filename.gz。当解压缩时,filename.gz会被删除,同时filename被还原。对比zip,gzip有以下特点:zip命令具有将许多文件与目录压缩成一个文件的功能,但gzip却不能;用gzip命令压缩后源文件会被删除。文件压缩和解压缩2.gzip和gunzip65文件压缩和解压缩2.gzip和gunzip(1)压缩单个文件。root@Ubuntu:~#cp/etc/profile.root@Ubuntu:~#gzipprofileroot@Ubuntu:~#ls-l使用ls-l查看结果时,profile是没有了,但多了一个profile.gz文件。(2)压缩多个文件。root@Ubuntu:~#touchabroot@Ubuntu:~#gzipabroot@Ubuntu:~#lsa.gzb.gz对比发现gzip可以一次压缩许多文件,但不可以压缩目录,也不可以将许多文件与目录压缩成一个文件。 文件压缩和解压缩2.gzip和gunzip66文件压缩和解压缩3.tar-打包命令tar是Linux常用的压缩与解压缩类命令,更多是用于硬盘数据备份,tar可以对文件和目录进行打包。利用tar,用户可以对某一特定文件进行打包(一般用作备份文件),也可以在包中改变文件,或者向包中加入新的文件。(1)将/home目录下所有文件打包成test.tar。root@Ubuntu:~#tar-cvftest.tar/home/*注意扩展名.tar需自行加上。(2)将所有文件打包成test1.tar,再用gzip命令压缩:root@Ubuntu:~#tar-zcvftest1.tar.gz/tmp/*(3)查看test.tar文件中包括了哪些文件root@Ubuntu:~#tar-tftest.tar(4)将text1.tar解压缩root@Ubuntu:~#tar-xvftest.tar(5)将text1.tar.gz解压缩root@Ubuntu:~#tar-zxvftest.tar文件压缩和解压缩3.tar-打包命令67拓展参数:

-c:建立一个压缩文件的参数指令(create的意思);

-x:解开一个压缩文件的参数指令!

-t:查看tarfile里面的文件!

特别注意,在参数的下达中,c/x/t仅能存在一个!不可同时存在!

因为不可能同时压缩与解压缩。

-z:是否同时具有gzip的属性?亦即是否需要用gzip压缩?

-j:是否同时具有bzip2的属性?亦即是否需要用bzip2压缩?

-v:压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!

-f:使用文件名,请留意,在f之后要立即接文件名喔!不要再加参数!例如使用『tar-zcvfPtfilesfile』就是错误的写法,要写成

『tar-zcvPftfilesfile』才对喔!

-p:使用原文件的原来属性(属性不会依据使用者而变)

-P:可以使用绝对路径来压缩!

-N:比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!

--excludeFILE:在压缩的过程中,不要将FILE打包!

拓展参数:

-c:建立一个压缩文件的参数指令(creat68任务5使用命令进行进程管理与作业控制1、进程运行中的程序Linux是一个多用户多任务的操作系统。多用户是指多个用户可以在同一时间使用计算机系统;多任务是指Linux可以同时执行几个任务,它可以在还未执行完一个任务时又执行另一项任务。为了完成这些任务,系统上同时运行着多个进程。Linux系统上所有运行的程序都可以称之为一个进程。每个用户任务、每个系统管理的守护进程,都可以称之为进程。Linux用分时管理方法使所有的任务共同分享系统资源。进程的一个比较正式的定义是在自身的虚拟地址空间运行的一个单独的程序。进程与程序是有区别进程不是程序,虽然它由程序产生。程序只是一个静态的指令集合,简单的说就是保存在磁盘上的文件,它是不占系统的运行资源;而进程是一个随时都可能发生变化的、动态的、使用系统运行资源的程序。运行一个程序,就会在系统中创建一个或者多个进程,进程可以看成是在计算机里正在运行的程序。Linux操作系统启动后,就已经创建了许多进程。任务5使用命令进行进程管理与作业控制1、进程692、作业与进程有关的一个概念是作业,Linux一个正在执行的进程对Shell(命令解析器)来说称为一个作业。一般说来进程和作业是可互换的。作业控制是Shell提供的使用户能够在多个独立作业间进行切换的功能。进程和作业的概念也有区别,一个正在执行的进程称为一个作业,而且作业可以包含一个或多个进程,尤其是当使用了管道和重定向命令(比如命令:cat/etc/profile|more将启动两个进程,但这两个进程才是一个作业)。2、作业与进程有关的一个概念是作业,Linux一个正在执行的703、理解前台启动与后台启动1)yes命令前台启动root@Ubuntu:~#yesyy┆命令yes是向标准输出发出无穷无尽的一串y,用户再也不能继续其它的任务了。2)将yes的输出送给虚拟设备/dev/nullroot@Ubuntu:~#yes>/dev/null[1]66893)yes命令后台启动root@Ubuntu:~#yes>/dev/null&[1]6689root@Ubuntu:~#3、理解前台启动与后台启动1)yes命令前台启动714、任务细分任务5.1启动进程教师指导学生完成3.5.2任务5.2进程管理教师指导学生完成3.5.3任务5.3作业调度教师指导学生完成3.5.44、任务细分任务5.1启动进程72任务5.2进程管理1.ps-查看系统的进程要管理进程首先要了解系统有哪些进程及其状态如何。(1)显示当前控制终端的进程。root@Ubuntu:~#psPIDTTYTIMECMD2791ttyp000:00:00tcsh3092ttyp000:00:00ps(2)显示列出所有的行程。root@Ubuntu:~#ps-APIDTTYTIMECMD1?00:00:03init2?00:00:00kflushd┆任务5.2进程管理1.ps-查看系统的进程73(3)详细显示所有包含其他使用者的行程root@Ubuntu:~#ps–auUSERPID%CPU%MEMVSZRSSTTYSTATSTARTTIMECOMMANDroot10.00.71096472?SSep100:03init[3]root20.00.000?SWSep100:00[kflushd]

┆ps-au输出格式说明:USER:进程拥有者PID:进程号%CPU:占用的CPU使用率%MEM:占用的内存使用率VSZ:占用的虚拟内存大小RSS:占用的内存大小TTY:终端的次要装置号码STAT:该进程的状态START:进程开始时间TIME:执行的时间COMMAND:所执行的指令(3)详细显示所有包含其他使用者的行程root@Ubuntu742.kill-给进程发送信号当某个进程运行错误时,对于前台进程,可以使用“ctrl-c”来终止它,但后台进程无法使用这种方法,但可以使用kill命令给进程发送信息,比如强行终止信息来达到目的。(1)显示kill能发送的信息种类。root@Ubuntu:~#kill–lKill能够发送的信息较多,每个信号都有对应的数值,比如SIGKLL信号的值是9,SIGHUP的信号值是1。2.kill-给进程发送信号当某个进程运行错误时,对于前75(2)通过进程号终止进程。root@Ubuntu:~#psPIDTTYTIMECMD2791ttyp000:00:00tcsh7091ttyp000:00:03yes7092ttyp000:00:00psroot@Ubuntu:~#kill-97901上述9也可用SIGKLL信号代替,正常情况可以不加选项9,但如果要强行终止则必须添加选项9。(2)通过进程号终止进程。763.top-实时监控进程和ps命令不同,top可以实时监控进程的状况,默认top自动5秒刷新一次,也可用“top–d30”,使得top屏幕30秒刷新一次。3.top-实时监控进程和ps命令不同,top可以实时监774.bg-作业放到后台执行在手工启动前台进程时,如果进程没有执行完毕,则可以使用“Ctrl-z”键暂停进程的执行,然后可以使用bg命令放到后台执行,前台继续其它任务。root@Ubuntu:~#yes>/dev/nully┆“Ctrl-z”键暂停进程。[1]+Stoppedyesroot@Ubuntu:~#bg%1使用bg命令把进程放到后台执行,在bg命令中指定进程是通过作业ID作为参数来指定的,作业ID可以用jobs查看。4.bg-作业放到后台执行在手工启动前台进程时,如果进程785.jobs-查看后台作业root@Ubuntu:~#more/etc/fig“Ctrl-z”键暂停进程。root@Ubuntu:~#jobs[1]+Runningyes[2]+Stoppedmore/etc/fig上述中,“1”就是命令“yes”作业对应的作业ID,正在后台运行;“2”就是命令“more/etc/fig”对应的作业,已经暂停。5.jobs-查看后台作业root@Ubuntu:~#m796.fg-作业放到前台执行把作业“more/etc/fig”重新放到前台执行。root@Ubuntu:~#fg%26.fg-作业放到前台执行把作业“more/etc/m80任务5.3作业调度有时候需要对系统进行一些比较费时而且占用资源的维护工作,这些工作适合在深夜进行,这时候用户就可以事先进行调度安排,指定任务运行的时间或者场合,到时候系统会自动完成这一切工作。任务5.3作业调度有时候需要对系统进行一些比较费时而且占用811、at-在指定时刻执行指定的命令序列(1)三天后的下午5点钟执行/bin/ls。root@Ubuntu:~#at5pm+3dayswaring:commandswillbeexecutedusing/bin/shat>/bin/ls使用at命令,首先进入at编辑界面,编辑完后按ctrl+D退出。注意:在at编辑界面输入的命令要使用绝对路径,例如,输入/bin/ls而不是ls。1、at-在指定时刻执行指定的命令序列(1)三天后的下82at命令时间格式说明:当天的hh:mm(小时:分钟)的时间。如果该时间已经过去,那么就放在第二天执行。用户还可以采用12小时计时制,即在时间后面加上AM(上午)或者PM(下午)来说明是上午还是下午:at5:20AM/bin/date指定命令执行的具体日期。指定格式为monthday(月日)或者mm/dd/yy或者dd.mm.yy。指定的日期必须跟在指定时间的后面。相对计时法。指定格式为now+counttime-units,“now”就是当前时间,“time-units”是时间单位,这里可以用minutes(分钟)、hours(小时)、days(天)、weeks(星期)。count是时间的数量。直接使用today(今天)、tomorrow(明天)来指定完成命令的时间。例:指定在今天下午5:30执行某命令。假设现在时间是中午12:30,2006年2月24日,其命令格式如下: at5:30pm at17:30 at17:30today atnow+5hours atnow+300minutes at17:3024.2.06 at17:302/24/06 at命令时间格式说明:当天的hh:mm(小时:分钟)的时间。83(2)删除指定的作业序列。root@Ubuntu:~#at–d1//1为对应的作业序号查询作业序列使用命令atq,删除作业也可以使用命令atrm。(2)删除指定的作业序列。842、crontab-在指定时刻执行指定的命令序列at命令用与安排运行一次的作业较方便,但如果要重复运行程序,比如每周三凌晨1点进行数据备份,这使用crontab更为方便。(1)编辑用户crontab作业。每天12:30,23:30执行系统升级。root@Ubuntu:~#crontab–e3012,23***apt-getupdate2、crontab-在指定时刻执行指定的命令序列at命令85拓展:crontab命令格式与详细例子基本格式:*****command分时日月周命令第1列表示分钟1~59每分钟用*或者*/1表示第2列表示小时1~23(0表示0点)第3列表示日期1~31第4列表示月份1~12第5列标识号星期0~6(0表示星期天)第6列要运行的命令拓展:crontab命令格式与详细例子基本格式:86(2)查看用户crontab作业。root@Ubuntu:~#crontab–l(3)删除用户crontab作业。root@Ubuntu:~#crontab–r(2)查看用户crontab作业。87crontab命令格式与详细例子3021***/usr/local/etc/rc.d/lighttpdrestart上面的例子表示每晚的21:30重启apache。4541,10,22**/usr/local/etc/rc.d/lighttpdrestart上面的例子表示每月1、10、22日的4:45重启apache。101**6,0/usr/local/etc/rc.d/lighttpdrestart上面的例子表示每周六、周日的1:10重启apache。0,3018-23***/usr/local/etc/rc.d/lighttpdrestart上面的例子表示在每天18:00至23:00之间每隔30分钟重启apache。023**6/usr/local/etc/rc.d/lighttpdrestart上面的例子表示每星期六的11:00pm重启apache。**/1***/usr/local/etc/rc.d/lighttpdrestart每一小时重启apache*23-7/1***/usr/local/etc/rc.d/lighttpdrestart晚上11点到早上7点之间,每隔一小时重启apache0114*mon-wed/usr/local/etc/rc.d/lighttpdrestart每月的4号与每周一到周三的11点重启apache041jan*/usr/local/etc/rc.d/lighttpdrestart一月一号的4点重启apachecrontab命令格式与详细例子3021***/88任务6综合实训学生自主完成教材“3.8项目实训”任务6综合实训学生自主完成教材“3.8项目实训”89Linux密码破解1)获得JohntheRipperLinux密码破解1)获得JohntheRipper902)打补丁编辑Makefile文件,添加我下面标注好的红色字体LDFLAGS=-s-lcrypt新建一个crypt_fmt.c文件,见备注修改john.c文件,添加我下面标注的红色字体externstructfmt_mainfmt_DES,fmt_BSDI,fmt_MD5,fmt_BF;externstructfmt_mainfmt_AFS,fmt_LM;externstructfmt_mainfmt_crypt;

john_register_one(&fmt_BF);john_register_one(&fmt_AFS);john_register_one(&fmt_LM);

john_register_one(&fmt_crypt);

2)打补丁编辑Makefile文件,添加我下面标注好的红色字913)编译文件makelinux-x86-sse23)编译文件makelinux-x86-sse292John命令使用john[-命令列参数][密码档档名]

参数:-single

说明:使用「简单」(SingleCrack)破解模式解密,主要是根据使用者的「帐号」产生变化来猜测解密,其变化规则记录在JOHN.INI档案的[List.Rules:Single]区域内。

参数:-wordfile:[字典档档名]-stdin

说明:使用「字典档」破解模式解密,由字典档内读取单字来破解;或是可以加上-stdin参数,代表由键盘输入单字来破解。

参数:-rules

说明:在「字典档」破解模式下,开启字词规则变化功能,如「字典档」读入单字cook,则开启字词变化下,程式可能会尝试cook、c00k、cooker、cook0…等其它字词。详细变化规则记录在JOHN.INI档案的[List.Rules:Wordlist]区域内。(稍后会

温馨提示

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

评论

0/150

提交评论