[다시 질문합니다]cvsweb.cgi로 cvs repository 브라우징하는 설

익명 사용자의 이미지

흑흑... 요전에 질문을 드렸는데요...
제가 질문을 조금 막연하게 했나요? 답변이 안올라 와서요...
조금 자세히.. 얘기를 하려고요...

움..그러니까..cvs를 사용하려고 세팅을 했구요,
요것을 웹으루 브라우징 하려구 합니다.

그래서, cvsweb-1.112.tar.gz(cvsweb.cgi를 이용한 것)을 받아서 설치를
하는 도중에요...

cvsweb.conf에서

%CVSROOT = (
'Development' => '/usr/local/src/cvsrep',
'Configuration' => '/tmp/cvsroot/conf',
'HTML-files' => '/tmp/upload'
);
요기 설정하는것이 애매합니다.
INSTALL 화일을 봐도 그냥

2) copy cvsweb.conf to your configuration directory. If
you've installed Apache, $ServerRoot/conf (or $ServerRoot/etc
with versions >= 1.3.0) makes sense.
Edit cvsweb.conf to fit your needs, esp. set the CVS-Root(s)
of the Repository(ies) you want to view.

라고만 되어있어서...
정확히 어떻게 세팅을 해 주어야 할지... 막막합니다.

참고로, 아래는 위의 것 밑에 있는 cvstreedefault를 설정한 것입니다.
$cvstreedefault = '/export/home/cvs';

움... 꼭 쓰고싶습니다.
여기 질문 게시판을 검색해도 이것에 대한 내용은 단지 해결했다.
라고만 되어있네요...

제가 멍청한 건가요? 이궁... 초보라서...
이거 가지구, 거의 일주일 밤을 암것두 못하구 있습니다...

귀찮으시겠지만, 꼭좀 조언을 부탁드리겠습니다....

감사합니다.

익명 사용자의 이미지

rcs 5.7을 받아서 소스를 풀거요, configure를 실행시키니 아무 이상이 없
었습니다(csh환경입니다. os는 SunOS 5.7이구요.)

{83}[rcs-5.7(root)]% sh ./configure
loading cache ./config.cache
checking diff basename... (cached) diff
checking for diff... (cached) /bin/diff
checking diff success status... (cached) 0
checking diff failure status... (cached) 1
checking diff trouble status... (cached) 2
checking diff options for RCS... (cached) -n
checking diff -L... (cached) no
checking diff3 -m... (cached) no
checking diff3 library program... (cached) /usr/lib/diff3prog
checking for ed... (cached) /bin/ed
checking for sendmail... (cached) /usr/lib/sendmail
checking for pic... (cached) gpic -n
checking for gcc... (cached) gcc
checking whether we are using GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for a BSD compatible install... (cached) ./install-sh -c
checking whether make sets ${MAKE}... (cached) yes
creating ./config.status
creating Makefile
creating man/Makefile
creating src/Makefile

그런데 make를 하니 에러가 나네요... 분명 root로 실행을 하는데,
permission문제라구 나오는데 왜이런지요?

