Cygwin: Salvation on Windows ====== GA Distribution ====== Cygwin as-distributed provides a rather unique, and sometimes inconvenient, mechanism for installation. A small network-install executable is provided, which consults online repositories for downloads of installation artifacts. The install executable also relies on locally-written meta-data to keep track of the entire installation footprint. ===== Installation ===== ===== Removal ===== * Uninstall all services * List services installed: ''cygrunsrv -L'' \\ // **NOTE:** the ''inetd'' service won't show in the list, even if installed/running, but stopping it and removing it will work regardless // * Stop each service with: ''cygrunsrv --stop service_name'' * Remove each service with: ''cygrunsrv --remove service_name'' * Stop X server, after stopping any cygwin X clients that are running * If using the ''cyglsa'' authentication mechanisms (hopefully not - pain), revert all of that * Remove the ''cygwin'' (or ''cygwin64'') folder tree * Remove all shortcuts installed by the installer * Remove references to the cygwin folder tree from environment variables (most notably, ''PATH'') * Using the ''regedit'' program, remove the registry tree(s) ''Software\Cygwin'' under ''HKEY_LOCAL_MACHINE'' and/or ''HKEY_CURRENT_USER'' ------ ====== Backup Client-Side Agent ====== Cygwin makes a particularly powerful solution for a client-side agent in providing central command-n-control with a centralized backup/archival system. Here are some details around how Albert Lea Data has devised such a solution. ===== Installation ===== * Create an administrative user (we'll refer to as ''$USR'') for the backup system identity to be used, log into Windows as that user * Acquire the ZIP archive to the client machine: [[http://www.albertleadata.org/pub/backup-client-agent.zip]] * Extract the contents of the ZIP archive to a working location * Move the ''cygwin64'' folder extracted from the ZIP archive to suitable destination, we'll refer to as ''$CYGDIR'' // (either ''c:\'' or ''d:\'' recommended) // * Edit the ''.reg'' files extracted from the ZIP archive to ensure path references are corrected * Right-click on each ''.reg'' file and choose ''Merge'' * Right-click on the ''Cygwin.bat'' batch file in the ''$CYGDIR'' folder and choose ''Run as administrator'' * Run these commands:mkpasswd -l > /etc/passwd mkgroup -l > /etc/group chmod 111 /var chmod +t /var ssh-host-config // Make sure to enter ''ntsec'' for CYGWIN value, and specify your new admin user when prompted // * Start the SSH service: ''cygsrvrun -S sshd'' * SSH to the Windows box and log in as new admin user * Create SSH key with: ''ssh-keygen -t rsa'' // ... make sure to specify empty passphrase // * Populate ''authorized_keys'' file with server's SSH key for password-less operation * Populate backup server's host key // (typically just SSH to it and answer ''yes'' at key prompt) // * Ensure home directory has group-write disabled, for example: ''chmod g-w ~'' ===== Packaging & Upgrading ===== This is the recipe for how the client-side agent footprint is bundled, and how to go about upgrading it.