The page provides useful scripts for modifying host names on macOS and removing USB blocking on Windows, emphasizing the importance of checking their outputs before implementation, as support is not available for these scripts.
All the scripts below are provided on an as-is basis. Please check their output and effects before rolling them out. We are not available to support our customers on these scripts.
macOS
Modifying all host names
#!/bin/bash# This script changes the hostname on macOS by updating:# - ComputerName: The user-friendly name seen in Sharing preferences.# - LocalHostName: The Bonjour name used on the local network (must be sanitized).# - HostName: The system’s POSIX name.# - NetBIOSName: Used for SMB file sharing.## Usage: sudo ./change_hostname.sh NewHostname# Check if the new hostname is providedif [ "$#" -ne 1 ]; then echo "Usage: sudo $0 <new_hostname>" exit 1fiNEW_HOSTNAME="$1"# Sanitize the new hostname for LocalHostName (Bonjour) requirements:# - Convert to lowercase, remove invalid characters (keeping only letters, numbers, and hyphens).SANITIZED_HOSTNAME=$(echo "$NEW_HOSTNAME" | tr '[:upper:]' '[:lower:]' | tr -cd '[:alnum:]-')echo "Changing hostname to: $NEW_HOSTNAME"echo "Using sanitized LocalHostName: $SANITIZED_HOSTNAME"# Change the ComputerName (visible in Sharing settings)sudo scutil --set ComputerName "$NEW_HOSTNAME"# Change the LocalHostName (used for Bonjour)sudo scutil --set LocalHostName "$SANITIZED_HOSTNAME"# Change the HostName (the underlying POSIX hostname)sudo scutil --set HostName "$NEW_HOSTNAME"# Optionally, change the NetBIOS name for SMB file sharingsudo defaults write /Library/Preferences/SystemConfiguration/com.apple.smb.server NetBIOSName -string "$NEW_HOSTNAME"echo "Hostname successfully updated!"echo "A reboot might be required for all changes to fully take effect."Windows
Remove USB Blocking
# Run as AdminWrite-Host "Removing RemovableStorage Blocking..." -ForegroundColor Cyan# CSP Paths$paths = @( "HKLM:\SOFTWARE\Microsoft\PolicyManager\current\device\ADMX_RemovableStorage", "HKLM:\SOFTWARE\Microsoft\PolicyManager\current\user\ADMX_RemovableStorage")foreach ($path in $paths) { if (Test-Path $path) { Remove-Item -Path $path -Recurse -Force Write-Host "Key removed : $path" -ForegroundColor Green } else { Write-Host "Key not found : $path" -ForegroundColor Yellow }}# Refresh policiesgpupdate /forceWrite-Host "✅ USB should now be usable" -ForegroundColor Green