Вы находитесь на странице: 1из 9

Processos no Linux

Por Hugo Cisneiros (Eitch)


Saber o que est sendo executado na mquina essencial para entender o funcionamento. Este
tutorial tra uma introdu!"o sobre os processos e threads no #inux$ como list%los& finali%los&
interpret%los.
Cada programa executado& desde a inicialia!"o do sistema& definido com o que chamamos de
processo. Cada um desses processos recebe um n'mero de identifica!"o pr(prio& chamado P)*
(Process )*). +lm do P)*& cada processo tem um con,unto de informa!-es como$ nome do
comando& uso da mem(ria& usurio e grupo que o executou& entre outros.
+s informa!-es de todos os processos do sistema ficam armaenadas no pseudo%diret(rio .proc.
*entro deste diret(rio& cada sub%diret(rio numrico contm as informa!-es do processo com o
n'mero P)* correspondente. / deste lugar que os comandos relacionados aos processos retiram
suas informa!-es.
ps Listar processos
Sintaxe: $ ps [opes]
#ista os processos em execu!"o& apresentando o P)* e outras informa!-es sobre o processo& como o
comando executado (C0*) e estado atual do processo (S1+1).
Exemplo$
$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STT STRT TIME C!MM"D
#oot $ %&% %&% $'() *%+ , Ss u-)' %:%) init [)]
#oot ) %&% %&% % % , S. u-)' %:%% [/t0#ea11]
#oot ( %&% %&% % % , S. u-)' %:%% [2i-#ation3%]
#oot + %&% %&% % % , S. u-)' %:%4 [/so5ti#613%]
&&&7o#te&&&
1ae2on )''8 %&% %&% $848 +() , Ss u-)' %:%% 3us#3s9in3at1
#oot (%$* %&% %&% ()*) ')8 , Ss u-)' %:%% 3us#3s9in37#on
#oot (%*+ %&% %&% )'*) 4++ , Ss u-)' %:%% 3us#39in3/12
#oot (%** $&* $8&: ('%4:) (8+))% tt;* S<s= u-)' (':(% 3us#39in3> ?9#
&&&7o#te&&&
#oot (%') %&% %&% $4%8 :%8 tt;$ Ss= u-)' %:%% 3s9in3-ett;
#oot (%'( %&% %&% $4%8 :%8 tt;) Ss= u-)' %:%% 3s9in3-ett;
#oot (%'+ %&% %&% $4%8 :%+ tt;( Ss= u-)' %:%% 3s9in3-ett;
#oot (%': %&% %&% $4%8 :%+ tt;+ Ss= u-)' %:%% 3s9in3-ett;
#oot (%'4 %&% %&% $4%8 :%+ tt;: Ss= u-)' %:%% 3s9in3-ett;
#oot (%'* %&% %&% $4%8 :%8 tt;4 Ss= u-)' %:%% 3s9in3-ett;
eit70 '+%( +&: %&$ :'%% ((4+ tt;$ S )(::% %:%% ?9as0
eit70 '+$4 )&% %&$ :(%+ )(88 tt;$ S= )(::% %:%% @i testan1o
2 par3metro aux fa com que o comando ps mostre todos os processos do sistema& associado aos
seus respecti4os usurios e de forma detalhada. 5esta forma detalhada& podemos 4er 4rios
6campos7 especificados na primeira linha. Eles s"o$
8SE9 8surio que iniciou o processo (dono).
P)* 5'mero 'nico do processo.
:CP8 8tilia!"o da CP8 em porcentagem.
:0E0 8tilia!"o da mem(ria f;sica do sistema em porcentagem.
<S=
0em(ria 4irtual utiliada pelo processo& inclui a mem(ria f;sica e utiliada por
bibliotecas compartilhadas.
9SS
0em(ria f;sica utiliada pelo processo. )nclui mem(ria utiliada por bibliotecas
compartilhadas.
11>
1erminal ao qual o processo pertence. ?uando n"o h um terminal controlando
(como no caso dos processos do sistema& @ernel e processos do ser4idor grfico)
aparecer o sinal de interroga!"o.
S1+1 Estado atual do processo (mais detalhes depois).
S1+91
+ hora em que o processo foi iniciado. Caso a hora se,a do dia anterior&
representado pelo dia e mAs.
1)0E 1empo cumulati4o de CP8& ou se,a& por quanto tempo o processo utiliou a CP8.
C200+5*
2 comando executado e todos seus argumentos. Caso o tamanho do comando se,a
maior do que a linha do terminal& ele ignora o resto (n"o passa para a pr(xima linha).
Para mostrar todo o argumento& utilie o par3metro B para a,ustar o comprimento.
Em rela!"o ao estado do processo& uma letra estar representando um destes estados$
*
*escansando enquanto espera por outra a!"o (geralmente E.S)& sem possibilidade de
interrup!"o.
9 Executando (9unning).
S
*escansando enquanto espera por outra a!"o (esperando algum e4ento ser completado)& com
possibilidade de interrup!"o.
1 Parado& suspendido. 1al4e pelo gerenciamento de tarefas da shell (C19#C=).
= =umbi. S)5)S192D 2 processo foi terminado mas n"o foi remo4ido por quem o chamou.
8ma outra forma de 4er os processos& agora organiados por r4ore$
$ ps axA5
top Lista processos em tempo real
Sintaxe: $ top [opes]
0ostra ao usurio os processos ati4os no sistema da mesma forma que o ps& mas em tempo real e
em uma certa ordem. Por padr"o& o top mostra nas primeiras linhas os processos que mais gastam
processamento (em porcentagem).
+o executar o top sem argumentos& sua taxa de atualia!"o na tela de E em E segundos. Para
mudar para& por exemplo& F segundo$
$ top ?1 $
8ma 4e dentro do programa& a tecla h mostra a a,uda. 8ma das op!-es 'teis a tecla f que permite
especificar a ordem das linhas de acordo com os campos (mais utilia!"o de cpu& mem(ria& maior
n'mero 8)* de usurio& entre outros).
pstree Mostra processos em forma de rvore hierrquica
Sintaxe: $ pst#ee [opes]
0ostra de forma simples e utiliando caracteres +SC)) uma r4ore hierarquica dos processos do
sistema.
Sinais de Processos
1odo processo& alm da entrada padr"o que pode ser controlada dentro do programa& tambm pode
receber o que chamamos de 6sinal7. Este sinal o modo que o sistema operacional tem para lidar
com o processo. 8m sinal pode dier ao programa para terminar& ou outro sinal pode simplesmente
terminar o programa sem dier nada. +pertar um C19#CC ()nterrup!"o) no terminal um sinal que
o sistema manda para o programa atual.
Para saber a lista de sinais& digite$
$ 2an * si-naB
?uem fa uma aplica!"o pode programar para que quando um sinal for recebido pelo processo& o
programa se comporte de uma certa maneira. 2 sinal S)G1E90 (FH) por exemplo& chamado
quando o programa finaliado normalmente. I o sinal S)G)51 (J) chamado quando o usurio
aperta o C19#CC e o programa tem que lidar com essa interrup!"o.
2s 'nicos sinais que s"o for!ados pelo @ernel s"o os sinais S)GK)## (L) e S)GS12P (FL). 5este
caso& n"o importa o que o programador tentou faer& 4ai ser executada as fun!-es dos sinais nos
processos.
2s sinais mais importantes s"o$ S)GH8P (F)& S)G)51 (J)& S)GK)## (L)& S)GSEG< (FF)&
S)G1E90 (FH) e S)GS12P (FL).
2 S)GH8P (F) geralmente utiliado pelos programas para recarregar seus arqui4os de
configura!"o. 8m exemplo de programa que utilia o S)GH8P para este fim o inetd.xinetd.
2 S)G)51 (J) recebido quando o usurio aperta a combina!"o de teclas C19#CC. + grande
maioria dos programas utilia esse sinal para indicar uma interrup!"o do programa& para parar o que
esti4er faendo e continuar com outra a!"o (ou finaliar o programa).
2 S)GK)## (L) o sinal que mata o processo. 5"o importa o que o processo este,a faendo ou se
ele importante& o @ernel ir for!ar a sua finalia!"o imediatamente. Este sinal n"o pode ser
bloqueado ou re,eitado pelo programa.
2 S)GSEG< (FF) um sinal recebido quando h alguma falha na aloca!"o de mem(ria. 1ambm
conhecido como 6Segmentation Mault7& ele geralmente indica um problema no programa ou na pior
das hip(teses problemas na mem(ria f;sica do computador.
2 S)G1E90 (FH) recebido pelos programas diendo%os para finaliar de forma normal. /
equi4alente a fechar uma ,anela em um ambiente grfico.
2 S)GS12P (FL) o sinal que suspende os programas& ou 6os deixam im(4eis7 para poder
manipul%los como no uso do C19#C= na shell& ou ent"o quando se est executando um trace em
um programa.
kill, killall Envia um sinal ao processo
Sintaxe: $ /iBB [?SI"<] .PIDC
Sintaxe: $ /iBBaBB [?SI"<] .no2e 1o p#o7essoC
+pesar do nome& o comando @ill n"o mata um processo e sim apenas manda um sinal para ele. 0as
como , sabemos& h um sinal onde o @ernel literalmente mata o processo. Para obter uma lista dos
sinais suportados pelo sistema atra4s do comando @ill& digite$
$ /iBB ?B
Para o comando @ill& precisamos primeiro identificar o seu n'mero P)*& para depois mandar o sinal.
Por exemplo& temos um processo executando (4im) e queremos que ele se,a morto (S)GK)##) sem
a4iso pr4io$
$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STT STRT TIME C!MM"D
&&&7o#te&&&
eit70 )($: %&$ %&4 '(4+ (:++ pts3$ S= $):+4 %:%) @i2 a#6ui@o
8ma 4e obtido o P)* do processo$
$ /iBB ?' )($:
Ent"o o processo JEFH ser morto sem piedade atra4s do sinal S)GK)##.
5este exemplo anterior& ti4emos que obter o P)* do processo para en4iar um sinal. Com o comando
@illall& podemos mandar um sinal para todos os programas que tAm um certo nome no comando.
8tiliando desta forma& n"o preciso saber o P)*& mas por outro lado se hou4er dois processos com
o mesmo nome& o sinal ser mandado para os dois.
0atando o mesmo processo do exemplo anterior& agora utiliando o comando @illall$
$ /iBBaBB @i2
Prioridades de Processos
0uita gente n"o sabe& mas nos sistemas #inux mais modernos& podemos ter um controle de
prioridade de processos utiliando a CP8. Estas prioridades funcionam para fa4orecer melhor um
comando N outro. Por exemplo$
Programa F tem prioridade 6alta7
Programa J tem prioridade 6normal7
Se o Programa J resol4e gastar quase todo o processamento no sistema (como por exemplo$
compacta!"o de arqui4os em bipJ)& os programas que est"o em prioridade alta n"o ser"o
completamente afetados.
Se o Programa F esti4esse em prioridade 6normal7& ele teria que di4idir o processamento com o
Programa J& mesmo que ele usasse pouquinho. 0as como ele est em 6alta7 prioridade& ele sempre
4ai ter a preferAncia no sistema& ao in4s do Programa J.
+ faixa de prioridades $
%JO (Prioridade 0xima)
%FL
P
%F
O (Prioridade Padr"o)
F
P
FQ
FL (Prioridade 0;nima)
Sendo assim& por padr"o& todo comando executado 6normalmente7 recebe a prioridade O (=ero). E
quanto menor for esse n'mero& maior a prioridade do processo na CP8 (Sim& o contrrioD ?uanto
menor& maiorR quanto maior& menorD $).
Por padr"o& os comandos ligados ao @ernel e o sistema operacional em si tAm prioridade inferior a O
(aqui no meu sistema& 4e,o 4rios processos com prioridade %H). )sso nos fa lembrar que voc
precisa ser root para configurar um processo com prioridade menor que . )sso fa sentido& ,
que em um sistema multi%usurio& os usurios normais compartilham o padr"o O& e podem escolher
apenas se o processo pode ter uma prioridade mais baixa& assim n"o interferindo com os processos
do sistema& que teoricamente s"o mais importantes.
Para listar as prioridades dos processos& podemos utiliar o ps$
$ ps axo use#DniD7o22an1
USER "I C!MM"D
#oot % init [)]
#oot ?: [/t0#ea11]
#oot ? [2i-#ation3%]
#oot ?: [/so5ti#613%]
#oot ? [Eat701o-3%]
#oot ? [2i-#ation3$]
[&&&]
#oot % 3us#3s9in37#on
#oot % 3us#39in3/12 ?7on5i- 3@a#3#un3/123/12#7
#oot % 3us#39in3> ?9# ?noBisten t7p :% @t* ?aut0 3@a#3#un3xaut03:%?FP0CBu
#oot % 3s9in3-ett; (8+%% tt;$
[&&&]
0u-o % /1einit Runnin-&&&
0u-o % 17opse#@e# [/1einit] ??nosi1
0u-o % /Baun70e# [/1einit] ??neE?sta#tup
0u-o % /1e1 [/1einit] ??neE?sta#tup
0u-o % /E#appe# /s2se#@e#
[&&]
#oot ?) 107Bient( ?p5 3@a#3#un3107Bient&et0%&pi1 ?B5
3@a#3Bi93107p(3107Bient&et0%&Beases et0%
0u-o % /eepassx
0u-o % 39in39as0
0u-o $' taiB ?5 teste&txt
0u-o % ps axo use#DniD7o22an1
5este comando& a primeira coluna o usurio que est executando o processoR a segunda a
prioridade de execu!"oR e a terceira o comando em si. * pra perceber bem que a maioria dos
comandos recebe O como prioridade& com algumas excess-es.
nice, renice !onfigura prioridades de !P" de um comando
ou processo
Sintaxe: $ ni7e [?n PRI!RIDDE] [7o2an1o &&&]
Sintaxe: $ #eni7e .PRI!RIDDEC [?p PID]
8ma 4e que , sabemos como funciona a prioridade de processos no #inux& podemos controlar
estas prioridades com os comandos nice e renice.
Por exemplo& supomos que eu este,a trabalhando em um ser4idor Seb bastante mo4imentado. 2
+pache (ser4idor H11P) est sendo executado com prioridade O (normal)& e est muito ocupado
ser4indo todas as pginas din3micas para os 4rios usurios ao mesmo tempo. Ent"o& toca o
telefone e me pedem para faer um bac@up de todas as pginas do ser4idor& algo em torno de uns
FOgb& tudo localiado no diret(rio .4ar.BBB.
Para faer o bac@up& eu utiliei o seguinte comando$
ta# ?G75 3@a#3Bi939a7/up39a7/up?0t1o7s?)%%'%:)%&ta#&-G 3@a#3EEE
2u se,a& agrupar e compactar todo o diret(rio .4ar.BBB e seu conte'do no arqui4o bac@up%htdocs%
JOOLOHJO.tar.g. Estaria certo eu faer assimT
+ resposta sim e n"o. Com o comando acima& seria criado com sucesso o bac@up que precisa4a&
mas o custo muito altoP Enquanto o sistema compacta todos os FOgb e coloca4a no arqui4o& o
+pache tinha que dividir as tarefas dele com esse comandoD )sso significa que os usurios Seb
teriam suas pginas entregues de forma mais lentaP Como a prioridade aqui ser4idor as pginas&
ter;amos que usar o comando$
ni7e ?n $' ta# ?G75 3@a#3Bi939a7/up39a7/up?0t1o7s?)%%'%:)%&ta#&-G 3@a#3EEE
5este caso& o bac@up seria feito do mesmo ,eito& mas a prioridade dele seria a m;nimaD 1oda 4e
que o +pache precisasse de muito processamento& o sistema ia dar prioridade total ao +pache&
deixando um pouco de lado o bac@up. 9esultado$ os usurios do +pache n"o seriam de maneira
alguma afetados e o sistema n"o iria ter uma carga maior do que o esperado. +o in4s disso& o
bac@up iria demorar mais& pois tinha que esperar primeiro os outros processos usarem a CP8& mas
seria feito da mesma forma.
Ent"o bem simples$ primeiro escolhemos a prioridade antes de executar o comando& e faemos o
mesmo comando& colocando antes dele o 6nice -n6. 0as e se o comando , est sendo executado&
como no primeiro exemplo aquiT 5este caso& usamos o comando renice para redefinir a prioridade.
Para utiliar o comando renice& precisamos achar primeiro o P)* do processo& depois executar o
comando neste P)*& exemplo$
$ ps axo use#Dpi1DniD7o22an1 H -#ep ta#
0u-o +))$ % ta# ?G75 3@a#3Bi939a7/up39a7/up?0t1o7s?)%%'%:)%&ta#&-G
3@a#3EEE
$ #eni7e $' ?p +))$
+))$: oB1 p#io#it; %D neE p#io#it; $'
$ ps axo use#Dpi1DniD7o22an1 H -#ep ta#
0u-o +))$ $' ta# ?G75 3@a#3Bi939a7/up39a7/up?0t1o7s?)%%'%:)%&ta#&-G
3@a#3EEE
5os comandos acima& eu$ achei o processo que esta4a executando o bac@up& e identifiquei que o
P)* dele era UJJF. 5ote tambm que a prioridade do processo O (normal). Como queremos
colocar o comando em uma prioridade baixa& ent"o utiliei o comando renice para redefinir essa
prioridade$ de O para FL. *epois utiliei no4amente o comando ps para listar o processo e 4i que a
prioridade dele tinha mudado.
Como 'ltimo exemplo& lembre%se que usurios comuns (aqui em nosso caso& o usurio hugo) n"o
podem ultrapassar prioridades maiores que O& ou se,a& n"o podem colocar prioridades negati4as.
<e,a o que acontece no mesmo exemplo anterior$
$ ni7e ?n ?$% ta# ?G75 3@a#3Bi939a7/up39a7/up?0t1o7s?)%%'%:)%&ta#&-G 3@a#3EEE
ni7e: 7annot set ni7eness: Pe#2ission 1enie1
?uando tentei utiliar a prioridade %FO& o sistema n"o deixou e retornou a mensagem de permiss"o
negada. Se fVssemos root& neste caso& iria funcionar.
lsof Listar arquivos a#ertos
Sintaxe: $ Bso5 [opes] [a#6ui@o]
2 comando lsof um dos mais importantes comandos para quem administra sistemas #inux&
principalmente na rea de seguran!a. Este comando lista todos os arqui4os abertos por todos os
processos. +qui& quando eu falo arqui4o& n"o s"o apenas arqui4os comuns& mas sim recursos que
funcionam como arqui4os (podem ser abertos& mapeados na mem(ria& entre outros). )sso inclui
bibliotecas& soc@ets& arqui4os comuns& diret(rios e por a; 4ai.
Em outras pala4ras& este comando nos fornece um mapeamento completo do que o programa est
usando no sistema. #embre%se que usando apenas o comando lsof& esta lista fica muito grande& pois
mostra todos os arqui4os de todos os processos. Por exemplo$
$ Bso5 ?n
[&&&]
9as0 ++%' 0u-o 7E1 DIR ):+D$ +%'4 )*:):$+
30o2e30u-o
9as0 ++%' 0u-o #t1 DIR ):+D$ +%'4 ) 3
9as0 ++%' 0u-o txt REI ):+D$ *%%+') :8+'$$)
39in39as0
9as0 ++%' 0u-o 2e2 REI ):+D$ +):%+ :4:)8$:
3Bi93i484372o@3Bi9nssJ5iBes?)&*&so
9as0 ++%' 0u-o 2e2 REI ):+D$ (8+++ :4:)8$*
3Bi93i484372o@3Bi9nssJnis?)&*&so
9as0 ++%' 0u-o 2e2 REI ):+D$ 8*8%% :4:)8$%
3Bi93i484372o@3Bi9nsB?)&*&so
9as0 ++%' 0u-o 2e2 REI ):+D$ (%+(4 :4:)8$$
3Bi93i484372o@3Bi9nssJ7o2pat?)&*&so
9as0 ++%' 0u-o 2e2 REI ):+D$ $)8)8$4 :)$($:%
3us#3Bi93Bo7aBe3Bo7aBe?a#70i@e
9as0 ++%' 0u-o 2e2 REI ):+D$ $+$(:+% :4:)4:$
3Bi93i484372o@3Bi97?)&*&so
9as0 ++%' 0u-o 2e2 REI ):+D$ '48% :4:)4:*
3Bi93i484372o@3Bi91B?)&*&so
9as0 ++%' 0u-o 2e2 REI ):+D$ )%)$88 *+%4+8+
3Bi93Bi9n7u#ses&so&:&4
9as0 ++%' 0u-o 2e2 REI ):+D$ ):*%% ($*888)
3us#3Bi93-7on@3-7on@?2o1uBes&7a70e
9as0 ++%' 0u-o 2e2 REI ):+D$ $$()+8 :4:(4%) 3Bi93B1?
)&*&so
9as0 ++%' 0u-o %u CKR $(4D( :
31e@3pts3(
9as0 ++%' 0u-o $u CKR $(4D( :
31e@3pts3(
9as0 ++%' 0u-o )u CKR $(4D( :
31e@3pts3(
9as0 ++%' 0u-o )::u CKR $(4D( :
31e@3pts3(
[&&&]
5o exemplo acima& eu peguei apenas um fragmento do comando& indicando o que o comando bash
est faendo. * pra 4er que bibliotecas ele est usando& onde ele est atuando& entre outros. 2
par3metro 6%n7& que usei no exemplo acima& ser4e para que se o comando retornar algum endere!o
de rede ()P& por exemplo)& ele n"o tente resol4er com *5S& assim o retorno do comando fica mais
rpido.
+lguns dos usos mais comuns incluem$
<er se algum processo est escutando uma porta na rede suspeita& ou conectado em algum
lugar suspeito. Por exemplo& 4rios scripts de in4as"o ficam escondidos no sistema (com
nomes de outros processos)& conectados a ser4idores de )9C desconhecidos. Com o lsof& d
pra saber que estes comando est"o faendo algo que n"o bem o que de4eriam faer R) R
<er que processo est usando um certo arqui4o (lsof )R
<er exatamente que tipos de conex"o est"o sendo feitas no sistemaR
0edir as mem(rias utiliadas pelos processos.
Por exemplo& quero 4er todos os processos que utiliam o arqui4o .de4.null$
$ Bso5 31e@3nuBB
C!MM"D PID USER LD TYPE DEVICE SIZE "!DE "ME
x?session ($'( 0u-o %# CKR $D( 4$* 31e@3nuBB
19us?Baun ())8 0u-o %# CKR $D( 4$* 31e@3nuBB
19us?Baun ())8 0u-o $u CKR $D( 4$* 31e@3nuBB
19us?Baun ())8 0u-o )u CKR $D( 4$* 31e@3nuBB
19us?Baun ())8 0u-o +u CKR $D( 4$* 31e@3nuBB
19us?1ae2 ())' 0u-o %u CKR $D( 4$* 31e@3nuBB
19us?1ae2 ())' 0u-o $u CKR $D( 4$* 31e@3nuBB
19us?1ae2 ())' 0u-o )u CKR $D( 4$* 31e@3nuBB
19us?1ae2 ())' 0u-o +u CKR $D( 4$* 31e@3nuBB
/E#appe# ()*: 0u-o %# CKR $D( 4$* 31e@3nuBB
-7on51?) (('( 0u-o %u CKR $D( 4$* 31e@3nuBB
-7on51?) (('( 0u-o $u CKR $D( 4$* 31e@3nuBB
-7on51?) (('( 0u-o )u CKR $D( 4$* 31e@3nuBB
-7on51?) (('( 0u-o (u CKR $D( 4$* 31e@3nuBB
Este comando bem parecido com o comando 6fuser .de4.null7& que tambm mostra que processos
est"o utiliando o arqui4o .de4.null& mas o lsof nos d mais detalhes.
?uero 4er agora que processos est"o utiliando conex-es 1CP no meu sistema$
$ Bso5 ?n H -#ep TCP
5i#e5ox?9 (()* 0u-o $)u IP@+ +$$%% TCP
$')&$48&$&$%%::8'+:?C44&$%)&$&$%%:EEE MESTN<ISKEDO
5i#e5ox?9 (()* 0u-o ('u IP@+ +$':$ TCP
$')&$48&$&$%%:+:4+%?C*)&$+&)+*&$8:0ttps MESTN<ISKEDO
5i#e5ox?9 (()* 0u-o +)u IP@+ (':*% TCP
$')&$48&$&$%%:+*'%%?C*)&$+&)+*&$':0ttps MESTN<ISKEDO
Eis08&: (:(: 0u-o *u IP@+ '(($ TCP
$)*&%&%&$:4:$8) M<ISTE"O
Eis08&: (:(: 0u-o 8u IP@+ ':*8 TCP
$')&$48&$&$%%:+4)(8?C)%*&+4&$%4&$%8:2snp MESTN<ISKEDO
9epare que na pen'ltima linha do comando anterior& o processo 6BishQ.HW est escutando (#)S1E5)
uma conex"o 1CP na porta XHFQJ. ?ue tal a gente saber todos os processos que est"o escutando
portas de redeT
P Bso5 ?n H -#ep <ISTE"
#p79in1 $)4+ #p7 8u IP@+ +$:' TCP
Q:sun#p7 M<ISTE"O
sn2p1 $(+$ #oot 8u IP@+ +:4$ TCP
$)*&%&%&$:s2ux M<ISTE"O
ss01 $(:$ #oot (u IP@+ ++:$ TCP
Q:1o2ain M<ISTE"O
post2aste $::( post-#es (u IP@4 +8': TCP
Q:post-#es M<ISTE"O
post2aste $::( post-#es +u IP@+ +8'4 TCP
Q:post-#es M<ISTE"O
p#o5tp1 $4%$ 5tp %u IP@4 +8:8 TCP Q:5tp
M<ISTE"O
2;s6B1 *88) 2;s6B $%u IP@+ (8(:$84 TCP Q:2;s6B
M<ISTE"O
na2e1 ($''% na2e1 )$u IP@+ $%**4((:8 TCP
$)*&%&%&$:1o2ain M<ISTE"O
na2e1 ($''% na2e1 4%u IP@+ $%**4(('* TCP
$)*&%&%&$:#n17 M<ISTE"O
9epare que para o comando acima& eu utiliei o root (por isso o Y antes do comando). )sto
necessrio pois quando utiliamos o lsof como usurio normal& n"o temos todas as permiss-es
necessrias para 4erificar todos os processos& ent"o a sa;da do comando 4ai ficar bem restrita.
Executando como root& podemos ter todas as informa!-es poss;4eis.