还剩8页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
ATS系统维护常用Linux指令指令名称:__n使用方式:对你熟悉或不熟悉的命令提供帮助解释eg:__nls就可以查看ls相关的用法注按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行指令名称:mount使用方式:mount加载一个硬件设备用法:mount[参数]要加载的设备载入点eg:mount/dev/cdromcd/mnt/cdrom//进入光盘目录指令名称:su使用方式:su在不退出登陆的情况下,切换到另外一个人的身份用法:su-l用户名如果用户名缺省,则切换到root状态eg:su-lnetseek切换到netseek这个用户,将提示输入__指令名称:whoami,whereis,which,id使用方式:whoami,whereis,which,id//whoami:确认自己身份//whereis:查询命令所在目录以及帮助文档所在目录//which:查询该命令所在目录类似whereis//id:打印出自己的UID以及GIDUID:用户身份唯一标识GID:用户组身份唯一标识每一个用户只能有一个唯一的UID和GIDeg:whoami//显示你自已登陆的用户名whereisbin显示bin所在的目录,将显示为/usr/local/bin指令名称:grep使用方式:grep文本内容搜索;eg:grepsuc__ss* /*查找当前目录下面所有文件里面含有suc__ss字符的文件指令名称:passwd使用方式:passwd可以设置口令指令名称:history使用方式:history用户用过的命令eg:history//可以显示用户过去使用的命令指令名称:!!使用方式:!!执行最近一次的命令指令名称:finger使用方式:finger可以让使用者查询一些其他使用者的资料eg:finger//查看所用用户的使用资料fingerroot//查看root的资料命令df察看磁盘容量“df–h”命令du察看目录容量“du–hdirectoryname”指令名称:cd使用方式:cd[dirName]说明:变换工作目录至dirName其中dirName表示法可为绝对路径或相对路径若目录名称省略,则变换至使用者的homedirectory也就是刚login时所在的目录另外,~也表示为homedirectory的意思,.则是表示目前所在的目录,..则表示目前目录位置的上一层目录范例:跳到/usr/bin/:cd/usr/bin跳到自己的homedirectory:cd~跳到目前目录的上上两层:cd../..指令名称:chmod使用方式:chmod[-cfvR][--help][--version]modefile...说明:Linux/Unix的档案存取权限分为三级:档案拥有者、群组、其他利用chmod可以藉以控制档案如何被他人所存取把计:mode:权限设定字串,格式如下:[ugoa...][[+-=][rwxX]...][...],其中u表示该档案的拥有者,g表示与该档案的拥有者属于同一个群体group者,o表示其他以外的人,a表示这三者皆是+表示增加权限、-表示取消权限、=表示唯一设定权限r表示可读取,w表示可写入,x表示可执行,X表示只有当该档案是个子目录或者该档案已经被设定过为可执行-c:若该档案权限确实已经更改,才显示其更改动作-f:若该档案权限无法被更改也不要显示错误讯息-v:显示权限变更的详细资料-R:对目前目录下的所有档案与子目录进行相同的权限变更即以递回的方式逐个变更--help:显示辅助说明--version:显示版本范例:将档案file
1.___设为所有人皆可读取:chmodugo+rfile
1.___将档案file
1.___设为所有人皆可读取:chmoda+rfile
1.___将档案file
1.___与file
2.___设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入:chmodug+wo-wfile
1.___file
2.___将ex
1.py设定为只有该档案拥有者可以执行:chmodu+xex
1.py将目前目录下的所有档案与子目录皆设为任何人可读取:chmod-Ra+r*此外chmod也可以用数字来表示权限如chmod777file语法为chmodabcfile其中abc各为一个数字,分别表示User、Group、及Other的权限r=4,w=2,x=1若要rwx属性则4+2+1=7;若要rw-属性则4+2=6;若要r-x属性则4+1=5范例chmoda=rwxfile和chmod777file效果相同chmodug=rwxo=xfile和chmod771file效果相同若用chmod4755filename可使此程式具有root的权限指令名称:chown使用方式:chown[-cfhvR][--help][--version]user[:group]file...说明:Linux/Unix是多人多工作业系统,所有的档案皆有拥有者利用chown可以将档案的拥有者加以改变一般来说,这个指令只有是由系统管理者root所使用,一般使用者没有权限可以改变别人的档案拥有者,也没有权限可以自己的档案拥有者改设为别人只有系统管理者root才有这样的权限user:新的档案拥有者的使用者IDgroup:新的档案拥有者的使用者群体group-c:若该档案拥有者确实已经更改,才显示其更改动作-f:若该档案拥有者无法被更改也不要显示错误讯息-h:只对于连结link进行变更,而非该link真正指向的档案-v:显示拥有者变更的详细资料-R:对目前目录下的所有档案与子目录进行相同的拥有者变更即以递回的方式逐个变更--help:显示辅助说明--version:显示版本范例:将档案file
1.___的拥有者设为users群体的使用者jessie:chownjessie:usersfile
1.___将目前目录下的所有档案与子目录的拥有者皆设为users群体的使用者lamport:chmod-Rlamport:users*名称cp使用权限所有使用者使用方式cp[options]sour__destcp[options]sour__...directory说明将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录把计-a尽可能将档案状态、权限等资料都照原状予以__-r若sour__中含有目录名,则将目录下之档案亦皆依序拷贝至目的地-f若目的地已经有相同档名的档案存在,则在__前先予以删除再行__范例将档案aaa__已存在,并命名为bbb:cpaaabbb将所有的C语言程式拷贝至Finished子目录中:cp*.cFinished名称cut使用权限所有使用者用法cut-cnum1-num2filename说明显示每行从开头算起num1到num2的文字范例shellcatexampletest2thisistest1shellcut-c0-6example##print开头算起前6个字元test2thisi名称:find用法:find使用说明:将档案系统内符合expression的档案列出来你可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来find根据下列规则判断path和expression,在命令列上第一个-!之前的部份为path,之后的是expression如果path是空字串则使用目前路径,如果expression是空字串则使用-print为预设expressionexpression中可使用的选项有二三十个之多,在此只介绍最常用的部份-mount-xdev:只检查和指定目录在同一个档案系统下的档案,避免列出其它档案系统中的档案-aminn:在过去n分钟内被读取过-anewerfile:比档案file更晚被读取过的档案-atimen:在过去n天过读取过的档案-cminn:在过去n分钟内被修改过-cnewerfile:比档案file更新的档案-ctimen:在过去n天过修改过的档案-empty:空的档案-gidnor-groupname:gid是n或是group名称是name-ipathp-pathp:路径名称符合p的档案,ipath会忽略大小写-namename-inamename:档案名称符合name的档案iname会忽略大小写-sizen:档案大小是n单位,b代表512位元组的区块,c表示字元数,k表示kilobytes,w是二个位元组-typec:档案类型是c的档案d:目录c:字型装置档案b:区块装置档案p:具名贮列f:一般档案l:符号连结s:socket-pidn:pro__ssid是n的档案你可以使用将运算式分隔,并使用下列运算exp1-andexp2!expr-notexprexp1-orexp2exp1exp2范例:将目前目录及其子目录下所有延伸档名是c的档案列出来#find.-name*.c将目前目录其其下子目录中所有一般档案列出#find.-ftypef将目前目录及其子目录下所有最近20分钟内更新过的档案列出#find.-ctime-20名称less使用权限所有使用者使用方式less[Option]filename说明less的作用与more十分相似,都可以用来浏览文字档案的内容,不同的是less允许使用者往回卷动以浏览已经看过的部份,同时因为less并未在一开始就读入整个档案,因此在遇上大型档案的开启时,会比一般的文书编辑器如vi来的快速范例指令名称:ln使用权限:所有使用者使用方式:ln[options]sour__dist,其中option的格式为:[-bdfinsvF][-Sbackup-suffix][-V{numberedexisting______}][--help][--version][--]说明:Linux/Unix档案系统中,有所谓的连结link,我们可以将其视为档案的别名,而连结又可分为两种:硬连结hardlink与软连结symboliclink,硬连结的意思是一个档案可以有多个名称,而软连结的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置硬连结是存在同一个档案系统中,而软连结却可以跨越不同的档案系统lnsour__dist是产生一个连结dist到sour__,至于使用硬连结或软链结则由参数决定不论是硬连结或软链结都不会将原本的档案__一份,只会占用非常少量的磁碟空间-f:链结时先将与dist同档名的档案删除-d:允许系统管理者硬链结自己的目录-i:在删除与dist同档名的档案时先进行询问-n:在进行软连结时,将dist视为一般的档案-s:进行软链结symboliclink-v:在连结之前显示其档名-b:将在链结时会被覆写或删除的档案进行备份-SSUFFIX:将备份的档案都加上SUFFIX的字尾-VMETHOD:指定备份的方式--help:显示辅助说明--version:显示版本范例:将档案yy产生一个symboliclink:zzln-syyzz将档案yy产生一个hardlink:zzlnyyxx名称:ls使用权限:所有使用者使用方式:ls[-alrtAFR][name...]说明:显示指定工作目录下之内容(列出目前工作目录所含之档案及子目录-a显示所有档案及目录ls__将档案名或目录名称开头为.的视为隐藏档,不会列出-l除档案名称外,亦将档案型态、权限、拥有者、档案大小等资讯详细列出-r将档案以相反次序显示原定依英文字母次序-t将档案依建立时间之先后次序列出-A同-a,但不列出.目前目录及..父目录-F在列出的档案名称后加一符号;例如可执行档则加*目录则加/-R若目录下有档案,则以下之档案亦皆依序列出范例列出目前工作目录下所有名称是s开头的档案,愈新的排愈后面:ls-ltrs*将/bin目录以下所有目录及档案详细资料列出:ls-lR/bin列出目前工作目录下所有档案及目录;目录于名称后加/可执行档于名称后加*:ls-AFd表示目录directory,如果是一个-表示是文件,如果是l则表示是一个连接文件linkb.表示文件或者目录许可权限.分别用可读r,可写w,可运行x名称more使用权限所有使用者使用方式more[-dlfpcsu][-num][+/pattern][+linenum][fileNames..]说明类似cat,不过会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(spa__)就往下一页显示,按b键就会往回(back)一页显示,而且还有搜寻字串的功能(与vi相似),使用中的说明文件,请按h参数-num一次显示的行数-d提示使用者,在画面__显示[Pressspa__tocontinueqtoquit.],如果使用者按错键,则会显示[Presshforinstructions.]而不是哔声-l取消遇见特殊字元^L(送纸字元)时会暂停的功能-f计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上)-p不以卷动的方式显示每一页,而是先清除萤幕后再显示内容-c跟-p相似,不同的是先显示内容再清除其他旧资料-s当遇到有连续两行以上的空白行,就代换为一行的空白行-u不显示下引号(根据环境变数TERM指定的terminal而有所不同)+/在每个档案显示前搜寻该字串(pattern),然后从该字串之后开始显示+num从第num行开始显示fileNames欲显示内容的档案,可为复数个数范例more-stestfile逐页显示testfile之档案内容,如有连续两行以上空白行则以一行空白行显示more+20testfile从第20行开始显示testfile之档案内容名称mv使用权限所有使用者使用方式mv[options]sour__destmv[options]sour__...directory说明将一个档案移至另一档案,或将数个档案移至另一目录参数-i若目的地已有同名档案,则先询问是否覆盖旧档范例将档案aaa更名为bbb:mvaaabbb将所有的C语言程式移至Finished子目录中:mv-i*.cFinished名称rm使用权限所有使用者使用方式rm[options]name...说明删除档案及目录把计-i删除前逐一询问确认-f即使原档案属性设为唯读,亦直接删除,无需逐一确认-r将目录及以下之档案亦逐一删除范例删除所有C语言程式档;删除前逐一询问确认:rm-i*.c将Finished子目录及子目录中所有档案删除:rm-rFinishe名称rmdir使用权限于目前目录有适当权限的所有使用者使用方式rmdir[-p]dirName说明删除空的目录参数-p是当子目录被删除后使它也成为空目录的话,则顺便一并删除范例将工作目录下,名为AAA的子目录删除:rmdirAAA在工作目录下的BBB目录中,删除名为Test的子目录若Test删除后,BBB目录成为空目录,则BBB亦予删除rmdir-pBBB/Test名称touch使用权限所有使用者使用方式touch[-acfm][-rreferen__-file][--file=referen__-file][-tMMDDhhmm[[CC]YY][.ss]][-dtime][--date=time][--time={atimeac__ssusemtimemodify}][--no-create][--help][--version]file1[file
2...]说明touch指令改变档案的时间记录ls-l可以显示档案的时间记录参数a改变档案的读取时间记录m改变档案的修改时间记录c假如目的档案不存在,不会建立新的档案与--no-create的效果一样f不使用,是为了与其他unix系统的相容性而保留r使用参考档的时间记录,与--file的效果一样d设定时间与日期,可以使用各种不同的格式t设定档案的时间记录,格式与date指令相同--no-create不会建立新档案--help列出指令格式--version列出版本讯息范例最简单的使用方式,将档案的时候记录改为现在的时间若档案不存在,系统会建立一个新的档案touchfiletouchfile1file2将file的时间记录改为5月6日18点3分,公元两千年时间的格式可以参考date指令,至少需输入MMDDHHmm,就是月日时与分touch-c-t05061803filetouch-c-t050618032000file将file的时间记录改变成与referen__file一样touch-rreferen__filefile将file的时间记录改成5月6日18点3分,公元两千年时间可以使用ampm或是24小时的格式,日期可以使用其他格式如6__y2000touch-d6:0__mfiletouch-d05/06/2000filetouch-d6:0__m05/06/2000file名称:at使用权限:所有使用者使用方式:at-V[-qqueue][-ffile][-mldbv]TIME说明:at可以让使用者指定在TIME这个特定时刻执行某个程式或指令,TIME的格式是HH:MM其中的HH为小时,MM为分钟,甚至你也可以指定ampmmidnightnoonteatime就是下午4点锺等口语词如果想要指定超过一天内的时间,则可以用MMDDYY或者MM/DD/YY的格式,其中MM是分钟,DD是第几日,YY是指年份另外,使用者甚至也可以使用像是now+时间间隔来弹性指定时间,其中的时间间隔可以是minuteshoursdaysweeks另外,使用者也可指定today或tomorrow来表示今天或明天当指定了时间并按下enter之后,at会进入交谈模式并要求输入指令或程式,当你输入完后按下ctrl+D即可完成所有动作,至于执行的结果将会寄回你的帐号中把计:-V:印出版本编号-q:使用指定的伫列Queue来储存,at的资料是存放在所谓的queue中,使用者可以同时使用多个queue,而queue的编号为abc...z以及AB...Z共52个-m:即使程式/指令执行完成后没有输出结果也要寄封信给使用者-ffile:读入预先写好的命令档使用者不一定要使用交谈模式来输入,可以先将所有的指定先写入档案后再一次读入-l:列出所有的指定使用者也可以直接使用atq而不用at-l-d:删除指定使用者也可以直接使用atrm而不用at-d-v:列出所有已经完成但尚未删除的指定例子:三天后的下午5点锺执行/bin/ls:at5pm+3days/bin/ls三个星期后的下午5点锺执行/bin/ls:at5pm+2weeks/bin/ls明天的17:20执行/bin/date:at17:20tomorrow/bin/date1999年的最后一天的最后一分钟印出theendofworld!at23:5912/31/1999echotheendofworld!------------------------------------------------------------------------------名称:date使用权限:所有使用者使用方式:date[-u][-ddatestr][-sdatestr][--utc][--universal][--date=datestr][--set=datestr][--help][--version][+FOR__T][MMDDhhmm[[CC]YY][.ss]]说明:date可以用来显示或设定系统的日期与时间,在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下:时间方面:%:印出%%n:下一行%t:跳格%H:小时
00..23%I:小时
01..12%k:小时
0..23%l:小时
1..12%M:分钟
00..59%p:显示本地AM或PM%r:直接显示时间12小时制,格式为hh:mms[AP]M%s:从1970年1月1日00:00:00UTC到目前为止的秒数%S:秒
00..61%T:直接显示时间24小时制%X:相当于%H:%M:%S%Z:显示时区日期方面:%a:星期几Sun..Sat%A:星期几Sunday..Saturday%b:月份Jan..Dec%B:月份January..De__mber%c:直接显示日期与时间%d:日
01..31%D:直接显示日期mm/dd/yy%h:同%b%j:一年中的第几天
001..366%m:月份
01..12%U:一年中的第几周
00..53以Sunday为一周的第一天的情形%w:一周中的第几天
0..6%W:一年中的第几周
00..53以Monday为一周的第一天的情形%x:直接显示日期mm/dd/yy%y:年份的最后两位数字
00.99%Y:完整年份
0000..9999若是不以加号作为开头,则表示要设定时间,而时间格式为MMDDhhmm[[CC]YY][.ss],其中MM为月份,DD为日,hh为小时,mm为分钟,CC为年份前两位数字,YY为年份后两位数字,ss为秒数把计:-ddatestr:显示datestr中所设定的时间非系统时间--help:显示辅助讯息-sdatestr:将系统时间设为datestr中所设定的时间-u:显示目前的格林威治时间--version:显示版本编号例子:显示时间后跳行,再显示目前日期:date+%T%n%D显示月份与日数:date+%B%d显示日期与设定时间12:34:56:date--date12:34:56注意:当你不希望出现无意义的0时比如说1999/03/07,则可以在标记中插入-符号,比如说date+%-H:%-M:%-S会把时分秒中无意义的0给去掉,像是原本的08:09:04会变为8:9:4另外,只有取得权限者比如说root才能设定系统时间当你以root身分更改了系统时间之后,请记得以clock-w来将系统时间写入CMOS中,这样下次重新开机时系统时间才会持续抱持最新的正确值名称kill使用权限所有使用者使用方式kill[-ssignal|-p][-a]pid...kill-l[signal]说明kill送出一个特定的__signal给行程id为pid的行程根据该__而做特定的动作若没有指定预设是送出终止TERM的__把计-ssignal:其中可用的讯号有HUP1KILL9TERM15分别代表着重跑砍掉结束;详细的__可以用kill-l-p:印出pid并不送出__-lsignal:列出所有可用的__名称范例将pid为323的行程砍掉kill:kill-9323将pid为456的行程重跑restart:kill-HUP456名称ps使用权限所有使用者使用方式ps[options][--help]说明显示瞬间行程pro__ss的动态参数ps的参数非常多在此仅列出几个常用的参数并大略介绍含义-A列出所有的行程-w显示加宽可以显示较多的资讯-au显示较详细的资讯-aux显示所有包含其他使用者的行程aux输出格式:USERPID%CPU%MEMVSZRSSTTYSTATSTARTTIMECOM__NDUSER:行程拥有者PID:pid%CPU:占用的CPU使用率%MEM:占用的记忆体使用率VSZ:占用的虚拟记忆体大小RSS:占用的记忆体大小TTY:终端的次要装置号码minordevi__numberofttySTAT:该行程的状态:D:不可中断的静止通悸□□缜b进行I/O动作R:正在执行中S:静止状态T:暂停执行Z:不存在但暂时无法消除W:没有足够的记忆体分页可分配:高优先序的行程N:低优先序的行程L:有记忆体分页分配并锁在记忆体内即时系统或捱AI/OSTART:行程开始时间TIME:执行的时间COM__ND:所执行的指令范例psPIDTTYTIMECMD2791ttyp000:00:00tcsh3092ttyp000:00:00ps%ps-APIDTTYTIMECMD100:00:03init200:00:00kflushd300:00:00kpiod400:00:00kswapd500:00:00mdrecoveryd.......%ps-auxUSERPID%CPU%MEMVSZRSSTTYSTATSTARTTIMECOM__NDroot
10.
00.71096472SSep100:03init
[3]root
20.
00.000SWSep100:00[kflushd]root
30.
00.000SWSep100:00[kpiod]root
40.
1.作用useradd命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户
2.格式useradd[-dhome][-sshell][-ccomment][-m[-ktemplate]][-finactive][-eexpire][-ppasswd][-r]name
3.主要参数-c加上备注文字,备注文字保存在passwd的备注栏中 -d指定用户登入时的启始目录-D变更预设值-e指定账号的有效期限,缺省表示永久有效-f指定在__过期后多少天即关闭该账号-g指定用户所属的群组-G指定用户所属的附加群组-m自动建立用户的登入目录-M不要自动建立用户的登入目录-n取消建立以用户名称为名的群组-r建立系统账号-s指定用户登入后所使用的shell-u指定用户ID号
4.说明useradd可用来建立用户账号,它和adduser命令是相同的账号建好之后,再用passwd设定账号的__使用useradd命令所建立的账号,实际上是保存在/etc/passwd文本文件中
5.应用实例建立一个新用户账户,并设置ID#useraddcaojh-u544需要说明的是,设定ID值时尽量要大于500,以免冲突因为Linux__后会建立一些特殊用户,一般0到499之间的值留给bin、__il这样的系统账号名称groupadd
1.作用groupadd命令用于将新组加入系统
2.格式groupadd[-ggid][-o]][-r][-f]groupname
3.主要参数-ggid指定组ID号-o允许组ID号,不必惟一-r加入组ID号,低于499系统账号-f加入已经有的组时,发展程序退出
4.应用实例建立一个新组,并设置组ID加入系统#groupadd-g344cjh此时在/etc/passwd文件中产生一个组ID(GID)是344的项目killall命令Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如#killall-HUPinetd名称ifconfig设定网络参数使用的指令语法[root@testtest]#ifconfiginte_____[root@testtest]#ifconfiginte_____[options]参数说明inte_____网络适配卡代号,例如eth0eth
1...options 主要有以下几个参数 network 网段 broadcast广播网段 net__sk 子网掩码 up|down 启动|关闭网络接口范例[root@testroot]#ifconfig#这个指令在没有加上网络卡时,会将所有的网络接口内容显示出来eth0 Linkencap:Ethernet HWaddr00:50:FC:22:9C:57 inetaddr:
192.
168.
1.2 Bcast:
192.
168.
1.255 __sk:
255.
255.
255.0 UPBROADCASTRUNNINGMULTICAST MTU:1500 Metric:1 RXpackets:5793395errors:0dropped:0overruns:0frame:0 TXpackets:6032143errors:0dropped:0overruns:0carrier:0 collisions:983txqueuelen:100 RXbytes:
534796148510.0Mb TXbytes:
26078829702487.0Mb Interrupt:10Baseaddress:0x6100 lo Linkencap:LocalLoopback inetaddr:
127.
0.
0.1 __sk:
255.
0.
0.0 UPLOOPBACKRUNNING MTU:16436 Metric:1 RXpackets:3258errors:0dropped:0overruns:0frame:0 TXpackets:3258errors:0dropped:0overruns:0carrier:0 collisions:0txqueuelen:0 RXbytes:
170063166.0Kb TXbytes:
170063166.0Kb [root@testroot]#ifconfigeth
0192.
168.
0.2net__sk
255.
255.
255.0\broadcast
192.
168.
0.255上面再将eth0这个网络接口的IP属性修改为
192.
168.
0.2这个IP,广播地址也跟着改变了![root@testroot]#ifconfigeth0#将修改完的咚咚显示出来一下!eth0 Linkencap:Ethernet HWaddr00:50:FC:22:9C:57 inetaddr:
192.
168.
0.2 Bcast:
192.
168.
0.255 __sk:
255.
255.
255.0 UPBROADCASTRUNNINGMULTICAST MTU:1500 Metric:1 RXpackets:5793395errors:0dropped:0overruns:0frame:0 TXpackets:6032143errors:0dropped:0overruns:0carrier:0 collisions:983txqueuelen:100 RXbytes:
534796148510.0Mb TXbytes:
26078829702487.0Mb Interrupt:10Baseaddress:0x6100 [root@testroot]#ifconfigeth0down==关闭eth0网络卡[root@testroot]#ifconfigeth0up==启动eth0网络卡!说明ifconfig这个东西也很好玩!尤其是您在您的网络卡尚未设定完成的时候,而且确定网络卡已经成功的驱动了之后,可以使用这个指令来驱动您的网络卡呦!另外,他的最大用处其实是来自于可以查看您的网络适配卡的参数啦!所以最常使用的就是直接输入『ifconfig』或者是『ifconfigeth0』或者是『ifconfigppp0』等等的用法!倒是不建议直接用来修改您的网络卡啦!不过,如果确定要使用ifconfig来修改您的网络适配卡,那么可以参考上面的例子来修改呦!同时,ifconfig也是用来做成『多IP』的主要指令呢!好了,我们来谈一谈上面几个简单的项目内容吧! eth0表示为网络卡的代号;lo表示为『内部循环IP』的网络卡代号,请注意,这个内部的inte_____一定要存在!千万不要关掉他!HWaddr是网络卡的硬件地址,就是我们在网络基础http://linux.vbird.org/linux_server/0110network_basic.php提到的__Chttp://linux.vbird.org/linux_server/0110network_basic.php\lNetworklayer_data_link___C啦!inetaddr就是网络卡的IP;Bcast是广播broadcast的地址;__sk就是子网掩码啦;MTU是__ximumTra__issionUnit最大传输单元字节,即此接口一次所能传输的最大封包,这个数值并非越大越好,也非越小越好,不过,设定错误时,可能会让您的网络无法连接上某些__呢!请参考本章后续的MTU说明http://linux-vbird.bluedata.org/linux_server/0140networkcom__nd.htm\lMTURX网络由启动到目前为止的接收情形;TX网络由启动到目前为止的传送情形;collisions网络讯号碰撞的情况说明;txqueuelen是传输缓冲区长度大小意思;Interrupt是IRQ中断地址;Baseaddress是I/O地址这个IRQ与I/O在网络卡上面是可以设定的!设定的地方可以在/etc/lilo.conf里头来设定呢!如果您的主机上面有多张网络卡的时候,就用的着他了!可以避开问题呦! 总而言之,ifconfig也是一个很好用的指令啦!但是有一点必须要清楚的,那就是ifconfigeth0up或者是ifconfigeth0down可以使用ifupeth0或ifdowneth0来替代!不过有一点必须要先说明的,那就是ifup与ifdown是以/etc/sysconfig/network-scripts/ifcfg-ethn的档案来进行启动的!所以ifcfg-eth0必须存在才能使用ifup! 名称ifupifdown启动与关闭某个网络适配卡语法[root@testroot]#ifup [inte_____][root@testroot]#ifdown[inte_____]参数说明范例[root@testroot]#ifupeth0 ==启动eth0这块网络卡![root@testroot]#ifdowneth0==关闭eth0这块网络卡说明手动修改网络参数使用ifconfig,但是档案设定的启动与关闭就得使用ifup与ifdown啰这两个指令要比ifconfighttp://linux-vbird.bluedata.org/linux_server/0140networkcom__nd.htm\lifconfig简单的多!不过他却必须要有相关的档案存在才能启动呦!举个例子来说,上面我们要启动eth0这块网络卡的时候,那么您的Linux系统当中就必须要存在/etc/sysconfig/network-scripts/ifcfg-eth0这个网络适配卡的设定档案才行!同理可证!如果要启动eth1,除了存在eth1这个实体网络卡之外,还要存在ifcfg-eth1才行!请确实了解呦!因为后面关于LinuxRouter的章节当中,我们提到的一张网卡多IP就是用这个观念来达成的! 名称route显示/修改路由表routetable语法[root@testroot]#route[-nee][root@testroot]#routeadd[-net|-host]目标主机或网域[net__sk][gw|dev][root@testroot]#routedel[-net|-host]目标主机或网域[net__sk][gw|dev]参数说明-n 列出的信息以IP来显示-ee 列出较长列的信息add 增加路由信息net 删除一个路由信息-net 增加一个『网域』的路由,例如CClass的网域!-host 增加到某个IP主机的路由!net__sk就是net__sk呀!gw 这个是路由的通讯闸!gw 是以IP来建置的dev 这个是路由的通讯闸!dev是以界面internet代号来建置的!范例[root@testroot]#route==看路由的信息!KernelIProutingtableDestination Gateway Gen__sk FlagsMetricRef UseIfa__
140.
116.
141.253*
255.
255.
255.255UH 0 0 0ppp
0192.
168.
1.0 *
255.
255.
255.0 U 0 0 0eth
0127.
0.
0.0 *
255.
0.
0.0 U 0 0 0lodefault
140.
116.
141.
2530.
0.
0.0 UG 0 0 0ppp0 [root@testroot]#route-n==以IP的方式来显示路由!KernelIProutingtableDestination Gateway Gen__sk FlagsMetricRef UseIfa__
140.
116.
141.
2530.
0.
0.0
255.
255.
255.255UH 0 0 0ppp
0192.
168.
1.0
0.
0.
0.0
255.
255.
255.0 U 0 0 0eth
0127.
0.
0.0
0.
0.
0.0
255.
0.
0.0 U 0 0 0lo
0.
0.
0.0
140.
116.
141.
2530.
0.
0.0 UG 0 0 0ppp0注意到routeroute-n这两个范例喔!使用-n与否会使do__in是否进行查询,一般来说,我都喜欢加上-n的,因为不必去查询正反解,显示速度较快,此外,defaultgateway就是
0.
0.
0.0喔! [root@testroot]#routeadd-net
192.
168.
0.0net__sk
255.
255.
255.0deveth0 #新增一个路由规则! [root@testroot]#routedel-net
192.
168.
0.0net__sk
255.
255.
255.0deveth0#删除一个路由啰 [root@testroot]#routeadddefaultgw
192.
168.
1.2 #增加一个defaultgateway呢!注意一下,gw后面接的是IP,而dev后面接的则是装置代号喔!说明这个指令相当的有用!尤其是新手们最容易犯错的gateway设定错误的问题,都可以藉由这一个指令来检查呢!这个指令有两个主要的用途 显示目前主机上面的路由信息;修改增加或删除主机上面的路由表!『可以建置router呦!』 我们来谈一谈使用route时,显示的内容意义 Destination目标,可以是IP也可以是网域!至于没有规定到的,则是以default来表示!以上面为例,当我的机器要去
192.
168.
1.0的时候,则以上表的
192.
168.
1.0那一行的设定为主,但如果我要去tw.yahoo.com的时候,由于没有规定到!所以就要以default的信息为主要的路由!因此,我就会经由
140.
116.
141.253这个gateway来传送出去我的封包啰!Gateway该目标要经由哪一个__传送?就是这一个设定值啦!Gen__sk就是该Destination的net__sk啰!例如
140.
116.
141.253为
255.
255.
255.255,因为他是一个host而不是一个network呀!至于
192.
168.
1.0就是
255.
255.
255.0这个CClass啰!那如果是default的话,就显示
0.
0.
0.0,也就是不论是哪里,都出自这一个gateway就是了!Flages旗标,有底下几种Flage呢oUrouteisup该路由已经启动了;oHtargetisahost目标是一个主机IP,例如上面范例中的
140.
116.
141.253那一个;oGusegateway用来作为gateway的设定;oRreinstateroutefordynamicrouting使用动态路由时,恢复路由信息的旗标;oDdynamicallyinstalledbydaemonorredirect已经由服务或转port功能设定为动态路由;oMmodifiedfromroutingdaemonorredirect路由已经被修改了;o! rejectroute这个路由将不会被接受用来抵挡不安全的网域!Ifa__该设定使用的网络接口为何?命令ping传送一个ICMP封包给某部主机,测试网络连通性语法[test@testtest]#ping[-bbroadcast][test@testtest]#ping[-cnumber]host参数说明-bbroadcast当要ping一个网段时,可以使用这个方式来『广播』!-cnumber 后面加上number数字可以限制ping几次!范例[test@testtest]#ping-c5tw.yahoo.com ==除了IP也可以pingdo__inname!PINGtw.yahoo.com
202.
1.
237.21from
61.
28.
113.1:5684bytesofdata.64bytesfromtw.yahoo.com
202.
1.
237.21:icmp_seq=0ttl=245time=
7.133msec64bytesfromtw.yahoo.com
202.
1.
237.21:icmp_seq=1ttl=245time=
7.497msec64bytesfromtw.yahoo.com
202.
1.
237.21:icmp_seq=2ttl=245time=
6.625msec64bytesfromtw.yahoo.com
202.
1.
237.21:icmp_seq=3ttl=245time=
6.457msec64bytesfromtw.yahoo.com
202.
1.
237.21:icmp_seq=4ttl=245time=
6.434msec ---tw.yahoo.compingstatistics---5packetstran__itted5packetsre__ived0%packetlossround-tripmin/__g/__x/mdev=
6.434/
6.829/
7.497/
0.421ms [test@testtest]#ping-b
192.
168.
1.255-c2==这里必须是广播地址WARNING:pingingbroadcastaddressPING
192.
168.
1.
255192.
168.
1.255from
192.
168.
1.254:5684bytesofdata.64bytesfrom
192.
168.
1.36:icmp_seq=0ttl=255time=191usec64bytesfrom
192.
168.
1.45:icmp_seq=0ttl=255time=492usecDUP!64bytesfrom
192.
168.
1.254:icmp_seq=0ttl=255time=531usecDUP! ---
140.
116.
44.255pingstatistics---2packetstran__itted2packetsre__ived+6duplicates0%packetlossround-tripmin/__g/__x/mdev=
0.134/
0.811/
2.094/
0.647ms说明这个东西好用的很!不论在哪一个操作系统当中,他都是相当有用的网络侦错指令!例如您要侦测一下您的网络卡是否正确的备执行了,可以使用『pingyour.NIC.IP.address』来查阅!当然啰!加上次数更好『ping-c5your.NIC.IP.address』!无论如何,这个指令一定要记得的啦! icmp指的是ICMPhttp://linux.vbird.org/linux_server/0110network_basic.php\lpacket_icmp这个协定啰!ttl指的是timetolive啦!当经过一个节点,ttl就会减少一!而预设有255个!以上面为例,我的Linux主机连接到tw.yahoo.com共经过10个gateway,所以ttl剩下245!命令netstat查阅网络信息的指令语法[root@testroot]#netstat[-r][-iinte_____][root@testroot]#netstat[-antulp]参数说明-r 显示出route的意思;-i 显示出inte_____的内容,跟ifconfig类似啦!-a 显示出目前所有的网络联机状态!-n 预设情况中,显示出的host会以hostname来显现,若为n则可以使port与host都以数字显示-t 仅显示tcp封包的联机行为-u 仅显示udp的封包联机状态-l 仅显示LISTEN的内容-p 同时显示此一联机的PID喔!注意只有root才能行使此功能!范例[root@testroot]#netstat-r #嘿嘿!显示出目前的路由表!与routehttp://linux-vbird.bluedata.org/linux_server/0140networkcom__nd.htm\lroute指令的功能相同KernelIProutingtableDestination Gateway Gen__sk FlagsMSSWindowirttIfa__
140.
116.
141.253*
255.
255.
255.255UH 400 0ppp
0192.
168.
1.0 *
255.
255.
255.0 U 400 0eth
0192.
168.
0.0 *
255.
255.
255.0 U 400 0eth
0127.
0.
0.0 *
255.
0.
0.0 U 400 0lodefault
140.
116.
141.
2530.
0.
0.0 UG 400 0ppp0 [root@testroot]#netstat-ieth0 #看看底下显示出的内容,是否跟ifconfigeth0类似呀!?KernelInte_____tableIfa__ MTUMet RX-OKRX-ERRRX-DRPRX-OVR TX-OKTX-ERRTX-DRPTX-OVR___eth0 1500 077199373 0 0 169616342 0 0 0BMRUlo 16436 01130485 0 0 01130485 0 0 0LRU [root@testroot]#netstat-an==显示所有的联机状态,并且以数字型态显示[root@testroot]#netstat-tul==显示LISTEN的及tcp与udp的联机状态,如下ActiveInternetconnectionsonlyserversProtoRecv-QSend-QLocalAddress ForeignAddress Statetcp 0 0*:mysql *:* LISTENtcp 0 0*:netbios-ssn *:* LISTENtcp 0 0*:pop3 *:* LISTENtcp 0 0*:http *:* LISTENtcp 0 0*:ftp *:* LISTENtcp 0 0*:ssh *:* LISTENtcp 0 0*:__tp *:* LISTENudp 0 0*:netbios-ns *:*注意上面的LISTEN表示该port是已经在监听网络服务啦!而左边的tcp指的是tcp封包! [root@testroot]#netstat-anp|more==这个指令很常下达!请记得呦!说明netstat可是很了不起的指令,一定要学会的!尤其他可以让我们了解目前的您的主机的联机状态!与开启的port有哪些!所以一定得学会才行呀!如果您分别下达 netstat-a |morenetstat-an|more 一定会发现有点奇怪?怎么有的port会以服务名称例如上面例子里的pop
3...有的会以port号码来显示呢!?嘿嘿!那就是/etc/servi__s以及-n这个参数的用途啦!您可以发现的是,如果netstat-a时,显示出来的port号码在/etc/servi__s存在对应的服务名称的时候,那么预设他就会显示出该服务名称啦!但是若在/etc/servi__s找不到档案的话,那么自然就还是以port号码来显示的!那么加上了-n参数后,不论如何,他都会以port及IP来显示啦! 另外,那个-p也很有用呦!尤其是在一些莫名其妙的联机出现时,可以用-p这个参数查到PID,然后再以利用killhttp://linux.vbird.org/linux_basic/0440pro__sscontrol.php\lkill来杀掉他呦! Proto指的是封包或者是通讯协议啦!tcpudp是常见的呦!LocalAddress本地端的IP与Port号,如果/etc/servi__s存在对应服务名称,就以服务名称显示;ForeignAddress监听哪一个地区与port;state状态列就很多啦!基本的有oLISTEN亦即监听状态中的port!oESTABLISHED已建立联机的联机情况oTIME_WAIT该联机在目前已经是等待的状态了!随时有可能会断线呦! 善用netstat可以查得相当多的网络信息!尤其在关闭本机的port时!命令telnet用来联机远程主机,当然,BBS主机也可以联机语法[root@testroot]#telnet[-8][host|IP][port]参数说明-8 可以减少乱码的情况port服务的埠口!例如POP3的110,__TP的25port等等!telnet可以用来侦测!范例[root@testroot]#telnet-8bbs.sayya.orgbbs.sayya.orgSayYALinux信息站
140.
113.
22.98欢迎光临【SayYA信息站】目前在线人数
[41]人 【 SayYaLinuxsBBS站台 】 一个以Linux消息、知识、互动服务之专业BBS站 参观用账号guest,申请新账号new请输入代号guest #这个是__最有名气的专业LinuxBBS站,有空多来瞧一瞧! [root@testroot]#telnetlocalhost110#侦测本机端的110这个port是否有启动Trying
127.
0.
0.
1...telnet:connecttoaddress
127.
0.
0.1:Connectionrefused上面是没有开启port110的情况!所以显示联机不成功!refused[root@testroot]#telnetlocalhost110Trying
127.
0.
0.
1...Connectedto
127.
0.
0.
1.Escapecharacteris^].+OKPOP3testv
2000.70rhserverreadyquit==这里输入离开的指令为quit呦!+OKSayonara==哈哈!还告诉您__话『纱呦那哪』Connectionclosedbyforeignhost.说明除了联机到主机以进行远程操控之外,telnet最好用的地方就是在于 帮助您连接上去BBS查询数据;帮助您测试主机端某个端口口的联机情况! 以上面的例子来说,我们使用telnet就可以立刻连上SayYa这个专门探讨Linux的BBS站台的欢迎画面!嘿嘿!很棒吧!另外,如果您要确认本机端的110这个埠口是否正常时,也可以使用『telnet+IP+port』来侦测看看呦!很好用的工具吧!^_^!不过,不幸的是,如果您在Linux终端机接口下,应该是看不到中文的啦!怎么办?!没关系,我们可以加上__JMC__http://linux-vbird.bluedata.org/linux_server/0140networkcom__nd.htm\ljmc__这个中文套件来显示喔!这个在本章节后面继续说明咯命令ftp远程传送数据当中,速度最快的协议之一语法[root@testroot]#ftp[-p]host[port]参数说明-p启动PASSIVE模式!范例[root@testroot]#ftplocalhost ==预设是以port21来进行联机[root@testroot]#ftplocalhost1354 #如果您设定的ftp的port非正规的21,则可以这样! [root@testroot]#ftplocalhost ==连接到远程主机Connectedtolocalhost
127.
0.
0.
1.220localhostFTPserverVersionwu-
2.
6.1-20ready.Name
127.
0.
0.1:test:test ==输入账号331Passwordrequiredfortest.Password:==输入__230Usertestloggedin.RemotesystemtypeisUNIX.Usingbinarymodetotransferfiles.ftpdir ==显示远方主机的内容ftpcd ==变换远程主机的目录ftpcloseorbyeorexit ==离开远程主机ftpgetfile ==取得远程主机的档案ftpmgetfile ==取得所有的档案,较get好用!例如mget.bash*ftpputfile ==将本地端档案file丢到远程主机上ftpmputfile ==将一些档案上传咯ftpdeletefile ==杀掉远程主机的file档案ftphelp ==显示求救指令!ftpmkdirdir ==在远程主机上面建立目录ftplcd ==变换本地端路径!ftpasciiorbinary ==以ASCII模式或BINARY模式捉取数据!?说明这个指令是用在传输档案上面相当好用的功能之一!尤其是在可匿名登入的FTP__!例如中山大学的__!用法就如同上面显示的一般!包括各种捉取档案的方式都写在上头了,可得好好的参考参考!不过,由于这个数据在传送的时候是以明码的方式来传送的,所以较不安全啦!建议多以sftp来使用之!另外,他最大的好处是可以指定port!当您有建立非21port的时候,就可以使用这个指令加上port号来联机啦!。