Subversion-Installation

Subversion은 지금까지 정말 열심히 쓰고 있는 버전 관리 툴이다. 필요에 의해 쓰게 되었고, 필요에 의해 익히게 된 유용한 툴이다. Subversion없는 프로젝트, 코딩은 이제 생각할 수도 없다. 그 초기에 설치하면서 썼던 설치기..
——————————————————————————————————–
목차
    1 소개
    2 설치
        2.1 우분투 리눅스 설치
        2.2 네트워크 설정
        2.3 Subversion 설치
        2.4 서비스 설정
            2.4.1 xinetd 설치
        2.5 저장소(Repository) 설치
        2.6 Apache2와 연동
    3 사용

1 소개

이 글은 내가 우분투 Breezy 를 설치 후 Subversion 을 설치해서 사용하기까지의 삽질을 정리하기 위한 페이지이다. 개인적인 목적으로(KLDP 에는 미안하지만 😉 ) 정리한 글임을 일러둔다.

클라이언트는 Microsoft Windows 에서 TortoiseSVN 을 이용한다.

2 설치

2.1 우분투 리눅스 설치

    * 우분투 한국 사용자 모임 을 참조한다.
    * 처음 사용자 ID 는 svnadmin 으로 설치하였다.

2.2 네트워크 설정

    * 내부 네트워크에 192.168.0.166 으로 설정하였다.

2.3 Subversion 설치

    * 시냅틱 패키지 관리자에서 Subversion 관련 패키지(Subversion, Subversion-tools, Subversion-helper-scripts(설치안해도 무방할 것 같으나 일단 추가))를 설치한다.

2.4 서비스 설정

2.4.1 xinetd 설치

   1. 시냅틱 패키지 관리자에서 xinetd 패키지를 설치한다.
   2. /etc/xinetd.d/ 밑에 svn 파일을 만들어 내용을 채운다.
         1. sudo vi /etc/xinetd.d/svn

            # Default : On
            # Subversion server

            service svn
            {
                sockettype  = stream
                protocol    = tcp
                user        = svnadmin
                wait        = no
                disable     = no
                server      = /usr/bin/svnserve
                server_args = -i
                port        = 3690
            }

2.5 저장소(Repository) 설치

   1. /home/repository 디렉토리 만듦.
   2. cd /home/repository
   3. svnadmin create ProtoHan
   4. /home/repository/ProtoHan/conf/passwd 를 참고하여 ProtoHan 프로젝트를 진행할 사람들의 계정과 비밀번호를 /home/svnadmin/SvnPasswd/JDL-740aDev 로 만든다.
   5. /home/repository/ProtoHan/conf/svnserve.conf 을 편집한다.
         1. vi /home/repository/ProtoHan/conf/svnserve.conf

            [general]
            anon-access = none
            auth-access = write
            password-db = /home/svnadmin/SvnPasswd/JDL-740aDev

   6. Subversion 에서 추천하는 trunk/, branches/, tags/ 디렉토리를 만든다.
         1. svn mkdir svn://localhost/home/repository/ProtoHan/trunk
         2. 편집기로 Log 작성
         3. 리비전 증가
         4. svn mkdir svn://localhost/home/repository/ProtoHan/branches
         5. 편집기로 Log 작성
         6. 리비전 증가
         7. svn mkdir svn://localhost/home/repository/ProtoHan/tags
         8. 편집기로 Log 작성
         9. 리비전 증가

2.6 Apache2와 연동

   1. 시냅틱 패키지 관리자에서 Apache2 설치
   2. Apache2 를 통해 ProtoHan 에 접근할 계정 설정
         1. mkdir /home/svnadmin/ApachePasswd
         2. cd /home/svnadmin/ApachePasswd
         3. htpasswd -c JDL-740aDev <계정명>
         4. <Password> 입력
   3. /etc/apache2/mods-available/dav_svn.conf 편집
         1. sudo vi /etc/apache2/mods-available/dav_svn.conf

            <Location /ProtoHan>
              DAV svn
              SVNPath /home/repository/ProtoHan
              AuthType Basic
              AuthName “JDL-740a(ProtoHan) Repository”
              AuthUserFile /home/svnadmin/ApachePasswd/JDL-740aDev
              #<LimitExcept GET PROPFIND OPTIONS REPORT>
                Require valid-user
              #</LimitExcept>
            </Location>

   4. sudo /etc/init.d/apache2 restart

