Ssh: Execução de comandos em servidores remotos: mudanças entre as edições
2532252>Jefferson Sem resumo de edição |
imported>Admin m uma edição |
||
(Sem diferença)
| |||
Edição atual tal como às 02h45min de 8 de agosto de 2020
Colaboração: Rubens Queiroz de Almeida
Data de Publicação: 10 de julho de 2014
O uso mais frequente do comando ssh é o estabelecimento de conexões em servidores remotos. Entretanto, em determinadas ocasiões, precisamos apenas obter uma informação do servidor remoto, como por exemplo, a taxa de uso das partições, carga do sistemas, etc. Não é preciso fazer o login no servidor remoto, emitir o comando e em seguida sair. Basta invocar o comando ssh, seguido do endereço do servidor, e no final coloque o comando que deseja executar no servidor remoto.
Por exemplo, para obter a taxa de uso das partições de um sistema:
# ssh www.acme.com df Filesystem 1K-blocks Used Available Use% Mounted on rootfs 198161652 155341196 32754076 83% / udev 10240 0 10240 0% /dev tmpfs 406284 180 406104 1% /run tmpfs 5120 0 5120 0% /run/lock tmpfs 2489460 0 2489460 0% /run/shm
Desta forma, podemos obter as informações de múltiplos servidores e, por exemplo, emitir alertas para os administradores quando a taxa de uso de determinada partição exceder a 90%.
Se quisermos usar o pipe no servidor remoto, precisamos delimitar todo o comando por aspas.
Por exemplo, o comando:
ssh www.acme.com 'ps aux | grep firefox'
Ao fazer desta forma, o comando "ps aux | grep firefox" é inteiramente executado no servidor remoto.
Desta forma, podemos fazer o monitoramento do estado do servidor (carga de cpu, taxa de uso de partições, processos em execução, etc) bem como iniciar a execução de scripts quando determinadas condições se verificarem.