<Anterior | Conteúdo | Próxima>
4.1.4. Exibindo informações do processo
O ps o comando é uma das ferramentas de visualização de processos. Este comando possui várias opções que podem ser combinadas para exibir diferentes atributos do processo.
Sem opções especificadas, ps fornece apenas informações sobre o shell atual e processos eventuais:
theo: ~> ps
TTY PID
4245 pontos / 7
5314 pontos / 7
TEMPO CMD
00:00:00 festa
00:00:00 p.
theo: ~> ps
TTY PID
4245 pontos / 7
5314 pontos / 7
Uma vez que isso não fornece informações suficientes - geralmente, pelo menos uma centena de processos estão em execução no seu sistema - geralmente selecionamos processos específicos da lista de todos os processos, usando o grep comando em um tubo, consulte a Seção 5.1.2.1, como nesta linha, que selecionará e exibirá todos os processos pertencentes a um determinado usuário:
ps -E se | firmeza nome de usuário
Este exemplo mostra todos os processos com um nome de processo de bater, o shell de login mais comum em sistemas Linux:
theo:> ps auxw | grep bash
brenda | 31970 | 0.0 | 0.3 | 6080 | 1556 | tty2 | S | Feb23 | 0:00 | -bash |
raiz | 32043 | 0.0 | 0.3 | 6112 | 1600 | tty4 | S | Feb23 | 0:00 | -bash |
theo | 32581 | 0.0 | 0.3 | 6384 | 1864 | pts / 1 | S | Feb23 | 0:00 | bater |
theo | 32616 | 0.0 | 0.3 | 6396 | 1896 | pts / 2 | S | Feb23 | 0:00 | bater |
theo | 32629 | 0.0 | 0.3 | 6380 | 1856 | pts / 3 | S | Feb23 | 0:00 | bater |
theo | 2214 | 0.0 | 0.3 | 6412 | 1944 | pts / 5 | S | 16:18 | 0:02 | bater |
theo | 4245 | 0.0 | 0.3 | 6392 | 1888 | pts / 7 | S | 17:26 | 0:00 | bater |
theo | 5427 | 0.0 | 0.1 | 3720 | 548 | pts / 7 | S | 19:22 | 0:00 | grep bash |
Nestes casos, o grep linha de busca de comando contendo a string bater é freqüentemente exibido também em sistemas que têm muito tempo ocioso. Se você não quiser que isso aconteça, use o pgrep comando.
Bash shells são um caso especial: esta lista de processos também mostra quais são shells de login (onde você deve fornecer seu nome de usuário e senha, como quando você faz login em modo de texto ou faz um login remoto, em vez de
shells sem login, iniciados, por exemplo, clicando no ícone de uma janela de terminal). Esses shells de login são precedidos por um traço (-).
|?
Vamos explicar sobre o | operador no próximo capítulo, consulte o Capítulo 5.
Mais informações podem ser encontradas da maneira usual: ps --Socorro or homem ps. GNU ps suporta diferentes estilos de formatos de opção; os exemplos acima não contêm erros.
Observe que ps dá apenas um estado momentâneo dos processos ativos, é uma gravação única. o topo programa exibe uma visão mais precisa, atualizando os resultados fornecidos por ps (com um monte de opções) uma vez a cada cinco segundos, gerando uma nova lista dos processos que causam a carga mais pesada periodicamente, enquanto integra mais informações sobre o espaço de swap em uso e o estado da CPU, a partir do proc sistema de arquivo:
12h40 até 9 dias, 6h, 00 usuários, média de carga: 4, 0.21, 0.11
89 processos: 86 em repouso, 3 em execução, 0 zumbi, 0 estados de CPU interrompidos: 2.5% do usuário, 1.7% do sistema, 0.0% bom, 95.6% inativo
12h40 até 9 dias, 6h, 00 usuários, média de carga: 4, 0.21, 0.11
89 processos: 86 em repouso, 3 em execução, 0 zumbi, 0 estados de CPU interrompidos: 2.5% do usuário, 1.7% do sistema, 0.0% bom, 95.6% inativo
Mem: 255120K av, 239412K usado, 15708K livre, 756K shrd, 22620K buff Swap: 1050176K av, 76428K usado, 973748K livre, 82756K em cache
PID | USUÁRIO | PRI | NI | TAMANHO | RSS | COMPARTILHAR | STAT | %CPU | % MEM | HORÁRIO | COMANDO |
5005 | raiz | 14 | 0 | 91572 | 15M | 11580 | R | 1.9 | 6.0 | 7:53 | X |
19599 | jeff | 14 | 0 | 1024 | 1024 | 796 | R | 1.1 | 0.4 | 0:01 | topo |
19100 | jeff | 9 | 0 | 5288 | 4948 | 3888 | R | 0.5 | 1.9 | 0:24 | terminal gnome |
19328 | jeff | 9 | 0 | 37884 | 36M | 14724 | S | 0.5 | 14.8 | 1:30 | Mozilla-bin |
1 | raiz | 8 | 0 | 516 | 472 | 464 | S | 0.0 | 0.1 | 0:06 | o init |
2 | raiz | 9 | 0 | 0 | 0 | 0 | SW | 0.0 | 0.0 | 0:02 | Keventd |
3 | raiz | 9 | 0 | 0 | 0 | 0 | SW | 0.0 | 0.0 | 0:00 | kapm-ocioso |
4 | raiz | 19 | 19 | 0 | 0 | 0 | SWN | 0.0 | 0.0 | 0:00 | ksoftirqd_CPU0 |
5 | raiz | 9 | 0 | 0 | 0 | 0 | SW | 0.0 | 0.0 | 0:33 | kswapd |
6 | raiz | 9 | 0 | 0 | 0 | 0 | SW | 0.0 | 0.0 | 0:00 | reivindicou |
7 | raiz | 9 | 0 | 0 | 0 | 0 | SW | 0.0 | 0.0 | 0:00 | bdflush |
8 | raiz | 9 | 0 | 0 | 0 | 0 | SW | 0.0 | 0.0 | 0:05 | atualizado |
9 root -1-20 0 0 0 SW <0.0 0.0 0:00 mdrecuperaçãod | |||||||||||
13 | raiz | 9 | 0 | 0 | 0 | 0 | SW | 0.0 | 0.0 | 0:01 | kjornald |
89 | raiz | 9 | 0 | 0 | 0 | 0 | SW | 0.0 | 0.0 | 0:00 | khubd |
219 | raiz | 9 | 0 | 0 | 0 | 0 | SW | 0.0 | 0.0 | 0:00 | kjornald |
220 | raiz | 9 | 0 | 0 | 0 | 0 | SW | 0.0 | 0.0 | 0:00 | kjornald |
A primeira linha de topo contém as mesmas informações exibidas pelo uptime comando:
jeff: ~> uptime
3h30, até 12 dias, 23h29, 6 usuários, média de carregamento: 0.01, 0.02, 0.00
jeff: ~> uptime
3h30, até 12 dias, 23h29, 6 usuários, média de carregamento: 0.01, 0.02, 0.00
Os dados para esses programas são armazenados, entre outros, em / var / run / utmp (informações sobre os usuários conectados no momento) e no sistema de arquivos virtual / proc, Por exemplo / proc / loadavg (informações de carga média). Existem todos os tipos de aplicativos gráficos para visualizar esses dados, como o Gnome System Monitor e lavabos. Em FreshMeat e SourceForge você encontrará dezenas de aplicativos que centralizam essas informações junto com outros dados de servidor e logs de vários servidores em um servidor (web), permitindo o monitoramento de toda a infraestrutura de TI de uma estação de trabalho.
As relações entre os processos podem ser visualizadas usando o ptree comando:
Sophie: ~> ptree
init - + - amd
| -apmd
| -2 * [artsd]
| -atd
| -crond
| -deskguide_apple
| -eth0
| -gdm --- gdm - + - X
Sophie: ~> ptree
init - + - amd
| -apmd
| -2 * [artsd]
| -atd
| -crond
| -deskguide_apple
| -eth0
| -gdm --- gdm - + - X
|
|
|
`-gnome-session - + - Gnome
| -ssh-agent
`-verdadeiro
|
|
|
| -geyes_applet
| -gkb_applet
| -gnome-name-serv
| -gnome-smproxy
| -gnome-terminal - + - bash --- vim
| -geyes_applet
| -gkb_applet
| -gnome-name-serv
| -gnome-smproxy
| -gnome-terminal - + - bash --- vim
|
|
|
|
|
| -gpm
| -gweather
| -kapm-idled
| -bash
| -bash --- pstree
| -bash --- ssh
| -bash --- mozilla-bin --- mozilla-bin --- 3 * [mozilla-bin]
`-gnome-pty-helper
|
|
|
|
|
| -gpm
| -gweather
| -kapm-idled
| -3 * [kdeinit]
| -keventd
| -khubd
| -5 * [kjournald]
| -klogd
| -lockd --- rpciod
| -lpd
| -mdrecoveryd
| -6 * [mingetty]
| -8 * [nfsd]
| -nscd --- nscd --- 5 * [nscd]
| -ntpd
| -3 * [oafd]
| -painel
| -portmap
| -rhnsd
| -rpc.mountd
| -rpc.rquotad
| -rpc.statd
| -sawfish
| -screenshooter_a
| -sendmail
| -sshd --- sshd --- bash --- su --- bash
| -syslogd
| -tasklist_applet
| -vmnet-bridge
| -xfs
`-xinetd-ipv6
| -3 * [kdeinit]
| -keventd
| -khubd
| -5 * [kjournald]
| -klogd
| -lockd --- rpciod
| -lpd
| -mdrecoveryd
| -6 * [mingetty]
| -8 * [nfsd]
| -nscd --- nscd --- 5 * [nscd]
| -ntpd
| -3 * [oafd]
| -painel
| -portmap
| -rhnsd
| -rpc.mountd
| -rpc.rquotad
| -rpc.statd
| -sawfish
| -screenshooter_a
| -sendmail
| -sshd --- sshd --- bash --- su --- bash
| -syslogd
| -tasklist_applet
| -vmnet-bridge
| -xfs
`-xinetd-ipv6