comando "who" e "w" [RESOLVIDO]

1. comando "who" e "w" [RESOLVIDO]

Wagner
wagner31

(usa CentOS)

Enviado em 22/12/2017 - 11:21h

Preciso de uma ajuda, tenho um script para monitorar a rede e ele pega o IP do comando "who" pra colocar no email que envia quando um usuario loga em um server mas ele retorna o nome da maquina ao invés do IP

[root@server1 /]# who
wagner_suporte pts/0 2017-12-22 10:21 (maquina123.dominiorede.com.br)


Quero o IP e não o nome da máquina, alguém pode me ajudar?


  


2. Tente

Sandro Marcell
SMarcell

(usa Slackware)

Enviado em 22/12/2017 - 12:36h

who --ips 



3. Re: comando

Wagner
wagner31

(usa CentOS)

Enviado em 22/12/2017 - 13:02h

Marcel,

fala q não existe esse comando no WHO

[root@server1 /]# who --ips
who: unrecognized option '--ips'
Try 'who --help' for more information.




4. Re: comando

Sandro Marcell
SMarcell

(usa Slackware)

Enviado em 22/12/2017 - 14:26h

Tente com o comando "w"

[root@server1 /]# w 



5. Re: comando

Wagner
wagner31

(usa CentOS)

Enviado em 22/12/2017 - 16:46h

marcel,

com o comando "w" ele está trazendo o hostname e não o IP, não sei o por que.

[root@server1 /]# w
16:46:03 up 1 day, 4:09, 1 user, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
wagner_ pts/0 maquina123.dominio 13:01 3.00s 0.07s 0.19s sshd: wagner_suporte [priv]



6. Re: comando

Wagner
wagner31

(usa CentOS)

Enviado em 22/12/2017 - 16:52h

usei o "w" da seguinte forma, porém ele corta o nome do usuário e preciso que o nome esteja por inteiro

[root@server123 /]# w --ip-addr
16:49:57 up 1 day, 4:13, 1 user, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
wagner_ pts/0 192.168.0.4 13:01 5.00s 0.06s 0.19s sshd: wagner_suporte [priv]


ai para poder conseguir os dados que quero tive que usar o seguinte comando:

[root@server123 /]# w --ip-addr |awk '{print $3,$4,$9}'
1 day, average:
FROM LOGIN@
192.168.0.4 13:01 wagner_suporte


Gostaria de entender o por que o comando "WHO" e "W" estão trazendo o hostname ao invés do ip da máquina.

resultado do comando
[root@server123 /]# w --ip-addr |awk '{print $9,$3,$4}'
average: 1 day,
FROM LOGIN@
wagner_suporte 192.168.0.4 17:07

quando coloco no script o comando
w --ip-addr |awk '{print $9,$3,$4}' 

ele volta o email com o seguinte resultado
Usuario --ip-addr realizou o login a partir do IP 192.168.0.4 as 17:07 

Não está trazendo o meu nome de usuário, se eu usar o $1 no caso, ele vai trazer meu usuário cortado. Preciso que seja inteiro.



7. Re: comando

Sandro Marcell
SMarcell

(usa Slackware)

Enviado em 22/12/2017 - 17:49h

Tenta por no seu script dessa forma:

$ PROCPS_USERLEN=32 w --ip-addr | awk 'NR > 2 {print $1, $3, $4}'
wagner_suporte 192.168.0.4 17:07


E quanto a questão dos comandos estarem trazendo o hostname ao invés do IP, isso talvez se dê devido as configurações de DNS nesse seu servidor.



8. Re: comando "who" e "w" [RESOLVIDO]

Wagner
wagner31

(usa CentOS)

Enviado em 22/12/2017 - 18:21h

Teoricamente está configurado correto, está funcionando até dia 19 normalmente, depois começou com esse problema.



9. Re: comando "who" e "w" [RESOLVIDO]

Wagner
wagner31

(usa CentOS)

Enviado em 03/01/2018 - 18:27h

Obrigado marcel,

deu certo, vou usar esse comando.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts