NAS2015. 8. 3. 14:23

NAS를 살 때 많은 고민을 하고 Synology 제품을 선택했다.

FTP 같은 기능은 당연한 것이고,

CloudStation 은 참 만족스러운 기능으로 사용을 했다.

 

최근에 주변 사람을 통해서 소스 형상관리툴 Git을 알게 되었다.

나의 NAS에서 Git을 설치할 수 있다는 것을 알게 되고는

구글링등의 많은 방법을 통하여 설치하는 방법을 알게 되었다.

 

이걸 정리를 해 놓아야지 다음에 다시 설치하더라고 유용할꺼 같아서 정리를 해 보았다.

 

● 설치 환경

Synology NAS DS212J

DSM 5.2

 

● 사용환경

Visual Studio 2013

 

● 설정방법

 

1.NAS에서 SSH서비스를 활성화해야 한다.

 

제어판에 들어가서 응용 프로그램란에 [터미널 및 SNMP]를 선택한다. 

 

 

SSH 서비스를 활성화 시켜준다. 

 

 

2.Git Server 설치

 

NAS바탕화면에 있는 패키지 센터를 실행해서, [모두] 또는 [유틸리티]화면을 열어보면 아래와 같이 Git Server라는게 보인다.

서버가 설치되기 전에는 버튼이 [설치]라고 되어 있어 설치하고 나서 보면 아래와 같이 [열기]로 보여진다. 

 

 

Git Server 설치 후 설치됨 메뉴를 선택해보면 아래와 같이 설치가 되었음을 알 수가 있다.

 

 

Git Server를 선택하여 들어가서 Git Server 서비스를 활성화 시켜준다. 

 

 

3.NAS에 사용자 계정을 추가해야 한다.

 

다시 제어판에 가서 사용자 메뉴를 선택한다.

사용자 메뉴에서 [생성] 버튼을 클릭한다.

 

 

사용자 정보를 입력한다.

사용자 계정을 gituser라고 했다.

 

 

gituser의 그룹은 users로 선택한다.

 

 

gituser는 homes만 접근권한을 줬다.

 

 

그 이후는 모두 다음 .. 다음 넘어가면 되고 혹시나 싶어서 WebDav는 허용하였다. 

 

 

 

4.Repository 생성

 

NAS에서의 작업은 끝이 난거 같다.

Windows 를 사용하는 관계로 PuTTY를 이용해서 Repository를 생성해야 되겠다.

PuTTY를 실행하고 root로 로그인을 한다.

 

 


DSM 버젼이 올라가면서 root로 로그인이 안된다.

  admin 계정으로 로그인을 하고

  sudo -i 를 입력하여서 (패스워드는 admin 계정 패스워드와 동일) 작업을 진행해야한다. 

 


 

키보드를 두드릴 시간이 왔다.

 

NAS에 disk가 하나가 있어 그 놈은 volume1인데 그 놈의 이름이 /var/services 이라는것 같다.(리눅스를 잘 모름)

아뭏튼 gituser라고 만든 계정의 홈은 /var/services/homes/gituser가 된다.

 

여기에 project.git 이라는 폴더를 생성고

그 폴더로 들어가서 Repository 초기화(?)라나 뭐 그렇게 해준다.

그리고 cd .. 하여 상위 폴더로 올라와서

project.git 이란 폴더의 하위 전체의 권한을 gituser에 넘긴다.

 

chown -R (git사용자 계정):(git 사용자가 속한 그룹)  (사용자 디렉토리)

 

여기까지 하면 Git Server의 설정이 끝이다.

 

 

 

5.Windows 에서의 설정

 

이것도 참 고생을 했다.

개념 모르고 덤비니 가시밭길이 이만 저만이 아니다.

그래도 다 왔다.

 

참고로 Windows에서의 Git 에 대한 사용법은 http://backlogtool.com/git-guide/kr/ 여기를 참고했다.

 

TortoiseGit 프로그램을 설치를 한다.

그리고 나서 Windows 원하는 경로에 repository를 생성한다.

 

 

 

그리고는 다시 TortoiseGit의 Settings 화면에서 사용자를 저장한다.

이 때 사용자는 NAS에 만든 gituser가 아닌 개발자를 의미한다.(개발자마다의 개별 설정)

 

 

제일 중요한 마지막 설정이다.

URL 은 http로는 성공을 못했다. 그래서 ssh로 했다.

ssh://(NAS에 생성했던 계정)@(NAS의 DNS):(포워딩한 port)/volume1/homes/(사용자 계정 폴더)/(Repository 폴더 명)

(예 ssh://gituser@nas.familyds.com:9112/volume1/homes/gituser/project.git)

 

- ssh의 표준 포트는 SSH 서비스 활성화에서처럼 22이다.

  세상이 무서워서 port forwading을 하는게 좋을꺼 같다. 임의의 숫자로

 

- /volume1 대신 /var/services 라고 써도 되는거 같은데 다음에 설정할 일이 있으면 그렇게 해 보아야겠다.

 

 

 

이렇게 해서 NAS에서의 Git 사용에 관련된 모든 설정을 완료한거 같다.

많은 시간을 들여서 해 놓은 삽질을 잊어버리기 전에 이렇게 정리한 번 해 보았다.

 

Posted by kongzz