Overview
Homebrew has become an indispensable tool for macOS administrators, providing a simple way to install, update, and manage command-line tools and utilities. This guide covers the most essential Homebrew formulas that every macOS administrator should have in their toolkit for system management, troubleshooting, and automation.
System Information & Diagnostics
System Utilities
- htop - Interactive process viewer, top replacement
- iotop - Monitor disk I/O usage by processes
- lsof - List open files and the processes that opened them
- netcat - Network utility for reading from and writing to network connections
- nmap - Network discovery and security auditing tool
- wget - Non-interactive network downloader
- curl - Command-line tool for transferring data with URLs
- tree - Display directory tree in graphical format
File System & Storage Tools
Storage Management
- fdisk - Disk partitioning utility
- gparted - Graphical partition editor
- ntfs-3g - NTFS driver for macOS with read/write support
- exfat - exFAT filesystem utilities
- dust - More intuitive version of du (disk usage)
- duf - Disk usage/free utility with better output
- ripgrep - Fast recursive search tool (rg)
- fd-find - Simple, fast user-friendly alternative to find
Networking & Security Tools
Network & Security
- openssl - Cryptography and SSL/TLS toolkit
- wireshark - Network protocol analyzer
- tcpdump - Network packet analyzer
- nmap - Network exploration and security auditing
- hydra - Parallelized login cracker (for ethical testing)
- john - John the Ripper password cracker (for ethical testing)
- macchanger - GNU MAC Address Changer
- arp-scan - ARP scanning and fingerprinting
- masscan - Internet-scale port scanner
- sslscan - SSL/TLS configuration scanner
Development & Programming Tools
Development Essentials
- git - Distributed version control system
- subversion - Apache Subversion (svn) version control
- mercurial - Distributed version control system (hg)
- python@3.12 - Interpreted, interactive, object-oriented programming language
- node - JavaScript runtime built on Chrome's V8 JavaScript engine
- go - Open source programming language to build simple/reliable/efficient software
- rust - Safe, concurrent, practical language
- openjdk - Open-source implementation of the Java Platform
- php - General-purpose scripting language
- ruby - Interpreted, object-oriented programming language
Automation & Scripting Tools
Automation Tools
- autoconf - Automatic configure script builder
- automake - Tool for generating GNU Standards-compliant Makefiles
- libtool - Generic library support script
- pkg-config - Helper tool used when compiling applications and libraries
- cmake - Cross-platform open-source make system
- make - GNU make utility to maintain groups of programs
- bash - GNU Bourne-Again SHell
- zsh - Z shell
- fish - Friendly interactive shell
- expect - Program that talks to other interactive programs
- jq - Command-line JSON processor
- yq - Command-line YAML processor
- xmlstarlet - Set of command-line utilities for parsing XML
System Administration & Management
Sysadmin Essentials
- ansible - Simple IT automation platform
- puppet - Configuration management tool
- chef - Configuration management technology
- saltstack - Infrastructure automation and management system
- munki - Software installation and management tools for macOS
- watermelon - Tool for managing macOS software updates
- joe - Joe's Own Editor (text editor)
- vim - Vi IMproved, enhanced vi editor
- neovim - Hyperextensible vim-based text editor
- emacs - GNU Emacs text editor
- tmux - Terminal multiplexer
- screen - Terminal window manager
- byobu - Text-based window manager and terminal multiplexer
Installation & Usage Tips
Best Practices
- Keep Homebrew updated:
brew update && brew upgrade - Clean up old versions:
brew cleanup - Check for issues:
brew doctor - List installed formulas:
brew list - Search for formulas:
brew search [formula] - Get formula information:
brew info [formula] - Create a Brewfile:
brew bundle dump(for backup/restore) - Install from Brewfile:
brew bundle install
Recommended Brewfile for Administrators
Here's a sample Brewfile containing essential tools for macOS administration:
# Essentials
brew "git"
brew "wget"
brew "curl"
brew "htop"
brew "iotop"
brew "lsof"
brew "netcat"
brew "nmap"
brew "tree"
# File & Storage
brew "fdisk"
brew "gparted"
brew "ntfs-3g"
brew "dust"
brew "duf"
brew "ripgrep"
brew "fd-find"
# Network & Security
brew "openssl"
brew "wireshark"
brew "tcpdump"
brew "hydra"
brew "john"
brew "macchanger"
brew "arp-scan"
brew "masscan"
brew "sslscan"
# Development
brew "python@3.12"
brew "node"
brew "go"
brew "rust"
brew "openjdk"
brew "php"
brew "ruby"
# Automation
brew "autoconf"
brew "automake"
brew "libtool"
brew "pkg-config"
brew "cmake"
brew "make"
brew "bash"
brew "zsh"
brew "fish"
brew "expect"
brew "jq"
brew "yq"
brew "xmlstarlet"
# System Administration
brew "ansible"
brew "puppet"
brew "chef"
brew "saltstack"
brew "munki"
brew "watermelon"
brew "joe"
brew "vim"
brew "neovim"
brew "emacs"
brew "tmux"
brew "screen"
brew "byobu"
Admin Tip: Consider creating a standardized Brewfile for your organization and distributing it via your MDM solution or configuration management system to ensure all admin workstations have the essential tools.