安装
Bayesian SSH 提供了适用于 x86_64 (amd64) 与 aarch64 (arm64) 的预编译 Linux 软件包及二进制文件、自动化安装脚本、Snap 软件包以及源码编译支持。
单行安装脚本
Section titled “单行安装脚本”安装脚本会自动检测系统架构并下载对应的最新预编译发布版本,校验校验和后将 bayesian-ssh 及 bssh 别名安装至 /usr/local/bin。
curl -fsSL https://bssh.abdoufermat.dev/install.sh | bash默认情况下,该脚本会同时安装命令行工具与桌面应用,并配置应用程序菜单入口与桌面图标。
安装脚本选项
Section titled “安装脚本选项”可以通过 bash -s -- <选项> 为安装脚本传递参数:
- 仅安装命令行工具(适用于服务器与无图形界面环境):
curl -fsSL https://bssh.abdoufermat.dev/install.sh | bash -s -- --no-gui
- 交互式安装模式(提示选择预编译版本或源码编译,并可选择是否包含桌面应用):
curl -fsSL https://bssh.abdoufermat.dev/install.sh | bash -s -- --interactive
桌面应用运行时依赖
Section titled “桌面应用运行时依赖”桌面应用依赖 WebKitGTK 4.1。如果是在精简版桌面环境中运行图形界面,请安装所需的运行时依赖库:
sudo apt install libwebkit2gtk-4.1-0 libayatana-appindicator3-1sudo dnf install webkit2gtk4.1 libappindicator-gtk3Linux 软件包
Section titled “Linux 软件包”每个 GitHub Releases 发布版本 都会提供集成了命令行工具与桌面应用的统一 .deb 与 .rpm 软件包,支持 x86_64 和 aarch64 架构。
sudo apt install ./bayesian-ssh_2.10.0_amd64.debsudo dnf install ./bayesian-ssh-2.10.0-1.x86_64.rpmSnap 软件包
Section titled “Snap 软件包”通过 Snap Store 安装 bayesian-ssh:
sudo snap install bayesian-ssh由于 Snap 运行在严格限制(strict confinement)模式下,安装后需手动授予读取 SSH 配置与私钥的权限:
sudo snap connect bayesian-ssh:ssh-keys你也可以选择启用简短的 bssh 命令别名:
sudo snap alias bayesian-ssh bssh严格限制模式带来以下环境约束:
~/.ssh以只读方式挂载。Snap 无法更新known_hosts,也无法向~/.ssh写入新生成的密钥。- 配置文件与数据库保存在
~/snap/bayesian-ssh/current/.config/bayesian-ssh/,与系统的原生安装相互隔离。 - Snap 内置了独立的
ssh、kinit与klist工具。 - 主机 Kerberos 凭据:若需复用主机上通过
KRB5CCNAME=FILE:/tmp/krb5cc_*创建的票据缓存,连接票据插件接口:现代 Fedora、RHEL 和 SSSD 默认使用的 KCM 与 KEYRING 票据缓存在严格限制下无法被访问。在此类系统上建议使用原生软件包或安装脚本。sudo snap connect bayesian-ssh:kerberos-tickets - Snap 版本中禁用了应用内置更新器,所有更新均由 Snap Store 统一分发。
从源码构建需要 Git 以及稳定版 Rust 工具链(cargo)。如需构建桌面应用,还需安装 Make、Node.js(含 npm)以及 GTK 3 和 WebKitGTK 4.1 的开发头文件。
-
克隆代码仓库:
git clone https://github.com/abdoufermat5/bayesian-ssh.gitcd bayesian-ssh -
编译并安装命令行工具与桌面应用:
make release && make install
如果只需要构建无图形界面依赖的命令行工具:
cargo build --release --locked --package bayesian-sshsudo install -m 755 target/release/bayesian-ssh /usr/local/bin/bayesian-sshsudo ln -sf /usr/local/bin/bayesian-ssh /usr/local/bin/bsshShell 补全
Section titled “Shell 补全”使用 bssh completions <SHELL> 生成对应的命令行自动补全脚本:
bssh completions bash > ~/.local/share/bash-completion/completions/bsshbssh completions zsh > ~/.zfunc/_bsshbssh completions fish > ~/.config/fish/completions/bssh.fish支持的 Shell:bash、elvish、fish、powershell 与 zsh。生成补全脚本后,请重启终端或重新加载 Shell 配置文件。
更新步骤取决于最初的安装方式:
- 桌面应用内置更新:GitHub Releases 提供的独立
.AppImage以及bayesian-ssh-desktop的.deb/.rpm软件包支持在 Settings → Updates 中自动检查更新并在原地安装。应用更新时会关闭当前打开的会话。 - Snap:更新由 snapd 自动推送,也可以执行
sudo snap refresh bayesian-ssh手动更新。 - 安装脚本与系统软件包:重新运行单行安装脚本,或安装新版
.deb/.rpm软件包,亦或拉取最新仓库源码后重新执行make release && make install。
验证发布版本
Section titled “验证发布版本”所有发布文件与校验和均使用 Sigstore 无密钥工作流签名。GitHub 还会为每个发布资源生成可验证的构建来源证明(attestations)。
有关使用 cosign 验证 SHA256SUMS 以及使用 gh attestation verify 校验构建证明的详细步骤,请参阅安全参考。
install.sh 脚本本身不提供专门的卸载参数。要清理安装脚本写入的二进制文件及资源:
sudo rm -f /usr/local/bin/bayesian-ssh /usr/local/bin/bssh /usr/local/bin/bayesian-ssh-desktop /usr/local/bin/bayesian-ssh-guisudo rm -f /usr/share/applications/bayesian-ssh-desktop.desktopsudo rm -f /usr/share/icons/hicolor/128x128/apps/bayesian-ssh-desktop.png如果最初是通过 Makefile 从源码安装的,执行:
make uninstall如果是通过系统的包管理器安装的:
sudo apt remove bayesian-sshsudo dnf remove bayesian-sshsudo snap remove bayesian-ssh