# ITenv Tools - Tool Documentation This directory contains various utility scripts for server management, disk operations, and git repository management. Each tool is designed for specific infrastructure tasks. ## Tools Overview ### 1. erase.sh **Purpose**: Secure disk erasure utility for SSD drives **Usage**: ```bash sudo ./erase.sh ``` **⚠️ WARNING**: This tool permanently destroys all data on selected disks. Use with extreme caution! ### 2. git_checkout.sh **Purpose**: Git repository management for itenv projects **What it does**: - Verifies SSH agent has loaded keys for git authentication - Checks and configures git user.name and user.email if not set - Creates the standard directory structure: `/root/code/git.threefold.info/ourworld_web` - Clones or updates two repositories: - `itenv_web2` - Main web application repository - `itenv_tools` - Tools and utilities repository **Prerequisites**: - SSH key must be loaded in ssh-agent - Git must be installed - Access to git.threefold.info repositories **Usage**: ```bash ./git_checkout.sh ``` ### 3. git_push.sh **Purpose**: Quick git commit and push utility ```bash ./git_push.sh ``` **Note**: This is a simple automation script for quick commits. For production use, consider more descriptive commit messages. ### 4. ubuntu_install.sh **Purpose**: Automated Ubuntu 24.04 installation for Hetzner dedicated servers > only do this on rescue system for hetzner servers **What it does**: - Detects available NVMe drives (requires minimum 2 drives) - Creates Hetzner installimage configuration for Ubuntu 24.04 - Sets up btrfs filesystem with RAID 1 across two drives - Configures btrfs subvolumes for better organization: - `@` (root filesystem) - `@home` (/home) - `@var` (/var) - `@var/log` (/var/log) - `@tmp` (/tmp) - `@opt` (/opt) - `@srv` (/srv) - `@snapshots` (/.snapshots) - Creates post-installation scripts for: - btrfs optimization and maintenance - Automatic snapshot management with snapper - RAID monitoring utilities **Features**: - RAID 1 for data redundancy - btrfs compression (zstd:3) for space efficiency - Automated weekly balance and scrub operations - Snapshot management with configurable retention **Prerequisites**: - Must be run from Hetzner rescue system - Requires at least 2 NVMe drives - installimage must be available **Usage**: ```bash ./ubuntu_install.sh ``` **⚠️ WARNING**: This script will completely wipe the selected drives and install a fresh Ubuntu system.