Linux_系统状态检测及进程控制

via: http://www.2cto.com/os/201207/144203.html

 

Linux系统状态检测及进程控制

 

一、proc文件系统

        我们平时输入的命令:ifconfig,hostname,free(查看内存使用情况),df(查看硬盘使用情况),uname命令是从哪里得到的信息呢?

        答案就是proc!看一下:

jerry@why :~$ cat /proc/version

Linux version 3.2.0-23-generic-pae (buildd@palmer) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu4) ) #36-Ubuntu SMP Tue Apr 10 22:19:09 UTC 2012

jerry@why :~$ uname -a

Linux why 3.2.0-23-generic-pae #36-Ubuntu SMP Tue Apr 10 22:19:09 UTC 2012 i686 i686 i386 GNU/Linux

jerry@why :~$

 

/proc/是内核的小窗户。

 

二、日志系统

 

        位置:jerry@why :~$ ls /var/log/

下面我用正则找出以.log结尾的日志文件:

 

jerry@why :/var/log$ locate -r "^/var/log/[a-z]*\.log$"

/var/log/alternatives.log

/var/log/apport.log

/var/log/auth.log

/var/log/boot.log

/var/log/bootstrap.log

/var/log/dpkg.log

/var/log/fontconfig.log

/var/log/jockey.log

/var/log/kern.log

/var/log/mail.log

/var/log/ufw.log

jerry@why :/var/log$

————————————————————————————————————————————————

进程

 

top查看进程的信息,默认按照cpu占用排序,按M可以按内存占用大小排序。如果想杀掉一个进程呢,发送15号信号,也就是按k回车,如果杀不掉怎么办?可以强制杀掉,这时候发送9号信号(可能产生僵尸进程(不受控制的子进程))。

 

看一个各个信号

jerry@why:/var/log$ kill -l

 1) SIGHUP     2) SIGINT     3) SIGQUIT     4) SIGILL     5) SIGTRAP

 6) SIGABRT     7) SIGBUS     8) SIGFPE     9) SIGKILL    10) SIGUSR1

11) SIGSEGV    12) SIGUSR2    13) SIGPIPE    14) SIGALRM    15) SIGTERM

16) SIGSTKFLT    17) SIGCHLD    18) SIGCONT    19) SIGSTOP    20) SIGTSTP

21) SIGTTIN    22) SIGTTOU    23) SIGURG    24) SIGXCPU    25) SIGXFSZ

26) SIGVTALRM    27) SIGPROF    28) SIGWINCH    29) SIGIO    30) SIGPWR

31) SIGSYS    34) SIGRTMIN    35) SIGRTMIN+1    36) SIGRTMIN+2    37) SIGRTMIN+3

38) SIGRTMIN+4    39) SIGRTMIN+5    40) SIGRTMIN+6    41) SIGRTMIN+7    42) SIGRTMIN+8

43) SIGRTMIN+9    44) SIGRTMIN+10    45) SIGRTMIN+11    46) SIGRTMIN+12    47) SIGRTMIN+13

48) SIGRTMIN+14    49) SIGRTMIN+15    50) SIGRTMAX-14    51) SIGRTMAX-13    52) SIGRTMAX-12

53) SIGRTMAX-11    54) SIGRTMAX-10    55) SIGRTMAX-9    56) SIGRTMAX-8    57) SIGRTMAX-7

58) SIGRTMAX-6    59) SIGRTMAX-5    60) SIGRTMAX-4    61) SIGRTMAX-3    62) SIGRTMAX-2

63) SIGRTMAX-1    64) SIGRTMAX    

jerry@why:/var/log$

 

ps auxf(x另外还显示后台进程,没有的话只显示控制台进程)(f显示父子进程关系)

kill   【 -9】    5671(给pid为5671的进程发送9号信号,也就是强杀进程)(kill是发送信号的传令兵,并不单单是杀掉进程)

skill    -9    root(把root的所有进程干掉)

skill    -9    jerry(jerry的所有进程)

 

再来看一下进程的几种状态:

S(sleeping)T(stop)R(running)D(deepsleeping(深度睡眠))Z(僵尸进程)

 

还有一点小东西:

jerry@why:~$ w

 11:04:03 up  1:47,  1 user,  load average: 1.61, 1.70, 1.77

USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT

jerry    pts/1    :0               10:47    0.00s  0.35s  0.00s w

jerry@why:~$ 

w看有谁登录了这台电脑。

skill -9 pts/1    就可以踢掉他啦!

你可能感兴趣的:(linux)