„runupdate.sh“ hinzufügen
This commit is contained in:
parent
8cfc58cbb6
commit
6142263b8b
57
runupdate.sh
Normal file
57
runupdate.sh
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# List of server IP addresses as strings
|
||||||
|
SERVER_LIST=("192.168.1.100" "192.168.1.101" "192.168.1.102")
|
||||||
|
|
||||||
|
# Loop through the server list
|
||||||
|
for SERVER in "${SERVER_LIST[@]}"
|
||||||
|
do
|
||||||
|
echo "Checking for updates on server: ${SERVER}"
|
||||||
|
|
||||||
|
# Establish SSH connection to remote server and run commands to check for updates
|
||||||
|
SSH_RESULT=$(ssh username@${SERVER} "sudo apt-get update > /dev/null && apt list --upgradable")
|
||||||
|
|
||||||
|
# If updates are available, inform the user
|
||||||
|
if [ -n "${SSH_RESULT}" ]; then
|
||||||
|
echo "Updates available on server ${SERVER}:"
|
||||||
|
echo "${SSH_RESULT}"
|
||||||
|
echo ""
|
||||||
|
else
|
||||||
|
echo "No updates available on server ${SERVER}"
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# Prompt user to confirm if they want to update the listed servers
|
||||||
|
read -p "Do you want to update the listed servers? (Yes/No): " UPDATE_CONFIRMATION
|
||||||
|
|
||||||
|
# If the user confirms with "Yes", update the servers and store the update status for each server in a list
|
||||||
|
if [[ $UPDATE_CONFIRMATION == "Yes" ]]; then
|
||||||
|
UPDATE_STATUS=()
|
||||||
|
for SERVER in "${SERVER_LIST[@]}"
|
||||||
|
do
|
||||||
|
echo "Updating server: ${SERVER}"
|
||||||
|
|
||||||
|
# Establish SSH connection to remote server and run commands to update
|
||||||
|
ssh username@${SERVER} "sudo apt-get update > /dev/null && sudo apt-get upgrade -y" > /dev/null 2>&1
|
||||||
|
|
||||||
|
# Check the return value of ssh to determine if the update was successful
|
||||||
|
if [[ $? -eq 0 ]]; then
|
||||||
|
UPDATE_STATUS+=("${SERVER}: Update successful")
|
||||||
|
echo "Server ${SERVER} updated."
|
||||||
|
else
|
||||||
|
UPDATE_STATUS+=("${SERVER}: Update failed")
|
||||||
|
echo "Failed to update server ${SERVER}."
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# Summary of update status
|
||||||
|
echo ""
|
||||||
|
echo "Summary of update status:"
|
||||||
|
for STATUS in "${UPDATE_STATUS[@]}"
|
||||||
|
do
|
||||||
|
echo "${STATUS}"
|
||||||
|
done
|
||||||
|
else
|
||||||
|
echo "Updates cancelled."
|
||||||
|
fi
|
Loading…
Reference in New Issue
Block a user