Skip to content

bfritzinger/Misc_Scripts

Repository files navigation

Misc Scripts

A collection of utility scripts for various system administration and automation tasks.

Scripts

Script Description Documentation
Cluster SSH Key Setup Automates SSH key distribution across a cluster of nodes README
Cluster System Update Runs apt update/upgrade in parallel across cluster nodes README
Docker Image Update Automates the process of updating a running Docker container README
Cloudflare IP Logger A reverse proxy that logs visitor IPs from Cloudflare Tunnel traffic README
Ollama Model Updater Checks for updates to available models on ollama.ai and installs them automatically README
Git Update A bash script to interactively manage Git repositories across GitHub and GitLab with clone, fetch, and push operations—individually or in batch. README
Power & Temp Monitor Monitor temperature, voltage, power, and throttling status on Raspberry Pi, Nvidia Jetson, and x86 systems using Prometheus and Alertmanager README
Alias Distribute Distributes bash aliases to all nodes listed in /etc/hosts README
Git Star Repo A Python script that fetches all your GitHub starred repositories and generates a summary report with statistics and a full listing. README
Dot Files Personal configuration files for setting up a new Linux system. README
Hung Connections A utility for detecting and terminating hung network connections on Unix-based systems. Available in both Python and Bash README
Health Check A single-file bash script that performs a comprehensive system health check and simultaneously exports every measured value to a CSV (for trend analysis) and a JSON snapshot (for tooling integration). Run it on a schedule and pipe the CSV into pandas, Grafana, Excel, or gnuplot to watch metrics evolve over time README
Chowned Thottled A performance-conscious bash script for recursively changing file ownership across multiple directories on high-throughput systems. Designed to run safely alongside active workloads by controlling CPU and I/O priority, batching filesystem operations to avoid argument list limits, and skipping files that are already correctly owned README
Linux Troubleshooting A comprehensive, interactive shell script for diagnosing and troubleshooting x86_64 Linux servers. Covers 15 diagnostic modules ranging from hardware inventory and network connection analysis to Kubernetes cluster health and security auditing — all from a single script with no external dependencies beyond standard Linux tooling README
File Retention (Age Off) A config-driven bash script for age-based file cleanup across multiple directories. Each directory can have its own retention policy, glob pattern, and recursion setting — all managed from a single config file without touching the script itself README
Dir Sync A lightweight Python script that compares two directories and copies only the changed or new files (deltas) from source to destination. No external dependencies — stdlib only README

Quick Start

Each script lives in its own directory with dedicated documentation. Click the README link above for usage instructions.

# Clone the repo
git clone https://github.com/bfritzinger/Misc_Scripts.git
cd Misc_Scripts

# Navigate to the script you need
cd cluster-ssh-key-setup

# Review the README, then run
./cluster_sshKey_setup.sh

Repository Structure

Misc_Scripts/
├── README.md
├── LICENSE
├── _template/
│   └── README.md
├── cluster-ssh-key-setup/
│   ├── README.md
│   └── cluster-sshKey-setup.sh
└── cluster-system-update/
    ├── README.md
    └── update-sys.sh
└── docker-container-update/
    ├── README.md
    └── docker-container-update.sh
└── cloudflare-ip-logger/
    ├── cmd
        ├── logparser
            ├── main.go
    ├── README.md
    └── cd-log-parser.service
    └── docker-compose.cloudflared.yml
    └── docker-compose.yml
    └── Dokerfile
    └── go.mod
    └── main.go
    └── proxy-config.json.example
    └── run-with-logging.sh
└── ollama-updater/
    ├── README.md
    └── ollama-updater.py
└── git-update/
    ├── README.md
    └── git-update.sh
└── pwr-tmp-monitor/
    ├── README.md
    └── setup.sh
    └── x86_metrics.sh
    └── jetson_metrics.sh
    └── pi_metrics.sh
    └── deploy_to_nodes.sh
    └── alertmananger.yml
    └── pi_alerts.yml
    └── grafana-dashboard.json
    └── NODE_EXPORTER_SETUP.md
└── alias-dist/
    ├── README.md
    └── alias-dist.sh
└── github-star-repos/
    ├── README.md
    └── github-stars.sh
└── dotfiles/
    ├── bootstrap.sh          
    ├── README.md
    ├── .bashrc
    ├── .bash_aliases
    ├── .bash_profile
    ├── .vimrc
    ├── .tmux.conf
    ├── .gitconfig
    ├── .gitignore_global
    ├── .ssh/
    │   └── config           
    └── .config/
        └── ...
└── HUng Connections/
    ├── README.md
    └── hung_connection_killer.sh
    └── hung_connection_killer.py
└── Health Check/
    ├── README.md
    └── system_health_check.sh
    └── metrics-dashboard.html
└── chown_throttled
    ├── README.md
    └── chown_throttled.sh
└── LinuxTroubleshooting
    ├── README.md
    └── linux_troubleshoot.sh
└── File_retention
    ├── README.md
    └── file_retention.sh
    └── file_retention.conf
└── Dir Sync
    ├── README.md
    └── dirsync.py

    


Adding New Scripts

  1. Copy the _template directory and rename it:

    cp -r _template my-new-script
  2. Add your script and update the README inside the new directory

  3. Update this main README to include your new script in the table above

License

This project is licensed under the MIT License - see the LICENSE file for details.

Author

Brian Fritzinger

About

A collection of utility scripts and tools for various system administration, automation tasks, and monitoring.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors