# 使用 Homebrew, apt, MacPorts 安装 dsh

查看 dsh 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

## 安装

```sh
sudo av install brew:dsh
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install dsh
```

  证据: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install dsh
```

  证据: MacPorts ports tree: net/dsh/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- Debian apt (92%):

```sh
sudo apt install dsh
```

  证据: Debian stable package indexes: dsh from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

## 软件包事实

- **软件包键:** brew:dsh
- **软件包管理器:** Homebrew
- **版本:** 0.25.10
- **来源摘要:** Dancer's shell, or distributed shell
- **主页:** <https://www.netfort.gr.jp/~dancer/software/dsh.html.en>
- **已生成:** 2026-08-03T19:37:03+00:00

## 可执行文件

- dsh (别名)

## 安装行为

- Bottle: 不可用

## 版本和新鲜度

- 页面生成时间: 2026-08-03
- 管理器版本: 0.25.10
## 项目历史与用法

dsh, Dancer's shell, is Junichi Uekawa's C implementation of a distributed shell wrapper for running rsh, remsh, or ssh commands over many Unix hosts.

### 项目历史

The official page says dsh grew from the author's own Debian cluster administration needs: repeatedly writing ad hoc scripts for many hosts was inefficient, so a personal tool was polished into a public program. The page's HTML creation stamp is 2001-08-31, and its public download index carries a long 0.22 through 0.25 release stream.

By the 0.24.2 note dated 2003-08-26, the project had already dealt with portability and security-advisory review around its asprintf implementation. Later releases moved into the 0.25 series, with Homebrew packaging 0.25.10 from the upstream download area.

### 采用历史

dsh's adoption is old-school Unix administration adoption: package-manager availability, config files in /etc and ~/.dsh, and use on clusters where the same command must run across many hosts. The official page says it was installed on many clusters and was also used by the related dmachinemon system.

Homebrew analytics showed only 71 installs over the preceding 365 days during this batch, which fits a mature, niche sysadmin utility rather than an actively trendy tool.

### 使用方式

The canonical usage is to put host lists or groups in text config files and run commands such as `dsh -a -c -- uname -a` or `dsh -g group -c -- command`. The tool also supports limiting the number of simultaneous connections, hierarchical invocation, and NIS netgroups.

### 为什么软件包爱好者会关心

dsh is package-nerd significant because it captures a pre-cloud cluster-management pattern: small C utilities, text host lists, rsh/ssh wrappers, and distro packaging did the work that later orchestration systems absorbed. It is also an example of a name collision family: several unrelated tools called dsh existed in Perl, C, Python, and AIX-compatible forms.

### 时间线

- 2001-08-31: The official HTML page records its creation date.
- 2002: The official references section links Japanese research reports evaluating dsh.
- 2003-08-10: A Bugtraq security advisory about dsh was posted; the maintainer later explained why the checked implementation was not affected on common platforms.
- 2003-08-26: The official page documents the 0.24.2 security-review note.
- 0.25.10: The upstream download index and Homebrew formula identify 0.25.10 as the packaged stable release.

### Related projects

- dmachinemon is named by the official page as a system that used dsh extensively.
- The official related-work list points to other distributed-shell projects, including Perl dsh, another C dsh, and pydsh.
- ssh, rsh, and remsh are the remote-shell mechanisms dsh wraps.

### 来源

- <https://www.netfort.gr.jp/~dancer/software/dsh.html.en>
- <https://www.netfort.gr.jp/~dancer/software/downloads/>
- <https://formulae.brew.sh/formula/dsh>


## 安全说明

generalized runtime or code generation signal.

- **Geiger 风险:** yellow / 中
- generalized runtime or code generation signal


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: /etc/dsh/dsh.conf, ~/.dsh/dsh.conf, /etc/dsh/machines.list, ~/.dsh/machines.list, /etc/dsh/group/groupname, ~/.dsh/group/groupname
## 其他软件包管理器记录

- Debian apt - dsh - 0.25.10-2: normalized package name match | Debian stable package indexes: dsh from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | dancer's shell, or distributed shell | https://www.netfort.gr.jp/~dancer/software/dsh.html
- Ubuntu apt - dsh - 0.25.10-1.6build1: normalized package name match | Ubuntu 24.04 LTS package indexes: dsh from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | dancer's shell, or distributed shell | http://www.netfort.gr.jp/~dancer/software/dsh.html
- MacPorts - dsh: normalized package name match | MacPorts ports tree: net/dsh/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/dsh.yml](https://github.com/mxcl/pkgdb/blob/main/combined/dsh.yml)


## 来源

- pkg.so package database
- Geiger risk classifier
- curated configuration and credential file locations
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
