'웹'에 해당되는 글 152건

AutoSet6 환경에서 SVN 설정하기

웹/웹.도움말
오토셋을 한번 설치하고 나면 별일없이 잘 돌아가기에 아주 유용하게 사용했습니다. 
또한 오토셋 카페지기이신 차오이(키놀)님이 도움을 주셔서 큰 어려움이 없이 사용했습니다. 

이 문서는 http://cafe.naver.com/autoset.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=402&를 참고하여 작성되었습니다. 
구버젼 문서를 줄이고 약간 추가한 수준입니다. 게시물에 등록된 사진은 참고용으로 위 주소에서 가져온 관계로 설명과는 다를 수 있습니다. 

1. AutoSet6(도나, 6.x) 설치 : 오토셋 6.3.1 전체 설치 파일(93.1MB) - 다운로드

2. Tortoise SVN 설치 : TortoiseSVN 1.7.1 설치, 한국어 언어팩 설치 - 다운로드

 3. 바탕화면에 설치된 "오토셋 6 매니저 실행" 아이콘을 클릭하고 웹서버와 SVN 서버를 실행합니다.

  웹서버 시작 : 오토셋 매니저 - 파일 > 웹서버 시작
  SVN 서버 시작 : 오토셋 매니저 - 파일 > SVN  시작
  시스템 서비스로 등록 :  오토셋 매니저 - 파일 > NT 서비스 바로가기 > "웹서버 서비스로 등록"을 클릭합니다. 


4. SVN 저장소 설정

AutoSet6에서 SVN 저장소 루트 디렉토리는 "오토셋 경로\AutoSet\repos" 입니다. 
 SVN  저장소 루트 디렉토리에 여러 개의 이름으로 필요한 수 만큼 다음과 같이 저장소를 만들수 있습니다. 

repos/aaa
repos/bbb
repos/ccc

도스창을 실행해서 저장소 위치로 이동합니다.

윈도우 [시작] - [실행] - cmd 입력 후 엔터

