Wiki
在 Ubuntu / Debian 上安装
带 debconf 的 .deb 软件包:激活码、PostgreSQL、systemd 服务、自签名 TLS。
Ubuntu 24.04+、Debian 13+(x86_64)。3 个步骤。
安装
-
下载软件包
cd /tmp && wget -N https://uversion.io/downloads/server/uversion-server_latest_amd64.deb_latest_URL 始终指向最新发布的版本。-N标志告诉wget仅在远程文件更新时才重新下载: 便于更新而不堆积.deb.1、.deb.2等副本。 当.deb位于您的主目录时,cd /tmp可避免一个 无关紧要的 apt 警告("unsandboxed as root")。 -
安装
sudo apt install ./uversion-server_latest_amd64.deb安装程序会提示您输入:
字段 默认值 必填 激活码 · 是 数据目录 /var/lib/uversion可修改 postinst 会联系
licence.uversion.io,用激活码换取您的完整许可证密钥 并写入/etc/uversion/config.toml。 自签名 TLS 证书在首次启动时生成,其 SHA-256 指纹会在安装结束时显示。 参见 TLS 指纹。 -
完成。 初始管理员码会在安装结束时显示在一个彩色框中。 如果错过了:
sudo cat /var/lib/uversion/initial-admin-password
随后您可以继续首次登录。
验证安装
systemctl status uversion-server # active (running)
ss -tlnp | grep 8443 # le service ecoute en HTTPS sur 8443
sudo cat /var/lib/uversion/data/tls/fingerprint # empreinte TLS (a re-afficher)
sudo journalctl -u uversion-server -n 50 # logs recents
卸载
警告: 以下命令会删除您的仓库、历史记录、用户账户和配置。
如果您希望能够恢复,请做一份 PostgreSQL 备份(
pg_dump uversion)
并复制 /var/lib/uversion/。
apt purge 会删除二进制文件、systemd 单元、debconf 应答,以及
(通过 postrm 脚本)/etc/uversion/ 和系统用户
uversion。只有 PostgreSQL 数据库和数据目录 /var/lib/uversion/
(由 postinst 脚本创建)被有意保留,需要手动清理。
完整流程:
# 1. Arrêter le service
sudo systemctl stop uversion-server 2>/dev/null
sudo systemctl disable uversion-server 2>/dev/null
# 2. Purge du paquet
sudo apt purge -y uversion-server
# 3. Forcer debconf à oublier les réponses du paquet
echo PURGE | sudo debconf-communicate uversion-server 2>/dev/null || true
# 4. Base PostgreSQL + role
sudo -u postgres psql -c "DROP DATABASE IF EXISTS uversion;"
sudo -u postgres psql -c "DROP ROLE IF EXISTS uversion;"
# 5. Data dir (chunks + initial-admin-password)
sudo rm -rf /var/lib/uversion
# 6. User système (normalement déjà retiré par 'apt purge' via postrm ; sans effet si absent)
sudo deluser --remove-home uversion 2>/dev/null || sudo userdel uversion 2>/dev/null
验证:
systemctl status uversion-server # "not-found" ou "inactive"
ls /etc/uversion /var/lib/uversion 2>&1 # "No such file"
which uversion-server # (vide)
sudo -u postgres psql -tAc "SELECT 1 FROM pg_database WHERE datname='uversion';" # (vide)
sudo -u postgres psql -tAc "SELECT 1 FROM pg_roles WHERE rolname='uversion';" # (vide)
id uversion # "no such user"