3 사용

   1. TortoiseSVN 다운로드(http://tortoisesvn.tigris.org/download.html) 후 설치
   2. Repository 는 svn://192.168.0.166/home/repository/ProtoHan/trunk 혹은 http://192.168.0.166/ProtoHan/trunk 로 접근한다.

How to use Mantis for UTF-8

mantis는 웹 인터페이스의 버그 트래킹 툴이다. 회사 다닐 때 회사에 적용해보고 싶어서 좀 써봤는데, 실패했다-_- 암튼.. 이 글은 Mantis를 UTF-8로 사용하기 위한 팁이다. 근데 좀 오래되었네….;;;;

——————————————————————————————————–
목차
    1 차례
    2 Mantis 한글 설정(UTF-8)
        2.1 설치 환경
        2.2 설정 순서
        2.3 그래도 안보인다면!

2 Mantis 한글 설정(UTF-8)

2.1 설치 환경

    * 우분투 5.10 Breezy 의 mantis 패키지(따라서 모든 경로는 우분투 기준!)

2.2 설정 순서

   1. mantis 의 설정 파일을 수정하기 위해 연다.

      sudo vi /etc/mantis/config.php

   2. $g_default_language 와 $g_fallback_language 를 ‘korean_utf8’ 로 수정한 후 저장한다.

              $g_default_language     = ‘korean_utf8’;
              $g_fallback_language    = ‘korean_utf8’;

   3. /usr/share/mantis/gui/config_defaults_inc.php 를 연다.

      sudo vi /usr/share/mantis/gui/config_defaults_inc.php

   4. $g_language_choices_arr 에 ‘korean’ 밑에 ‘korean_utf8’ 을 추가한다.

              …

              # list the choices that the users are allowed to choose
              $g_language_choices_arr = array(
                      ‘auto’,

                      …

                      ‘korean’,
                      ‘korean_utf8’,
                      ‘turkish’,
                      ‘ukrainian’

                      …
              );

              …

   5. $g_language_auto_map 에 “‘ko’ => ‘korean'” 를 “‘ko’ => ‘korean_utf8′” 로 수정한 후 저장한다.

              …

              $g_language_auto_map = array(
                      ‘en-us, en-gb, en-au, en’ => ‘english’,
                      ‘zh-cn, zh-sg, zh’ => ‘chinese_simplified’,
                      ‘zh-hk, zh-tw’ => ‘chinese_traditional’,
                      ‘cs’ => ‘czech’,
                      ‘da’ => ‘danish’,
                      ‘nl-be, nl’ => ‘dutch’,
                      ‘et’ => ‘estonian’,
                      ‘fi’ => ‘finnish’,
                      ‘fr-be, fr-ca, fr-ch, fr’ => ‘french’,
                      ‘de-de, de-at, de-ch, de’ => ‘german’,
                      ‘hu’ => ‘hungarian’,
                      ‘it-ch, it’ => ‘italian’,
                      ‘ja’ => ‘japanese_sjis’,
                      ‘ko’ => ‘korean_utf8’,
                      ‘lt’ => ‘lithuanian’,
                      ‘no’ => ‘norwegian’,
                      ‘pl’ => ‘polish’,
                      ‘pt-br’ => ‘portugese_brazil’,
                      ‘pt’ => ‘portugese_standard’,
                      ‘ro-mo, ro’ => ‘romanian’,
                      ‘ru-mo, ru’ => ‘russian’,
                      ‘sr’ => ‘serbian’,
                      ‘sk’ => ‘slovak’,
                      ‘sl’ => ‘slovene’,
                      ‘es-mx, es-co, es-ar, es-cl, es-pr, es’ => ‘spanish’,
                      ‘sv-fi, sv’ => ‘swedish’,
                      ‘tr’ => ‘turkish’
              );

              …

2.3 그래도 안보인다면!

    * /etc/php5/apache2/php.ini 파일을 열어 default_charset 가 지정되어 있는 부분을 주석처리한다. 😛

Using POP3, SMTP with SSL

예전에 회사다닐 때 메일 서버 관리할 때 썼던 글인 듯 하다.
언젠가 도움이 되지 않을까 해서 KLDP에 썼던 글을 블로그에도 옮겨둔다.
——————————————————————————————————-
Using POP3, SMTP with SSL

1. 문서의 목적

이 문서는 OpenSSL 을 이용해서 POP3S 와 SMTP 서비스를 시작한 내 경험을 정리하기 위해 만들어졌다.

2. 문서의 소개

이 문서는 OpenSSL 을 이용해 POP3S 와 SMTP 서비스를 사용하는 절차에 대해 설명한다. 레드햇 8.0 을 기준으로 하며 MTA 로는 Sendmail 을 사용한다. POP3S 서비스는 xinetd 하에서 서비스된다. CA 인증은 자체 인증 방식을 사용한다. 모든 작업은 root 로 수행한다. 이 문서는 양정석(dasomoli (at) gmail.com)이 작성하였다. 🙂

3. 본문

3.1. 인증서 만들기 & 설치

    * CSR 을 만든다.
      # openssl req -new > cert.csr

    * common name 에 도메인 이름 입력(예:jinyangind.com)

    * RSA 키를 만든다.
      # openssl rsa -in privkey.pem -out cert.key

    * CSR 에 자체 서명키로 CA 인증서를 만든다.
      # openssl x509 -in cert.csr -out cacert.crt -req -signkey cert.key -days 365

    * RSA 키와 CA 인증서를 붙여 pem 파일을 생성한다.
      # cat cert.key cacert.crt > cert.pem

    * 생성한 파일을 root 외에 읽을 수 없게 한다.
      # chmod 600 cert.pem cacert.crt cert.key(여기는 cert.pem 빼고는 내 추측)

    * SSL 의 certs 디렉토리에 옮긴다.
      # mv cert.pem /usr/share/ssl/certs

      # mv cacert.crt /usr/share/ssl/certs

      # mv cert.key /usr/share/ssl/certs

    * pop3s 의 pem 파일도 만든 것으로 사용
      # cp /usr/shar/ssl/certs/cert.pem /usr/shar/ssl/certs/ipop3d.pem

    * smtps 의 pem 파일도 만든 것으로 사용
      # cp /usr/shar/ssl/certs/cert.pem /usr/shar/ssl/certs/sendmail.pem

3.2. pop3s 서비스 시작하기.

    * #vi /etc/xinetd.d/pop3s

      service pop3s
      {
          disable         = no
          socket_type     = stream
          wait            = no
          user            = root
          server          = /usr/sbin/ipop3d
          log_on_success  += USERID
          log_on_failure  += USERID
      }
        
    * # /etc/init.d/xinetd.d restart

3.3. sendmail 설정하고 재시작하기.

    * # vi /etc/mail/sendmail.mc, 다음 내용을 추가한다.

      define(`confCACERT_PATH’,`/usr/share/ssl/certs’)dnl
      define(`confCACERT’,`/usr/share/ssl/certs/cacert.crt’)dnl
      define(`confSERVER_CERT’,`/usr/share/ssl/certs/sendmail.pem’)dnl
      define(`confSERVER_KEY’,`/usr/share/ssl/certs/cert.key’)dnl
      DAEMON_OPTIONS(`Port=smtps, Name=TLSMTA, M=s’)dnl
      Cwjinyangind.com

    * # m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
    * # /etc/init.d/sendmail restart

3.4. Client 설정.

    * cacert.crt 배포, 인증기관에 추가.

3.4.1. Outlook

    * 받는 메일 서버, 보내는 메일 서버에 SSL 체크, 보내는 메일서버 포트 : 465, 받는 메일서버 포트 : 995

3.4.2. Thunderbird

    * Outlook 과 거의 같음.

우분투 화면 효과 상태에서 창이 자꾸 스크린에 붙는 경우

전 창을 이리저리 많이 움직이는 편입니다.

근데 자꾸만 창이 스크린 위아래로 들러붙어서 움직이기 힘들더라구요.

그래서 이게 뭐때문인가 하고 Visual Effect 플러그인들을 찾아보았습니다.

결론은 아래 것 때문이더군요..

사용자 삽입 이미지
꺼주시면 창이 위아래에 띵띵~ 붙어서 늘어나는 등이 되지 않습니다. 흐흐

iptables 설정

오랜만에 iptables 설정을 하려니 어떻게 했었는지 하나도 기억이 안나더군요.
기억나는건 iptables -L 하나…;;;
할 때만 기억했다가 또 까먹고 또 까먹고.. 이 놈의 돌대가리..;;
암튼 그래서 검색을 해보니 우분투의 community 도움말에 설정 관련 글(https://help.ubuntu.com/community/IptablesHowTo)이 있네요~
참 편리하게 잘 만들어놨네요^^

1. Establicshed 세션 허용
$ sudo iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

2. 특정 포트 허용
$ sudo iptables -A INPUT -p tcp –dport <포트 번호> -j ACCEPT
<포트 번호> 는 135:139 형식으로 범위를 조절할 수 있다.

3. 그 외 모두 막기
sudo iptables -A INPUT -j DROP

4. 현재 iptables 설정 파일로 저장하기
$ sudo sh -c “iptables-save > /etc/iptables.rules”

5. iptables 설정 파일로 부팅 시에 재설정하기
$ sudo vi /etc/network/interfaces

auto eth0
iface eth0 inet dhcp
 pre-up iptables-restore < /etc/iptables.rules
 post-down iptables-save -c > /etc/iptables.rules

p.s : 본문의 etc/etc 로 해주셔야 합니다. > 나 < 이후에 / 가 붙지 않는 버그가 텍스트큐브에 있는 듯 합니다. -> 티스토리로 이전 후 수정되었습니다.

예제)
1. 특정 IP 대역만 허용

# iptables -A INPUT -p all -s 192.168.0.0/24 -j ACCEPT
# iptables -A INPUT -j DROP

우분투 8.04를 고진샤 K800x에서 사용하기

몇 달 전부터 고진샤의 K800X 모델을 사용중입니다.

감도는 떨어지지만 나름 터치스크린도 갖추고 있고, 하드도 120G나 되는 놈입니다.

IDE to USB 젠더를 이용해서 CD롬을 연결하고 거기에 우분투 8.04 CD를 이용해서 Hardy Heron을 설치했습니다.

그런데 지금까지는 터치스크린이 작동은 하는데 제대로 포인트가 잡히지 않아서 있으나 마나였습니다.

Calibration하려고 했었는데 아직 지원이 제대로 안되는 것 같길래 두고 있었습니다만,

어제 밤에 갑자기 생각이 나서 구글에 검색해보니, 런치패드에 버그로 제출된 내용이 있더군요.

어느 사용자가 결국 배포하는 드라이버를 패치해서 사용하는데 성공한 것 같습니다.

이 패치를 사용해서 penmount에서 드라이버를 작성해서 배포 중인 것 같네요.(버전은 비록 Beta2지만요)

설치해서 조금의 삽질을 하니 잘 작동합니다. ㅎㅎ

관련 xorg.conf 내용입니다.

[#M_PenMount 터치스크린 관련 xorg.conf 설정|<<접기>>| Section “InputDevice”
    Identifier    “Configured Mouse”
    Driver        “mouse”
    Option        “CorePointer”
    Option        “Device”    “/dev/input/mouse0”
EndSection

Section “InputDevice”
    Identifier    “Synaptics Touchpad”
    Driver        “synaptics”
    Option        “SendCoreEvents”    “true”
    Option        “Device”        “/dev/psaux”
    Option        “Protocol”        “auto-dev”
    Option        “HorizEdgeScroll”    “0”
EndSection

Section “InputDevice”
    Identifier    “PenMount”
    Driver        “penmount”
    Option        “Protocol”        “PM6000USB”
    Option        “Device”        “/dev/input/event2”
    Option        “PMode”            “1”
    Option        “MinX”            “10”
    Option        “MaxX”            “1000”
    Option        “MinY”            “10”
    Option        “MaxY”            “1000”
    Option        “ADBit”            “10”
    Option        “Baudrate”        “19200”
    Option        “Beep”            “0”        #  0 = no beep, 1 = beep enabled
    Option        “HoldTime”            “700000”
    Option        “SendCoreEvents”    “True”   
EndSection

….

Section “ServerLayout”
    Identifier    “Default Layout”
    Screen        “Default Screen”
    InputDevice    “Synaptics Touchpad”
    #InputDevice    “Penmount” “AlwaysCore”
    InputDevice    “Penmount” “SendCoreEvents”
EndSection
_M#]

/usr/share/penmount/gCalib 16

위와 같은 명령으로 Calibration이 가능합니다. 16 대신 0, 4, 9, 25 와 같은 값을 써서 Calibration point를 몇 개로 할 것인지 정할 수 있습니다.

터치스크린은 OneNote와 같은 프로그램에서 강점을 발휘합니다. 리눅스용 프로그램으로 뭐가 있을까 찾아보니 jarnal 이란 프로그램이 있는 것 같은데, 우분투에서는 그 비슷한 프로그램으로 xournal 이란 프로그램을 패키지로 제공하는군요. 조금 써보니, 프로그램의 문제인지, 원래 포인트가 흔들리는 건지는 알 수 없지만, 선이 좀 삐뚤군요.

한영키 설정은 ~/.Xmodmap 에

keycode 113 = Hangul

추가로 가능합니다.

이제, 여기다 졸업 논문과 진행 중인 프로젝트 관련 몇 가지 설정을 해서 사용해봐야겠습니다. 흐흐..

우분투 8.04(Hardy Heron)에서 Eclipse 사용시..

우분투 8.04에서 Eclipse 사용 시 다음과 같은 메시지가 뜬다면!

Could not initialize the application’s security component. The most
likely cause is problems with files in your application’s profile
directory. Please check that this directory has no read/write
restrictions and your hard disk is not full or close to full. It is
recommended that you exit the application and fix the problem. If you
continue to use this session, you might see incorrect application
behaviour when accessing security features.

$HOME/.mozilla/eclipse 폴더를 수동으로 만들어 주시면 됩니다.

출처 : https://bugs.launchpad.net/ubuntu/+source/eclipse/+bug/188380

우분투 카운터!

우분투 8.04의 출시일이 얼마 남지 않았네요!

초보 리눅서님의 블로그에서 우분투 베타판 출시 소식과 함께 배너에 대한 이야기를 듣고 추가해 보았습니다. 🙂

왼쪽을 보니 오늘로써 29일 남았다고 나오네요. 흐흐.

흐흐.. 기대됩니다.

우분투 7.10 설명서를 보면서..

우분투 7.10 설명서

쭈욱 흟어보면서 든 생각은.. ‘우와… 여기저기 흩어져 있는 정보를 정말 잘 모아놓으셨네~’ 다.

여기저기 인터넷에 흩어져 있는 우분투 관련 자료들을 체계적으로 잘 정리해놓으신 것 같다.

우분투를 처음 사용하는 사용자들이 여기저기 떠돌면서 보지 않아도 될 만큼 잘되어있다.

하지만…

우분투 한국팀인 나로서는…

많은 분의 수고가 담긴(저는 별로..ㅠ) 우분투 기본 도움말(시스템-도움말 및 지원)도 많은 사용자들이 보아줬으면 좋겠다는 바람이다.

웬만한 것들은 다 있는데..

우분투 포럼 게시판의 질답란을 본 경험으로는 사용자들이 인터넷을 찾아보는 습관 때문인지 기본 도움말보다는 먼저 웹브라우저에서 검색 또는 질문만을 한다는 느낌이었다.(도움말에 있는 내용을 질문하는 분들이 참 많았던 듯 하다)

아무튼, 자료가 많을수록 사람들은 더 잘 쓸 수 있겠지.. 흐흐.. 🙂