资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,第一章:Linux操作系统常用命令详解,第二章:Linux操作系统的进程管理,1,第一章:Linux操作系统常用命令详解,2,常见的目录表示方法,/,代表根目录,.,代表当前目录或者本目录,.,代表当前目录的上级目录或者父目录,代表当前用户的主目录,目录名 代表当前目录下的目录,/,目录名 代表根目录下的目录,/,目录名,1/,目录名,2,代表根目录下目录名,1,下的目录,名,2,3,内部命令与外部命令,内部,命令:,是,shell,程序的一部分,其中包含的是一些比较简练的,linux系统命令,这些命令由shell程序识别并在shell程序内部完成运,行,通常在linux系统加载运行时shell就被加载并驻留在系统内存中。,外部,命令:是linux系统中的实用程序部分,因为实用程序的功能,通常都比较强大,所以它们包含的程序量也会很大,在系统加载时并,不随系统一起被加载到内存中,而是在需要时才将其调进内存。通常,外部命令的实体并不包含在shell中,但是其命令执行过程是由shell,程序控制的。shell程序管理外部命令执行的路径查找、加载存放,并,控制命令的执行,4,man info help,help,:提供内部命令的帮助;,man,:提供所有命令的详细帮助;是 UNIX 系统手册的电子版本。根据,习惯,UNIX 系统手册通常分为不同的部分(或小节,即 section),,每个小节阐述不同的系统内容,info,:提供所有命令的详细帮助;Linux 中的大多数软件开发,工具都是来自自由软件基金会的 GNU 项目,这些工具软件件的在线文,档都以 info 文件的形式存在,5,显示或查看目录的内容,显示当前目录下的内容,用法1:ls,例如:,用法2:ls 目录名 显示指定目录下的内容,例如:,Linux系统的超级用户一般命名为root。,root是系统中唯一的超级用户,具有系统中所有的权限,如启动或停止一个进程,删除或增加用户,增加或者禁用硬件等等。,6,显示或查看目录的内容,以详细资料显示当前目录下的内容,显示当前目录下的隐藏内容,用法3:ls -l,例如:,用法4:ls -a,例如:,7,显示或查看目录的内容,显示制定目录的属性,用法,5:ls -ld,目录名,例如:,用法,6:ll=ls l,例如:,8,cd,:更改目录或者进入目录,用法1:cd/进入根目录,例如:rootRHEL5#cd/,rootRHEL5/#,用法2:cd 目录 进入指定目录,例如:rootRHEL5#cd/tmp,rootRHEL5 tmp#,用法3:cd,进入当前用户的主目录,例如:rootRHEL5#cd,rootRHEL5#,用法4:cd,进入但前用户的主目录,例如:rootRHEL5 tmp#cd,rootRHEL5#,9,mkdir:,创建目录,用法1:mkdir 目录名 在当前目录下创建目录,用法2:mkdir 目录名/目录名1 在指定目录下创建目录,用法3:mkdir 目录名1 目录名2 目录名3 在指定目录,下创建多个并列的目录,用法4:mkdir-p 目录名5/目录名6 在没有父目录的情,况下同时创建父目录和子目录,10,cp:复制,cp(copy),命令可以将文件从一处复制到另一处。一般在使用cp命令时将一,个文件复制成另一个文件或复制到某目录时,需要指定源文件名与目标文件名,或目录。,格式:cp参数,testlinux test$cp test1.txt test2.txt,将test1.text复制成test2.txt,testlinux test$cp test3.txt/tmp,将test3.txt复制到/tmp目录中,testlinux test$cp r test1(目录)test2(目录),加-r参数,拷贝目录,11,rm,:删除,功能:删除文件或目录,格式:rm参数,testlinux test$rm myfiles 删除一个文件,testlinux test$rm *,删除当前目录下的所有文件,-f参数:强迫删除文件,testlinux test$rm f *.txt,强迫删除所有以后缀名为txt文件,testlinux test$rm r disk1,-r参数:删除目录,等同于rmdir命令,-i参数:删除文件时询问,testlinux test$rmi *,删除当前目录下的所有文件,rm:backup:is a directory 遇到目录会略过,rm:remove myfiles.txt?Y,删除文件时会询问,可按Y或N键表示允许或拒绝删除文件,注意:在系统的默认状态下,rm命令会对每个删除的文件一一询问。如果用户确,定要删除这些文件,则可以使用参数-f来避免询问,12,cat,显示或者把多个文本文件连接起来。cat是concatenate的简写,:查看文件,功能:用于显示文件的内容,也可以将数个文件合并成一个文件。,格式:cat参数,testlinux test$cat test.txt 显示test.txt文件内容,testlinux test$cat test.txt|more,逐页显示test.txt文件中的内容,testlinux test$cat test.txt test1.txt,将test.txt的内容附加到test1.txt文件之后,testlinux test$cat test.txt test2.txt readme.txt,将test.txt和test2.txt文件合并成readme.txt文件,13,more,:查看文件内容,more命令是一般用于要显示的内容会超过一个画面长度的情况。为了避免画面显示时瞬间就闪过去,用户可以使用more命令,让画面在显示满一页时暂停,此时可按空格健继续显示下一个画面,或按Q键停止显示。,testlinux test$more /etc/named.conf,显示 etc/named.conf文本文件的内容,当用ls命令查看文件列表时,如果文件太多,则可配合more命令使用:,testlinux etc$ls -al|more,以长格形式显示etc目录下的文件列表,显示满一个画面便暂停,可按空格键继续显示下一画面,或按Q键跳离,14,less,命令,less命令的用法与more命令类似,也可以用来浏览超过一页的文,件。所不同的是less命令除了可以按空格键向下显示文件外,还可以利,用上下键来卷动文件。当要结束浏览时,只要按Q键即可。,testlinux etc$less named.conf,显示/etc/named.conf的文本文件内容,testlinux etc$ls -al|less,以长格形式列出/etc目录中所有的内容。用户可按上下键浏览或,按Q键结束,15,head,、,tail,(尾)命令,head,功能:用于显示文件前几行的内容,格式:,head,参数,rootlinux,root#head-10/etc/passwd,显示,/etc/passwd/,文件的前,10,行内容,tail,功能:用于显示文件后几行的内容,格式:,tail,参数,rootlinux,root#tail-10/etc/passwd,显示,/etc/passwd/,文件的倒数,10,行内容,rootlinux,root#tail+10/etc/passwd,显示,/etc/passwd/,文件的从第,10,行开始到末尾的内容,rootlinux,root#tail-f,nohup.out,实时输出文件内容,16,mv,:移动或更改目录、文件名称,功能:可以将文件及目录移到另一目录下,或更改文件及目录的,名称,格式:参数,testlinux dir1$mv a.txt./,将a.txt文件移动上层目录,testlinux dir1$mv a.txt b.txt,将a.txt改名为b.txt,testlinux dir1$mv dir2./,将dir2目录上移一层,17,Pwd,(Print Work,Directory,目录,):显示当前所在的目录,功能:显示用户正在工作或当前所在的目录,格式:pwd,testlinux test$pwd,/home/test,显示用户test所在的当前目录是/home/test,18,find,:用来寻找文件或目录,格式:find 匹配条件,rootlinux root#find/-name httpd.conf,搜索系统根目录下名为httpd.conf的文件,/etc/httpd/conf/httpd.conf 显示搜索结果,rootlinux root#find/etc name httpd.conf,搜索/etc目录下名为httpd.conf的文件,并显示结果,/etc/httpd/conf/httpd.conf 显示搜索结果,19,grep,:,(global search regular expression(RE)and print out the line,全面搜索正则表达式并把行打印出来),在文件中搜索匹配的字符并进行输出,格式:grep参数 ,rootlinux root#grep linux test.txt,搜索test.txt文件中字符串linux并输出,rootlinux root#rpm -qa|grep httpd,搜索rpm包中含有httpd包的文件名,20,touch,:创建文件,格式:touch参数,testlinux test$touch*,将当前下的文件时间修改为系统的当前时间,testlinux test$touch d 20070806 test,将test文件的日期改为20070806,testlinux test$touch abc,若abc文件存在,则修改为系统的当前时间;若不存在,则生成一,个为当前时间的空文件,21,25,文本编辑器,vi,vi,,即,vim,,,Linux,下的一个全屏幕文本编辑程序。,优点:编辑功能强大,缺点:操作复杂,vi的工作,模式,输入,(,编辑,),模式,命令,(,末行,),模式,vi的工作,模式转换,命令模式,(,默认模式,),转换为输入模式,Insert,键,,a(A),i(I),o(O),键,输入模式转换为命令模式,Esc,键,22,26,vi,的基本操作,打开文件,vi 文件名,保存文件,命令模式下:,:w,:w!,保存,强制保存,:w 文件名,另存为,退出vi,命令模式下:,:q,:q!,:wq,:wq!,退出,强制退出,保存并退出,强制保存并退出,23,27,vi,的基本操作,移动光标,上下左右方向键,修改文本文件内容,输入模式,输入:键盘,删除:del或退格键,列出/取消文本内容的行号,命令模式,:set nu,:set nonu,24,28,vi,的基本操作,vi显示颜色,使用命令,alias vi=vim,更改用户环境变量,在当前用户主目录下修改.bashrc,添加一行,alias vi=vim,重启计算机,25,who/w,:,查看当前系统中有哪些用户登录,格式:who/w参数,rootlinux root#who,root tty1 1个本地用户登录,test pts/0 1个远程登录用户,26,ln,:在文件和目录之间建立链接,格式:ln 参数 ,链接分“软链接”和“硬链接”,1.软链接:,rootlinux test#ln s/usr/share/do doc,创建一个链接文件doc,并指向目录/usr/share/do,2.硬链接:,rootlinux test#ln /usr/share/test hard,创建一个硬链接文件hard,这时对于test文件对应的存储区域来说,又多了一个文件指向它。,软链接:为同一个文件或目录创建2、3个名字,如同在Windows下创建的快捷方式,硬链接:让多个不在或者同在一个目录下的文件,同时能够修改同一个文件,其中一个修改后,所有与其有硬链接的文件都一起修改了。,27,软件包管理命令(,rpm,),RPM的全名是Red Hat Package Manager,它是由Red Hat 公司所,开发的一个开放性软件包管理系统。其优点:,易于安装、升级与删除软件包,有强大的查询功能,能够进行软件包验证,支持代码形式的软件包,28,安装rpm包,使用RPM命令的安装模式可以将软件包内所有的组,件放到系统中的正确路径,安装软件包的命令是:,rootlinux root#rpm ivh vsftpd-2.6.2-x86-64.rpm,i:作用rpm的安装模式,v:校验文件信息,h:以号显示安装进度,29,删除rpm包,删除模式会将指定软件包的内容全部删除,但并不包括已更改过,的配置文件,删除RPM软件包的命令如下:,rootlinux/#rpm e vsftpd,删除参数软件包名称,注意:这里必须使用软件名“vsftpd”或”vstpd-2.6.2-x86-64而不是使用当初安装时的软件包名vsftpd-2.6.2-x86-64.rpm,30,升级rpm包,升级模式会安装用户所指定的更新版本,并删除已安装在系统中,的相同软件包,升级软件包命令如下:,rootlinux/#rpm Uvh vsftpd-2.6.2-x86-64.rpm,31,更新rpm包,更新模式下,rpm命令会检查在命令行中所指定的软件包是否比系,统中原有的软件包更新。如果情况属实,rpm命令会自动更新指定的,软件包;反之,若系统中并没有指定软件包的较旧版本,rpm命令并,不会安装此软件包。而在升级模式下,不管系统中是否有较旧的版,本,rpm命令都会安装指定的软件包。,rootlinux/#rpm Fvh vsftpd-2.6.2-x86-64.rpm,32,查询rpm包,若要获取RPM软件包的相关信息,可以使用查询模式。使用-q参数可查,询一个已安装的软件包的内容。,rootlinux/#rpm q vsftpd,vsftpd-2.6.2-x86-64 显示软件包的名称、版本及次版本,查询软件包所安装的文件:安装某个软件包之后,常常困扰用户是,不知,道该软件包究竟安装到哪里,此时执行,rpm ql package-name 命令可得知,rootlinux/#rpm ql vsftpd(l参数:显示文件列表),33,dmesg,命令,功能:显示系统诊断信息、操作系统版本号、物理内存的大小以及其它信息,34,df,命令,功能:用于查看文件系统的各个分区的占用情况,35,du,(show disk useage),查看磁盘使用情况,命令,功能:查看某个目录中各级子目录所使用的硬盘空间数,格式:du 参数,36,netstat命令,1.作用:检查整个Linux网络状态。,2.格式:netstat-acCeFghilMnNoprstuvVwx-A-ip,3.主要参数,-a-all:显示所有连线中的Socket。,-c-continuous:持续列出网络状态。,-e-extend:显示网络其它相关信息。,-g-groups:显示多重广播功能群组组员名单。,-i-interfaces:显示网络界面信息表单。,-l-listening:显示监控中的服务器的Socket。,-n-numeric:直接使用IP地址,而不通过域名服务器。,-r-route:显示RoutingTable。,-s-statistice:显示网络工作信息统计表。,-t-tcp:显示TCP传输协议的连线状况。,-u-udp:显示UDP传输协议的连线状况。,-v-verbose:显示指令执行过程。,-w-raw:显示RAW传输协议的连线状况。,netstat tnlp|grep 7010 :通过应用端口号查看进程ID,37,网卡配置文件的目录,/etc/sysconfig/network-scripts,网卡的配置文件,ifconfig-ethX,ifconfig-ethX:X,ifconfig-wlanX,DEVICE设备名,BOOTPROTO IP地址的获取方式(静态或者dhcp),HWADDR MAC地址,ONBOOT 开机启动,IPADDR IP地址,38,配置网卡的,IP,地址:重启网卡命令,ifdown ethX;ifup ethX,重启指定网卡,service network restart,重启所有网卡,39,配置网卡的,IP,地址:,修改配置文件,vi 网卡配置文件,修改完成后,重启网卡,修改才能生效,40,配置网卡的,IP,地址:,netconfig,在命令行输入netconfig,可打开配置IP地址、子网掩码、网关、,DNS的窗口,完成后,重启网卡,使配置生效,41,Linux,系统的启动运行级别,系统的启动运行级别由init进程决定,init进程:由Linux内核引导运行。,init,init,init,init,init,init,init,0:系统停机,1:单用户模式,2:多用户文本模式(没有NFS),3:完全的多用户文本模式,4:未定义,5:完全的多用户图形模式,6:系统重新启动,42,系统启动运行级别的更改,init的配置文件,/etc/inittab,更改,vi /etc/inittab,其中,id:,数值,:initdefault:,数值即代表系统当前默认的启动级别,43,第二章:Linux操作系统的进程管理,44,程序和进程,程序是为了完成某种任务而设计的软件,比如OpenOffice是程序。,什么是进程呢?进程就是运行中的程序。,一个运行着的程序,可能有多个进程。比如WWW服务器是,apache服务器,当管理员启动服务后,可能会有好多人来访问,也就,是说许多用户来同时请求httpd服务,apache服务器将会创建有多个,httpd进程来对其进行服务,。,45,进程分类,进程一般分为交互进程、批处理进程和守护进程三类。,值得一提的是守护进程总是活跃的,一般是后台运行,守护进程,一般是由系统在开机时通过脚本自动激活启动或超级管理用户root来,启动。比如在Fedora或Redhat中,我们可以定义httpd 服务器的启动,脚本的运行级别,此文件位于/etc/init.d目录下,文件名是httpd,,/etc/init.d/httpd 就是httpd服务器的守护程序,当把它的运行级别设,置为3和5时,当系统启动时,它会跟着启动。,46,进程的属性,进程ID(PID):是唯一的数值,用来区分进程;子进程和父进程的ID(PPID);启动进程的用户ID(UID)和所归属的组(GID);进程状态:状态分为D 无法中断的休眠状态(通常 IO 的进程);R 正在运行可中在队列中可过行的;S 处于休眠状态;T 停止或被追踪;W 进入内存交换(从内核2.6开始无效);X 死掉的进程(从来没见过);Z 僵尸进程;优先级高的进程 N 优先级较低的进程 L 有些页被锁进内存;s 进程的领导者(在它之下有子进程);l 多进程的(使用 CLONE_THREAD,类似 NPTL pthreads);+位于后台的进程组;,进程执行的优先级;进程所连接的终端名;进程资源占用:比如占用资源大小(内存、CPU占用量)。,47,父进程和子进程,他们的关系是管理和被管理的关系,当父进程终止时,子进程也随之而终止。但子进程终止,父进程并不一定终止。比如httpd服务器运行时,我们可以杀掉其子进程,父进程并不会因为子进程的终止而终止。,在进程管理中,当我们发现占用资源过多,或无法控制的进程时,应该杀死它,以保护系统的稳定安全运行;,48,ps 监视进程工具,ps 的参数说明;,ps 提供了很多的选项参数,常用的有以下几个;,l 长格式输出;,u 按用户名和启动时间的顺序来显示进程;,j 用任务格式来显示进程;,f 用树形格式来显示进程;,a 显示所有用户的所有进程(包括其它用户);,x 显示无控制终端的进程;,r 显示运行中的进程;,ww 避免详细参数被截断;,49,ps aux 输出的解释,USER,进程的属主;,PID,进程的,ID,;,%CPU,进程占用的,CPU,百分比;,%MEM,占用内存的百分比;,VSZ,进程虚拟大小;,RSS,驻留中页的数量;,TTY,终端,ID,STAT,状态,START,启动进程的时间;,TIME,进程消耗,CPU,的时间;,COMMAND,命令的名称和参数;,50,pgrep,pgrep 是通过程序的名字来查询进程的工具,一般是用来判断程序是否正在运行。在服务器的配置和管理中,这个工具常被应用,简单明了,#pgrep 参数选项 程序名,常用参数,-l 列出程序名和进程ID;-o 进程起始的ID;-n 进程终止的ID;,举例:,rootlocalhost#pgrep-l httpd4557 httpd4560 httpd4561 httpd,51,Kill、killall,kill的应用是和ps 或pgrep 命令结合在一起使用的,kill 信号代码 进程ID,注:信号代码可以省略;我们常用的信号代码是-9,表示强制终止,对于僵尸进程,可以用kill-9 来强制终止退出,例:,rootlocalhost#pgrep-l gaim 5031 gaim,rootlocalhost#kill-9 5031,killall 通过程序的名字,直接杀死所有进程,用法:killall 正在运行的程序名,killall 也和ps或pgrep 结合使用,比较方便,通过ps或pgrep 来查看哪些程序在运行,举例:,rootlocalhost test#pgrep-l gaim2979 gaim,rootlocalhost test#killall gaim,52,pkill、xkill,pkill 和killall 应用方法差不多,也是直接杀死运行中的程序;,应用方法:,#pkill 正在运行的程序名,举例:,rootlocalhost test#pgrep-l gaim2979 gaim,rootlocalhost test#pkill gaim,xkill 是在桌面用的杀死图形界面的程序。比如当firefox 出现崩溃不能退出时,点鼠,标就能杀死firefox。当xkill运行时出来人脑骨的图标,哪个图形程序崩溃一点就OK了。,如果您想终止xkill,就按右键取消;,xkill 调用方法:,rootlocalhost#xkill,53,top 命令用法及参数,和ps 相比,top是动态监视系统任务的工具,top 输出的结果是连,续的,参数:,-b 以批量模式运行,但不能接受命令行输入;-c 显示命令行,而不仅仅是命令名;-d N 显示两次刷新时间的间隔,比如-d 5,表示两次刷新间隔为5秒;-i 禁止显示空闲进程或僵尸进程;-n NUM 显示更新次数,然后退出。比如-n 5,表示top更新5次数据就退出;-p PID 仅监视指定进程的ID;PID是一个数值;-q 不经任何延时就刷新;-s 安全模式运行,禁用一些效互指令;-S 累积模式,输出每个进程的总的CPU时间,包括已死的子进程;,54,查看服务,命令行:chkconfig -list 服务名,不加服务名,查看全部的服务,55,服务的启动,service,服务名,start,./etc/init.d/,服务名,start,56,服务的停止,service,服务名,stop,./etc/init.d/,服务名,stop,57,服务的重启动,service,服务名,restart,./etc/init.d/,服务名,restart,58,
展开阅读全文