chrisleekr / bash-network-repair-automation

This bash script checks for wireless internet connection and, if it is failing, tries to fix it

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Raspberry Pi (and Linux) Network Repair Automation

This bash script checks for ethernet/wireless internet connection and, if it is failing, tries to fix it.

Prerequisites

  • Download and install requirements:
    sudo apt-get install ifupdown fping -y

How to use

  • Clone (or download) this repo locally:
    git clone https://github.com/chrisleekr/bash-network-repair-automation.git

  • Edit your root user's crontab:
    sudo crontab -e

  • This line will execute the check every minute. Please customize the script path according to the folder where you cloned the repo:
    * * * * * /yourpath/network_check.sh

    */5 * * * * /yourpath/network_check.sh >> /var/log/network_check.log 2>&1

  • If you also want to reboot in case wifi is not working after the fix uncomment the required lines in the code (you'll find a detailed explanation in the script comments):
    nano network_check.sh

  • If you want to perform automatic repair fsck in case of reboot (this is the last possible recovery action) remember to uncomment fsck autorepair editing rcS with the following command:
    sudo nano /etc/default/rcS

Bonus - Push notifications / Email

If you want to add push or email notifications when your network is restored please check my other repo, Simple Notifications

Release History

  • 0.0.3
    • Updated to support different interface
  • 0.0.2
    • Refactored in order to remove tmp files and preserve Raspberry's SD card
  • 0.0.1
    • First working version using tmp files to keep count of the network check retries

Meta

Original Author: Davide Nastri – @pittod.nastri@gmail.com

Distributed under the GPL license. See LICENSE for more information.

Bash Wifi Network Repair Script

Contributing

  1. Fork it (https://github.com/ltpitt/bash-network-repair-automation/fork)
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Commit your changes (git commit -am 'Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request

About

This bash script checks for wireless internet connection and, if it is failing, tries to fix it

License:GNU General Public License v3.0


Languages

Language:Shell 100.0%