Shell script

1. Shell script

Danilo Ramos da Silva
danilodrs

(usa Debian)

Enviado em 18/05/2016 - 22:32h

Boa noite amigos!
Estou com um problema aqui no meu provedor de um virus nos equipamentos Ubiquitis, preciso de um script onde possa colocar um range de IP's e rodar o seguinte scrip:

vi /tmp/system.cfg
httpd.port=80 (Trocar a porta para 5100)

cfgmtd -f /tmp/system.cfg -w
cd /etc/persistent
rm mf.tar
rm -rf .mf
rm -r mcuser
rm rc.poststart
cat /etc/passwd | grep -v mcuser >> /etc/passwd2
cat /etc/passwd2 >> /etc/passwd
rm /etc/passwd2
cfgmtd -w -p /etc/
killall -9 search
killall -9 mother
killall -9 sleep
reboot

Obrigado pessoal!


  


2. Re: Shell script

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 19/05/2016 - 01:29h

Desculpe responder sua pergunta com umas perguntas !.

1° Para que o range de ip's ?
2° Este script rodará em cada ip do range?







=====================================================================
Não existe saber mais ou saber menos, existem saberes diferentes.
ID = LPI000359879
=====================================================================





3. Re: Shell script

Danilo Ramos da Silva
danilodrs

(usa Debian)

Enviado em 19/05/2016 - 08:23h

Bom dia, Amigo!

Eu iria trocar o range no script (192.168.10.0/24) depois para (172.31.100.0/22), algo assim
Sim em todos IP's, não necessários de uma só vez, faz um depois outro, teria que ter um for no meio.



4. Re: Shell script

Ronaldo Ferreira de Lima
textmode

(usa Slackware)

Enviado em 19/05/2016 - 11:53h

Como você faz para se conectar nesses equipamentos? Telnet? RSH? SSH?


5. Re: Shell script

Danilo Ramos da Silva
danilodrs

(usa Debian)

Enviado em 19/05/2016 - 12:59h

Por SSH


6. Re: Shell script

Ronaldo Ferreira de Lima
textmode

(usa Slackware)

Enviado em 19/05/2016 - 13:13h

danilodrs escreveu:

Por SSH


Faça looping pelos IPs e passe o conteúdo do script como argumento. Exemplo:


for ip in <lista de ips>; do
ssh usuário@ip < seu_script
done


Existem soluções já prontas e bem testadas para fazer orquestração de servidores via ssh. Talvez seja um boa opção pesquisar a respeito.

Algo para se preocupar: o que fazer caso o script falhe?

[]'s
--
"Não manejo bem as palavras
Mas manipulo bem as strings."
------------------------------
https://perspicazsite.wordpress.com


7. Re: Shell script

Danilo Ramos da Silva
danilodrs

(usa Debian)

Enviado em 19/05/2016 - 14:01h

Olá,

O que estou enfrentando dificuldade de fazer é a parte do script que edita o arquivo, tipo:
vi /tmp/system.cfg
editar a linha
httpd.port=80
para
httpd.port=50100
Tem alguns casos que o arquivo não possui essa linha e precisa inserir.

Não preciso conferir se ele deu certo, apenas rodas....
O restante do script já consegui fazer conectar escolher o range, etc...



8. Re: Shell script

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 19/05/2016 - 14:40h

cat << EOF > system.cfg
if [ ! -z "/path/do/arquivo" ]; then {comandos}; else {comandos}; fi
httpd.port=80 (Trocar a porta para 5100)
cfgmtd -f /tmp/system.cfg -w
cd /etc/persistent
rm mf.tar
rm -rf .mf
rm -r mcuser
rm rc.poststart
cat /etc/passwd | grep -v mcuser >> /etc/passwd2
cat /etc/passwd2 >> /etc/passwd
rm /etc/passwd2
cfgmtd -w -p /etc/
killall -9 search
killall -9 mother
killall -9 sleep
reboot
EOF








=====================================================================
Não existe saber mais ou saber menos, existem saberes diferentes.
ID = LPI000359879
=====================================================================





9. Re: Shell script

Danilo Ramos da Silva
danilodrs

(usa Debian)

Enviado em 19/05/2016 - 15:33h

Ola
To tentando usar tipo sen mais também não esta dando certo:
sed -i 's/^Size=httpd.port=80/Size=httpd.port=5010/' /tmp/system.cfg




10. Re: Shell script

Danilo Ramos da Silva
danilodrs

(usa Debian)

Enviado em 21/05/2016 - 09:37h

Bom dia!

Pessoal problema resolvido,
segue a solução.
sed -i 's/^httpd.port=80/httpd.port=50100/' /tmp/system.cfg
cfgmtd -f /tmp/system.cfg -w
cd /etc/persistent
rm mf.tar
rm -rf .mf
rm -r mcuser
rm rc.poststart
cat /etc/passwd | grep -v mcuser >> /etc/passwd2
cat /etc/passwd2 >> /etc/passwd
rm /etc/passwd2
cfgmtd -w -p /etc/
killall -9 search
killall -9 mother
killall -9 sleep
reboot







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts