详细 SVN 安装指南
概述
本指南适用于在 UnionTech OS Desktop 20 Pro(基于 Debian 10 Buster,架构 x86_64)云系统上离线安装 SVN(Subversion)。由于云系统无法联网,需从 macOS 下载 .deb
包并传输安装。文档包括验证系统版本、下载、传输、安装、验证和配置的完整步骤。
步骤 1:验证 UOS 系统版本和环境
在开始安装之前,需确认 UOS 系统的版本和架构,以确保下载的 .deb
包兼容。
登录 UOS 云系统
-
使用 SSH 或云管理控制台登录 UOS 系统。
-
命令(如果支持 SSH):
sqlssh user@uos-cloud-ip
检查系统信息
-
查看发行版信息:
csslsb_release -a
-
预期输出:
yamlDistributor ID: Uos Description: UnionTech OS Desktop 20 Pro Release: 20 Codename: eagle
-
-
查看操作系统发布详情:
bashcat /etc/os-release
-
预期输出包含:
iniPRETTY_NAME="UnionTech OS Desktop 20 Pro" NAME="uos" VERSION_ID="20" VERSION="20" ID=uos HOME_URL="https://www.chinauos.com/" BUG_REPORT_URL="http://bbs.chinauos.com/" VERSION_CODENAME=eagle
-
-
检查系统架构:
bashuname -m
- 预期输出:
x86_64
- 预期输出:
-
验证包管理器架构:
go``` dpkg --print-architecture ```
- 预期输出:
amd64
- 预期输出:
-
记录结果:
- 如果输出与预期不符(例如架构为
arm64
)请看清楚依赖包的后缀,我这版本是amd64 的。
- 如果输出与预期不符(例如架构为
步骤 2:从 macOS 下载 .deb
包
准备工作
-
确保 macOS 有浏览器或
curl
命令。 -
创建下载目录:
bashmkdir -p ~/svn_debs cd ~/svn_debs
下载 SVN 及其依赖包
访问清华大学镜像站(mirrors.tuna.tsinghua.edu.cn/debian/pool...),下载以下 .deb
包(基于 Debian 10 Buster,amd64):
-
Subversion 主包
- 包名:
subversion_1.10.4-1+deb10u3_amd64.deb
- 链接:mirrors.tuna.tsinghua.edu.cn/debian/pool...
- 包名:
-
依赖包
libsvn1_1.10.4-1+deb10u3_amd64.deb
libapr1_1.6.5-1_amd64.deb
libaprutil1_1.6.1-4_amd64.deb
libserf-1-1_1.3.9-7_amd64.deb
libutf8proc2_2.4.0-2_amd64.deb
libc6_2.28-10_amd64.deb
(可选,若系统缺失):
下载方法
-
浏览器下载 :访问上述链接,逐一下载
.deb
文件到~/svn_debs
。 -
命令行下载
(推荐):
rubycurl -O https://mirrors.tuna.tsinghua.edu.cn/debian/pool/main/s/subversion/subversion_1.10.4-1+deb10u3_amd64.deb curl -O https://mirrors.tuna.tsinghua.edu.cn/debian/pool/main/s/subversion/libsvn1_1.10.4-1+deb10u3_amd64.deb curl -O https://mirrors.tuna.tsinghua.edu.cn/debian/pool/main/a/apr/libapr1_1.6.5-1_amd64.deb curl -O https://mirrors.tuna.tsinghua.edu.cn/debian/pool/main/a/apr-util/libaprutil1_1.6.1-4_amd64.deb curl -O https://mirrors.tuna.tsinghua.edu.cn/debian/pool/main/s/serf/libserf-1-1_1.3.9-7_amd64.deb curl -O https://mirrors.tuna.tsinghua.edu.cn/debian/pool/main/u/utf8proc/libutf8proc2_2.4.0-2_amd64.deb
验证下载
-
检查文件完整性:
bashls -l ~/svn_debs/
-
确保所有
.deb
文件均已下载。 -
实际安装我只下载了下面这两个,也可以安装成功
- subversion_1.10.4-1+deb10u3_amd64.deb
- libsvn1_1.10.4-1+deb10u3_amd64.deb
-
步骤 3:传输到 UOS 云系统
方法 1:U 盘传输
-
将
bash~/svn_debs
复制到 U 盘:
bashcp -r ~/svn_debs /Volumes/USB/
-
插入 U 盘到 UOS 云系统主机(需支持 USB 直通)。
-
登录 UOS,复制文件:
bashmkdir -p ~/svn_debs cp /media/cmit/USB/*.deb ~/svn_debs/
- 替换
/media/cmit/USB/
为实际挂载路径(用lsblk
查找)。
- 替换
方法 2:SCP 传输
-
运行以下命令:
sqlscp -r ~/svn_debs user@uos-cloud-ip:/home/user/
- 替换
user
和uos-cloud-ip
。
- 替换
-
登录 UOS 确认:
bashls -l ~/svn_debs/
方法 3:云管理界面
-
压缩文件:
bashtar -czf svn_debs.tar.gz ~/svn_debs
-
通过云管理界面上传
svn_debs.tar.gz
。 -
解压:
tar -xzf svn_debs.tar.gz
步骤 4:离线安装 SVN
-
进入工作目录:
bashcd ~/svn_debs
-
安装
.deb
包:
csssudo dpkg -i *.deb
-
修复依赖(若有错误):
sudo apt install -f
- 注意:此命令仅使用本地
.deb
包,不联网。
- 注意:此命令仅使用本地
-
验证安装过程:
-
检查安装日志:
perldpkg -l | grep subversion
- 预期输出包含
subversion
和相关包。
- 预期输出包含
-
步骤 5:验证安装
-
检查 SVN 版本:
csssvn --version
-
预期输出:
makefilesvn, version 1.10.4 (r18500624) 编译于: Apr 7 2022, 01:09:19 ...
-
-
验证功能:
bashsvn help
- 若显示帮助信息,安装成功。
-
检查安装路径:
bashwhich svn
- 预期输出:
/usr/bin/svn
- 预期输出:
步骤 6:配置 SVN
创建本地仓库
-
创建仓库目录:
bashmkdir -p ~/svn_repo
-
初始化仓库:
javascriptsvnadmin create ~/svn_repo/myproject
-
检出仓库:
perlsvn checkout file:///home/cmit/svn_repo/myproject myproject_checkout
- 创建
myproject_checkout
目录。
- 创建
配置用户权限
-
编辑配置文件:
-
打开
svnserve.conf
:
javascriptnano ~/svn_repo/myproject/conf/svnserve.conf
-
修改为:
ini[general] anon-access = none auth-access = write password-db = passwd
-
-
编辑
passwd
javascriptnano ~/svn_repo/myproject/conf/passwd
-
添加用户:
ini[users] cmit = yourpassword
-
-
-
保存并退出(Ctrl + X,Y,Enter)。
启动 SVN 服务
-
运行服务:
bashsvnserve -d -r ~/svn_repo
-d
表示后台,-r
指定根目录。
-
验证连接:
arduinosvn checkout svn://localhost/myproject
- 输入用户名 (
cmit
) 和密码 (yourpassword
)。
- 输入用户名 (
连接远程仓库(可选)
-
检出远程仓库:
arduinosvn checkout https://example.com/svn/myproject
-
需要网络,或使用本地缓存。
故障排查
-
依赖缺失:
- 记录错误包名,返回 macOS 下载。
-
SVN 命令不存在:
- 检查:
ls /usr/bin/svn
- 重新安装或验证
.deb
包。
- 检查:
-
权限问题:
- 确保
sudo
使用正确。
- 确保
-
服务启动失败:
- 检查
svnserve.conf
路径和权限。
- 检查
-
传输失败:
- 确认 U 盘挂载点或 SCP 连接。
附加工具(可选)
-
RabbitVCS(图形化客户端):
-
安装:
csssudo dpkg -i rabbitvcs-nautilus_0.17.1-1_amd64.deb