• 首页
  • IT技术
  • 生活
  • ISSUE
  • SVN
Bernie Yu

复刻生活

在群晖Nas上搭建Git服务器

Posted on 2015年6月26日
  1. 开启DSM的SSH远程功能
    在“控制面板” →“终端机和SNMP”→“启动SSH功能”
    20150626141436
  2. 建立Git用户
    在“控制面板” →“用户账号”中添加Git专用用户。此处设置为git,用户组为users。权限为禁止访问任何共享文件夹
    20150626141852
  3. 安装Git
    进入“套件中心”,找到Git Server,安装
    20150626142125安装完成后,打开Git设置界面,将之前添加的git用户设置为允许访问20150626142342
  4. 创建Git库文件夹并设置权限
    以root用户SSH登录到DSM,在目标盘下创建git库目录

    cd /volume1
    mkdir git

    创建测试项目

    cd git
    mkdir test

    初始化git

    cd test
    git init --bare

    设置目录权限

    chown -R git:users /volume1/git
  5. 客户端:
    Windows:
    下载并安装  http://msysgit.github.io/
    Linux:

    yum install git-core

    或

    apt-get install git-core

    安装完成后,进入git-bash,测试

    git clone ssh://git@192.168.1.5/volume1/git/test

    测试添加文件并提交到本地库

    echo "t1.txt" >t1.txt
    
    git add t1.txt
    
    git commit -m "add t1.txt"

    推送到远程库

    git push origin master
  6. 设置SSH Key
    现在所有与远程库的交互都需要输入密码,除了不方便,还有不安全,不过可以使用SSH公钥来进行授权。
    在msysgit安装好后,已经生成了公钥和密钥。在git-bash中查看:

    $ ls ~/.ssh
    id_rsa  id_rsa.pub  known_hosts

    其中,id_rsa就是私钥,id_rsa.pub则是公钥。把公钥复制到远程服务器:

    $ scp -P 9822 ~/.ssh/id_rsa.pub  root@192.168.1.5:/volume1/homes/git/.

    这里用的不是SSH标准的22端口,而是9822。如果是标准端口,则不用输入-P参数
    把公钥内容追加到authorized_keys

    mkdir /volume1/homes/git/.ssh
    cat /volume1/homes/git/id_rsa.john.pub >> /volume1/homes/git/.ssh/authorized_keys

    更改权限

    chown -R git:users /volume1/homes/git/.ssh
    chmod 644 /volume1/homes/git/.ssh/authorized_keys

    再与远程库交互就不会再要求输入密码了。

  7. 配置SourceTree的SSH Key
    使用SourceTree做客户端的话,SSH Key的配置有一些不同。
    首先需要在“工具”→“选项”→“一般”中,将SSH客户端设置为“PuTTY/Plink”
    20150626154646
    然后进入“工具”→“创建或导入SSH密钥”
    20150626154946
    其中“Generate”是生成新的密钥对,“Load”则是读取已经存在的私钥(比如上面git-bash里已经生成的私钥。
    生成或读取后,分别保存公钥和私钥。私钥由客户端使用,公钥则需要添加到服务上的authorized_keys文件里。
    在服务器端添加成功后,就可以不用再输入密码了。
Posted in: Git, IT技术, Synology | Tagged: git, Synology, 安装, 黑群晖
← Android SDK在线更新镜像服务器
在群晖NAS上搭建MantisBT Bug跟踪系统 →
2015年6月
一 二 三 四 五 六 日
« 五   七 »
1234567
891011121314
15161718192021
22232425262728
2930  

标签

Android awstats bug tracking chrome database EXSi ffmpeg ffplay fpm GeoIP git hls HTML5 iOS ipkg JavaScript JSON linux lsyncd mantis MariaDB mysql N54l nginx php rtmp SVN svnlook Synology Video vps WordPress yamdi 同步 字幕 安全控件 安装 实用信息 录制 摄像头 浏览器 生活 直播 迅雷 黑群晖

近期文章

  • VPS从DirectSpace迁移到vultr
  • 查看阻止电脑进入休眠的程序
  • HDCN,纪念
  • [转] lsyncd实时同步搭建指南——取代rsync+inotify
  • 在群晖NAS上搭建MantisBT Bug跟踪系统

分类目录

  • Android
  • Database
  • Git
  • IT技术
  • Linux
  • SVN
  • Synology
  • WEB
  • WordPress
  • 未分类
  • 生活

文章归档

  • 2016年5月
  • 2015年12月
  • 2015年10月
  • 2015年7月
  • 2015年6月
  • 2015年5月
  • 2015年4月
  • 2015年3月

链接·工具

  • 百度云观测
  • 360云监控
  • 草料网二维码生成
  • 工信部投诉
  • 快递投诉
  • 北京社保查询
  • 北京公积金查询
  • 执业医师查询
  • 在线查毒:VirusTotal
  • 在线查毒:VirSCAN

Copyright © 2025 Bernie Yu.

Theme by ThemeHall.