AIX进程管理

来源:岁月联盟 编辑:zhu 时间:2008-02-13
AIX进程管理内容简介:【aix教程】显示进程属性 ps X/Open Standards ps [ -A ] [ -N ] [ -a ] [ -d ] [ -e ] [ -f ] [ -k ] [ -l ] [ -F format] [ -o Format ] [ -c Clist ] [ -G Glist ] [ -g Glist ] [ -m ] [ -n NameList ] [ -p Plist ] [ -t Tli

  【aix教程】显示进程属性

ps
X/Open Standards

ps [ -A ] [ -N ] [ -a ] [ -d ] [ -e ] [ -f ] [ -k ] [ -l ] [ -F format] [ -o Format ] [ -c Clist ] [ -G Glist ] [ -g Glist ] [ -m ] [ -n NameList ] [ -p Plist ] [ -t Tlist ] [ -U Ulist ] [ -u Ulist ]

Berkley Standards

ps [ a ] [ c ] [ e ] [ ew ] [ eww ] [ g ] [ n ] [ U ] [ w ] [ x ] [ l | s | u | v ] [ t Tty ] [ ProcessNumber ]

简单例子:$ps -ef #显示所有进程

  修改进程优先级

使用nice命令
nice [ - Increment| -n Increment ] Command [ Argument ... ]
nice后面可跟0-39,值越高优先级越低。
假如不指定值,缺省增长10。
例子:
$nice -10 Command
给Command减少10,即优先级增加10
$nice Command
默认给Command增加10,即优先级减少10

  停止进程

kill
AIX有两种kill命令:/usr/bin/kill和shell内建的命令kill。这两种命令使用的信号量不同。(通过$kill -l 可以查看信号量SIGNAL)

To Send Signal to Processes

kill [ -s { SignalName | SignalNumber } ] ProcessID ...

kill [ - SignalName | - SignalNumber ] ProcessID ...

To List Signal Names

kill -l [ ExitStatus ]
几个简单例子:
$kill 1095 #强制1095进程退出(送的是默认信号量SIGTERM)。但是假如此进程已经被设置忽略SIGTREM则不能停止此进程。
$kill -kill 2098 1569 #送的信号量是SIGKILL(9)。此情况下2098和1596进程一定会被停止。
$kill -9 0 #同$kill -kill 0。此命令将会停止所有进程并将用户log off。
AIX还有killall命令,任何用户都能用来杀死除了发送的进程外所有进程。
killall [ - ] [ -Signal ]

  性能检测

top(此命令在我们组的AIX上查不到……我们的AIX的版本是4.3.3.0。顺便提一句,查看版本信息的命令是oslevel)
采用动态刷新显示系统性能。ps仅给出系统某一时刻的“快照”,而top是按一定的时间间隔显示系统信息和它们的变化。
sar
显示累积的系统活动信息
vmstat
量化地显示系统进程所使用的虚存数量,也显示陷阱和CPU活动信息。
iostat
统计硬盘,终端,处理器的I/O情况。

SRC
System Resource Controller:SRC系统资源控制器(AIX用于治理守候进程的守候进程)
SRC的指令是srcmstr,由init在/etc/inittab启动。
srcmstr /usr/sbin/srcmstr [ -r ] [ -B ]
Flags

-r Accepts remote requests if the daemon is started with the -r flag. If you start srcmstr without the -r flag, remote requests are ignored.

-B Specifies the -B flag that causes the srcmstr daemon to run as in previous releases (AIX 4.3.1 and earlier).

AIX按照一定的层次关系组织守候进程,这个组织结构被设置为对象类,存在ODM中。由底向上分别为:
subservers(SRCsubsvr)
subsystem(SRCsubsys)
subsystem group
可以使用odmget查看信息。也可以用lssrc命令。
lssrc:Gets the status of a subsystem, a group of subsystems, or a subserver.
To Get All Status

lssrc [ -h Host ] -a

To Get Group Status

lssrc [ -h Host ] -g GroupName

To Get Subsystem Status

lssrc [ -h Host ] [ -l ] -s Subsystem

To Get Status by PID

lssrc [ -h Host ] [ -l ] -p SubsystemPID

To Get Subserver Status

lssrc [ -h Host ] [ -l ] -t Type [ -p SubsystemPID ] [ -o Object ] [ -P SubserverPID ]

To Get Subsystem Status in SMIT Format

lssrc -S [-s Subsystem | -d ]

To Get Subserver Status in SMIT Format

lssrc -T [ -t Type ]

To Get Notify in SMIT Format

lssrc -N [ -n NotifyName ]

最常使用的SRC命令:startsrc、stopsrc、refresh

  进程的定时启动

可用cron守候进程来定时启动进程,该进程使用的crontab文件在/var/spool/cron/crontabs目录中,以用户名为文件名。
每条包含下列格式
分钟(0-59)
小时(0-23)
月的日子(1-31)
一年(1-12)
星期的日子(0-6)
shell命令

AIX也可以直接调用crontab命令。可直接修改crontab文件并且很快生效。
crontab:Submits, edits, lists, or removes cron jobs.
crontab [ -e | -l | -r | -v | File ]
Flags

-e Edits a copy of your crontab file or starts an editing session if you don't already have a crontab file. When editing is complete, the entry is installed as your crontab file. The editing session is started using the editor specified by the EDITOR environment variable. The default editor is vi.

-l Lists your crontab file.

-r Removes your crontab file from the crontab directory.

-v Lists the status of your cron jobs.

图片内容