{84}[rcs-5.7(root)]% make
cd man && make all
make[1] Entering directory `/usr/local/rcs/rcs-5.7/man'
make[1] Nothing to be done for `all'.
make[1] Leaving directory `/usr/local/rcs/rcs-5.7/man'
cd src && make all
make[1] Entering directory `/usr/local/rcs/rcs-5.7/src'
rm -f a.*
ALL_CFLAGS=' -Dhas_conf_h -I. -I. -g -O' \
CC='gcc' \
COMPAT2='0' \
DIFF3='/usr/lib/diff3prog' DIFF3_BIN='0' \
DIFF='/bin/diff' DIFFFLAGS='-n' DIFF_L='0' \
DIFF_SUCCESS='0' \
DIFF_FAILURE='1' \
DIFF_TROUBLE='2' \
ED='/bin/ed' \
LDFLAGS='' LIBS='' \
RCSPREFIX='/usr/local/bin/' \
SENDMAIL='"/usr/lib/sendmail"' \
/bin/sh -x ./conf.sh 3>&1 >a.h 2>conf.err
./conf.sh testing permissions ...
./conf.sh This command should not be run with superuser permissions.
make[1] *** [conf.h] Error 1
make[1] Leaving directory `/usr/local/rcs/rcs-5.7/src'
make *** [all] Error 2

위에보시면 ./conf.sh 에서 에러가 나는 것 같습니다.
분명 root로 하는데두... 에러가 나니... 어떻게 해야 하지요?
참고로 이것은 rcs5.7/src/conf.err입니다.

1 Id=$Id conf.sh,v 5.25 1995/06/16 061924 eggert Exp $
2 + /usr/local/bin/
3 + -Dhas_conf_h -I. -I. -g -O
4 + gcc
5 + 0
6 + /bin/diff
7 + /usr/lib/diff3prog
8 + 0
9 + -n
10 + 0
11 + 0 1 2
12 + /bin/ed
13 + "/usr/lib/sendmail"
14 C=gcc -Dhas_conf_h -I. -I. -g -O
15 CL=gcc -Dhas_conf_h -I. -I. -g -O -o a.out
16 L=
17 + cat
18 /* RCS compile-time configuration */
19
20 /* $Id conf.sh,v 5.25 1995/06/16 061924 eggert Exp $ */
21
22 /*
23 * This file is generated automatically.
24 * If you edit it by hand your changes may be lost.
25 * Instead, please try to fix conf.sh,
26 * and send your fixes to rcs-bugs@cs.purdue.edu.
27 */
28
29 n=
30
31 + echo -n
32 dots=... \c ech=echo
33 + echo ./conf.sh testing permissions ... \c
34 + rm -f a.d
35 + date
36 + chmod 0 a.d
37 + test -w a.d
38 + echo
39 ./conf.sh This command should not be run with superuser
permissions.
40 + exit 1

이렇습니다...분명 이 에러의 뜻이 '이 command는 슈퍼유저의 실행권한으
로 실행되어야 한다' 가 맞죠?
make를 superuser로 실행 시켰는데, 왜... 안되는 것이죠?
conf.sh의 sticky bit를 켜죠야 하나요?

이궁... 첩첩 산중이넹....

익명 사용자의 이미지

거기

$cvstreedefault = '/export/home/cvs';

요것을
$cvstreedefault = 'Configuration';

요렇게 해주거요...

%CVSROOT = (
# 'Development' => '/usr/local/src/cvsrep',
'Configuration' => '요기다가 cvs rep의 절대경로를 써줌'
# 'HTML-files' => '/tmp/upload'
);

요기서 'Configuration'만 세팅해주구, 나머지는 주석처리...

해줘야 보이네요... 나머지는 어떻게 세팅해야 되는지...여전히..몰겠네
요....

암튼 repository가 보이기는 하는데, 이번엔 디렉토리만 보이고

화일들이 보이지가 않네요...

그냥 디렉토리 브라우징된 하단에 이런메세지가 나옵니다.

NOTE There are 1 files, but none matches the current tag ()

왜 이런 메세지가 나오는 것인지 모르겠습니다....T.T

앙앙 Y.Y

RCS utility(rlogin, rcsdiff)를 설치해야 보이는 것인가요?

에구.. 몰것다.. 설치해 봐야쥠...케켁...

익명 사용자의 이미지

This command should not be run with superuser

-> 이 실행문은 슈퍼유저로 실행되서는 안된다. 입니다.

일반 계정으로 셋팅해야 할것 같은데요?

....이만 총총.

익명 사용자의 이미지

하하... 그렇게 해서는 안될것 같습니다.
RCS 가 일반 유저의 계정에 설치되는 것도 아니고, 시스템에 설치되는 유
틸이어서 path에 지정된 디렉토리에 binary화일을 만들어야 하거든여?
움... 혹시나 해서 일반계정으루 해봤지만,
요런 메세지가 나오네요...

can't create config.log

config.log화일을 만들 권한이 없어서 인것 같구요...
움... INSTALL화일에두 이러한 권한 얘기는 없습니다...

정녕 이것을 설치해 보신분이 없으시단 말입니까....Y.Y;;

앙앙~~~ 제발 도와주세용...흑흑...

rlog 와 rcsdiff가 있어야 동작을 할꺼 같은뎅... 흑흑...

leolo의 이미지

다음으로 CVS의 Repository를 웹브라우저를 통해 보자.
최신버전은 http://stud.fh-heilbronn.de/~zeller/cgi/cvsweb.cgi/#dirlist 다운 받을 수 있으며 cvsweb-1.112.tar을 다운받아 압축을 해제한다.

# tar xzvf cvsweb-1.112.tar
# cd cvsweb
# ls
cvsweb.cgi cvsweb.conf INSTALL README TODO icons

다음으로 cvsweb.conf 파일을 자신의 아파치 설정파일(/etc/httpd/conf/httpd.conf)이 있는 디렉토리로 복사한 후 설정을 자신에 맞게 바꾼다.

# cp cvsweb.conf /etc/httpd/conf
# cd /etc/httpd/conf
# vi cvsweb.conf

%CVSROOT, $cvstreedefault, $ENV{‘PATH’} 정도만 바꾸어 주면되는데, 주의할 점은 %CVSROOT는 'symbolic_name' 'path_to_the_actual_repository' 의 형식으로 지정하고 $cvstreedefault는 %CVSROOT 중에 하나를 고른다. $ENV{‘PATH’}는 주석을 열어주고 rlog, rcsdiff 명령이 위치한 디렉토리로 경로를 수정한다.
이 경우 /home/CVS는 CVS 저장소이다.

# 'symbolic_name' 'path_to_the_actual_repository'
%CVSROOT = (
'local' => '/home/CVS',
……(생략)
);
# This tree is enabled by default when
# you enter the page
$cvstreedefault = 'local';

# remember to set the path to your
# rcsutils: rlog, rcsdiff (gzip if you use compression)
$ENV{'PATH'} = '/usr/bin';

다음으로 cvsweb.cgi 파일을 자신의 아파치에서 지정한 cgi 디렉토리로 복사하고 # User configuration is stored in 부분 아래쪽에 cvsweb.conf 파일의 위치를 맞게 잡아준다.

# cp cvsweb.cgi /var/www/cgi-bin
# cd /var/www/cgi-bin
# vi cvsweb.cgi

# User configuration is stored in
$config = $ENV{'CVSWEB_CONFIG'} || '/etc/httpd/conf/cvsweb.conf';

끝으로 아파치 웹서버를 구동하고 웹브라우저로 확인한다.
# /etc/rc.d/init.d/httpd restart

웹브라우저에 http://<IP주소>/cgi-bin/cvsweb.cgi 를 입력하여 확인합니다.

실력이 있으면 삶이 편하다... 영차 영차...

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.