Verificar atualizações em um servidor via SSH

2
#!/bin/bash
while read P
do
ssh "$P" /usr/lib/update-notifier/apt-check -p &&
sudo apt-get upgrade --dry-run
done < ~/iplist1

O resultado deve ser assim:

Server1 name  
possible updates

Server2 name  
possible updates
    
por Ash Adams 13.11.2017 / 13:46

1 resposta

2

Que tal isso?

#!/bin/bash
while IFS='' read -r p || [ -n "$p" ]; do
  ssh "$p" bash -c '\
    hostname &&
    [[ -z "$(/usr/lib/update-notifier/apt-check -p)" ]] &&
    echo "No updates available." ||
    ( echo ; apt-get upgrade --dry-run )
    '
  echo
done < ~/iplist1

apt-get --dry-run não precisa de permissões de root para executar, isso elimina um grande problema.

    
por dessert 13.11.2017 / 13:56