You can install only lssh, or the full tool suite.
Prebuilt binaries are available on GitHub Releases.
VERSION=0.9.0
curl -fL -o /tmp/lssh.tar.gz \
"https://github.com/blacknon/lssh/releases/download/v${VERSION}/lssh_${VERSION}_linux_amd64.tar.gz"
sudo tar -xzf /tmp/lssh.tar.gz -C /tmp
sudo install -m 0755 /tmp/lssh_${VERSION}_linux_amd64/bin/* /usr/local/bin/VERSION=0.9.0
curl -fL -o /tmp/lssh.deb \
"https://github.com/blacknon/lssh/releases/download/v${VERSION}/lssh_${VERSION}_amd64.deb"
sudo apt install /tmp/lssh.debVERSION=0.9.0
curl -fL -o /tmp/lssh.rpm \
"https://github.com/blacknon/lssh/releases/download/v${VERSION}/lssh-${VERSION}-1.x86_64.rpm"
sudo dnf install -y /tmp/lssh.rpmlssh provides both a full suite package and smaller split packages.
| Package | Includes | Best for |
|---|---|---|
lssh_* |
lssh, lscp, lsftp, lssync, lsdiff, lsshfs, lsmon, lsshell, lsmux, lspipe |
Full installation of the entire tool suite |
lssh-core_* |
lssh |
SSH access and forwarding only |
lssh-transfer_* |
lscp, lsftp, lssync, lsdiff, lsshfs |
File transfer, diff, and mount workflows only |
lssh-monitor_* |
lsmon |
Monitoring multiple remote hosts |
lssh-sysadmin_* |
lsshell, lsmux, lspipe |
Parallel shell and multi-host operations |
Install commands directly with Go:
go install github.com/blacknon/lssh/cmd/lssh@latest
go install github.com/blacknon/lssh/cmd/lscp@latest
go install github.com/blacknon/lssh/cmd/lsftp@latest
go install github.com/blacknon/lssh/cmd/lssync@latest
go install github.com/blacknon/lssh/cmd/lsdiff@latest
go install github.com/blacknon/lssh/cmd/lsshfs@latest
go install github.com/blacknon/lssh/cmd/lsshell@latest
go install github.com/blacknon/lssh/cmd/lsmon@latest
go install github.com/blacknon/lssh/cmd/lsmux@latest
go install github.com/blacknon/lssh/cmd/lspipe@latestbrew install blacknon/lssh/lssh- Build from source with Go
1.25.1or newer, matching go.mod. lsshfsuses a different local mount backend on each OS:- Linux: FUSE support and a working
fusermount/FUSE setup are required. - macOS:
mount_nfsis used locally, so the client must allow local NFS mounts. - Windows:
lsshfsis not supported in0.9.0. - The repository intentionally replaces
github.com/kevinburke/ssh_configwith the vendored fork at./internal/ssh_configso the generated config and parser behavior stay in sync withlssh.
Install completion files for bash, zsh, and fish:
make install-completions-userTo install under /usr/local instead:
sudo make install-completionsYou can also install just one shell:
make install-completions-user COMPLETION_SHELL=zsh
make install-completions-user COMPLETION_SHELL=bash
make install-completions-user COMPLETION_SHELL=fishIf you use mise, the same flow is available as:
mise run completion_install
mise run completion_install_systemFor user-level zsh installs, add this to ~/.zshrc if needed:
fpath=($HOME/.zfunc $fpath)
autoload -Uz compinit && compinitgit clone https://github.com/blacknon/lssh.git
cd lssh
make build
sudo make install