This is a collection of miscellaneous scripts that I've written or modified for my use. Hopefully they may be of some use to others. When I get a chance, I'll try and update this readme with descriptions of all of the scripts.
Unless otherwise noted, these are distributed under the terms of the LICENSE file.
- apache_log_verify_site_move.py - Python script that parses Apache HTTPD access logs, finds all unique URLs, and compares the current HTTP response code to that of another server. Useful when moving a site.
- bigipcookie.pl - Perl script to de/encode F5 BigIp persistence cookies.
- check_url_list.py - Script to check a list of URLs (passed on stdin) for response code, and for response code of the final path in a series of redirects.
- cmd-wrapper.c - C wrapper for a setuid/gid command, to ensure that ONLY a certain command and args can be run.
- collectRsyslogInfo.php - Script to collect information on a crashed/hung rsyslogd process, and log it all somewhere.
- dot_find_cycles.py - uses Pydot and NetworkX to find cycles in a dot file directed graph (i.e. the graph output of Puppet)
- dumpFirefoxSession.php - Script to dump all URLs from a Firefox3 sessionstore.js file as text or HTML
- dumpMysqlGrants.sh - Script to dump all grants from a MySQL server, for input into another.
- dump_skype_logs.py - Script to dump all Skype logs from a main.db file to HTML
- find_outdated_puppets.py - Script to look at a Puppet Dashboard unhidden-nodes.csv and extract the latest report time for each node, optionally, list nodes with runtime BEFORE a string.
- git_repo_diff.py - uses GitPython to compare 2 git repo clones and report on branches that only exist in one, or have different head commits in the two repos
- htmldata.py - Perl library to manipulate HTML or XHTML documents, required by mw2html-auth
- increment_zone_serial - This script updates/increments the bind zone file serial number in a file specified as the first argument
- ismerged - shell script that takes a git branch name, and tells if it is merged into master or not
- js2phpdoc.php - script to take comments and function prototypes from JS files and make them PHP-ish to be parsed by phpdoc
- kickRsyslog.php - script to restart rsyslog if it appears to have stopped logging
- libvirt_csv.py - Use libvirt python bindings to print CSV lists of dom0_host,domU_name,ID,state,UUID for all qemu+kvm VMs running on libvirt hosts passed in as arguments
- LICENSE - License for these files - GPLv3 with additional provisions
- linode_ddns_update.sh - simple script to use Linode's HTTP API to update Linode DNS for a dynamic IP
- linodeDnsToCsv.php - Script to pull DNS information for all of your Linode hosted zones, output as CSV
- linode_list_records.py - Simple script to list all records in Linode DNS via API, along with their type, DomainID and ResourceID
- list_github_org_repos.py - List information about an org's repositories using PyGithub (GitHub API library)
- mw2html-auth - Produce an HTML version (standalone backup/export) of a MediaWiki site that's behind authentication
- nagios_log_problem_interval.pl - Chart intervals between problem and recovery from Nagios/Icinga logs
- nmap-xml-to-table.php - Script to transform multiple nmap XML output files (presumably of the same host/port range with different scan options) into a HTML table
- print-cmd.sh - Simple script to log environment variables and original command for forced ssh commands
- print-cmd-wrapper.c - C wrapper like cmd-wrapper.c, but just echoes back the command that was called
- README.VCS - Note on my CVS/SVN to github migration
- rebuild_srpm.sh - Script to rebuild a SRPM 1:1, useful when you want to build a RHEL/CentOS 6 SRPM on a RHEL/CentOS 5 system that doesn't support newer compression (cpio: MD5 sum mismatch)
- rss_to_mail_config.py - sample configuration file for rss_to_mail.py
- rss_to_mail.py - Dead simple python script to find new entries in an RSS feed, and email listing of new entries matching a regex to you. Intended to be run via cron.
- rsync-wrapper.c - setuid/gid wrapper around rsync. Useful to allow members of a specified group to do rsync backups as root over SSH.
- rsyslogIsHung.php - script to investigate rsyslog hangs, write output, and send mail
- rsyslogPstats.php - script to parse rsyslog impstats output and generate a simple report
- scrape_domain.py - Python script using requests and BeautifulSoup4 to request all URLs/links/images/CSS/feeds/etc. found on a domain.
- show_dhcp_fixed_ACKs.pl - script to show the most recent DHCP ACKs per IP address for ISC DHCPd, from a log file. Originally written for Vyatta routers that just show the dynamic leases
- simpleLCDproc.py - Simple LCDproc replacement in Python. Uses LCDd server.
- syslogAgeChecker.php - script to check timestamp of last syslog line in some files, and send mail if >= X seconds
- syslogDatesGraph.php - script to help visualize time distribution of syslog messages. This is the graph host part.
- syslogDatesToArray.php - script to help visualize time distribution of syslog messages. This is the log host part.
- syslogDatesToArray-sample.ser - example serialized data for syslogDatesGraph.php
- test_libvirt.py - some tests using the libvirt python bindings, for qemu+kvm hosts accessed over SSH
- timeout - shell script to execute a command with a timeout
- ubiquiti-mac-acl/ - PHP script and MySQL schema to manage the MAC ACL on Ubiquiti AirOS2 devices.
- VipToInternalHosts.pl - script to take F5 BigIp VIP address and display the members of the pool it is served by
- wiki-to-deckjs.py - simple, awful script to change markdown-like (very restricted markup set) markup to deck.js-ready html
- wordpress_daily_post.php - Script to publish the oldest post with a given status, if no other post has been published in 24 hours. Intended to be run via cron on weekdays