svnadmin create --fs-type fsfs [새로 만들 저장소의 이름"]

svnadmin create --fs-type fsfs project01 라고 입력해서 만들었습니다.
 
오토셋 경로/repos/project01 이라는 이름으로 디렉토리가 만들어 집니다. 


위 이미지는 autosetOrga 란 이름으로 저장소를 만든 예이며, 본인이 원하는 이름으로 만드시면 됩니다. 

 
제대로 생성이 되었는지 확인하기 위해 

svn checkout file:///AutoSet6/repos/project01  명령을 통해 확인할 수 있습니다.
체크아웃된 리비젼 0 라는 메시지가 나오면 됩니다.  

svnserve -d -r [저장소의 이름] 명령으로 SVN 서버를 기동할 수 있습니다. 
이 명령 실행시 도스창은 멈춰서 있게 됩니다.

참고문서 덧글에는 SVN 서버를 자동으로 구동하기 위해 SVNSERVManager 툴을 추천합니다만
제가 해보니 이 툴을 설치하고 제거해도 구동에는 문제가 없습니다.
오토셋6에서는 자동으로 실행되는 걸로 추측됩니다. 오토셋 매니저에 서비스 등록 메뉴가 없어서 사용해 봤습니다. 



새로 도스창을 열어서 다음 명령으로 SVN 구동을 확인할 수 있습니다. 

svn checkout svn://192.168.0.1/project01 



마찬가지로 체크아웃된 리비젼 0 라는 메시지가 나오면 잘 처리가 된겁니다. 
파일을 하나 만들어서 수정하고 커밋을 하고 나면 리비젼 숫자가 바뀝니다. 이건 Tortoise 설정후 해볼 수 있습니다. 

참고로 도스창에서 위 명령을 사용하면 C 드라이브에 사용자 계정 아래에 project01 이란 이름으로 디렉토리가 만들어지고 그 아래에 파일들이 만들어져서 저장(동기화)됩니다.



만들어진 저장소 디렉토리 하위를 보면 오토셋 경로/repos/conf/passwd  파일이 있는데 

[user] 문구 다음에 SVN 서버의 project01 저장소에 접속할 사용자 아이디와 패스워드를 입력합니다. 

user01 = user01password




오토셋 경로/repos/project01/conf/svnserve.conf 파일을 열어서 편집합니다. 

anon-access = none     <-- 익명 사용자 읽기권한 없앰
auth-access = write    <-- 인증자 쓰기 권한 허용

password-db = passwd   <-- 바로전 편집한 파일

realm = AutoSet Project01 Repository <-- 저장소 인증후 나오는 타이틀



5. TortoiseSVN 설정

TortoiseSVN을 설치하면 따로 프로그램 창이 만들어지지 않고 탐색기에 명령이 덧붙여집니다. 
탐색기 빈곳을 마우스 오른버튼을 눌러서 [TortoiseSVN]-[설정]을 선택하여 언어를 한국어로 바꿔줍니다.

마우스 오른버튼을 눌러서 SVN 체크아웃을 선택하여 저장소 URL 에 svn://192.168.0.1/project01 을 입력하고 확인 버튼을 누릅니다.

인증정보 저장 창이 나타나면 아까 작성한 사용자명과 암호를 입력하고 입력정보 저장을 체크박스를 클릭하고 확인 버튼을 누르면 인증이 완료되고 체크아웃이 됩니다. 

TortoiseSVN은 [SVN 커밋]과 [SVN 업데이트]의 의미를 잘 구분해 사용하면 사용에 큰 문제가 없습니다. 

TortoiseSVN  설정 부분은 다음을 기약해 봅니다.  맨 위에 표식된 참고문서를 참고하셔도 됩니다.


 
Name
Password
Homepage
Secret

리눅스 웹 관리툴

웹/웹.리눅스.SQL

LDAP Account Manager(LAM) : LDAP 웹 관리툴
http://www.ldap-account-manager.org/

안정버젼 데모 : http://www.ldap-account-manager.org/lam/templates/login.php
개발버젼 데모 : http://www.ldap-account-manager.org/lam-cvs/templates/login.php
패스워드 : lam


GOsa : php 기반 LDAP 웹 관리툴
http://alioth.debian.org/projects/gosa


LDAP Account Manager :  openLDAP 웹 관리툴
http://www.webmin.com/

데모 : http://webmin-demo.virtualmin.com/
아이디, 패스워드 : demo


SWAT : Samba 웹 관리 툴


Webmin : 컴포넌트 기반의 유닉스 웹 관리도구
http://www.webmin.com/


SMB2WWW : CGI-binary 기반의 Samba 클라이언트
http://www.scintilla.utwente.nl/users/frank/smb2www/


Davenport WebDAV-SMB Gateway : 웹 디스크  브라우저
http://davenport.sourceforge.net/


IntegraTUM WebDisk : 웹 디스크 브라우저
자바 서블릿과 jCIFS 라이브러리 사용(CIFS 프로토콜)
http://sourceforge.net/projects/webdisk/


여기까지는 기본적으로 Samba는 지원을 합니다.




phpLDAPadmin : php 기반 웹 LDAP 브라우저
http://phpldapadmin.sourceforge.net/


Apache Directory Studio : 자바로 작성된 LDAP 클라이언트 프로그램
http://directory.apache.org/studio/



참고 : http://www.samba.org/samba/GUI/

Name
Password
Homepage
Secret

CentOS 5.5 OpenLDAP 설치 및 환경설정

웹/웹.리눅스.SQL




1. openldap, openldap-servers, openldap-clients 패키지 설치

기본적으로 설치된 패키지는 openldap 이 설치가 되어 있어 이외에 다른 것들을 설치해야 합니다. 

yum -y install openldap openldap-servers openldap-clients

openldap-servers-2.3.43-12.el5_5.2
openldap-2.3.43-12.el5_5.2
openldap-clients-2.3.43-12.el5_5.2



2. /etc/openldap/slapd.conf 수정

86, 87줄 
suffix          "dc=my-domain,dc=com"
rootdn          "cn=Manager,dc=my-domain,dc=com"

suffix          "dc=mytempsite,dc=com"
rootdn          "cn=Manager,dc=mytempsite,dc=com"

92줄
# rootpw                {crypt}ijFYNcSNctBYg

92줄은 slappasswd 명령으로 패스워드를 만들어 복사해서 넣어줘야 합니다. 

/usr/sbin/slapadd 

slappasswd

New password:
Re-enter new password:
{SSHA}Gjm1sMoyAjFbdcxg7tACzHZ9qCkZ5DfB

rootpw          {SSHA}Gjm1sMoyAjFbdcxg7tACzHZ9qCkZ5DfB

#도 제거를 해야 합니다. 




/var/lib/ldap 디렉토리를 사용자 : ldap, 그룹 : ldap 인지 확인하고 다를 경우에만 수정합니다. 

chown ldap:ldap /var/lib/ldap




/etc/rc5.d/K73ldap 파일의 이름을 바꿔줍니다(필요하다면 /etc/rc3.d/K73ldap 도 처리합니다).

mv K73ldap S73ldap




x윈도우로 접속하여 "시스템"-"관리"-"인증"을 실행해서 인증을 합니다.
[사용자 정보] 탭에서 LDAP 지원 활성화 체크, [인증] 탭에서 LDAP 지원 활성화 체크



* 내부 인트라넷에서 도메인을 사용할 여건이 되지 않아서 리눅스 서버에 알리아스로 mytempsite.com 이라고 만들고 접속하는 윈도우 컴퓨터에서도 알리아스로 c:\windows\system32\drivers\etc\hosts 파일에 기재했습니다. 

127.0.0.1       localhost
192.168.1.210   mytempsite.com   



LDAP 데몬을 실행합니다. 

service ldap start 

서버 구동시 다음과 비슷한 오류가 발생한다면,
bdb_db_open: Warning - No DB_CONFIG file found in directory /var/lib/openldap-data: (2) Expect poor performance for suffix

cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown ldap:ldap /var/lib/ldap/DB_CONFIG
service ldap restart


여기까지입니다. 



아래에서는 로그에서 오류가 발생한 부분을 찾아 수정한(리눅스가 설치된 컴퓨터가 구형기종이어서) 부분입니다.

vi /var/log/messages

nss_ldap: failed to bind to LDAP server ldap://127.0.0.1/: Can't contact LDAP server

부팅시 MySQL 오류가 생겨서 /var/log/mysqld.log 파일을 확인했습니다.

100909 17:00:43  mysqld started
100909 17:00:43 [Warning] option 'max_join_size': unsigned value 18446744073709551615 adjusted to 4294967295
100909 17:00:43 [Warning] option 'max_join_size': unsigned value 18446744073709551615 adjusted to 4294967295
100909 17:01:44  InnoDB: Started; log sequence number 0 43655
100909 17:01:44 [Note] /usr/libexec/mysqld: ready for connections.
Version: '5.0.77-log'  socket: '/var/lib/mysql/mysql.sock'  port: 3306  Source distribution
100909 17:06:49 [Note] /usr/libexec/mysqld: Normal shutdown

해서 /etc/my.cnf 파일을 수정해주었습니다. 


# Uncomment the following if you are using BDB tables
bdb_cache_size = 64M
bdb_max_lock = 100000

bdb 관련 옵션으로 보이는데 일단 이걸 풀어주고 실행하면 문제가 없어보입니다.
Name
Password
Homepage
Secret

CentOS 5.5 openfire 설치

웹/웹.리눅스.SQL


영문 설치 가이드 <- 간략히 표기되어 그냥 한번 훑어 보는 정도로 사용

각종 플로그인


rpm 설치나 타르볼 설치나 그다지 차이가 없어 결국 rpm 설치를 선택했습니다. 

rpm -ivh openfire-3.6.4-1.i386.rpm


웹 클라이언트로 openfire 서버로 접속합니다. 포트에 9090을 붙여서 입력합니다. 
openfire 서버는 구동에 조금 딜레이가 있습니다. 5초 가량 지나서 접속해야 원활히 접속이 됩니다. 


1. Language Selection - 한글이 없으므로 영문 디폴트를 그대로 선택해서 클릭합니다.

2. Server Settings - 도메인 이름과 포트사용을 설정합니다. 
외부에서 접속가능한 도메인이 없으면 IP 번호를 넣어줍니다. 
9090, 9091 포트사용으로 방화벽에 포트를 추가합니다.

3. Database Settings - Mysql 사용으로 디폴트 선택을 그대로해서 클릭합니다. 
host 명에 mysql 서버가 동일 하드웨어라면 localhost 라고 입력해도 무방합니다. 
mysql 디비에 사용자명과 도메인이 기재되어야만 mysql 로 (외부) 접속이 가능합니다.

3-1. MySQL의 경우 접속 경로는 

jdbc:mysql://localhost:3306/openfire?useUnicode=yes&amp;characterEncoding=UTF8

이다. '?'부터 붙은 부분은 한글 사용으로 인해 붙여준다. 



어드민 콘솔로 접속시 ID는 'admin', 패스워드는 입력한 패스워드를 입력해도 접속이 안됩니다. 
rpm이나 tar.gz이나 모두 동일 증세를 보입니다. 다른 사람들은 그냥 된다고 해서 몇번이고 재설치를 하고 환경설정을 바꿔보고 DB로 접속해서 ofUser 테이블의 사용자 패스워드를 바꿔보고 온갖 삽질을 해서 찾아낸 결론은 '버그'입니다. 
그냥 openfire 재기동해서 접속하면 잘 됩니다. =.=


http://서버주소:9090/ 으로 접속하는데 시간 지연이 있지만 곧 접속가능합니다. 
admin에 패스워드를 입력하면 어드민 콘솔로 접속해서 'User/Groups' 메뉴에서 사용자 추가를 하면서 한글 사용자 이름을 사용해서 한글 출력을 확인합니다. 




'Plugins'  메뉴에서 'Available Plugins' 좌측 메뉴를 선택하고 필요한 플로그인을 선택합니다. 



- Registration

openfire는 관리자가 사용자를 등록하는 방식이지만 이 플로그인으로 사용자가 직접 등록이 가능합니다(이 플로그인이 활성화 되어 있으면 메신저 클라이언트에서 바로 가입처리가 가능합니다).

'User/Gropus' 메뉴에서 'Registration Properties' 부메뉴 클릭 후 'Enable users to register via a web page at http://192.168.1.210:9090/plugins/registration/sign-up.jsp' 체크박스에 체크를 선택합니다. 그러면 http://192.168.1.210:9090/plugins/registration/sign-up.jsp 로 접속해서 사용자가 직접 가입할 수 있습니다. 

가입자가 기본그룹에 포함되게 하기 위해서는 User/Groups - Groups - Create New Group 에서 그룹을 하나 생성('basic' 으로 작성)합니다. 그리고 Users 에서 좀전에 체크한 항목 바로 위의 'Enable automatically adding of new users to a group' 를 체크하고 세이브 버튼(save settings)을 눌러 주면 됩니다. 

단, 이 플로그인이 활성화된 이후 부터 가입자에 한해서 기본그룹으로 설정이 되므로 기존 가입자는 User/Groups - Groups 에서 본문 아래쪽의 Members of This Group 에서 Add User 항목에 일일히 유저명을 입력해 주어야 합니다. 


같은 그룹일때 자동으로 친구로 맺게 하기 위해서는 User/Groups - Groups 에서 그룹이름(basic)을 클릭해서 Enable contact list group sharing 을 클릭해서 설정 후 세이브 버튼을 누릅니다.





 





환경 서버 설정 

서버 환경 설정 

/opt/openfire/conf/openfire.xml 파일에서 마지막 부분에 있는 

<setup>true</setup>를 <setup>false</setup>로 바꾸면 재설정 가능합니다. 

<locale>en</locale>를 <locale>ko</locale>로 바꾸면 지역/타임존에서 한국 표준시로 표기가 됩니다. 기본 언어 설정에 '한글'을 선택하는 부분이 없으므로 여기서 처리를 한다. 
















Name
Password
Homepage
Secret

CentOS 5.5 mysql 설치

웹/웹.리눅스.SQL

yum 을 사용하여 

mysql 
mysql-server 
mysql-connector-odbc 
mysql-devel

파일을 설치합니다. 

# yum -y install mysql mysql-server mysql-connector-odbc mysql-devel



# cp /usr/share/mysql/my-huge.cnf /etc/my.cnf

my-huge.cnf 는 메모리가 1-2G 일 경우, 
my-large.cnf 는 512M 일 경우 사용합니다.

# cp /etc/my.cnf /etc/my.cnf.org 로 이름을 바꾸고 파일을 복사합니다.



복사한 my.cnf 파일에서 UTF8 인코딩을 위해 다음을 추가해줍니다. 

[client]
default-character-set = utf8

[mysqld]
init_connect = SET collation_connection = utf8_general_ci
init_connect = SET NAMES utf8
default-character-set = utf8
character-set-server = utf8      # 새 DB 생성시 Character-set 옵션 없을시 기본값
collation-server = utf8_general_ci

[mysqldump]
default-character-set = utf8

[mysql]
default-character-set = utf8



DB 파일 위치 
/var/lib/mysql/mysql/


서비스 시작 또는 재기동
/etc/rc.d/init.d/mysqld start     or   /etc/rc.d/init.d/mysqld restart
or
service mysqld start     or    service mysqld restart


mysql 접속 및 문자셋 확인
$ mysql -u root

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.0.77-log Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> show variables like 'c%';
+--------------------------+----------------------------+
| Variable_name                  | Value                                 |
+--------------------------+----------------------------+
| character_set_client           | utf8                                    |
| character_set_connection   | utf8                                    |
| character_set_database      | utf8                                    |
| character_set_filesystem    | binary                                |
| character_set_results         | utf8                                    |
| character_set_server          | utf8                                    |
| character_set_system        | utf8                                     |
| character_sets_dir             | /usr/share/mysql/charsets/ |
| collation_connection          | utf8_general_ci                     |
| collation_database            | utf8_general_ci                     |
| collation_server                | utf8_general_ci                     |
| completion_type               | 0                                        |
| concurrent_insert              | 1                                        |
| connect_timeout               | 10                                       |
+--------------------------+----------------------------+
14 rows in set (0.01 sec)

mysql> use mysq;
Database changed
mysql> 


my.cnf환경설정을 바꾸어 주지 않으면 다음과 같이 출력된다. 
+--------------------------+----------------------------+
| Variable_name                  | Value                                |
+--------------------------+----------------------------+
| character_set_client           | latin1                                 |
| character_set_connection   | latin1                                 |
| character_set_database      | latin1                                |
| character_set_filesystem    | binary                               |
| character_set_results         | latin1                                |
| character_set_server          | latin1                                |
| character_set_system        | utf8                                   |
| character_sets_dir             | /usr/share/mysql/charsets/ |
| collation_connection          | latin1_swedish_ci                |
| collation_database             | latin1_swedish_ci               |
| collation_server                 | latin1_swedish_ci               |
| completion_type                | 0                                      |
| concurrent_insert               | 1                                      |
| connect_timeout                | 10                                     |
+--------------------------+----------------------------+


root 암호 초기화
mysql> USE mysql;
mysql> UPDATE user SET password=password('new_password') WHERE user='kella';
mysql> FLUSH privileges;

또는 
/usr/bin/mysqladmin -u root password 'new-password'


데이터베이스 선택 및 보기
mysql> USE mysql;
mysql> SELECT Host, User, Password FROM user;


사용자 추가
- 중요 외부에서 접속할 경우 이를 위해 사용자에 해당하는 도메인을 등록해야합니다.
- 서버 주소의 경우 localhost, %, 127.0.0.1 도 같이 처리해 줍니다. 
- 외부 접속은 'localhost'  대신에 '%' 를 사용합니다. 

mysql> INSERT INTO user (Host, User, Password) VALUES ('localhost', '유저명', password('유저패스워드'));
mysql> INSERT INTO user (Host, User, Password) VALUES ('127.0.0.1', '유저명', password('유저패스워드'));
mysql> INSERT INTO user (Host, User, Password) VALUES ('%', '유저명', password('유저패스워드'));
mysql> FLUSH privileges;


사용자 삭제
mysql> DELETE FROM user WHERE user='root'  and host='%';


데이터베이스 추가 및 권한 주기
- 모든 권한시 데이터베이스명.* 대신 *.* 로 처리합니다. 

mysql> CREATE DATABASE 데이터베이스명;
mysql> GRANT ALL privileges ON 데이터베이스명.* TO 유저명@localhost IDENTIFIED BY '유저패스워드';
mysql> GRANT ALL privileges ON 데이터베이스명.* TO 유저명@127.0.0.1 IDENTIFIED BY '유저패스워드';
mysql> GRANT ALL privileges ON 데이터베이스명.* TO 유저명@'%' IDENTIFIED BY '유저패스워드';

외부접속을 위해 host 로 % 문자를 사용합니다. 
간혹 구문중 % 를 잘못 입력하거나 패스워드를 유저 패스워드가 아닌 root 패스워드를 입력하기도 합니다. 
이 경우 % 를 다시 바꿔주면 됩니다.

mysql> UPDATE INTO user SET Host='%' WHERE user='유저명';
mysql> FLUSH privileges;

이렇게 해주면 외부입력 처리가 됩니다. 


외부입력시 특정사용자(sundal)에게 모든 권한 주기
mysql> grant all privileges on *.* to sundal@"%" identified by 'sundal' with grant option;


mysql 테이블 명 변경
rename table 원래 테이블명 to 바꿀테이블명;
alter table 테이블명 rename 바꿀테이블명;

1.원래 있던 테이블을 이름만 바꿔서 새로 만들고 싶을때
create table 새테이블명 select * from 원본테이블명

2.테이블 스키마가 같은 경우 데이터 복사할때
insert into tableA select * from tableB

3.테이블이 다른 곳에 복사
create table tableA.fld as select from tableB.fld
create table project.zipcode as select from exam.zipcode;



두이 2011.12.31 20:53 신고 URL EDIT REPLY
깔끔하게 정리해 주신 자료 덕분에 무사히 MySQL Database를 설치하고 편리하게 작업을 진행할 수 있었습니다. 좋은 정보 올려주셔서 정말 감사합니다. :)
Favicon of http://gudle.net BlogIcon 애부리기 구들 | 2012.01.01 17:14 신고 URL EDIT
도움이 되셨다니 저도 좋네요.

좋은 성과 내시길 바랍니다.
Name
Password
Homepage
Secret

티스토리 툴바