아래 사이트를 참고했다. 초보가 따라하기에 굉장히 자세히 캡쳐화면으로 설명해놓았다.

https://rbgeek.wordpress.com/2012/05/01/svn-server-on-ubuntu-12-04-lts-with-web-access/

  

내가 따라한 명령어는 다음과 같다.

$  sudo apt-get install -y subversion libapache2-svn apache2

그리고 저장소 디렉토리를 만든다.

$  sudo mkdir /home/svn

사용자 계정을 생성한다. 일단 이건 저장소 디렉토리 권한 세팅뒤에 해도 된다.

$  sudo htpasswd -cm /etc/apache2/dav_svn.passwd simon

주의할점은 새로 생성할 때만 -c 옵션을 넣는다. 뒤에 새로 유저를 추가할 때는 -m만 넣는다. -c를 넣으면 패스워드 파일이 다 지워진다.

$  cd /home/svn/

SVN 저장소 생성한다.

$  sudo svnadmin create test_repo

여기서 부터는 저장소 디렉토리 권한 설정이다. 웹에서 접근가능하도록 www-data 그룹 권한을 부여한다.

$  sudo chown -R www-data:www-data /home/svn

이제는 아파치 모듈인 DAV 속성을 수정한다.

$  suvo vi /etc/apache2/mods-enabled/dav_svn.conf
아래와 같이 수정한다.
여러개의 저장소를 관리하려면 아래와 같이 사용하면 된다.
반드시 SVNListParentPath On 옵션을 추가한다.
그러면 저장소 최상단 디렉토리부터 웹에서 보여진다. 만약 하나의 저장소만 한다면
SVNParentPath대신 SVNPath를 한다.

<Location /svn>

DAV svn

SVNParentPath /home/svn

SVNListParentPath On #여러개의 저장소를 웹서비스 하려면 반드시 추가

AuthType Basic

AuthName "Subversion Repository"

AuthUserFile /etc/apache2/dav_svn.passwd

Require valid-user

</Location>

재시작하면 끝이다.

$ sudo service apache2 restart

이제 다른 PC에서 접근해보자.

sVN설치한 우분투 PC가 192.168.0.103이라면

http://192.168.0.103/svn 으로 웹브라우저 주소창에 넣으면 된다.

우분투 14.04 server에서 패키지 설치를 위해서 apt-get install을 했는데 에러가 났다.

Err http://kr.archive.ubuntu.com/ubuntu/ trusty/main liberror-perl all 0.17-1.1

  Could not resolve 'kr.archive.ubuntu.com'


뭔가 패키지 업데이트를 다시하면 될 것 같아서  apt-get update를 했는데 동일한 에러였다.
simon@data-server:~$ sudo apt-get update --fix-missing
Err http://kr.archive.ubuntu.com trusty InRelease

Err http://kr.archive.ubuntu.com trusty-updates InRelease

Err http://kr.archive.ubuntu.com trusty-backports InRelease
....

아...서버 설치한지 하루밖에 안되었는데 어젠 잘되었는데 왜그럴까해서 구글링 해보니 name server등록이 안되어서 생기는 증상이었다.

테스트 해보니 정말 아래 URL이 해석이 안되는것이다.
simon@data-server:~$ ping www.naver.com
ping: unknown host www.naver.com
simon@data-server:~$ ping daum.net
ping: unknown host daum.net
simon@data-server:~$ ping google.co.kr
ping: unknown host google.co.kr

그래서 익숙한 방식?으로 /etc/resolv.conf를 수정하려고 열어보니 아래처럼 수정하지 말라고 한다. 자동으로 생성되는 파일이란다. 12.04까지는 그냥 수정했는데 ^^;;
~$ sudo vi /etc/resolv.conf

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

다시 구글링 시작...ㅎㅎ

해결책을 찾았다.

http://unix.stackexchange.com/questions/128220/how-do-i-set-my-dns-when-resolv-conf-is-being-overwritten

해결 방법은
$ sudo vim /etc/resolvconf/resolv.conf.d/base

Then put your nameserver list in like so:

nameserver 8.8.8.8
nameserver 8.8.4.4

Finally update resolvconf:

$ sudo resolvconf -u


이렇게 하면 해결이 된다.

resolvconf를 업데이트 하면 아까 /etc/resolv.conf파일이 아래처럼 자동으로 갱신된다.

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)

#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

nameserver 8.8.8.8

nameserver 8.8.4.4

~



우분투 14.04를 설치하면 기본적으로 커널 3.19가 설치되어 있다.

최신 하드웨어를 가진 머신이라면 커널 4.2로 업그레이드하는 것이 유리하다.

어떤 무선랜카드는 드라이버가 아예 커널 3.19이상은 로딩도 안된다.

설치하는 방법은 아래와 같다.

일단 현재 커널 버전은 아래와 같다.

simon@simon-server:~$ uname -a

Linux simon-server 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24 21:16:20 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux


그리고 아래 3개의 패키지를 설치한다.

linux-image-4.2.0-27-generic -> 진짜 커널 바이너리

linux-image-extra-4.2.0-27-generic -> 각종 동적 디바이스 드라이버와 같은 모듈

linux-headers-4.2.0-27-generic -> /usr/src에 저장되는 커널 소스, 모듈 컴파일에 필수.

simon@simon-server:~$ sudo apt-get install linux-image-4.2.0-27-generic linux-image-extra-4.2.0-27-generic linux-headers-4.2.0-27-generic

.....


Generating grub configuration file ...

Found linux image: /boot/vmlinuz-4.2.0-27-generic

Found initrd image: /boot/initrd.img-4.2.0-27-generic

Found linux image: /boot/vmlinuz-3.19.0-25-generic

Found initrd image: /boot/initrd.img-3.19.0-25-generic

Found memtest86+ image: /boot/memtest86+.elf

Found memtest86+ image: /boot/memtest86+.bin

Found Windows 7 (loader) on /dev/sdb1

done

----------------------------
위와 같이  grup세팅까지 잘 마무리되었다는 메시지가 나오면 성공적으로 설치된 것이다.
혹시 grup 세팅이 제대로 안될 수도 있으니 아래 와 같이 grup.cfg를 확인한다.
simon@simon-server:~$ sudo vi /boot/grub/grub.cfg

파일이 길기 때문에 Linux 키워드로 검색해보면 기존 3.19 커널이 새로 설치한 4.2보다 뒤에 있으면 된다.

169         menuentry 'Ubuntu, with Linux 4.2.0-27-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.2.0-27-generic-recovery-0e4e9952-fcfd-40df-822d-245b3b2b5ae2' {
170                 recordfail
171                 load_video
....
확실히 뒤에 있다.ㅎㅎ

186         menuentry 'Ubuntu, 그리고 Linux 3.19.0-25-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.19.0-25-generic-advanced-0e4e9952-fcfd-40df-822d-245b3b2b5ae2' {
187                 recordfail
188                 load_video


이제 재부팅을 해서 진짜 4.2버전으로 부팅이 되는지 확인한다.

simon@simon-server:~$ uname -a

Linux simon-server 4.2.0-27-generic #32~14.04.1-Ubuntu SMP Fri Jan 22 15:32:26 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

무사히 4.2로 업그레이드가 되었다.
커널을 좀 보실 줄 아시는 분은 dmesg로 별다른 에러가 없는지도 확인하면 좋다.
imon@simon-server:~$ dmesg



+ Recent posts