Nu: Server Connection Manager

A lightweight, POSIX-compatible tool that simplifies frequent remote server interactions by creating executable shortcuts for SSH, SSHFS mounting, clean unmounting, and remote command pipelines.

Advertisement

⚡ Interactive Command & Script Generator

Configure your remote server to generate your custom Nu command and helper scripts.

1. Run this Nu command to create your shortcuts:
Nu Saruman deploy 65.67.51.189 22 /
SSH Connection:
Saruman
Mount SSHFS:
MountSaruman
Unmount:
UnmountSaruman

🌟 Key Capabilities

⚡ Custom SSH Shortcuts

Instantly create executable commands in ~/bin/ using memorable names like Saruman with agent (-A) and X11 (-X) forwarding enabled.

📂 Instant SSHFS Mounting

Generates a dedicated Mount<Server> script to mount remote filesystem roots locally into ~/mnt/<Server> with zero manual configuration.

🛑 Clean Unmounting Helper

Generates an Unmount<Server> script that safely detaches FUSE mountpoints using fusermount3, fusermount, or umount.

🔄 Stream & Command Chaining

Execute remote commands or stream data across SSH tunnels with piped tools like tar,rsync, and standard output redirects seamlessly.

🎛️ Built-in Subcommands

Quickly test host connectivity or mount states directly via <Server> ping,<Server> mount, and <Server> unmount.

🛡️ Defensive Scripting

Built-in guards prevent accidental overwrites of existing user scripts unless --force is passed.

🚀 One-Liner Quick Installation

You can bootstrap Nu directly into your environment using curl:

curl -sL https://raw.githubusercontent.com/joshuacox/Nu/refs/heads/main/bootstrapNu.sh | bash

Building from Source

Ensure autotools and dependencies are installed, then run:

# Clone the repository
git clone https://github.com/joshuacox/Nu.git
cd Nu

# Run the automated build & install
./build.sh

Make sure ~/bin is added to your shell's $PATH:

export PATH="$HOME/bin:$PATH"

📖 Comprehensive Usage Guide

1. Registering a Remote Server

Syntax: Nu [-f|--force] SERVERNAME USERNAME IPADDRESS|HOSTNAME [PORT] [REMOTE_PATH]

Nu Saruman root 65.67.51.189 2222 /

When executed, Nu automatically creates:

  • A dedicated mount directory: ~/mnt/Saruman
  • An SSH shortcut script: ~/bin/Saruman
  • An SSHFS mount shortcut: ~/bin/MountSaruman
  • A safe unmount shortcut: ~/bin/UnmountSaruman

2. Connecting via SSH

Simply call the server alias directly from anywhere in your terminal:

Saruman

3. Mounting & Unmounting the Remote Filesystem

Mount the remote directory to your local ~/mnt/Saruman directory:

MountSaruman # or via subcommand: Saruman mount

When finished, unmount safely:

UnmountSaruman # or via subcommand: Saruman unmount

4. Advanced Remote Piping & Workflows

Execute remote commands or stream archives directly over the network:

# Execute a command remotely and save output locally
Saruman 'uname -a' > helloworld

# Compress and stream a local directory to extract remotely
tar zcf - helloworld | Saruman 'zxvf -'

# Stream and extract an archive from the remote server locally
Saruman 'tar jcf - helloworld' | tar zxvf -

# Ping remote host quickly
Saruman ping
Advertisement

🛡️ AdSense & Publisher Verification

This website is configured for Google AdSense monetization. Publisher authorization is verified via the official ads.txt file:

google.com, pub-8973108060277483, DIRECT, f08c47fec0942fa0