Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第1页, 共53页
产品名称Product name 密级Confidentiality level
CAMS 机密
产品版本Product version
V100
Total 53pages 共55页
Linux 操作指导专题
(仅供内部使用)
拟制: 日期 2003-09-06
审核: 日期 2003-09-06
审核: 日期 2003-09-06
批准: 日期 2003-09-06
华为3Com技术有限公司
版权所有 侵权必究
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第2页, 共53页
修订记录
日期 修订版本 描述 作者
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第3页, 共53页
目 录
第1 章 命令行操作及常用命令使用...........................................................................................5
1.1 命令行操作...................................................................................................................5
1.1.1 Shell 简介...........................................................................................................5
1.1.2 Shell 控制台使用方法..........................................................................................6
1.2 常用命令使用................................................................................................................6
1.2.1 登录和退出Linux 系统.........................................................................................6
1.2.2 文件和目录操作命令............................................................................................8
1.2.3 用户及用户组管理命令......................................................................................10
1.2.4 进程及任务管理命令..........................................................................................13
1.2.5 磁盘及文件系统管理命令...................................................................................16
1.2.6 软件安装命令....................................................................................................17
第2 章 文件查看/编辑方法介绍...............................................................................................19
2.1 cat 命令介绍...............................................................................................................19
2.2 vi 命令介绍.................................................................................................................19
2.2.1 vi 的进入与退出.................................................................................................20
2.2.2 vi 中显示行号....................................................................................................20
2.2.3 光标移动操作....................................................................................................21
2.2.4 文本插入操作....................................................................................................22
2.2.5 文本修改操作....................................................................................................23
2.2.6 文本搜索与替换操作..........................................................................................25
2.3 head 及tail 命令介绍...................................................................................................26
第3 章 网络配置及操作..........................................................................................................27
3.1 网络配置命令..............................................................................................................27
3.1.1 ifconfig .............................................................................................................27
3.1.2 route................................................................................................................28
3.2 网络操作命令..............................................................................................................30
3.2.1 netstat..............................................................................................................30
3.2.2 nslookup ..........................................................................................................31
3.2.3 host .................................................................................................................32
3.2.4 finger ...............................................................................................................32
3.2.5 Ping 命令..........................................................................................................33
3.3 常用网络配置文件介绍................................................................................................33
3.3.1 /etc/sysconfig/network 网络设置.........................................................................34
3.3.2 /etc/hosts IP 地址和主机名的映射.......................................................................34
3.3.3 /etc/services.....................................................................................................35
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第4页, 共53页
3.3.4 /etc/host.conf 配置名字解析器............................................................................35
3.3.5 /etc/nsswitch.conf 配置名字解析器.....................................................................36
3.3.6 /etc/resolv.conf 配置DNS 客户..........................................................................37
3.3.7 /etc/xinetd.conf .................................................................................................37
3.3.8 /etc/modules.conf 文件......................................................................................39
3.3.9 /etc/sysconfig/network-scripts/ifcfg-ethN 文件.....................................................39
3.4 常用网络操作方法.......................................................................................................39
3.4.1 ftp 远程文件传输...............................................................................................40
3.4.2 telnet................................................................................................................42
3.4.3 r-系列命令........................................................................................................43
第4 章 常用使用技巧..............................................................................................................45
4.1 Linux 下软件包的安装及卸载........................................................................................45
4.1.1 RPM 安装操作..................................................................................................45
4.1.2 RPM 查询操作..................................................................................................45
4.1.3 RPM 卸载操作..................................................................................................46
4.1.4 RPM 升级操作..................................................................................................46
4.1.5 RPM 验证操作..................................................................................................46
4.1.6 RPM 的其他附加命令........................................................................................47
4.2 Linux 操作系统的时钟系统...........................................................................................47
4.2.1 时钟系统介绍....................................................................................................47
4.2.2 硬件时钟系统与系统时间的同步.........................................................................47
4.3 系统信息及运行状态监控.............................................................................................48
4.3.1 df 命令..............................................................................................................49
4.3.2 du 命令.............................................................................................................49
4.3.3 top 命令............................................................................................................49
4.3.4 iostat 命令........................................................................................................50
4.4 打包/压缩工具tar ........................................................................................................50
4.5 文件及文件内容的查找................................................................................................51
4.5.1 文件查找命令find..............................................................................................51
4.5.2 文件内容查找命令grep......................................................................................51
4.6 Linux 的系统服务及其配置...........................................................................................52
4.6.1 服务简介..........................................................................................................52
4.6.2 启动和停止服务................................................................................................52
4.6.3 服务的添加删除自动运行及状态..................................................................53
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第5页, 共53页
第1章 命令行操作及常用命令使用
1.1 命令行操作
1.1.1 Shell 简介
shell 是用户和Linux 操作系统之间的接口Linux 中有多种shell 其中缺省
使用的是bash
Linux 系统的shell 作为操作系统的外壳为用户提供使用操作系统的接口它
是一个命令语言解释器拥有自己内建的shell 命令集shell 也能被系统中其
他应用程序所调用用户在提示符下输入的命令都由shell 先解释然后传给
Linux 核心
Linux 中的shell 有多种类型其中最常用的几种是Bourne shell sh C shell
csh 和Korn shell ksh 三种shell 各有优缺
Bourne shell 是UNIX 最初使用的shell 并且在每种UNIX 上都可以使用
Bourne shell 在shell 编程方面相当优秀但在处理与用户的交互方面做得不
如其他几种shell Linux 操作系统缺省的shell 是Bourne Again shell 它是
Bourne shell 的扩展简称bash 与Bourne shell 完全向后兼容并且在
Bourne shell 的基础上增加增强了很多特性它还包含了很多C shell 和Korn
shell 中的优点有灵活和强大的编程接口同时又有很友好的用户界面
C shell 是一种比Bourne shell 更适于编程的shell 它的语法与C 语言很相似
Linux 为喜欢使用C shell 的人提供了Tcsh Tcsh 是C shell 的一个扩展版本
Tcsh 包括命令行编辑可编程单词补全拼写校正历史命令替换作业控制
和类似C语言的语法它不仅和Bash shell 是提示符兼容而且还提供比Bash
shell 更多的提示符参数
Korn shell 集合了C shell 和Bourne shell 的优点并且和Bourne shell 完全兼
容Linux 系统提供了pdksh ksh 的扩展它支持任务控制可以在命令行
上挂起后台执行唤醒或终止程序
Redhat Linux 系统默认的shell 是bash 对普通用户用$作提示符对超级用
户root 用#作提示符一旦出现了shell 提示符就可以键入命令名称及命令所
需要的参数
我们来实习一下shell 是如何工作的在shell 提示符下输入以下命令
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第6页, 共53页
$ ls �Cal
该命令可以列出当前目录下的所有文件和子目录
用户在登录到Linux 时由/etc/passwd 文件来决定要使用哪个shell 例如
该文件中含有类似如下一行
myself:x:500:500:Linux User:/home/myself:/bin/bash
用户使用的shell 被列每行的末尾/bin/bash
由于bash 是Redhat Linux 上缺省的shell 本文将主要介绍bash 及其相关知
识
1.1.2 Shell 控制台使用方法
首先介绍一个名词控制台console 它就是我们通常见到的使用字符
操作界面的人机接口例如dos 我们说控制台命令就是指通过字符界面输入
的可以操作系统的命令例如dos 命令就是控制台命令我们现在要了解的
是基于Linux 操作系统的基本控制台命令
Linux 是一个真正的多用户操作系统这表示它可以同时接受多个用户登录
Linux 还允许一个用户进行多次登录这是因为Linux和许多版本的UNIX 一
样提供了虚拟控制台的访问方式允许用户在同一时间从控制台系统
的控制台是与系统直接相连的监视器和键盘进行多次登录
虚拟控制台的选择可以通过按下Alt 键和一个功能键来实现通常使用F1-F6
例如用户登录后按一下Alt-F2 键用户又可以看到"login:"提示符说明用户
看到了第二个虚拟控制台然后只需按Alt-F1 键就可以回到第一个虚拟控制
台一个新安装的Linux 系统允许用户使用Alt-F1 到Alt-F6 键来访问前六个
虚拟控制台
1.2 常用命令使用
1.2.1 登录和退出Linux 系统
用户登录系统时为了使系统能够识别自己必须输入用户名和密码经系
统验证无误后方能进入系统
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第7页, 共53页
& 说明
在系统安装过程中可以创建两种帐号超级用户帐号和普通用户帐号Linux
使用者一般为普通用户而系统管理员一般使用超级用户帐号完成一些系统
管理的工作如果只需要完成一些由普通用户帐号就能完成的任务建议不
要使用超级用户帐号以免无意中破坏系统
用户登录分两步进行第一步输入用户的登录名系统根据该登录名来识别
用户第二步输入用户的口令该口令是用户自己选择的一个字符串对其
他用户是保密的是在登录时系统用来辨别真假用户的关键字
1. 启动和登录系统
超级用户的用户名为root 密码在安装系统时已设定系统启动成功后屏幕
显示下面的提示
localhost login:
这时输入超级用户名"root" 然后键入回车键此时用户会在屏幕上看到输入口
令的提示
localhost login:root
Password:
这时需要输入口令输入口令时口令不会在屏幕上显示出来如果用户输
入了错误的口令就会在屏幕上看到下列信息
login incorrect.
这时需要重新输入当用户正确地输入用户名和口令后就能合法地进入系
统屏幕显示
[root@loclhost/root] #
此时说明用户已经登录到系统中可以进行操作了这里"#"是超级用户的系
统提示符普通用户在建立了普通用户帐号以后就可以进行登录了
不论是超级用户还是普通用户需要退出系统时在shell 提示符下键入exit 命
令即可还有其他退出系统的方法但上面一种是最安全的
2. 重新启动系统
以root 用户登录Linux 操作系统后执行reboot 命令可以重新启动linux 系统
[root@loclhost/root] # reboot
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第8页, 共53页
3. 关闭系统
shutdown 命令可以安全地关闭或重启Linux 系统它在系统关闭之前给系统
上的所有登录用户提示一条警告信息该命令还允许用户指定一个时间参数
可以是一个精确的时间也可以是从现在开始的一个时间段精确时间的格
式是hh:mm 表示小时和分钟时间段由+ 和分钟数表示系统执行
该命令后会自动进行数据同步的工作该命令的一般格式
shutdown [选项] [时间] [警告信息]
命令中各选项的含义为:
- k 并不真正关机而只是发出警告信息给所有用户
- r 关机后立即重新启动
- h 关机后不重新启动
- f 快速关机重启动时跳过fsck
- n 快速关机不经过init 程序
- c 取消一个已经运行的shutdown
需要特别说明的是该命令只能由超级用户使用
例1 系统在十分钟后关机并且马上重新启动
# shutdown �Cr +10
例2 系统马上关机并且不重新启动
# shutdown �Ch now
1.2.2 文件和目录操作命令
1. ls 命令
这个命令就相当于dos 下的dir 命令一样也是Linux 控制台命令中最为重要
几个命令之一ls 最常用的参数有三个-a -l 和 �CF
ls -a
Linux 系统上的文件以.开头的文件被系统视为隐藏文件仅用ls 命令是看不
到他们的而用ls �Ca 除了显示一般文件名外连隐藏文件也会显示出来
ls �Cl 这个参数是字母L 的小写不是数字1
这个命令可以使用长格式显示文件内容如果需要察看更详细的文件资料就
要用到ls -l 这个指令
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第9页, 共53页
ls �CF
在列出的文件目录名称后加一符号例如可执行文件加 "*", 目录则加 "/"
2. cd 命令
cd 这个命令是用来进出目录的它的使用方法和在dos 下没什么两样但和
dos 不同的是Linux 的目录对大小写是敏感的如果大小写拼写有误你的cd
操作是成功不了的另外cd 如果直接输入cd 后面不加任何东西会回到使
用者自己的Home 目录假设如果是root 那就是回到/root 这个功能同cd ~
是一样的
3. mkdir rmdir
mkdir 命令用来建立新的目录如输入如下命令
mkdir work
将在当前目录下新建一个work 目录
rmdir 用来删除已建立的目录如输入如下命令
rmdir work
将删除已存在的空目录work
4. cp
cp 这个命令相当于dos 下面的copy 命令具体用法是
cp �Cr 源文件(source) 目的文件(target)
参数r 是指连同源文件中的子目录一同拷贝
5. rm
rm 这个命令是用来删除文件的rm命令常用的参数有三个-i,-r,-f
比如我现在要删除一个名字为text 的一个文件输入如下命令
rm �Ci test
系统会询问我们是否要删除test 文件敲了y/n 确认是否要删除test 文件
rm �Cr 目录名这个操作可以连同这个目录下面的子目录都删除功能比上
面讲到的rmdir 更强大不仅可能删除指定的目录而且可以删除该目录下所
有文件和子目录
rm �Cf 文件名这个操作可以不经确认强制删除文件
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第10页, 共53页
6. mv
mv 这个命令的功能是移动目录或文件引申的功能是给目录或文件重命名
比如
mv /tmp/xxx.tar /root
该命令将/tmp 目录下的xxx.tar 文件移动到/root 目录下
而
mv aaa.tar bbb.tar
则是将当前目录下的文件aaa.tar 更名为bbb.tar
7. cat
cat 这个命令是linux 中非常重要的一个命令它的功能是显示或连结一般的
ascii 文本文件它的用法如下
cat text
该命令显示text 这个文件的内容
cat file1 file2
该命令依顺序显示file1,file2 的内容
cat file1 file2>file3
该命令把file1,file2 的内容结合起来再重定向>到file3 文件中
8. more
more 是显示一般文本文件的指令如果一个文本文件太长了超过一个屏幕的
画面用cat 来看实在是不理想就可以试试more 用法如下
more file1
9. pwd
pwd 这个命令的作用是显示用户当前的工作路径直接输入pwd 即可
1.2.3 用户及用户组管理命令
1. useradd
useradd 命令可以创建一个新的用户帐号其最基本用法为
useradd 用户名
如输入以下命令
useradd newuser
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第11页, 共53页
系统将创建一个新用户newuser 该用户的Home 目录为/home/newuser
useradd 命令的参数较多常用的组合为
useradd 用户名 -g 组名 �CG 组名 -d Home 目录名 -p 密码
其中 -g 指定该用户的首要组
-G 指定该用户的次要组
-d 指定该用户的Home 目录
-p 指定该用户的密码
如输入以下命令
useradd oracle �Cg oinstall �CG dba �Cd /home/oracle �Cp ora123
系统将创建一个用户oracle oracle 用户的首要组为oinstall 次要组为dba
Home 目录为/home/oracle 密码为ora123
2. userdel
userdel 命令用于删除一个已存在的帐号其用法为
userdel 用户名
3. groupadd
groupadd 命令可以创建一个新的用户组其最基本用法为
groupadd 组名
如输入以下命令
groupadd newgroup
系统将创建一个新的用户组newgroup
4. groupdel
groupdel 命令用于删除一个已存在的用户组其用法为
groupdel 组名
5. passwd
出于系统安全考虑Linux 系统中的每一个用户除了有其用户名外还有其对应
的用户口令用户可以随时用passwd 命令改变自己的口令该命令的一般格
式为
passwd
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第12页, 共53页
输入该命令后按系统提示依次输入密码和密码确认后即可完成用户密码
的修改
此外超级用户还可以修改其他用户的口令命令如下
passwd 用户名
6. su
su 命令这个命令非常重要它可以让一个普通用户拥有超级用户或其他用户
的权限也可以让超级用户以普通用户的身份做一些事情普通用户使用这
个命令时必须有超级用户或其他用户的口令如要离开当前用户的身份可
以键入exit 命令su 命令的一般形式为
su - 用户名
7. chmod
chmod 命令是非常重要的用于改变文件或目录的访问权限该命令有两种
用法一种是包含字母和操作符表达式的文字设定法另一种是包含数字的
数字设定法
由于数字设定法不太直观本文不做介绍文字设定法的用法如下
chmod [who] [+ | - | =] [mode] 文件名
命令中各选项的含义为
1 操作对象who 可以是下述字母中的任一个或者它们的组合
u 表示用户(user) 即文件或目录的所有者
g 表示同组(group)用户即与文件属主有相同组ID 的所有用户
o 表示其他(others)用户
a 表示所有(all)用户它是系统默认值
2 操作符号可以是
+ 添加某个权限
- 取消某个权限
= 赋予给定权限,并取消其他所有权限
3 mode 表示权限常用的参数有
r 可读
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第13页, 共53页
w 可写
x 可执行
举例
1 将文件script 的权限设为可执行命令如下
chmod =rx text
执行成功后用ls -l script 命令查看文件属性的结果如下
-r-xr-xr-x 1 user group 0 Feb 10 09:42 script
2 将文件text 的权限设为文件属主可读可写可执行与文件属主同组
的用户可读其他用户不可读命令如下
chmod u=rwx,g=r,o= text 注意,后无空格o=后有空格
执行成功后用ls �Cl text 命令查看文件属性的结果如下
-rwxr----- 1 user group 0 Feb 10 09:42 text
8. chown
chown 用于更改某个文件或目录的属主和属组这个命令也很常用例如
root 用户把自己的一个文件拷贝给用户oracle 为了让用户oracle 能够存
取这个文件root 用户应该把这个文件的属主设为oracle 否则用户oracle
无法存取这个文件chown 的基本用法为
chown [用户:组] 文件
举例
chown oracle:dba text
该命令将text 文件的属主和属组分别改为oracle 和dba
1.2.4 进程及任务管理命令
Linux 系统上所有运行的东西都可以称之为一个进程每个用户任务每个系
统管理守护进程都可以称之为进程Linux 用分时管理方法使所有的任务共同
分享系统资源以下将介绍一些常用的查看和控制进程的命令
1. ps
ps 命令是最基本同时也是非常强大的进程查看命令使用该命令可以查看有
哪些进程正在运行以及运行的状态进程是否结束进程有没有僵死哪些
进程占用了过多的资源等等
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第14页, 共53页
该命令的基本用法如下
ps [选项]
其中常用的选项有
-e 显示所有进程
-f 全格式
-l 长格式
举例
1 在控制台输入ps 命令得到类似如下的输出
PID TTY TIME CMD
12039 pts/0 00:00:00 bash
18710 pts/0 00:00:00 ps
该命令显示当前登录用户的执行进程显示的项目共分为四项依次为PID(进
程ID) TTY(终端名称) TIME(进程执行时间) CMD(该进程的命令行输入)
2 在控制台输入以下命令
ps �Cef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Jan14 ? 00:00:05 init
root 2 1 0 Jan14 ? 00:00:00 [keventd]
root 3 1 0 Jan14 ? 00:00:00 [kapmd]
…………………..
该命令将显示所有执行进程的信息显示的项目依次为UID 执行进程的用
户ID PID(进程ID) PPID(父进程ID) TTY(终端名称) STIME(进程启
动时间) TIME(进程执行时间) CMD(该进程的命令行输入)
该命令的输出较多可以使用grep 命令进行过虑以方便查看如
ps �Cef|grep oracle
将只显示出包含oracle 的输出行可以查询执行进程的用户为oracle 的所有
进程
2. top
top 命令和ps 命令的基本作用是相同的显示系统当前的进程和其他状况
但是top 是一个动态显示过程即可以通过用户按交互来不断刷新当前状态
top 的命令参数并不重要简单的输入top 命令即可查看系统运行状态
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第15页, 共53页
top 命令执行过程中可以使用交互命令从使用角度来看熟练的掌握这些命
令比掌握选项还重要一些这些命令都是单字母的常用的命令有
<空格> 立即刷新显示
h 或者? 显示帮助画面给出一些简短的命令总结说明
m 切换显示内存信息
t 切换显示进程和CPU状态信息
c 切换显示命令名称和完整命令行
M 根据驻留内存大小进行排序
P 根据CPU使用百分比大小进行排序
q 退出
3. kill
kill 命令可以用于终止后台进程kill 命令是通过向进程发送指定的信号来
结束进程的kill 命令的语法格式很简单大致有以下两种方式
1 kill [-s 信号] 进程号
其中发出的信号既可以是信号名也可以对应数字
如kill -9 1234 命令将终止PID(进程号)为1234 的进程
2 kill -l
该命令显示信号列表
4. cron
cron 命令用来实现定时任务的完成如每日执行一次的任务进程
cron 命令是不应该手工启动的一般情况下cron 命令在系统启动时就由一
个shell 脚本自动启动启动后 cron 命令会搜索/var/spool/cron 目录寻找
以/etc/passwd 文件中的用户名命名的crontab 文件被找到的这种文件将载
入内存例如一个用户名为user 的用户它所对应的crontab 文件就应该是
/var/spool/cron/user 也就是说以该用户命名的crontab 文件存放在
/var/spool/cron 目录下面cron 命令还将搜索/etc/crontab 文件这个文件是
用不同的格式写成的cron 启动以后它将首先检查是否有用户设置了crontab
文件如果没有就转入休眠状态释放系统资源它每分钟醒过来一次查看
当前是否有需要运行的命令
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第16页, 共53页
可以使用crontab �Cl 命令查看目前已经存在的cron 任务
1.2.5 磁盘及文件系统管理命令
管理文件系统其实是相当复杂的工作本文将只介绍日常维护需要的一些管
理命令主要内容有挂装和卸载硬盘分区等
1. df
df 命令可以显示目前磁盘剩余的磁盘空间常用的参数为-k 如
df �Ck
该语句将显示各分区的磁盘空间使用情况
2. mount 和umount
mount 命令有很多参数其中大多数都不会在日常工作中用到mount 命令
最常见的用法如下所示
mount [选项] 设备 目录
其中最常用的选项是
- a 把/etc/fstab 文件中列出的文件系统都挂装上
挂装软驱和光驱的命令比较简单直接输入以下命令即可
mount /mnt/cdrom
mount /mnt/floppy
umount 命令用于卸载一个文件系统命令的格式如下
umount [ -f ] directory
其中directory 是准备卸载的目录名
umount 命令有一个不足之处如果文件系统正在使用中也就是说有人在那
个分区上打开了文件就无法把这个文件系统卸载下来这时可以使用和- f
参数强制执行卸载操作当然这种操作可能会造成用户数据的丢失如
umount -f /mnt/cdrom
该命令将强制卸载挂装在/mnt/cdrom 目录下的文件系统
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第17页, 共53页
1.2.6 软件安装命令
1. tar
tar 命令用于把多个文件合并于一个档案文件中并提供分解的合并后的档案
文件的功能它独立于压缩工具因此可以选择在合并前是否压缩tar 命令
的基本用法为
tar [选项] 文件名
常用的选项包括
-c 创建一个新的档案文件
-t 查看档案文件的内容
-x 分解档案文件的内容
-f 指定档案文件的名称
-v 显示过程信息
-z 采用压缩方式
举例
1 tar -czf oracle.tar.gz /u01/app/oracle /etc/oratab /home/oracle
该命令将/u01/app/oracle 目录下的所有文件/etc/oratab 文件和
/home/oracle 目录下的所有文件合并到oracle.tar 文件中并采用压缩方式
2 tar -tzf oracle.tar.gz
该命令列出归档文件oracle.tar 中的所有文件列表
3 tar �Cxzvf oracle.tar.gz
该命令将归档文件分解并解压缩到原有文件的路径中
2. rpm
rpm 命令的功能有很多在这里我们只介绍如何利用rpm 安装和查询已安
装的软件
1 安装
rpm 安装软件包的基本语法如下
rpm -i rpm 包名
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第18页, 共53页
例如
rpm -i tomcat4.rpm
该命令将安装Tomcat 软件并进行相关系统配置
2 升级
rpm 升级软件包的基本语法如下
rpm -U rpm 包名
例如
rpm �CU tomcat4.rpm
该命令将升级Tomcat 软件并进行相关系统配置
3 查看已安装的软件
有的时候了解系统中都已经安装了哪些软件包以及它们的用途是很有用
的 R P M 的查询参数就可以做到这一点
要想列出已经安装的全部软件包可以通过以下命令
rpm -qa
可以使用g r e p 命令指定软件包的名称或者部分名称如下所示
rpm -qa | grep 'tomcat'
该命令将列出包名中包含tomcat 的软件包
此外要想找出某个特定的文件到底是属于哪个软件包的可以输入
rpm -qf filename
其中filename 是准备要查找其归属的文件名称
要想查出某个已经安装的软件包的功能可以用如下命令
rpm -qi packagename
其中packagename 是要查找其用途的软件包名称
4 删除已安装的软件
使用RPM删除软件包就像安装它们一样简单大多数情况下用户只需
要输入命令
rpm -e packagename
其中ackagename 是要查删除的软件包名称
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第19页, 共53页
第2章 文件查看/编辑方法介绍
2.1 cat 命令介绍
cat 命令的原含义为连接concatenate 用于连接多个文件内容并输出到
标准输出流中标准输出流默认为屏幕实际运用过程中我们常使用它
来显示文件内容如果您熟悉MS-DOS 下的type 命令相信不难掌握cat 命
令该命令的常用示例如下
cat file1.txt 显示file1.txt 文件的内容
cat file1.txt file2.txt 显示file1.txt 和file2.txt 文件的内容
cat -n file1.txt 显示file1.txt 文件的内容同时显示行号
2.2 vi 命令介绍
vi 是Visual Interface 的简称它在Linux 上的地位就仿佛Edit 程序在DOS
上一样它可以执行输出删除查找替换块操作等众多文本操作而
且用户可以根据自己的需要对其进行定制这是其他编辑程序所没有的
vi 不是一个排版程序它不象Word 或WPS 那样可以对字体格式段落等
其他属性进行编排它只是一个文本编辑程序
vi 没有菜单只有命令且命令繁多限于篇幅本文只介绍常用的命令
Vi 有三种基本工作模式命令行模式文本输入模式和末行模式
命令行模式
任何时候不管用户处于何种模式只要按一下ESC 键即可使vi 进入
命令行模式当在shell 环境下输入vi 命令启动vi 编辑器时也是处于该模式
下
在该模式下用户可以输入各种合法的vi 命令用于管理自己的文档此时
从键盘上输入的任何字符都被当作编辑命令来解释若输入的字符是合法的
vi 命令则vi 在接受用户命令之后完成相应的动作但需注意的是所输入
的命令并不在屏幕上显示出来若输入的字符不是vi 的合法命令vi 会响
铃报警
文本输入模式
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第20页, 共53页
在命令模式下输入插入命令i 附加命令a 打开命令o 修改命令c 取代
命令r 或替换命令s 都可以进入文本输入模式在该模式下用户输入的任何
字符都被vi 当做文件内容保存起来并将其显示在屏幕上在文本输入过程
中若想回到命令模式下按ESC 键即可
末行模式
在命令模式下用户按: 键即可进入末行模式下此时Vi 会在显示窗口的最
后一行通常也是屏幕的最后一行显示一个: 作为末行模式的提示符
等待用户输入命令多数文件管理命令都是在此模式下执行的如把编辑缓
冲区的内容写到文件中等末行命令执行完后vi 自动回到命令模式
若在末行模式下输入命令过程中改变了主意可按ESC 键或用退格键
将输入的命令全部删除之后再按一下退格键即可使vi 回到命令模式下
2.2.1 vi 的进入与退出
在shell 模式下键入vi 及需要编辑的文件名即可进入vi 例如
vi example.txt
即可编辑example.txt 文件如果该文件存在则编辑界面中会显示该文件的
内容并将光标定位在文件的第一行如果文件不存在则编辑界面中无任
何内容如果需要在进入vi 编辑界面后将光标置于文件的第n 行则在vi
命令后面加上+n 参数即可例如需要从example.txt 文件的第5 行开始显
示则使用如下命令
vi +5 example.txt
退出vi 时需要在末行模式中输入退出命令q 如果在文本输入模式下
首先按ESC 键进入命令模式然后输入: 进入末行模式在末行模式
下可使用如下退出命令
:q 直接退出如果在文本输入模式下修改了文档内容则不能退出
:wq 保存后退出
:x 同wq
:q! 不保存内容强制退出
2.2.2 vi 中显示行号
在末行模式下输入如下命令
set number
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第21页, 共53页
可使vi 在编辑界面中显示行号
此外在末行模式下可使用如下nu 命令number 的简写来显示光标
所在行的行号及该行的内容
2.2.3 光标移动操作
全屏幕文本编辑器中光标的移动操作无疑是最经常使用的操作了用户只
有熟练地使用移动光标的这些命令才能迅速准确地到达所期望的位置处进
行编辑
vi 中的光标移动既可以在命令模式下也可以在文本输入模式下但操作的方
法不尽相同
在文本输入模式下可直接使用键盘上的四个方向键移动光标在命令模式
下有很多移动光标的方法不但可以使用四个方向键来移动光标还可以
用h j k l 这四个键代替四个方向键来移动光标这样可以避免由于不同机
器上的不同键盘定义所带来的矛盾而且使用熟练后可以手不离开字母键盘
位置就能完成所有操作从而提高工作效率
以下命令均在命令行模式下完成光标移动
h 光标左移如果在按h 命令前输入数字n 则光标左移n 个字符
l 光标右移如果在按l 命令前输入数字n 则光标右移n 个字符
j 光标上移如果在按j 命令前输入数字n 则光标上移n 个字符
k 光标下移如果在按k 命令前输入数字n 则光标xia 移n 个字符
0 零 光标移到行首
$ 光标移到行尾
H 光标移到屏幕上显示的第一行并不一定是文件头
L 光标移到屏幕上显示的最后一行并不一定是文件尾
M 光标移到屏幕的中间一行
nG 光标移到第n 行
w或W 将光标右移至下一个单词的词首
e 或E 如果光标起始位置处于单词内即非单词尾处则该命令将把光
标移到本单词词尾如果光标起始位置处于单词尾则该命令将把光标移动
到下一个单词的词尾
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第22页, 共53页
b 或B 如果光标处于所在单词内即非单词首则该命令将把光标移至
本单词词首如果光标处于所在单词的词首则该命令将把光标移到上一个
单词的词首
Ctrl+G 状态命令显示当前编辑文档的状态包括正在编辑的文件名是
否修改过当前行号文件的行数以及光标之前的行占整个文件的百分比
此外也可以通过以下末行模式下的命令完成光标在整个文件中的移动操作
:n 光标移到文件的第n 行
:$ 光标移到文件的最后一行
2.2.4 文本插入操作
在命令模式下用户输入的任何字符都被vi 当作命令加以解释执行如果用
户要将输入的字符当作是文本内容时则首先应将vi 的工作模式从命令模式
切换到文本输入模式切换的方式是使用下面的命令
1. 插入Insert 命令
vi 提供了两个插入命令i 和I
1 . i 命令 插入文本从光标所在位置前开始并且插入过程中可以使用
<Backspace>键删除错误的输入此时vi 处于插入状态屏幕最下行显示
--INSERT-- 插入字样
2 . I 命令 该命令是将光标移到当前行的行首然后在其前插入文本
2. 附加append 命令
vi 提供了两个附加插入命令a 和A
1 . a 命令 该命令用于在光标当前所在位置之后追加新文本新输入的
文本放在光标之后在光标后的原文本将相应地向后移动光标可在一行的
任何位置
2 . A 命令 该命令与a 命令不同的是A 命令将把光标挪到所在行的行
尾从那里开始插入新文本当输入A 命令后光标自动移到该行的行尾
a 和A 命令是把文本插入到行尾的唯一方法
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第23页, 共53页
3. 打开open 命令
不论是Insert 命令也好还是append 命令也好所插入的内容都是从当前行
中的某个位置开始的若我们希望在某行之前或某行之后插入一些新行则
应使用open 命令
vi 提供了两个打开命令o 和O
1 . o 命令 该命令将在光标所在行的下面新开一行并将光标置于该行
的行首等待输入文本要注意当使用<Backspace>删除字符时只能删除从
插入模式开始的位置以后的字符对于以前的字符不起作用
2 . O 命令 和o 命令相反O 命令是在光标所在行的上面插入一行并
将光标置于该行的行首等待输入文本
2.2.5 文本修改操作
在命令模式下可以使用vi 提供的各种有关命令对文本进行修改包括对文本
内容的删除复制取代和替换等
1. 文本删除/移动
在编辑文本时经常需要删除一些不需要的文本我们可以用<Backspace>
键将输错或不需要的文本删除但此时有一个限制就是当删到行头之后再
想删上面那行的内容是不可能的
在命令模式下vi 提供了许多删除命令这些命令大多是以d 开头的常用的
有
1 . 删除单个字符
x 删除光标处的字符若在x 之前加上一个数字n 则删除从光标所在位置
开始向右的n 个字符
X 删除光标前面的那个字符若在X之前加上一个数字n 则删除从光标
前面那个字符开始向左的n 个字符
显然这两个命令是删除少量字符的快捷方法
2 . 删除多个字符
dd 删除光标所在的整行在dd 前可加上一个数字n 表示删除当前行及
其后n-1 行的内容
D 或d$ 两命令功能一样都是删除从光标所在处开始到行尾的内容
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第24页, 共53页
d0 删除从光标前一个字符开始到行首的内容
dw 删除一个单词若光标处在某个词的中间则从光标所在位置开始删至
词尾同dd 命令一样可在dw之前加一个数字n 表示删除n 个指定的单
词
如果用户不小心进行了误删除操作也不要紧vi 提供了恢复误操作的命令
并且可以将恢复的内容移动放在文本的任何地方恢复命令用np 其
中n 为需要恢复的次数例如使用dd 命令删除了一行内容然后使用2p
命令则被删除的内容会被重新插入两遍
通过dd 命令及p 命令的结合使用可以很方便的实现文本行的移动操作
2. 文本复制命令
yy 复制光标所在的整行在yy 前可加上一个数字n 表示复制当前行及其
后n-1 行的内容
文本行复制后通过使用上面介绍的p 命令可以将文本行粘贴到任何地
方
dd yy 及p 命令在vi 中的作用类似于Windows 中图形编辑程序的剪切
复制及粘贴命令
3. 取消上一命令Undo
取消上一命令Undo 也称复原命令是非常有用的命令它可以取消前
一次的误操作或不合适的操作对文件造成的影响使之回复到这种误操作或
不合适操作被执行之前的状态
取消上一命令有两种形式在命令模式下键入字符u 和U 它们的功能都是
取消刚才输入的命令恢复到原来的情况小写u 和大写U 在具体细节上有
所不同二者的区别在于大写U命令的功能是恢复到误操作命令前的情况
即如果插入命令后使用U 命令就删除刚刚插入的内容如果删除命令后使
用U 命令就相当于在光标处又插入刚刚删除的内容这里把所有修改文本
的命令都视为插入命令也就是说U 命令只能取消前一步操作如果用U
命令撤消了前一步操作当再按U 键时并不是撤消再前一步的操作而是
撤消了刚才U命令执行的操作也就是又恢复到第一次使用U 命令之前的状
态结果是什么都没做而小写u 命令的功能是把当前行恢复成被编辑前的
状态而不管此行被编辑了多少次
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第25页, 共53页
4. 重复命令Redo
重复命令也是一个非常常用的命令在文本编辑中经常会碰到需要机械地重
复一些操作这时就需要用到重复命令它可以让用户方便地再执行一次前
面刚完成的某个复杂的命令
重复命令只能在命令模式下工作在该模式下按. 键既可执行一个重复
命令时其结果是依赖于光标当前位置的
2.2.6 文本搜索与替换操作
在进行文本编辑的时候您可以需要搜索或定位特定的单词或单词的一部分
vi 编辑器有向前或向后搜索指定模式的功能
/ 是vi 编辑器的模式搜索命令键入/ 后屏幕的底部会出现一行同
时一个斜扛会出现在底行的行首上且光标被放置在斜扛之后此时您可
以在光标位置键入你需要搜索的模式输入完成并按下ENTER键后编辑器
将开始从光标所在的位置起向文件尾部搜索你键入的模式如果输入的模式
被找到光标将停留在找到的模式上在找到一个匹配的模式后如果您还
需要搜索下一个匹配的模式使用命令n 即可如果需要找到上一个匹配
的模式则使用N 命令即可
此外? 命令也是模式搜索命令与/ 的区别在于/ 是从光标当
前所在位置向文件尾部搜索而? 命令则是由光标当前所在位置向文件头
部搜索
文本替换操作需要使用末行模式进行操作即所有文本替换操作命令均以:
开头
文本替换命令的格式为
:s/text1/text2 用于将光标所在段落搜索到的第一个text1 替换为text2
:s/text1/text2/g 用于将光标所在段落的所有text1 替换为text2
:m,ns/text1/text2/g 用于将从m行开始至n 行结束的所有搜索到的text1
替换为text2 其中可以使用$表示末行即1,$ 表示替换文档中的所
有符合条件的字符
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第26页, 共53页
2.3 head 及tail 命令介绍
当需要查看一个文本文件的头部或尾部时head 命令及tail 命令可以非常方
便的完成该操作head 命令用于查看一个文本文件的开头部分而tail 命令
则用于显示文本文件的末尾几行这两个命令举例如下
head example.txt 显示文件example.txt 的前十行内容
head -n 20 example.txt 显示文件example.txt 的前二十行内容
tail example.txt 显示文件example.txt 的后十行内容
tail -n 20 example.txt 显示文件example.txt 的后二十行内容
tail -f example.txt 显示文件example.txt 的后十行内容并在文
件内容增加后自动显示新增的文件内容
注意
最后一条命令非常有用尤其在监控日志文件时可以在屏幕上一直显示新
增的日志信息
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第27页, 共53页
第3章 网络配置及操作
3.1 网络配置命令
Linux 系统中最常用的网络配置命令包括ifconfig route 其中ifconfig 用来查
看和配置网络接口通常是网卡信息包括网络接口设备的IP 地址掩码
等route 用来管理Linux 系统内核中的路由表它最大的用途就是用来设定
静态的路由表项通常是在系统用ifconfig 配置网络接口后用它来设定主机
或者一网段的IP 地址应该通过什么接口发送等
3.1.1 ifconfig
ifconfig 的语法为
ifconfig [-a] [-V] [-s] <interface> [[<AF>] <address>]
[[-]broadcast [<address>]]
[netmask <address>]
[up|down]
其中interface 为网卡名address 为IP 地址broadcast 表示设置广播
地址其后的address 为广播地址的IP netmask 表示设置子网掩码
其后的address 为子网掩码的IP up down 设置当前网卡的状态up
表示启用当前网卡down 表示关闭当前网卡
Ifconfig 的常用参数说明如下
-a 查看所有网卡状态
-V 查看ifconfig 命令的版本信息
-s 查看统计信息
示例
1 将第一块网卡的IP 地址设置为192.168.0.1
ifconfig eth0 192.168.0.1 格式ifconfig 网络设备名 IP 地址
2 暂时关闭或启用网卡
关闭第一块网卡ifconfig eth0 down
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第28页, 共53页
启用第一块网卡ifconfig eth0 up
3 将第一块网卡的子网掩码设置为255.255.255.0
ifconfig eth0 netmask 255.255.255.0 格式ifconfig 网络设备名 netmask
子网掩码
我们也可以同时设置IP 地址和子网掩码
ifconfig eth0 192.168.0.1 netmask 255.255.255.0
4 查看第一块网卡的状态
ifconfig eth0
如果要查看所有的网卡状态则直接使用不带参数的ifconfig 命令即可
ifconfig 输出的状态信息是十分有用的下面我们就简单说明一下
有几个状态比较重要
UP/DOWN 网卡是否启动了如果是DOWN的话那肯定无法用的
RX packets 中的errors 包的数量如果过大说明网卡在接收时有问题
TX packets 中的errors 包的数量如果过大说明网卡在发送时有问题
3.1.2 route
route 命令的语法为
route [-CFvnee]
route [-v] [-A family] add [-net|-host] target [netmask Nm] [gw Gw]
[metric N] [mod] [reinstate] [[dev] If]
route [-v] [-A family] del [-net|-host] target [gw Gw] [netmask Nm] [metric
N] [[dev] If]
route [-V] [--version] [-h] [--help]
route 的常用参数说明如下
-v 使用冗余输出模式
-A family 指定特定的地址族例如"inet" "inet6"
-n 使用数字显示的地址例如202.38.75.75 而不是去解释域名
-e 使用与netstat 相同的输出格式
-ee 参数会产生很长的输出包括内核路由表的几乎所有信息
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第29页, 共53页
-net 目标target 是一个网段
-host 目标target 是一个单独的主机
-F 显示内核FIB 路由表结果可能被-e 和-ee 参数改变
-C 显示内核中路由缓存信息
del 删除一个路由表项
add 增加一个路由表项
Target 配置的目的网段或者主机可以是IP 或者是网络或主机名
netmask Nm 用来指明要添加的路由表项的网络掩码
gw Gw 任何通往目的target 的IP 分组都要通过这个网关
metric M 设置路由表中该项的尺度域metric field 为M
示例
1 添加一条路由表项网段192.168.0.x 应该从接口"eth0"走
route add -net 192.168.0.0 netmask 255.255.255.0 dev eth0
2 添加一条缺省路由
route add 0.0.0.0 gw 网关地址
如果没有其他匹配的路由项就使用这个路由规则
3 删除缺省路由
route del 0.0.0.0 gw 网关地址
4 route 命令的输出结果示例说明
输出的格式有以下几栏
Destination 目标网段或者主机
Gateway 网关地址如果没有设置则是"*"表示
Genmask 网络掩码
Flags 一些可能的标记如下
U 路由是活动的
H 目标是一个主机
G 使用网关gateway
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第30页, 共53页
R reinstate route 动态路由产生的表项
D dynamically installed by daemon or redirect
M modified from routing daemon or redirect
! reject route
Metric 路由距离
Ref 路由项引用次数linux 内核中没有使用
Use 查找路由项的次数.
Iface 该路由表项对应的输出接口
3.2 网络操作命令
Linux 系统常用的网络操作命令包括netstat nslookup host finger 和ping
netstat 命令的功能是显示网络连接路由表和网络接口信息,可以让用户得知
目前都有哪些网络连接正在运作nslookup 命令的功能是查询一台机器的IP
地址和其对应的域名它通常需要一台域名服务器来提供域名服务如果用
户已经设置好域名服务器就可以用这个命令查看不同主机的IP 地址对应的
域名host 命令可根据主机名查询主机的IP 地址或根据主机IP 地址查询主机
名finger 命令的功能是查询用户的信息通常会显示系统中某个用户的用户
名主目录停滞时间登录时间登录shell 等信息ping 命令用于查看网
络上的主机是否在工作
3.2.1 netstat
netstat 命令的语法为
netstat [选项]
netstat的常用参数说明如下
-a 显示所有socket 包括正在监听的
-c 每隔1 秒就重新显示一遍直到用户中断它
-i 显示所有网络接口的信息格式同ifconfig �Ce
-n 以网络IP 地址代替名称显示出网络连接情形
-r 显示核心路由表格式同route �Ce
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第31页, 共53页
-t 显示TCP 协议的连接情况
-u 显示UDP 协议的连接情况
-v 显示正在进行的工作
示例
1 在本机使用netstat 命令其输出为如下
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 256 10.153.89.66:ssh 10.153.21.168:1054 ESTABLISHED
tcp 0 0 10.153.89.66:ssh 10.153.21.166:1222 ESTABLISHED
tcp 0 0 10.153.89.66:1521 10.153.21.166:2625 ESTABLISHED
tcp 0 0 10.153.89.66:1521 10.153.21.166:2623 ESTABLISHED
……
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags Type State I-Node Path
unix 9 [ ] DGRAM 919 /dev/log
unix 2 [ ] STREAM CONNECTED 50246124
unix 3 [ ] STREAM CONNECTED 3914245
/tmp/.ICE-unix/dcop18694-1074144356
unix 3 [ ] STREAM CONNECTED 3914244
unix 3 [ ] STREAM CONNECTED 3914127 /tmp/.X11-unix/X0
3.2.2 nslookup
nslookup 命令的功能是查询一台机器的IP 地址和其对应的域名它通常需要
一台域名服务器来提供域名服务如果用户已经设置好域名服务器就可以
用这个命令查看不同主机的IP 地址对应的域名命令的语法为
nslookup [IP 地址/域名]
示例
在本机执行nslookup 命令
Default Server: name.tlc.com.cn
Address: 192.168.1.99
>
在符号> 后面输入要查询的IP 地址或域名并回车即可如果要退出该命
令输入exit 并回车即可
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第32页, 共53页
3.2.3 host
host 命令的功能基本与nslookup 相同命令的语法为
host [选项] [IP 地址/域名/主机名]
host 的常用参数如下
-a 显示所查域名或IP 地址域名或主机名的相关信息
示例
[root]# host huawei-3com.com
huawei-3com.com has address 172.19.1.228
3.2.4 finger
finger 命令的功能是查询用户的信息通常会显示系统中某个用户的用户名
主目录停滞时间登录时间登录shell 等信息如果要查询远程机上的用
户信息需要在用户名后面接@主机名采用[用户名@主机名]的格式
不过要查询的网络主机需要运行finger 守护进程 该命令的一般格式为
finger [选项] [使用者] [用户@主机]
finger 的常用参数如下
-s 显示用户的注册名实际姓名终端名称写状态停滞时间登录
时间等信息
-l 除了用-s 选项显示的信息外还显示用户主目录登录shell 邮件
状态等信息以及用户主目录下的.plan .project 和.forward 文件的
内容
-p 除了不显示.plan 文件和.project 文件以外与-l 选项相同
示例
1 显示用户orcale 的信息
finger oracle
其显示结果为
Login: oracle Name: (null)
Directory: /home/oracle Shell: /bin/bash
On since Fri Feb 6 16:26 (CST) on pts/1 from 10.153.21.166 33 seconds
idle
On since Wed Feb 4 20:10 (CST) on pts/2 from 10.153.21.166 1 second
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第33页, 共53页
idle
No mail.
No Plan.
3.2.5 Ping 命令
ping 命令用于查看网络上的主机是否在工作它向该主机发送ICMP
ECHO_REQUEST 包有时我们想从网络上的某台主机上下载文件可是又
不知道那台主机是否开着就需要使用ping 命令查看该命令的一般格式为
ping [选项] [主机名/IP地址]
ping 的常用参数如下
-c 数目 在发送指定数目的包后停止
-d 设定SO_DEBUG 的选项
-f 大量且快速地送网络封包给一台机器看它的回应
-I 秒数 设定间隔几秒送一个网络封包给一台机器预设值是一秒送一次
-l 次数 在指定次数内以最快的方式送封包数据到指定机器只有超级
用户可以使用此选项
-q 不显示任何传送封包的信息只显示最后的结果
-r 不经由网关而直接送封包到一台机器通常是查看本机的网络接口是
否有问题
-s 字节数 指定发送的数据字节数预设值是56 加上8 字节的ICMP
头一共是64ICMP 数据字节
3.3 常用网络配置文件介绍
在Linux 系统中TCP/IP 网络是通过若干个文本文件进行配置的需要编辑
这些文件来完成联网工作系统中重要的有关网络配置文件为
/etc/sysconfig/network
/etc/hosts
/etc/services
/etc/host.conf
/etc/nsswitch.conf
/etc/resolv.conf
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第34页, 共53页
/etc/xinetd.conf
/etc/modules.conf
/etc/sysconfig/network-scripts/ifcfg-ethN
接下来我们将对这些文件逐一讲述这些文件都可以在系统运行时进行修改
不用启动或者停止任何守护程序更改会立刻生效( 除了
/etc/sysconfig/network) 另外这些文件都支持由"#"开头的注释每一个文
件都有在UNIX手册页中的第5 部分中有一项可以用man 命令来获取它们
3.3.1 /etc/sysconfig/network 网络设置
该文件用来指定服务器上的网络配置信息包含了控制和网络有关的文件和
守护程序的行为的参数下面是一个例子文件
NETWORKING=yes
HOSTNAME=machine1
GATEWAY=210.34.6.2
FORWARD_IPV4=yes
GATEWAYDEV=
其中NETWORK=yes/no 表示网络是否被配置
HOSTNAME=hostname hostname 表示服务器的主机名
GATEWAY=gw-ip gw-ip 表示网络网关的IP 地址
FORWARD_IPV4=yes/no 是否开启IP 转发功能
GAREWAYDEV=gw-dev gw-dw 表示网关的设备名如eth0 等
3.3.2 /etc/hosts IP 地址和主机名的映射
/etc/hosts 中包含了IP 地址和主机名之间的映射还包括主机名的别名IP
地址的设计使计算机容易识别但对于人却很难记住它们为了解决这个问
题创建了/etc/hosts 这个文件下面是一个例子文件
127.0.0.1 machine1 localhost.localdomain localhost
192.168.1.100 machine7
192.168.1.101 otherpc otheralias
在这个例子中本机名是machine1 otherpc 还有别名otheralias 它可以指
向otheralias 一旦配置完机器的网络配置文件应该重新启动网络以使修
改生效使用下面的命令来重新启动网络
service network restart
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第35页, 共53页
/etc/hosts 文件通常含有主机名localhost 和系统管理员经常使用的系统别名
有时候telnet 到Linux 机器要等待很长时间可以通过在"/etc/hosts"加入客户
的机器的IP 地址和主机名的匹配项就可以减少登录等待时间在没有域名
服务器情况下系统上的所有网络程序都通过查询该文件来解析对应于某个
主机名的IP 地址否则其他的主机名通常使用DNS 来解决DNS 客户部
分的配置在文件/etc/resolv.conf 中
3.3.3 /etc/services
/etc/services 中包含了服务名和端口号之间的映射不少的系统程序要使用这
个文件下面是RedHat 安装时缺省的/etc/services 中的前几行
tcpmux 1/tcp # TCP port service multiplexer
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
systat 11/tcp users
最左边一列是主机服务名中间一列是端口号/ 后面是端口类型可以
是TCP 也可以是UDP 任何后面的列都是前面服务的别名在这个文件中也
存在着别名它们出现在端口号后面在上述例子中sink 和null 都是discard
服务的别名
3.3.4 /etc/host.conf 配置名字解析器
有两个文件声明系统到哪里寻找名字信息来配置UNIX名字解析器的库文件
/etc/host.conf 由版本5 的libc 库所使用而/etc/nsswitch.conf 由版本6 使用
(glibc ) 问题在于一些程序使用其中一个而一些使用另一个所以将两个
文件都配置正确是必要的
/etc/host.conf 文件指定如何解析主机名Linux 通过解析器库来获得主机名对
应的IP 地址下面是RedHat 安装后缺省的"/etc/host.conf"内容
order hosts bind
multi on
"order " 指定主机名查询顺序其参数为用逗号隔开的查找方法支持的查找
方法为bind hosts 和nis 分别代表DNS /etc/hosts 和NIS 这里规定先
查询"/etc/hosts"文件然后再使用DNS 来解析域名
"trim" 表明当通过DNS 进行地址到主机名的转换时域名将从主机名中被裁
剪掉trim 可以被多个域包含多次对/etc/hosts 和NIS 查询方法不起作用
注意在/etc/hosts 和NIS 表中主机名是被适当地(有或没有全域名)列出的
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第36页, 共53页
"multi" 指定是否"/etc/hosts"文件中指定的主机可以有多个地址值为on 表示
允许拥有多个IP 地址的主机一般称为具有多个网络界面
"nospoof " 指是否允许对该服务器进行IP 地址欺骗值为on 表示不允许IP
欺骗是一种攻击系统安全的手段通过把IP 地址伪装成别的计算机来取得
其它计算机的信任
"alert" 当nospoof 指令为on 时alert 控制欺骗的企图是否用syslog 工具进
行记录值为on 表示使用缺省值为off
rccorder" 如果被设置为on 所有的查询将被重新排序所以在同一子网中的
主机将首选被返回缺省值为off
3.3.5 /etc/nsswitch.conf 配置名字解析器
/etc/nsswitch.conf 文件是由Sun 公司开发并用于管理系统中多个配置文件查
找的顺序它比/etc/host.conf 文件提供了更多的功能/etc/nsswitch.conf 中
的每一行或者是注释(以#号开头)或者是一个关键字后跟冒号和一系列要试用
的有顺序的方法每一个关键字是在/etc/目录可以被/etc/nsswitch.conf 控制
的/etc 文件的名字下面是可以被包含的关键字
aliases 邮件别名
passwd 系统用户
group 用户组
shadow 隐蔽口令
hosts 主机名和I P 地址
networks 网络名和号
protocols 网络协议
services 端口号和服务名称
ethers 以太网号
rpc 远程进程调用的名称和号
netgroup 网内组
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第37页, 共53页
3.3.6 /etc/resolv.conf 配置DNS 客户
文件/etc/resolv.conf 配置DNS 客户它包含了主机的域名搜索顺序和DNS
服务器的地址每一行应包含一个关键字和一个或多个的由空格隔开的参数
下面是一个例子文件
nameserver 192.168.0.36
nameserver 192.168.0.37
search huawei-3com.com
合法的参数及其意义如下
nameserver 表明DNS 服务器的IP 地址可以有很多行的nameserver 每
一个带一个I P 地址在查询时就按nameserver 在本文件中的顺序进行且
只有当第一个nameserver 没有反应时才查询下面的nameserver.
domain 声明主机的域名很多程序用到它如邮件系统当为没有域名的主
机进行DNS 查询时也要用到如果没有域名主机名将被使用删除所有
在第一个点( . )前面的内容
search 它的多个参数指明域名查询顺序当要查询没有域名的主机主机将
在由search 声明的域中分别查找domain 和search 不能共存如果同时存
在后面出现的将会被使用
sortlist 允许将得到域名结果进行特定的排序它的参数为网络/掩码对允许
任意的排列顺序Red Hat 中没有提供缺省的/ e t c / r e s o l v. c o n f 文件
它的内容是根据在安装时给出的选项动态创建的
3.3.7 /etc/xinetd.conf
redhat 7.1 及以后版本计和以往的版本有一个明显的区别就是用xinetd.conf
代替原来的inetd.conf 并且直接使用了firewall 服务xinetd(eXtended
InterNET services daemon)对inetd 功能进行了扩展xinetd 的默认配置文件
是/etc/xinetd.conf 它看起来尽管和老版本的/etc/inetd.conf 完全不同其实
只是以一个脚本的形式将inetd 中每一行指定的服务扩展为一个/etc/xinetd.d/
下的配置文件其格式为
service service-name
{
disabled = yes/no; //是否禁用
socket_type = xxx; //TCP/IP socket type,such as stream,dgram,raw,....
protocol = xxx; //服务使用的协议
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第38页, 共53页
server = xxx; //服务daemon 的完整路径
server_args = xxx; //服务的参数
port = xxx; //指定服务的端口号
wait = xxx; //是否阻塞服务即单线程或多线程
user = xxx; //服务进程的uid
group = xxx; //gid
REUSE = xxx; //可重用标志
......
}
示例
1 配置ftp 服务
在/etc/xinetd.d 目录下编辑wu-ftpd
# default: on
# description: The wu-ftpd FTP server serves FTP connections. It uses
\
# normal, unencrypted usernames and passwords for authentication.
service ftp
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.ftpd
server_args = -l -a
log_on_success += DURATION
nice = 10
}
2 配置telnet 服务
在/etc/xinetd.d 目录下编辑telnet
# default: on
# description: The telnet server serves telnet sessions; it uses \
# unencrypted username/password pairs for authentication.
service telnet
{
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第39页, 共53页
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID
}
配置完成后重新启动服务
/etc/rc.d/init.d/xinetd restart
3.3.8 /etc/modules.conf 文件
该配置文件定义了各种需要在启动时加载的模块的参数信息文件格式如下
alias eth0 tg3
alias eth1 3c905
3.3.9 /etc/sysconfig/network-scripts/ifcfg-ethN 文件
系统网络设备的配置文件保存在/etc/sysconfig/network-scripts”目录下
ifcfg-eth0 包含第一块网卡的配置信息ifcfg-eth1 包含第二块网卡的配置信息
下面是“/etc/sysconfig/network-scripts/ifcfg-eth0”文件的示例
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.0.66
NETMASK=255.255.255.0
GATEWAY=192.168.0.65
若希望手工修改网络地址或在新的接口上增加新的网络界面可以通过修改
对应的文件ifcfg-ethN 或创建新的文件来实现
3.4 常用网络操作方法
Linux 提供了一组强有力的网络命令来为用户服务这些工具能够帮助用户登
录到远程计算机上传输文件和执行远程命令等本节介绍下列几个常用的
有关网络操作的命令
ftp 传输文件
telnet 登录到远程计算机上
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第40页, 共53页
r - 使用各种远程命令
3.4.1 ftp 远程文件传输
ftp 命令是标准的文件传输协议的用户接口ftp 是在TCP/IP 网络上的计算机
之间传输文件的简单有效的方法它允许用户传输ASCII 文件和二进制文件
在ftp 会话过程中用户可以通过使用ftp 客户程序连接到另一台计算机上
从此用户可以在目录中上下移动列出目录内容把文件从远程机拷贝到
本地机上把文件从本地机传输到远程系统中需要注意的是如果用户没
有那个文件的存取权限就不能从远程系统中获得文件或向远程系统传输文
件为了使用ftp 来传输文件用户必须知道远程计算机上的合法用户名和口
令这个用户名/口令的组合用来确认ftp 会话并用来确定用户对要传输的文
件可以进行什么样的访问
ftp 命令的一般格式如下
$ ftp 主机名/IP
如果没有指定主机名ftp 将给出提示符等待用户输入命令
$ ftp
ftp >
此时在ftp>提示符后面输入open 命令加主机名或IP 地址将试图连接指
定的主机不管使用哪一种方法如果连接成功需要在远程机上登录用
户如果在远程机上有帐号就可以通过ftp 使用这一帐号并需要提供口令在
远程机上的用户帐号的读写权限决定该用户在远程机上能下载什么文件和将
上载文件放到哪个目录中
一旦用户使用ftp 在远程站点上登录成功将得到ftp> 提示符现在
可以自由使用ftp 提供的命令可以用 help 命令取得可供使用的命令清单也
可以在 help 命令后面指定具体的命令名称获得这条命令的说明
最常用的命令有
ls 列出远程机的当前目录
cd 在远程机上改变工作目录
lcd 在本地机上改变工作目录
ascii 设置文件传输方式为ASCII 模式 默认情况下ftp 按ASCII
模式传输文件用户也可以指定其他模式ascii 和brinary 命令
的功能是设置传输的模式用ASCII 模式传输文件对纯文本是
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第41页, 共53页
非常好的但为避免对二进制文件的破坏用户可以以二进制模
式传输文件
binary 设置文件传输方式为二进制模式
close 终止当前的ftp 会话
hash 每次传输完数据缓冲区中的数据后就显示一个#号
get mget 从远程机传送指定文件到本地机get 命令的一般格式为
get 文件名
mget 命令一次获取多个远程文件mget 命令的一般格式为
mget 文件名列表
使用用空格分隔的或带通配符的文件名列表来指定要获取的文
件对其中的每个文件都要求用户确认是否传送
put mput 从本地机传送指定文件到远程机 put 命令的一般格式为
put 文件名
mput 命令一次发送多个本地文件mput 命令的一般格式为
mput 文件名列表
使用用空格分隔的或带通配符的文件名列表来指定要发送的文
件对其中的每个文件都要求用户确认是否发送
open 连接远程ftp 站点
quit 断开与远程机的连接并退出ftp
? 显示本地帮助信息
! 转到Shell 中
示例
使用ftp 传输文件过程如下
[root@localhost root]# ftp 192.168.1.66
Connected to 192.168.1.66 (192.168.1.66).
220 localhost.localdomain FTP server (Version wu-2.6.2-5) ready.
Name (192.168.1.66:root): test
331 Password required for test.
Password:
230 User oracle logged in. Access restrictions apply.
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第42页, 共53页
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (192.168.1.66,228,168)
150 Opening ASCII mode data connection for directory listing.
total 312
-rw-r--r-- 1 root root 1215 Feb 4 13:49 button1.jpg
-rw-r--r-- 1 root root 1133 Feb 4 13:49 button2.jpg
-rw-r--r-- 1 root root 1435 Feb 4 13:46 index.html
226 Transfer complete.
ftp> lcd
Local directory now /root
ftp> lcd tmp
Local directory now /root/tmp
ftp> bin
200 Type set to I.
ftp> mget *.jpg
mget button1.jpg? y
227 Entering Passive Mode (10,153,89,66,187,198)
150 Opening BINARY mode data connection for button1.jpg (1215 bytes).
226 Transfer complete.
1215 bytes received in 0.0119 secs (1e+02 Kbytes/sec)
mget button2.jpg? y
227 Entering Passive Mode (10,153,89,66,243,218)
150 Opening BINARY mode data connection for button2.jpg (1133 bytes).
226 Transfer complete.
1133 bytes received in 0.00223 secs (5e+02 Kbytes/sec)
ftp> quit
221-You have transferred 2348 bytes in 2 files.
221-Total traffic for this session was 3315 bytes in 3 transfers.
221-Thank you for using the FTP service on localhost.localdomain.
221 Goodbye.
3.4.2 telnet
用户使用telnet 命令进行远程登录该命令允许用户使用telnet 协议在远程计
算机之间进行通信用户可以通过网络在远程计算机上登录就像登录到本
地机上执行命令一样为了通过telnet 登录到远程计算机上必须知道远程机
上的合法用户名和口令虽然有些系统确实为远程用户提供登录功能但出
于对安全的考虑要限制来宾的操作权限因此这种情况下能使用的功能
是很少的当允许远程用户登录时系统通常把这些用户放在一个受限制的
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第43页, 共53页
shell 中以防系统被怀有恶意的或不小心的用户破坏用户还可以使用telnet
从远程站点登录到自己的计算机上检查电子邮件编辑文件和运行程序
就像在本地登录一样但是用户只能使用基于终端的环境而不是X Wndows
环境telnet 只为普通终端提供终端仿真而不支持 X Wndow等图形环境
telnet 命令的一般形式为
telnet 主机名/IP
其中主机名/IP 是要连接的远程机的主机名或IP 地址如果这一命令执行
成功将从远程机上得到login 提示符
使用telnet 命令登录的过程如下
$ telnet 主机名/IP
一旦telnet 成功地连接到远程系统上就显示登录信息并提示用户输人用户名
和口令如果用户名和口令输入正确就能成功登录并在远程系统上工作
在telnet 提示符后面可以输入很多命令用来控制telnet 会话过程在telnet
联机帮助手册中对这些命令有详细的说明
示例
# telnet 192.168.1.66
Trying 192.168.1.66...
Connected to 192.168.1.66.
Escape character is '^]'.
Red Hat Linux release 7.3 (Valhalla)
Kernel 2.4.18-3 on an i686
login: test
Password:
Last login: Mon Feb 9 15:03:56 from 10.153.21.166
[test@localhost test]$
3.4.3 r-系列命令
除ftp 和telnet 以外还可以使用r-系列命令访问远程计算机和在网络上交换
文件使用r-系列命令需要特别注意因为如果用户不小心就会造成严重的
安全漏洞用户发出一个r-系列命令后远程系统检查名为/etc/hosts.equiv
的文件以查看用户的主机是否列在这个文件中如果它没有找到用户的主
机就检查远程机上同名用户的主目录中名为rhosts 的文件看是否包括该
用户的主机如果该用户的主机包括在这两个文件中的任何一个之中该用
户执行r-系列命令就不用提供口令
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第44页, 共53页
rlogin 命令
rlogin 是remote login 远程登录的缩写该命令与telnet 命令很相似
允许用户启动远程系统上的交互命令会话rlogin 的一般格式是
rlogin [ -8EKLdx ] [ -e char ] [-k realm ] [ - l username ] host
一般最常用的格式是
rlogin host
rsh 命令
rsh 是remote shell 远程 shell 的缩写 该命令在指定的远程主机上启
动一个shell 并执行用户在rsh 命令行中指定的命令如果用户没有给出要执
行的命令rsh 就用rlogin 命令使用户登录到远程机上rsh 命令的一般格式
是
rsh [-Kdnx] [-k realm] [-l username] host [command]
一般常用的格式是
rsh host [command ]
command 可以是从shell 提示符下键人的任何Linux 命令
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第45页, 共53页
第4章 常用使用技巧
4.1 Linux 下软件包的安装及卸载
在Linux 操作系统下几乎所有的软件均通过RPM 进行安装卸载及管理等
操作RPM 的全称为Redhat Package Manager 是由Redhat 公司提出的
用于管理Linux 下软件包的软件Linux 安装时除了几个核心模块以外其
余几乎所有的模块均通过RPM 完成安装RPM 有五种操作模式分别为
安装卸载升级查询和验证
4.1.1 RPM 安装操作
命令
rpm -i 需要安装的包文件名
举例如下
rpm -i example.rpm 安装example.rpm 包
rpm -iv example.rpm 安装example.rpm 包并在安装过程中显示正在
安装的文件信息
rpm -ivh example.rpm 安装example.rpm 包并在安装过程中显示正在
安装的文件信息及安装进度
4.1.2 RPM 查询操作
命令
rpm -q …
附加查询命令
a 查询所有已经安装的包
以下两个附加命令用于查询安装包的信息
i 显示安装包的信息
l 显示安装包中的所有文件被安装到哪些目录下
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第46页, 共53页
s 显示安装版中的所有文件状态及被安装到哪些目录下
以下两个附加命令用于指定需要查询的是安装包还是已安装后的文件
p 查询的是安装包的信息
f 查询的是已安装的某文件信息
举例如下
rpm -qa | grep tomcat4 查看tomcat4 是否被安装
rpm -qip example.rpm 查看example.rpm 安装包的信息
rpm -qif /bin/df 查看/bin/df 文件所在安装包的信息
rpm -qlf /bin/df 查看/bin/df 文件所在安装包中的各个文件分别被
安装到哪个目录下
4.1.3 RPM 卸载操作
命令
rpm -e 需要卸载的安装包
在卸载之前通常需要使用rpm -q …命令查出需要卸载的安装包名称
举例如下
rpm -e tomcat4 卸载tomcat4 软件包
4.1.4 RPM 升级操作
命令
rpm -U 需要升级的包
举例如下
rpm -Uvh example.rpm 升级example.rpm 软件包
4.1.5 RPM 验证操作
命令
rpm -V 需要验证的包
举例如下
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第47页, 共53页
rpm -Vf /etc/tomcat4/tomcat4.conf
输出信息类似如下
S.5....T c /etc/tomcat4/tomcat4.conf
其中S 表示文件大小修改过T 表示文件日期修改过限于篇幅更多的验
证信息请您参考rpm 帮助文件man rpm
4.1.6 RPM 的其他附加命令
--force 强制操作如强制安装删除等
--requires 显示该包的依赖关系
--nodeps 忽略依赖关系并继续操作
4.2 Linux 操作系统的时钟系统
4.2.1 时钟系统介绍
对于Linux 操作系统主要有两种时钟系统
1 硬件时钟系统该时钟系统的运行独立于任何系统控制程序在CPU 内
部运行既使系统断电该时钟系统仍然保持运行此时钟系统常常被称为
实时时钟系统RTC BIOS 时钟系统或CMOS 时钟系统
2 系统时间该时间为Linux 内核的时钟系统所维护并且被定时中断程序
所驱动该时间仅当Linux 系统运行过程中有意义该系统时间表示为以UTC
通用协调时间Universal Time Coordinated 计算自1970 年1 月1 日0
时0 分0 秒起至当前时刻所经过的秒数该数字不是整数以小数方式表示
精度
在Linux 系统中真正起作用的是系统时间硬件时钟系统的唯一作用是在
Linux 系统没有运行时保持时间的运行当Linux 操作系统启动时系统会
自动将硬件时钟系统的时间同步到Linux 系统时间并且在之后的整个Linux
运行过程中不再使用该硬件时钟系统这与DOS 的实现方式完全不同在
DOS 中只有硬件时间系统的概念而在Linux 操作系统关闭时系统会
自动将当前的Linux 系统时间同步到硬件时钟系统所维护的时间
4.2.2 硬件时钟系统与系统时间的同步
/sbin/hwclock 用于同步硬件时钟系统的时间与Linux 操作系统时间
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第48页, 共53页
查看当前硬件时钟系统时间的命令为
/sbin/hwclock --show
将硬件时钟系统时间同步到Linux 操作系统时间的命令为
/sbin/hwclock --hctosys
将Linux 操作系统时间同步到硬件时钟系统时间的命令为
/sbin/hwclock --systohc
如果观察系统启动/关闭时执行的初始化脚本”/etc/rc.d/rc.sysinit” 我们不难发
现系统启动过程中自动调用/sbin/hwclock --hctosys 将硬件时钟系统
时间同步到操作系统时间而在系统关闭过程中自动调用/sbin/hwclock
--systohc 将操作系统时间同步到硬件时钟系统时间
4.3 系统信息及运行状态监控
Linux 的文件系统中有一个特殊目录/proc 该目录下列出的文件并非保
存在磁盘上而是内存中的一个映像在该目录下可以找到许多有意思的东
西例如
/proc/cpuinfo 本机CPU的相关信息
/proc/meminfo 本机内存及交换分区的使用信息
/proc/modules 本机已安装的硬件模块信息
/proc/mounts 本机已挂载mount 上的设备信息
此外该目录下有一些以数字为名称的子目录每个子目录用于维护一个正
在运行的进程而目录名即为相应的进程ID 例如进入名称为1 的子目
录
cd /proc/1
该目录下文件cmdline 中的内容为该进程运行时执行的命令行environ
文件中的内容为该进程运行时的环境变量信息stat 文件中存放的时该进
程运行的状态信息等
通过查看/proc 目录下的文件可以获取几乎所有的系统信息及系统的运
行状态信息事实上Linux 下的诸多查询系统状态信息的命令也是通过读
取该目录下的文件而获取的
以下是一些用于查看系统状态信息的命令
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第49页, 共53页
4.3.1 df 命令
用于查看Linux 文件系统的状态信息显示各个分区的容量已使用量未使
用量及挂载点等信息如
df -k 以千字节KB 为单位显示各分区的信息
df -a 显示所有分区包括大小为0 的分区
df -T 显示分区类型EXT2 或EXT3 等
4.3.2 du 命令
用于查看文件或文件夹的大小如
du -b /home 以字节为单位显示/home 文件夹下各个子文件夹的大小
du -ks home 以千字节KB 为单位显示/home 文件夹的总大小
4.3.3 top 命令
用于实时查看系统状态信息运行该命令后屏幕上会显示如下信息
CPU状态CPU states 包括用户进程占用比率系统进程占用比率用
户的nice 优先级进程占用比率及空闲CPU资源比率等
内存状态Mem 包括内存总量使用量空闲量等
交换分区状态Swap 包括交换分区总量使用量空闲量等
每个进程的状态包括进程ID 用户名优先级CPU和内存使用量以及
运行该进程时执行的命令行
执行top 命令后每隔5 秒系统会自动刷新一次状态信息如果要指定刷新
间隔在启动时加入-d 参数即可例如
top -d 1 启动top 并且每隔1 秒刷新一次
进入top 后按下如下按钮会有相应功能
空格 立即刷新显示信息
M 按内存使用量排序
N 按进程ID 排序
P 按CPU使用量排序
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第50页, 共53页
c 扩展命令行信息显示完整的命令行
? 显示帮助信息
q 退出top 程序
4.3.4 iostat 命令
统计并输出CPU使用信息及特定设备或分区的IO 信息
iostat -c 仅显示CPU使用情况统计信息
iostat -d 仅显示设备/分区使用情况统计信息
iostat -d 2 统计设备/分区使用情况并每隔2 秒刷新一次
显示的IO 统计信息中各部分说明如下
tps 设备每秒收到的IO 传送请求数
Blk_read/s 设备每秒读入的块数量
Blk_wrtn/s 设备每秒写入的块数量
Blk_read 设备读入的总块数量
Blk_wrtn 设备写入的总块数量
显示的CPU统计信息各部分的含义同top
4.4 打包/压缩工具tar
tar 是Linux 下最常用的打包压缩工具它在Linux 中扮演类似于WinZip 或
WinRAR 在Windows 下的角色下面是该工具的常用命令参数及运用举例
主要命令
-c 创建包
-x 解包
-t 列出包中的内容
-r 增加文件到指定包中
-u 更新包中的文件
可选命令
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第51页, 共53页
-j 创建或解开包时使用bzip2 进行压缩或解压
-z 创建或解开包时使用gzip 进行压缩或解压
-Z 创建或解开包时使用compress 进行压缩或解压
-f 后面跟指定的包文件名
-v 显示打包/解包过程
-C 指定解包后的路径
例如
tar -czf tmp.tar.gz /tmp 将/tmp 目录压缩打包存放为tmp.tar.gz
tar -xzf tmp.tar.gz -C /home 将tmp.tar.gz 包解到/home 目录下
tar -t tmp.tar.gz 查看tmp.tar.gz 包中的文件信息
4.5 文件及文件内容的查找
Linux 下提供完善的文件及文件内容查找命令分别介绍如下
4.5.1 文件查找命令find
find 命令用于查找文件系统中的指定文件其命令格式为
find 要查找的路径 表达式
例如
find . -name 1.txt 在当前目录及其子目录下查找文件1.txt
find /tmp -name 1.txt 在/tmp 目录及其子目录下查找文件1.txt
4.5.2 文件内容查找命令grep
grep 命令用于查找指定的模式匹配格式为
grep [命令选项] 要查找的匹配模式 [要查找的文件]
例如
grep cams test.txt 在test.txt 文件中查找cams 字符串
grep -r cams /root/cams 在/root/cams 目录及其子目录下的所有文件中
查找cams 字符串
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第52页, 共53页
grep 命令除了能够查找文件外还能够将任意输出流重定向到grep 进行查找
ps -ef | grep ora 查找进程名中包含ora 的所有进程信息
4.6 Linux 的系统服务及其配置
4.6.1 服务简介
Linux 系统服务是在Linux启动时自动加载并在Linux退出时自动停止的系
统任务在Linux 启动过程中我们可以看得很多starting … 提示信息
该信息表示正在启动系统服务而在Linux 退出时我们也能够看到相应的
Stopping … 信息表示系统服务正在停止Linux自身有许多系统任务
如network 服务用于支持网络连接等CAMS 在安装过程中会自动加入
三个系统任务以保证在Linux 启动时CAMS 服务自动启动而在Linux 关
闭时CAMS服务也自动停止这三个服务分别时
oracled Oracle 数据库服务
camsd CAMS协议处理模块服务
tomcat4 Tomcat Web Server 服务用于支持CAMS 配置管理台自助
服务平台Portal 服务平台及内容计费认证平台等
Linux 系统的所有服务程序脚本均可以在/etc/rc.d/init.d 文件夹中找到每
一项服务对应一个脚本文件如果CAMS 已经安装我们可以在该文件夹下
找到oracled camsd 和tomcat4 这三个文件
4.6.2 启动和停止服务
service 命令用于启动及停止某个服务例如
service camsd stop 停止camsd 服务
service oracled start 启动oracled 服务
service tomcat4 start 启动tomcat4 服务
CAMS引入的三个服务间有依赖关系即camsd 服务和tomcat4 服务依赖与
oracled 服务在oracled 服务启动前不能启动camsd 服务和tomcat4 服务
而在oracled 服务停止前必须先停止camsd 服务和tomcat4 服务
Linux 操作指导专题 文档密级内部公开
2004-02-04 华为3Com 机密未经许可不得扩散 第53页, 共53页
4.6.3 服务的添加删除自动运行及状态
CAMS 在安装过程中会自动添加相关的服务在安装的最后过程中会提示
用户是否启动服务使服务生效需要注意的是一个服务被添加后并
不表示该服务在系统启动过程中会自动运行仅表示可以使用service 命令来
启动停止服务
1. 添加服务
添加服务的步骤为
1 将该服务的脚本文件拷入/etc/rc.d/init.d 文件夹下保证其状态为可
执行
2 使用chkconfig 命令将服务添加到服务列表中
chkconfig --add camsd 注意有两个-
将服务添加以后该服务即可以使用service 来启动/停止了
2. 删除服务
如果要删除某项服务将上述命令的add 改为del 即可
chkconfig --del camsd 注意有两个-
3. 设置服务自动运行
Linux 运行有7 种运行级别分别使用0-6 来表示控制台界面运行级别为3
图形界面运行级别为5 要使某服务在系统启动时自动运行使用chkconfig
将该服务添加到相应级别的自启动服务列表中即可
chkconfig --level 35 camsd on 注意有两个-
上面的命令将camsd 服务添加到级别为3 5 的自启动服务列表中而下面
的命令则将服务camsd 从级别为3 5 的自启动服务列表中删除
chkconfig --level 35 camsd off 注意有两个-
如果需要查看某项服务的自启动状态信息使用如下命令即可
chkconfig --list camsd 注意有两个-