유닉스에서 다른사람에게 말하려면 명령어가..??

"mesg"라는 명령어는 메시지 수신 허용 여부를 나타낸다.

"mesg"를 입력했을 때 "is y"가 출력되면 메시지 수신을 허용하고, "is n"이면 허용하지

않는다.

"mesg y" 또는 "mesg n"이라고 입력하면 값을 바꿀 수 있고, 이 값을 바꾸면 위의 "+", "-"가 바뀐다. 중요한 작업을 할 때 계속 message가 날아오면 귀찮고, 지장을 주기 때문에 이런 경우를 방지하기 위해 사용한다.

이제 "write" 기능을 보자. "write"는 login한 두 사용자끼리 정보를 주고 받을 때 사용한다.

물론 상대방의 mesg값이 "n"이면 "message"를 보낼 수 없다.

"write { User | User@Host } [Line]"

option Host는 local 또는 remote Hostname을 기재한다.

Line은 "who" 했을 때 보이는 두번째 column이다. 예를 들면 pts/0 등.

이는 같은 이름으로 login한 사용자가 많을 때 특정인에게 지정하기 위해 사용한다.

"test"와 "test1"이라는 user를 사용한 예를 보자.

사용자 "test"가 다음과 같이 입력하면

/home/users > write test1

"test1"의 단말에는 아래와 같은 message가 뜬다.

/home/users/test1 >

Message from test on sun (pts/5) [Tue May 21 13:37:38 KST 2005] ...

이때 사용자 "test"가 key in후 Enter를 치면 "test1"의 단말에 그 내용이 나타난다. message는 enter 키를 칠 때마다 전달된다. 그리고 "test1"도 "write test"라고 하면 서로 동시에 message를 주고 받을 수 있다.

메시지 전달을 종료하려면 ctrl+d를 누르면 되고, 이때 상대방의 단말에는 가 출력된다.

미리 작성한 파일의 내용을 전문으로 해서 보낼 수 있는데, login 하지 않은 사용자에게는 전문을 보낼 수 없다. login 하지 않은 사용자에게는 "mail"이라는 명령어를 사용하여 전달한다. 그럼 파일의 내용을 전문으로 보내는 방법을 보자.

작성된 파일이 Letter이라면

/home/users > write test1 < Letter

"test1"의 단말에는 다음과 같이 출력된다.

/home/users/test1 >

Message from test on sun (pts/5) [Tue May 21 14:21:48 CST 2005] ...

안녕,test1

"write" 명령어 사용 중에 유닉스 명령어를 실행할 수도 있는데, 유닉스 명령어 앞에 "!"를 붙이면 되고, "!"는 첫번째 column에 있어야 한다. 명령어 실행 결과는 상대방의 단말에 출력 되지 않는다.

/home/users > write test1

!ls

Mail hjr kdk mjjeon soft_link ygltst1.txt


"cd" 등과 같은 몇몇 명령어는 실행되지 않는다.

"wall"이라는 명령어도 있는데, 이는 login한 모든 사용자에게 메시지를 보내는 명령어이다. 아래와 같이 입력하면 login한 모든 사용자에게 "전조 바보" 라는 메시지를 보낸다.

/home/users > wall

전조 바보!

ctrl+d

리눅스에서 /etc/httpd/conf/httpd.conf 의 환경설정파일 안의 내용

httpd.conf 파일은 크게 세부분으로 나누어져 있다.

Section 1: Global Environment : 아파치 전체적인 영향이 미치는 설정
Section 2: 'Main' server configuration : 주 서버에 대한 설정
Section 3: Virtual Hosts : 가상 호스트에 대한 설정

자, 그럼 이제부터 이 아파치웹서버의 모든 환경을 설정하는 아파치환경파일 httpd.conf파일의 설정방법에 대해서 상세히 알아보도록 하자.

### Section 1: Global Environment

전제환경설정 파트로 Section 1에서 설정하는 것들은 아파치 웹서버에
전반적인 영향을 미친다.

ServerType standalone

서버의 구동방법으로는 standalone과 inetd방식이 있는데, standalone
방식은 하나의 웹데몬(아파치서버)이 클라이언트의 접속을 모두 처리하는
방식으로 응답속도가 빠른 방법으로 주로 이방식을 사용한다. inetd 방식은
inetd라는 시스템의 /etc디렉토리 끝에 존재하는 inetd라는 슈퍼데몬이
클라이언트의 접속요구가 있을 때마다 웹서버를 구동하는 방식이다.
일반적으로 응답속도가 빠르고 효율적인 standalone으로 설정하여 사용한다.


ServerRoot "/usr/local/apache"

아파치서버의 홈디렉토리를 지정하며 절대경로로 지정한다. 이후로 나오는
대부분의 패스들은 이 경로에 대한 상대경로로 지정이 된다. 예를 들어
환경설정파일, 에러로그파일등의 상대경로의 기준이 되는 위치이다.


LockFile logs/accept.lock

아파치 컴파일시 USE_FCNTL_SERIALIZED_ACCEPT나
USE_FLOCK_SERIALIZED_ACCEPT으로 컴파일 했을 때 사용되는
LockFile의 경로지정시에 사용된다. 가급적 기본값으로 사용한다.


PidFile logs/httpd.pid

PidFile 설정은 ServerType을 Standalone으로 설정했을때만 유효한
것으로 아파치 서버의 프로세스가 생성되어 있을 때 그 프로세서ID(PID)를
기록하는 파일을 지정한다. 당연히 아파치서버가 재시작되거나 과부하로
인해 PID가 바뀌게 될 경우에는 이 파일의 PID값도 바뀌게 된다. 즉
다시말해서 여기서 지정된 파일(httpd.pid)에 실행되고 있는 아파치서버의
프로세스번호(PID)값이 기록된다고 하면 정답이다. ServerRoot를 기준으로한
상대경로로 지정된다. 절대경로로 지정하려면 "/"로 시작하는 절대경로를
적어주면 된다.


ResourceConfig conf/srm.conf
AccessConfig conf/access.conf

아파치 서버의 환경설정파일은 3개이au httpd.conf, srm.conf, access.conf
가 그것이다. 그러나 하나의 설정파일로 하는 것이 효율적이기 때문에
지금은 httpd.conf파일안에 3개의 파트(Section)로 나누어서 하나의
파일안에서 설정을 하고 있다. srm.conf와 access.conf파일의 내용은 현재
비어있는 상태이지만, 필요하다면 이 파일 내에도 설정을 할 수 있다.
아파치 서버가 실행이 될 때는 httpd.conf, srm.conf, access.conf 순으로
언제나 이 3개의 파일을 모두 읽고 난뒤에 실행이 되기 때문이다. 만약 이
두 개의 파일을 서버가 무시하도록 하려면 다음과 같이 하거나 "#"으로 붙여
두면 주석처리되어 무시된다.

ResourceConfig /dev/null
AccessConfig /dev/null


Timeout 300

클라이언트의 요청에 의해 서버와 연결이 되었을 때 클라이언트와
서버간에 아무런 메시지가 발생하지 않았을 때 오류로 처리될 시간을
초단위로 설정한다. 초기값은 1200이며 보통은 300초로 지정을 한다.
네트웍의 속도가 나쁠수록 수치값은 높게 설정하는 것이 좋다.

KeepAlive On

접속한 채로 특별한 요청없이 지속적인 연결을 허용할 것인지를 설정한다.
허용하지 않으려면 off

MaxKeepAliveRequests 100

클라이언트가 접속된 시간동안 아파치서버에 요청할 수 있는 최대의
개수를 지정한다. 0을 지정하면 제한없음을 의미하며, 서버의 성능향상을
위하여 가능한 높은 값이 좋다.

KeepAliveTimeout 15

아파치 서버는 같은 접속상태의 클라이언트에서 여기서 지정한 초만큼의
요청이 없었을 때 접속을 끊게 된다.

MinSpareServers 5
MaxSpareServers 10

아파치 웹서버는 성능향상과 빠른 응답속도를 위해 유휴서버(현재
서비스대기 중인 프로세스)를 만들게 되는데 이 유휴서버의 개수는 시스템의
상황에 따라 달라지게 된다. 유휴서버가 MinSpareServers의 개수(5) 보다
적게되면 추가로 생성을 하게 되며 MaxSpareServers의 개수(10)보다 많게
되면 죽이게 된다. 즉, 유휴서버의 개수를 적절히 조절하기 위한 것이라
생각하면 된다.


StartServers 5

아파치 웹데몬이 구동될 때 자식프로세스를 몇 개로 할 것인가를
지정한다. 시작할 때 동시에 띄우게 될 웹데몬의 개수이다. 그러나 웹데몬이
구동되고 난 뒤엔 시스템의 상황(부하율등)에 따라 대부분 합리적인
개수만큼 동적으로 생성되었다가 죽기도 하므로 큰 의미를 가지는 것은
아니다.

MaxClients 150

아파치웹서버에 접근할 수 있는 클라이언트의 최대갯수는 이 상한값으로
제한한다. 여기서 지정한 개수이상의 클라이언트의 요청이 생긴다면
아파치는 응답하지 않고 이 요청을 무시한다. 이를 제한하는 이유는
시스템의 자원을 아파치 웹서버가 무한정 차지하는 것을 방지하기 위한
것이다.

MaxRequestsPerChild 30

아파치 웹서버의 자식프로세스들이 클라이언트의 요청 개수를 지정한다.
만약 자식프로세스가 이 값만큼의 클라이언트요청을 받았다면 이
자식프로세스는 자동으로 죽게된다. 이 값이 0으로 설정이 된다면
자식프로세스가 자동으로 죽는일은 없을 것이다. 그러나 0아닌 다른 값으로
설정함으로서 프로세스의 수를 적절히 조절하여 시스템의 부하조절과
자원낭비를 어느정도 방지 할 수 있다.

Listen 3000
Listen 12.34.56.78:80

시스템의 기본값이외에 다른 IP Address와 포트에 대해서도 연결할 수
있도록 해 준다. 환경설정파일(httpd.conf) 맨뒤에 나오는 가상호스트(Virtual
Host)부분에서 설정되는 가상호스트를 설정하기 위해 필요하다.


BindAddress *

서버가 응답할 수 있는 IP Address를 설정하는 것이다. 하나의 시스템에
있는 아파치웹서버 하나로 여러 웹서버처럼 관리하는 웹호스팅서비스등에서
많이 이용하는 것으로 여러 IP Address를 인식할 수 있게 한다. "*"으로
설정이 되었다면 모든 IP Address에 대해 응답할 수 있으며, IP Address를
지정한다면 지정한 IP Address에 대해서만 응답할 수 있게 된다. 여러개의
IP Address를 ISP로부터 할당받아서 웹호스팅서비스를 하고자 한다면
이부분에서 지정해 주면된다. 이 설정파일의 맨 뒷부분에 나오는
~부분의 IP bind 가상호스트부분에서 아파치
웹서버가 응답할 수 있도록 하려면 여기서 IP Address를 지정해 줘야 한다.

ExtendedStatus On

server-status로 아파치웹서버의 상태를 상태를 모니터링 할 때
"자세한상태정보"기능을 제공할 것인지(On) 아닌지(Off)를 설정하는 것이다.

### Section 2: 'Main' server configuration

Section 2에서 설정하는 항목들은 아파치의 주된서버가 사용할 값들을
지정한다. 에 정의된 가상호스트들에서 지정하지 않는 것은
여기서 지정된 값이 기본값으로 적용된다. 또한 여기서 지정하는 값을 각
내에도 지정할 수 있으며 이경우엔 각내에서
지정한 값이 우선적용된다.

Port 80

아파치웹서버의 기본포트를 지정한다. 특별하게 사용하는 것이 아니라면
80번으로 해둬야 한다. 사용가능한 포트는 0 ~ 65535이며 1024이하의
포트번호는 시스템에서 특별하게 예약되어 있으므로 80번 이외의 다른
포트를 사용하려면 1024이상의 포트번호를 지정해서 사용해야 할 것이다.
특별한 지정이 없다면 에 정의된 각각의 가상호스트들의
기본포트가 된다. 만약 내에서 Port가 지정이 된다면 그
포트번호가 우선한다.

(특별히 PORT를 따로 지정해 줄 필요가 있을 때는 따로 지정해 주며,
이때는 웹서버로 접근할 때 반드시 따로지정한 PORT번호로 접근해야 한다.
예를들어 Port 1234로 지정했다면, 접근시 : http://www.domain.co.kr:1234
로 접속해야한다. 단, 80번은 default이므로 Port번호를 입력하지 않아도
도메인만으로 그냥 접근할 수 있다. 예: http://www.domain.co.kr )

User nobody
Group nobody

아파치 웹데몬이 요청을 받았을 때 여기서 지정한 user와 group으로
응답을 하게된다. 이 설정은 ServerType이 Standalone방식이며, 아파치의
실행이 root권한으로 실행이 되었을 때 유효한 것이다. 많은
웹서버관리자들이 nobody로 설정을 해 두고 있으며, 만약 시스템에 nobody
user가 없다면 새로생성(useradd)을 해야 할 것이다. 단, root로 설정하는
것은 절대로 있어서는 안되며 nobody이외의 다른 시스템사용자 id로 지정을
한다면 정말 신중히 모든면(시스템 보안 및 자원사용등)에서 깊게 고려를
해봐야 한다.

ServerAdmin webmaster@www.domain.co.kr

여기서 지정하는 email address는 웹문서 로딩에러등의 문제에서
클라이언트측으로 보내질 메일주소값이다. 대부분
웹서버관리자의 email address로 설정을 한다.

ServerName new.host.name

클라이언트에게 보여주는 호스트이름을 지정한다. www를 쓰지않는
호스트에서 www를 쓰는 것처럼 보이게 할 수 있다. 예를 들어
bbs.manualand.co.kr을 www.manualand.co.kr로 지정해서 쓸 수 있다.
이곳에 IP Address를 적게 되면 클라이언트에는 Ip Address를 보여준다.

DocumentRoot "/usr/local/apache/htdocs"

아파치 웹서버의 웹문서가 있는 경로를 지정한다. 예를 들어
"http://www.manualand.co.kr/index.html"의 초기 문서라면 이 초기문서의
절대 경로는 여기서 지정된 "/usr/local/apache/htdocs/index.html"이 된다.
경로의 맨 마지막에 "/"를 추가해서는 안된다. Alias를 사용하여 다른 위치를
지정할 수도 있다.


Options FollowSymLinks
AllowOverride None

에서 지정되는 값에 대한 옵션은 다음과 같은 의미를 가지고
있다.
None : 일단 모든허용을 하지 않는다.
All : 모든허용을 한다.
Indexes :
Includes :
FollowSymlinks :
ExeCGI :
MultiViews :


UserDir public_html

하나의 아파치 웹서버에서 여러 사용자의 홈페이지를 별도로 만들어
관리할 때 필요한 개별 가입자의 홈페이지 디렉토리이름이다. 예를 들어
sspark이란 계정가입자의홈페이지는 "http://manualand.co.kr/~sspark"라는
홈페이지를 가지고 있을 때 sspark의 계정에서 "public_html"이란
디렉토리가 홈디렉토리가 되어 이 디렉토리에 있는 초기문서 index.html을
불러서 보여주게 된다.


AllowOverride FileInfo AuthConfig Limit
Options MultiViews Indexes SymLinksIfOwnerMatch
IncludesNoExec

Order allow,deny
Allow from all

MOVE LOCK UNLOCK>
Order deny,allow
Deny from all

계정사용자의 홈페이지(public_html)의 접근에 대한 옵션을 지정한 것이다.


DirectoryIndex index.html

디렉토리만을 지정했을 경우에 그 디렉토리에서 찾게될 문서의 순서를
지정해 준다. 즉, 디렉토리 이름만을 지정하더라도 여기서 지정한
index.html을 찾아서 웹브라우즈에 보여준다. 여러개의 파일을 지정할 수
있으며, 이런 경우에는 순서대로 찾아서 보여준다. 예를 들어
"DirectoryIndex index.html index.htm"로 지정했다면 먼저 "index.html"을
찾아서 있다면 이 파일을 로딩하고, "index.html"이 없다면 "index.htm"을
찾아서 로딩해 준다.

AccessFileName .htaccess

디렉토리별로 접근제어할 정보(ID, Password)를 담고 있는 파일을
지정한다. 디렉토리별로 인증을 거쳐서 접근할 수 있는 설정을 하기위한
것이다. 예를 든다면 어떤 홈페이지의 전부나 혹은 일부에로 접근하려고 할
때 ID, Password를 묻는 창이 뜨면서 맞게 입력한 경우에만 접근허용하는
것이다. 보안상의 이유로 이 파일의 이름을 다른 이름으로 바꾸로 싶다면
".htaccess"대신에 다름이름을 적어주면 된다.


Order allow,deny
Deny from all

바로위에서 설정한 파일(".htaccess")의 내용을 볼 수 없게 할 때 사용하는
옵션이다. 보안상의 이유로 이 옵션은 설정해 두는 것이 좋다. 만약 이
옵션을 주석처리해 둔다면 ".htaccess"파일에 대한 보안은 누구도 장담할 수
없을 것이다.


UseCanonicalName On

TypesConfig conf/mime.types

웹서버의 mime type을 지정한 파일을 지정한다. mime.types파일은 서버에
의해 리턴될 수 있는 파일명과 mime형식을 기술해 놓은 파일이다.

DefaultType text/plain

mime.types 파일에 정의 되어있지 않은 파일형식에 대한 요청을 받았을 때
알 수 없는 문서타입에 대하여 사용할 기본적인 mime 타입을 정해둔다.


HostnameLookups Off

웹서버의 로그(access_log)를 지정하는 Format에서 "DNS Lookup"으로
지정하였을 때, domain으로 남길 것인가, IP Address로 남길 것인가를
지정한다. Default로 Off는 IP Address로 남기는 것이며, Domain으로 변경할
필요가 없으므로 on으로 설정한 것보다는 속도가 조금빠르다.on으로 하게
되면 IP address를 IP Domain으로 변환해야 하므로 속도가 조금 느릴 수
있다.

ErrorLog logs/error_log

아파치 웹서버의 에러로그 기록파일을 지정한다. 참고할 사항은 맨
마지막에 설정하는 부분에서 각서버에 대한 에러파일을
지정해 두지 않으면 그에 대한 에러로그도 여기에 기록되며, 지정해 두게
되면 그에 해당하는 로그는 이 파일에 기록되지 않는다.

LogLevel warn

바로위에서 설정한 에러로그 파일에 얼마나 자세하게 적을 것인지를
결정한다. 다음에 해당하는 순서대로 중요도가 정해진다. " debug → info →
notice → warn → error → crit → alert → emerg "

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\"
\"%{User-Agent}i\"" combind
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

바로 아래에서 사용할 CustomLog에서 사용할 몇가지 로그형식의 별명을
정한 곳이다.
웹서버의 관리자나 서버관리자는 이 부분을 특히 유심히 봐둬야 한다.
웹서버의 로그를 어떤 식으로 남길 것인가를 결정하는 Format을 지정하는
곳이다. 원하는 정보를 지정해서 볼 수 있으므로, 관리자에게 필요한
Format으로 설정해야 하며, 또한 접속통계를 내기에 적당한 Format으로
설정해 둬야 한다.

CustomLog logs/access_log common

위에서 정한 로그형식(여기선 common)대로 로그를 남기게 된다.
맨마지막에서 지정하는 부분에서도 아파치 1.3.9버전 부터는
CustomLog를 가상호스트별로 지정할수 있도록 CustomLog를 제공한다.
에서 CustomLog를 지정하지 않으면 여기서 지정한 형식대로
로그를 남기게 되며 부분에서 CustomLog를 지정했을
경우에는 여기서 지정한 로그형식은 무시된다.

#CustomLog logs/referer_log referer
#CustomLog logs/agent_log agent
#CustomLog logs/access_log combined

위에서 지정한 4가지의 로그형식(combind, common, referer, agent)중에서
원하는 부분의 #(주석행)을 제거하면 지정된다.

ServerSignature On

서버가 생성하는 문서(error d0cuments, FTP directory listings,
mod_status and mod_info output etc., but not CGI generated d0cuments)의
trailing footer line의 설정을 가능하게 한다.

Alias /icons/ "/usr/local/apache/icons/"

필요한 만큼의 디렉토리 별칭을 만들어 쓸 수 있다. 사용하는 형식은
다음과 같다.
Alias fakename(가상이름) realname(진짜이름)

ScriptAlias /cgi-bin/ "/usr/local/apache/cgi-bin/"

ScriptAlias는 서버스크립트를 포함한다. ScriptAlias는 실제디렉토리 안에
들어있는 문서를 서버에 의해 응용프로그램으로 취급되어 실행되는 것을
제외하고는 근본적으로 Aliases와 같다.


IndexOptions FancyIndexing

IndexOPtions는 디렉토리목록을 표시할 때 사용할 옵션을 지정한다.
Standard는 표준적인 디렉토리를 나타내며, FancyIndexing은 좀더 예쁜
디렉토리목록을 표시해 준다.

아래에서 지정하는 AddIcon으로 시작하는 설정은 바로위에서 설정한
디렉토리인덱싱 옵션을 FancyIndexing으로 한 경우에 해당하며 디렉토리
목록을 표시할 때 각 파일 확장자에 따라서 어떤 아이콘을 선택하여 보여줄
것인지를 지정한다.

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*

AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core

AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^


DefaultIcon /icons/unknown.gif

여기서 지정한 확장가가 아닌 경우에 여기서 지정한 기본아이콘으로
보여준다.

AddDescription "GZIP compressed d0cument" .gz
AddDescription "tar archive" .tar
AddDescription "GZIP compressed tar archive" .tgz

AddDescription은 서버가 생성한 인덱스의 파일 뒤에 간단한 설명을
표시할 때 사용한다. 이 설정은 IndexOptions가 FancyIndexing으로
설정되었을때만 표시되며, 설정형식은 다음과 같다.
형식 : AddDescription "표시할 설명" 파일확장자

ReadmeName README

ReadmeName은 디렉토리목록표시 뒤에 붙여서 보여줄 README파일의
이름을 지정한다.(일종의 꼬릿말)

HeaderName HEADER

HeaderName은 디렉토리목록표시 앞에 붙여질 파일의 이름을 지정한다.
(일종의 머릿말)

IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t

디렉토리목록을 인덱싱할 때 제외할 파일명을 지정한다. 즉 디렉토리
목록에 포함하지 않을 파일을 지정한다. 쉘스타일의 와일드카드(*, ?)가
허용된다.

AddEncoding x-compress Z
AddEncoding x-gzip gz tgz

AddEncoding은 특정브라우즈(Mosaic/X 2.1+)에서 받고있는 중에 정보에
대한 압축해제를 할 수 있도록한다. 단 모든 웹브라우즈에서 이 기능을
제공하는 것은 아니다.

AddLanguage en .en
AddLanguage fr .fr
AddLanguage de .de
AddLanguage da .da
AddLanguage el .el
AddLanguage it .it

AddLanguage는 문서의 언어를 지정하게 한다.

LanguagePriority en fr de

언어의 우선순위를 내림차순으로 지정한다.

AddType application/x-httpd-php3 .php3
AddType application/x-httpd-php3-source .phps
AddType application/x-tar .tgz

AddType은 mime.types의 실제 편집없이도 mime을 설정할 수 있다.

AddHandler cgi-script .cgi

AddHandler는 파일확장자를 처리기(Handler)에 매핑(연결)시켜주게 된다.

AddType text/html .shtml
AddHandler server-parsed .shtml

SSI(Server Side Include)문서를 인식하게 하기위한 설정이다. SSI코드가
들어가 있는 문서는 확장자가 *.shtml이다. 시스템의 날짜와 카운터등
CGI프로그램을 하지 않아도 HTML문서에서 단 몇줄로 CGI의 효과를 낼 수
있는 SSI기능을 인식하게끔 하는 설정이다. "7장. 아파치와 SSI"편에서 자세히
설명되어 있다.


#Format: Action media/type /cgi-script/location
#Format: Action handler-name /cgi-script/location

Action은 매칭되는 파일이 호출될때마다 스크립트를 실행시킬 수 있도록
미디어 타입을 정의한다.

MetaDir .web

MetaDir은 아파치가 찾을 메타정보파일들의 디렉토리이름을 지정한다. 이
파일들은 문서를 전송할 때 포함되는 HTTP 헤더정보가 포함되어 있다.

MetaSuffix .meta

MetaSuffix는 메타정보를 포함하고 있는 접미어의 이름을 지정한다.


에러발생시 응답을 정의할 수 있는 방법을 3가지 나타내고 있다.

1) 일반적인 텍스트

ErrorDocument 500 "The server made a boo boo.

2) 지역적인 방향전환

ErrorDocument 404 /missing.html
ErrorDocument 404 /cgi-bin/missing_handler.pl

3) 외부 방향전환

ErrorDocument 402
http://some.other_server.com/subscription_info.html


다음의 BrowserMatch는 keepalives기능을 쓰지못하게 하며 HTTP
헤드방식을 설정한다.

BrowserMatch "Mozilla/2" nokeepalive

이 설정은 Netscape 2.x 또는 이를 따르는 브라우즈에 대하여 KeepAlive
기능을 쓰지 못하게한다.

BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0
force-response-1.0

이 설정은 잘못구현된 HTTP/1.1과 301또는 302반응에 대하여
KeepAlive를 적절히 제공하지 못하는 마이크로소프트 인터넷익스플로러
4.0b2d에 관한 것이다.

BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0

위의 3가지 설정은 기본적인 1.1반응도 처리하지 못하며 HTTP/1.0 스팩을
제한하고 있는 브라우즈에 대하여 HTTP/1.1반응을 하지 못하게 한 것이다.


SetHandler server-status
Order deny,allow
Deny from all
Allow from www.manualand.co.kr

서버의 상태를 점검할 수 있게하는 설정이다. 이는
"http://www.manualand.co.kr/server-status"와 같은 형식으로 서버의 상태를
점검할 수 있다. "6장. 아파치서버 모니터링"편에서 자세히 설명되어 있다.
여기서 지정한 "SetHandler server-status"의 설정으로 인해 서버
모니터링을 할 수 있는 것이다.


SetHandler server-info
Order deny,allow
Deny from all
Allow from www.manualand.co.kr

이설정을 위해서는 mod_info.c가 적재되어야 하며, 이는
"http://www.manualand.co.kr/server-info"와 같은 방식으로 서버의 정보를
볼 수 있다. 위에서 설정한 server-status와 함께 실행중인 웹서버의
상태점검을 위한 것이다.


Deny from all
ErrorDocument 403 http://phf.apache.org/phf_abuse_log.cgi

아파치 1.1이전 버전의 오래된 버그에 대한 악용이 있을시에는 지정한곳
(http://phf.apache.org/phf_abuse_log.cgi) 으로 방향을 전환시킨다.



ProxyRequests On

아파치 웹서버를 Proxy서버로 사용할 때 on을 해줘야 한다. 즉
프락시서버 지시자로서 프락시서버를 on 시킨다.


Order deny,allow
Deny from all
Allow from .your_domain.com

ProxyVia On

HTTP/1.1 "Via:"헤드처리를 활성화시킬 것인지 비활성화 시킬것인지를
지정한다. Off, On, Full, Block중 하나가 올 수 있으며 Full은 서버버전을
포함하며, Block은 나가는 모든 것에 대해 Via:헤더를 제거한다.

CacheRoot "/usr/local/apache/proxy"
CacheSize 5
CacheGcInterval 4
CacheMaxExpire 24
CacheLastModifiedFactor 0.1
CacheDefaultExpire 1
NoCache a_domain.com another_domain.edu joes.garage_sale.com

이 설정은 캐시기능을 활성화 하기 위한 것이다.

### Section 3: 가상호스트 설정

여러분의 시스템에서 여러개의 도메인이나 호스트네임을 설정하여
관리하고자 한다면 부분을 설정해 줘야 한다. 가상호스트에
대한 정보는 http://www.apache.org/docs/vhosts/를 참조해 보면 좀더
자세한 정보를 얻을 수 있다. '-S'옵션을 사용함으로써 가상호스트의 설정에
대한 점검을 할 수 있다. name-based 가상호스트를 사용하길 원한다면
적어도 한 개이상의 IP Address를 정의할 필요가 있다. "4-2절의 내용"과
"10장.웹호스팅 서비스를 위한 가상호스트"편에서 자세히 설명되어 있다.

NameVirtualHost 12.34.56.78:80
NameVirtualHost 12.34.56.78


ServerAdmin webmaster@manualand.co.kr
DocumentRoot /home/sspark/public_html
ServerName www.manualand.co.kr
ErrorLog /home/sspark/public_html/aw/error_log
CustomLog /home/sspark/public_html/aw/access_log common

ServerAdmin은 해당서버의 관리자 전자우편이며,
DocumemtRoot는 해당서버의 홈디렉토리이며,
ServerName은 해당서버의 도메인이며,
ErrorLog는 해당서버의 에러파일 위치이며
CustomLog는 로그파일위치와 포맷을 지정한 것이다.


Default 가상호스트 설정으로 위에서 설정되지 않은 다른 모든 호스트에
대해서 응답을 하고자 할 경우설정해 준다.

NC10에 Mac OS X Leopard 설치하기.

11 8, 2008 10:02
현재 나와있는 Atom CPU 를 사용하는 넷북은 대부분 별다른 어려움 없이 OS X 를 설치하는것이 가능하다.
하지만 ODD 가 내장되어 있지 않은 관계로 조금의 삽질이 필요하다.
따라서 설치의 방법은 두가지의 경우로 해볼 수 있다.
우선 Acronis Diskdirector 같은 프로그램을 이용해서 OS X 용 파티션을 적절한 크기로 만든다.
그리고 그 파티션을 Active로 만들어주고 진행을 하면 되는데, 이후엔 바로 XP 로는 부팅할 수 없다.
복잡하게 명령어나 어플리케이션 실행 없이 간단하게 다시 XP 를 부팅으로 만드는 것은 부팅 하자마자 F4 를 연타하면 복구모드로 들어가는데, 여기서 복구를 약간 구경 해주다 돌아오면 된다.

첫번째 외장 ODD를 이용하는 방법.
이건 뭐...
이미지 구워서 DVD에 넣고 부팅 옵션에서 외부 DVD로 부팅 해주고 슬슬 설치하면 된다.
외장 ODD가 있을 경우엔 별 다른 삽질의 과정을 거치지 않아도 된다.
그러나 대부분의 경우 외장 ODD를 가지고 있지 않기 때문에...
급조해서 만들어도 된다.
3.5인치 SATA 이용하는 외장 드라이브가 있을 경우 컴에 달려있는 SATA DVD 드라이브를 잠시 빼서 붙여 쓰면 된다.

두번째 이미지 파일을 이용하기.
이것도 저것도 없을 때...
편하게 할려면 그냥 외장 ODD를 하나 지르면 된다.
그러나 지금 당장 설치 해보고 싶고, 돈 없고, 그닥 쓸일도 없는 외장 ODD사는 것이 꺼려진다면...
또 방법이 있다.
여기서도 리얼맥 또는 이미 OS X 이 설치된 컴이 있는 경우와 없는 경우로 나뉜다.

1. Mac OS X 가 설치된 컴이 있는 경우.
일단 외장 USB 드라이브 또는 8기가 이상의 부팅 가능한 USB 메모리를 준비한다.
여기서도 설치 DVD 이미지를 바로 복사하는 방법과 외장 드라이브에 OS X 를 설치 해서 복원하는 두가지 방법을 써볼 수 있다.
그런데, 이미지를 바로 복사해서 사용하는 방법은 웬지 부팅이 잘 안된다.
부팅 시키는 방법이 있긴 하지만, 요상한 삽질을 요하므로 그냥 외장 하드에다 설치해서 하시길 권해 드린다.
일단 OS X 을 사용 할 수 있도록 파티션 부터 만들도록 한다.
사용자 삽입 이미지

디스크 유틸리티를 실행해서 왼쪽에 보이는 USB 디스크를 선택한다.


사용자 삽입 이미지

파티션 탭을 선택 해서 적절한 파티션 수를 선택 하고 옵션 버튼을 눌러서 "마스터 부트 레코드"를 선택하고 승인을 누른다.

이제 파티션은 준비가 되었다.
다음으로 OS X 설치 프로그램을 구동시켜야 되는데...
DVD 이미지에서 설치 아이콘 누르면 리붓 하라는 말만 뜬다.
이거 어쩌나...
다 방법이 있다.
일단 파인더를 띄워서 파인더 메뉴가 나타나도록 만든다.
사용자 삽입 이미지

파인더 메뉴에서 '이동' 누르고 폴더로 이동을 누른다.

사용자 삽입 이미지

위와 같이 /Volumes/마운트 볼륨명/System 을 입력하고 이동을 누른다.

이 폴더는 숨김 속성이라서 파인더에서 그냥 보이지는 않고 이렇게 이동을 해야 들어 갈 수 있다.
그러면 Installation 과 Library 두가지의 폴더가 나타나며, Installation/Packages 디렉토리로 이동한다.
OSInstall.mpkg 파일을 실행 시키면 OS X 의 설치 화면을 볼수 있다.
이후는 일단 아래의 설치 과정을 진행 시킨다.

2. NC10만 덜렁 있는 경우.
이것도 저것도 없을 때...
미친 맥에 가면 역시 답이 있다.
얘들 밥먹고 이거만 하나봐...
그런데 차라리 이 방법이 제일 간단하다.
(사실 귀찮아서 직접 실행은 안해봤지만 충분히 쉽고 될수 있는 방법이다.)
우선
http://forum.insanelymac.com/index.php?showtopic=110388
위 주소에서 Leopard HD install helper 0.3 을 받는다.
맥용 파티션을 적당하게 맹글고 별도의 하드디스크 공간 약 6~8GByte 정도를 나눠서 FAT32 로 포멧 한다.
이 작은 파티션에 DVD 이미지를 밀어 넣을 것이므로 그만큼의 공간이면 충분하다.
파티션 나누는 방법은 Acronis Disk Director Suite 을 이용하면 편리하다.
맥을 사용하기 위한 파티션 만드는 방법은 여기저기 널려있으며, http://x86osx.com 가보면 쉽게 찾을 수 있다.
그리고 받아둔 압축 파일을 풀어보면 ddmac.exe 파일이 있다.
요걸 실행 하면 중국어라서 알아보기 힘들기 때문에 같이 포함된 English_GUI.png 를 열어서 도움을 좀 받도록 한다.
ISO 이미지는 설치 할 OS X 이미지, 타겟은 물론 OS X 을 설치할 파티션으로 선택 한다.
복사가 모두 끝나고 나서 리붓 시키면 DVD 이미지를 넣어둔 파티션을 선택 할수 있으므로 그 파티션으로 선택 해서 설치를 시작하면 된다.

자 이제 설치할 준비는 모두 끝났으니 본격적인 설치로 들어가자.
설치 OS X 이미지는 iDeneb 1.3 10.5.5 이미지를 이용했다.

사용자 삽입 이미지
이곳에서 '사용자화' 버튼을 누른다.
외장 하드에 설치하고 있는 경우엔 '설치 위치 변경...' 버튼을 눌러서 외장 하드로 위치를 변경 시켜 준다.

사용자 삽입 이미지
이제 이곳에서 각종 옵션들을 선택해 줘야 한다.
우선 '언어번역' 부분에서 한글을 선택해 줘야 설치가 끝난 후에 한글 메뉴들을 사용할 수 있다.
그리고 '추가서체', 가장 아래의 'Applecations' 두가지는 체크 해 주고 나머지 옵션들을 고르도록 한다.
Patches 를 풀어서 이곳에서 딱 필요한것들만 체크해서 일단 넘어가도록.
Audio : AppleAzaliaAudio
Chipset : ICHx Fixed
Kernel : Kernel 9.4.0 StageXNU
Fix : PowerManagement, PowerOff_Fix
Video : Intel -> Intel GMA950
이렇게만 선택 하고 설치를 눌러준다.

사용자 삽입 이미지

자~ 드디어 설치가 종료중~

설치가 끝나고 리붓 하면 음악 소리가 띵가띵가 나믄서 이거저거 입력하라고 한다.
알아서 이래저래 입력 하고 넘어가 주시고...
일단 첫 화면이 어째 좀 구려보인다.
원인은 GMA950 드라이버가 제대로 해상도를 못잡아 주셔서 그렇다.
GMA950.pkg.zip

1024*600 패치가 된 드라이버.

-> 이놈을 다운 받아서 설치 해 주도록 한다.
외장 하드에 설치하는 경우 설치 위치를 반드시 외장 디스크로 바꿔줘야 한다.

그리고 시스템 환경설정 -> 다국어 들어가서 한글을 젤 위로 끌어올려주고 나서 리붓해 보면...
(외장 디스크로 설치중엔 다시 외장디스크로 부팅 하시길...)

사용자 삽입 이미지
드디어~
설치된 화면이 나타난다.
리붓 시에 숫자 카운터가 나타날때 아무 키나 누르면 하드디스크내의 다른 파티션들도 보이므로 XP 로 부팅하고 싶다면 그 파티션을 선택해 주면 된다.

외장 하드에다 설치하고 있는 경우는 마지막 한단계가 더 남았다.
설치가 완료 되었으면 다시 디스크유틸리티를 열어서 복원 탭으로 이동한다.
이번엔 처음과의 역으로 타겟을 내장 하드의 OS X 을 구동시키고 싶은 파티션을 선택, 소스를 외장 하드를 선택해 준다.
그리고 복원을 누르면 내부의 하드로 죽~ 복사가 되고...
복원이 끝나고 나면


카멜레온 부트로더를 설치해 주도록 한다.
요건 실행 하고 반드시 설치 경로를 내장 하드의 파티션으로 선택해 주도록 한다.
만일 XP 의 부트로더를 이용해서 멀티부팅을 하고 싶다면, chain0 파일을 이용해서 하면 된다.
이때는 XP 가 설치된 파티션을 다시 Active 로 만들어줘야 한다.
멀티부팅에 관한 것은 Grub 같은 부트로더를 이용 하거나, Acronis OS Selecter 를 이용하는 여러가지 방법이 있으므로 검색해서 익혀보시길...

설치를 해보면 일단 거의 모든것들이 잘 돌아간다.
아무런 설정 없이도 내장된 카메라, 블루투스는 잘 동작한다.
다만 마이크와 네트웍이 전혀 안된다.
마이크 부분은 어쩔수 없지만, 블루투스를 이용 하거나 USB 오디오를 사용해서 해결해야 한다.
그리고 네트워크...
유선은 답이 없다.
무선은 뒷판 열고 Dell 1390 같은걸로 갈아 주거나 시중에서 판매하고 있는 USB 방식의 네트웍 어뎁터를 이용해야 한다.
그리고 잠자기문제가 좀 있는데...
전원이 연결된 상태에선 잠자기가 안된다.
재워보면 바로 다시 깨어난다.
그런데 전원을 뽑고 시도하면 그냥 잘 잔다.

Fn 버튼을 이용한 펑션키는 몇가지만 동작한다.
Esc 키의 잠자기, F6 음소거, F10 터치패드, F11 숫자키 고정, 좌우방향키로 볼륨조정
따라서 무선랜은 못끈다.
미리 XP 에서 끄고 들어와야 할듯.

* 바이오스를 최신으로 업뎃을 해주면 OS X 에서도 베터리 타임이 정확하게 표현이 된다.
Hack Attack : Install Leopard on your PC in 3 easy steps!

Update : 2 : If you are looking for a guide to Dual Boot Windows Vista and Mac OSX Leopard, please follow this guide Hack Attack : Dual Boot Leopard and Windows Vista. The Dual Boot Guide is a comprehensive guide and it should work for most of you with a little bit of hard work.

Update : 1 : There is a newer version of this Hack that you might want to check out. Its much more simpler and can be done by almost everyone. The newer hack also includes Mac OSX 10.5.1 so please check out Hack Attack : Install Leopard On your PC in Just One Step.

Mac OSX Leopard

Well its been only a day since the Mac OSX Leopard was released officially by Apple and the hackers have managed to create a patched DVD that everyone like you and me can use to install Leopard on PC’s without having to buy a Mac. Please note the tutorial that I am going to post is still experimental and things might not work the right way simply because it is still early days in hacking Leopard to work on PC’s. Well if you don’t mind your PC getting screwed then go ahead and try out this tutorial.

Make sure you backup all important data before you proceed. Here are the things that you will need before Install Leopard on your PC…

  • The Patched DVD Image
  • The zip file containing the patch
  • One pen drive or USB Flash Drive formatted as FAT32

Well once you have all these you can go ahead and Install Leopard..

Step 1. Getting things ready

  • Burn the DVD Image onto a Single Layer DVD-R using a software like Nero.
  • Format the USB Flash Drive and the drive label should be “Patcher” without the quotes. Please note it has to be “Patcher” only and nothing else for the patch to work when we apply it later.
  • Extract the Zip file and put its contents into the USB Flash Drive.
  • Now your USB Drive should contain a folder called “files”, if it doesn’t then check to see where you have gone wrong.

Step 2. Installing Leopard

  • Now that you have the Patched DVD with you, you can now install Leopard. Pop in the DVD into the drive and boot into it by pressing F12 at the BIOS Prompt.
  • Boot into the DVD and the installer should now load. It take a while though, so be patient.
  • Select your Language and make sure you select Customize and you need to deselect all the packages that are displayed.
  • Leopard will now install. This can take a while, so go grab yourself a coffee.
  • It will ask you to Reboot, so go ahead and Reboot. Before rebooting make sure that USB Flash Drive is connected to the PC.

Step 3. Patching Leopard

  • Now that you have got Leopard installed, you need to patch it. Before we do that Boot into the Leopard DVD like the way you did before.
  • Wait for the Darwin Bootloader to load. Once it loads up press F8. You should now see a prompt. Type -s and hit enter. The DVD will now load in Verbose mode. Watch for any errors. It should load without a problem because you have already installed Leopard.
  • Once the setup is loaded select your Language. Once done you should now be seeing the Welcome Screen. Once there navigate to Utilities-Terminal.
  • Once the terminal loads up, you now need to browse to your USB Drive, so follow the steps below, typing it exactly as it appears below in the Terminal.

    In the command line type the following as they appear here

    cd ..
    cd ..
    cd Volumes
    cd Patcher
    cd files

    Notice the space between cd and the 2 dots.

  • Now its the time to run the patcher to make sure Leopard will work on your PC. Type the following into the Terminal.

    ./9a581PostPatch.sh

  • The Patch should now run. You can answer Yes while removing the ACPUPowerManagement.kext
  • After the Script is done, you should now be able to Boot into Leopard after you restart.

Step 4. Congratulations! You’ve done the Impossible!

Well that was it. Please note this has not been extensively tested, so most of your Hardware like Sound, Network may not work. If something goes wrong for you or you want to help us, then please join the discussion over at OSX86Scene. If you noticed I haven’t posted the links to the Torrent that contains the DVD image and the zip. Well I haven’t posted them because I am sure the lawyers over at Apple are going to sue the hell out of me. If you wondering where you can find them, then head over to Demonoid and search for it.

Well here are few screenshots by Mac.nub over at the forums who could get Leopard working on his system.

LeopardLeopard

Some Updates and Clarifications :

  • This Hack works on Intel PC’s with atleast SSE3
  • You need to format your Leopard Partition to HFS+
  • Make Sure you install Leopard on MBR and not GUID or it won’t boot.
  • More Patched DVD’s from Uphuck, Netkas is in the works so it would be better if you wait for the polished releases to come out.

Microsoft Window7 베타판 설치

마이크로 소프트의 Window7 배타판을 구해서 설치해 보았다.

소감은 vista란 별다는거 모르겠다. 하지만 딸린 프로그램이 적어서

가벼운 Vista 같다는 느낌







smartclient 스마트 클라이언트 강좌

http://www.simpleisbest.net/archive/2006/01/02/360.aspx

VS 2005에서 ClickOnce를 이용하여 배포를 할때, 웹을통한 배포는 기본적으로 IIS 를 사용하도록 되어 있습니다.

또한 IIS에 FrontPage Server Extensions 이 설치 되어 있으면 아주 쉽게 배포가 가능하도록 구조가 되어 있습니다.

FrontPage Server Extensions이 설치된 IIS에 배포할때는 게시위치, 설치 URL에 설치하고자 하는 경로를 간단히 작성하면 됩니다.

예를 들어 www.HomePage.Com/Prog에 배포를 하고자 한다면

게시위치, 설치URL에 http://www.HomePage.Com/Prog/ 라고 작성하면 간단히 배포가 됩니다.

또한 FrontPage Server Extensions이 설치 되지 않으면 게시위치를 Ftp서버로 설정을 하고 설치URL만 Http로 설정을 합니다

위의 경우 게시 위치 ftp://ftp.HomePage.Com/Prog 설치URL http://www.HomePage.Com/Prog 라고 별도 작성을 하면 됩니다.

그러나, 세상의 모든 서버가 IIS만은 아닐터 Unix, Linux환경에서는 보통 아파치를 서버로 사용을 합니다.

아무래도 아파치는 MS와 별로 친한 성격이 아니라 다소 문제가 발생할 수 있습니다.

하지만, 원하는자에게 길이 있듯이 아파치 서버에 간단한 설정만 해주면

얼마든지 아파치 서버를 이용하여 ClickOnce를 이용한 배포를 할수 있습니다.

테스트 환경은 Linux Kernel 2.4 환경에 Apach 5.0.4 환경에서 테스트 했습니다.

먼저 http.conf 파일을 열어 다음 문장을 추가해 줍니다.

# For VS 2005 Dot NET Install

AddType application/x-ms-application .application

AddType application/x-ms-application .manifest

AddType application/octet-stream .deploy

추가 위치는 임의의 위치에 하셔도 되나 보통

# Dynamic Shared Object (DSO) Support

항목 아래에 추가합니다.

이렇게 하고

게시 위치 ftp://ftp.HomePage.Com/Prog 설치URL http://www.HomePage.Com/Prog 이렇게 작성을 해주면

배포중간에 ID와 비밀번호를 묻는 창이 나타나는데.. 이때 해당 홈페이지의 계정 ID와 비밀번호를 입력해 주면 배포가 완료됩니다.

VS 2005에서는 아무런 설정을 할 필요가 없습니다.

일부에서는 " .application " 파일을 편집하라고 하지만 전혀 그럴 필요 없이

IIS 서버에 설치한 것과 다름없이 똑같이 사용이 가능합니다.

publisher.htm 파일을 웹브라우저로 열어 설치 버튼을 클릭하면 정상 설치가 완료됩니다.

이상 모두 직접 설치 테스트 완료하였습니다.

단, 한가지 아직 풀지 못한 문제가 있는데..

저는 FTP 서버를 기본 21 포트를 사용하지 않고 임의 포트를 사용했으나 21번 포트 이외로 설정을 하면 배포를 못하는 문제가 있었습니다. 이는 제 서버에 문제가 있는지 아직 확인하지 못했습니다.

한참을 헤메다가, 하는 수 없니 21번 포트로 다시 설정하여 테스트 완료했습니다.

즉, ftp://ftp.HomePage.Com:7000/Prog

이렇게 포트를 지정하면 연결은 되나, 서버측에 배포 폴더만 생성하고 파일을 업로드 못하더군요.

누구나 다 아는팁 [10원짜리팁] 이었습니다

XP에서도 DNS 서버를 돌려보자! (2) ]

[ DNS 서버의 개념 이해 ]

[ Windows XP Professional에 네임 서버(BIND9) 구축하기 ]

1. ns.jobdahan.dnip.net으로 서비스 받기
2. 네임서버 구축 환경 설명
3. Windows용 DNS 서버 소프트웨어 BIND9.4.0 다운받기
4. BIND9 설치하기

5. BIND9 설정 파일 만들기
6. BIND9 동작 테스트
7. BIND9의 named 데몬을 서비스에 등록하기
8. IP 주소가 변경되었을 때의 DNS 서버관리

이번 강좌 차례는 위 목차의 2~4 까지 입니다.

[ XP에서도 DNS 서버를 돌려보자! (2) - 구축환경, BIND9 설치하기 ]

2. 네임서버 구축 환경 설명

현재 네임서버를 구축하려고 하는 모든 환경을 잘 이해하고 있으셔야 BIND9의 설정을 잘 할 수 있을 것입니다.
아래와 같은 환경에서 BIND9을 설치하고 설정하는 것에 대해서 설명할 것이니 자신의 환경과 비교하여
각 사항들을 자신의 환경과 맞게 작성하여 메모해 놓은 후 실제로 네임서버를 구축할 때에
그 메모를 보고 따라해 보시기 바랍니다.

1) 인터넷 서비스를 받고 있는 가정에서 인터넷 공유기를 사용하고 있으며
공유기에 연결된 PC(운영체제 : Windows XP Professional)에 지금까지 강좌에서 설명한 서버들
(Apache 웹 서버, MySQL, Hub FTP 서버)이 구축되어 있고,
여기에 윈도우용 BIND9.4.0을 이용하여 DNS 서버를 구축할 것입니다.

2) 외부 인터넷 연결 IP 주소 : 210.95.205.15

3) 공유기에 연결된 서버 구축 PC의 내부 IP 주소 : 192.168.2.12

[주의] 이 IP 주소는 필히 공유기에서 DMZ 설정이나포트 포워딩(port Forwarding)되어 있어야 합니다.
DMZ 설정에 관한 것은 강좌 “서버의 포트변경 설정과 DMZ 설정 방법”을 참조하십시오.

포트 포워딩(port Forwarding) 할 경우 192.168.2.12 의 IP 주소에 21, 53, 80(21:FTP, 53:DNS, 80:HTTP) 포트를
포워딩 설정하십시오. 만약 포트 포워딩만 해서 동작이 잘 된다면 DMZ보다는 포트 포워딩을 하시기 바랍니다.
메일에 관한 포트는 나중에 메일 서버를 구축할 경우에 설명하도록 하겠습니다.

4) 현재 서비스를 받고 있는 네임서버 도메인 : ns.jobdahan.dnip.net

[공유기를 사용하고 있지 않을 경우의 환경]

1) 외부 인터넷 연결 IP 주소 : 210.95.205.15

2) 서버 구축 PC의 IP 주소 : 210.95.205.15
(공유기를 사용하지 않을 경우에는 DMZ라든지 포트 포워딩과는 무관하겠지요?
앞으로의 설명 중 192.168.2.12는 모두 210.95.205.15로 이해하시길 바랍니다.
네임서버를 구축하는 동안은 내부 IP 주소로 설정할 곳은 없고 이 후 강좌인 Virtual Hosting할 때 필요합니다.)

3) 현재 서비스를 받고 있는 네임서버 도메인 : ns.jobdahan.dnip.net

5) DNS 서버(BIND9)를 구축하여 생성할 서브 도메인 명

:www.jobdahan.dnip.net(jobdahan.dnip.net), mail.jobdahan.dnip.net, ftp.jobdahan.dnip.net,
shop.jobdahan.dnip.net 등등

3. Windows용 DNS 서버 소프트웨어 BIND9.4.0 다운받기

BIND9은 ISC(http://www.isc.org)에서 배포하고 있으므로 그 사이트에 접속해서 소프트웨어를 다운받을 수 있습니다만
이 곳에서 직접 다운 받을 수 있게 링크해 놓겠습니다.
그러나, 한 번쯤 그 사이트를 방문하여 최근 소프트웨어를 확인하고 주의사항 등도 살펴보는 것은 어떨까요?

BIND9.4.0 다운로드 링크 : http://ftp.isc.org/isc/bind9/9.4.0/BIND9.4.0.zip

2007.05.07 현재 날짜로는 BIND9.4.1 이 배포되고 있네요.

BIND9.4.1 다운로드 링크 : http://ftp.isc.org/isc/bind9/9.4.1/BIND9.4.1.zip

다운받은 BIND9.4.0.zip 파일을 적당한 곳에 압축을 풀어 놓습니다.
C:\APM_Setup\temp\ 디렉터리에 다운받아 그 곳에 압축을 풀어 놓는 것으로 하겠습니다.

4. BIND9 설치하기

1) 압축을 풀어놓은 C:\APM_Setup\temp\BIND9.4.0 디렉터리 안에 있는 파일 중
BINDInstall.exe를 더블클릭하여 실행시키면 [BIND 9 Installer] 창이 열립니다.
아래의 설명을 참고하여 입력상자에 입력합니다.

Target Directory : BIND9을 설치할 디렉터리를 지정하는 곳으로써,
여기에서는 C:\APM_Setup\Server\DNS라는 디렉터리에 설치하기로 합니다.
Service Account Name : 서비스 계정 이름으로, 우선은 named 그 대로 사용합니다.
Service Account Password : 적당한 서비스 계정 암호를 입력합니다.
Confirm Service Account Password : 서비스 계정 암호 확인을 위한 재입력
Options의 Start BIND Service After Install : 이 항목만 체크를 하지 않습니다.
구동에 필요한 설정 파일들이 아직 없는 상태이므로 설치가 끝난 후에 곧 바로 BIND를 시작하지 않게 해야 합니다.

입력을 다 했으면 [Install] 버튼을 클릭합니다.

2) C:\APM_Setup\Server\ 디렉터리의 하위에 DNS라는 디렉터리가 아직 없으므로 만들 것인지 묻는 창이 나오면
[예(Y)] 버튼을 눌러 설치를 시작합니다.

설치가 진행된 후 끝났다는 대화창이 열리면 [확인] 버튼을 누르고,

Install 창의 아래 부분의 Progress 내용을 참고만 하고 Install 창의 [Exit] 버튼을 눌러 창을 닫습니다.

탐색기를 열어 C:\APM_Setup\Server\DNS\ 디렉터리를 확인해 봅니다.
bin 디렉터리에는 실행 파일들이 존재하고 있으나
etc 디렉터리에는 현재 아무 파일도 존재하지 않습니다. 이 디렉터리에 설정 파일들을 작성하여 넣을 것입니다.

자, 이 것으로써 일단 BIND9의 설치 작업은 끝났습니다.

설치는 되어 있지만 BIND9의 구동을 위한 설정 파일들이 아직 없으므로 실행을 시킨다고 해도 아무 의미가 없겠지요?

지금까지

2. 네임서버 구축 환경 설명
3. Windows용 DNS 서버 소프트웨어 BIND9.4.0 다운받기
4. BIND9 설치하기

에 대해서 알아보았습니다.

다음은

5. BIND9 설정 파일 만들기

에 대해서 알아보기로 하겠습니다.

그런데 이 부분의 분량이 너무 많네요. A4 용지로 8쪽이나 됩니다.

1) 윈도우 시스템 변수의 Path 지정
2) rndc.key, rndc.conf 파일 생성
3) named.conf 파일 만들기
4) named.ca, localhost.zone, named.local 파일 만들기
5) jobdahan.dnip.net.zone 파일 만들기

어쩔 수 없이 나누어서 글을 올릴 생각입니다.

정보보안 :: XP에서도 DNS 서버를 돌려보자!

[ DNS 서버의 개념 이해 ]

[ Windows XP Professional에 네임 서버(BIND9) 구축하기 ]

1. ns.jobdahan.dnip.net으로 서비스 받기
2. 네임서버 구축 환경 설명
3. Windows용 DNS 서버 소프트웨어 BIND9.4.0 다운받기
4. BIND9 설치하기

5. BIND9 설정 파일 만들기
6. BIND9 동작 테스트
7. BIND9의 named 데몬을 서비스에 등록하기
8. IP 주소가 변경되었을 때의 DNS 서버관리

이번 강좌 차례는 위 목차의 2~4 까지 입니다.

[ XP에서도 DNS 서버를 돌려보자! (2) - 구축환경, BIND9 설치하기 ]

2. 네임서버 구축 환경 설명

현재 네임서버를 구축하려고 하는 모든 환경을 잘 이해하고 있으셔야 BIND9의 설정을 잘 할 수 있을 것입니다.
아래와 같은 환경에서 BIND9을 설치하고 설정하는 것에 대해서 설명할 것이니 자신의 환경과 비교하여
각 사항들을 자신의 환경과 맞게 작성하여 메모해 놓은 후 실제로 네임서버를 구축할 때에
그 메모를 보고 따라해 보시기 바랍니다.

1) 인터넷 서비스를 받고 있는 가정에서 인터넷 공유기를 사용하고 있으며
공유기에 연결된 PC(운영체제 : Windows XP Professional)에 지금까지 강좌에서 설명한 서버들
(Apache 웹 서버, MySQL, Hub FTP 서버)이 구축되어 있고,
여기에 윈도우용 BIND9.4.0을 이용하여 DNS 서버를 구축할 것입니다.

2) 외부 인터넷 연결 IP 주소 : 210.95.205.15

3) 공유기에 연결된 서버 구축 PC의 내부 IP 주소 : 192.168.2.12

[주의] 이 IP 주소는 필히 공유기에서 DMZ 설정이나포트 포워딩(port Forwarding)되어 있어야 합니다.
DMZ 설정에 관한 것은 강좌 “서버의 포트변경 설정과 DMZ 설정 방법”을 참조하십시오.

포트 포워딩(port Forwarding) 할 경우 192.168.2.12 의 IP 주소에 21, 53, 80(21:FTP, 53:DNS, 80:HTTP) 포트를
포워딩 설정하십시오. 만약 포트 포워딩만 해서 동작이 잘 된다면 DMZ보다는 포트 포워딩을 하시기 바랍니다.
메일에 관한 포트는 나중에 메일 서버를 구축할 경우에 설명하도록 하겠습니다.

4) 현재 서비스를 받고 있는 네임서버 도메인 : ns.jobdahan.dnip.net

[공유기를 사용하고 있지 않을 경우의 환경]

1) 외부 인터넷 연결 IP 주소 : 210.95.205.15

2) 서버 구축 PC의 IP 주소 : 210.95.205.15
(공유기를 사용하지 않을 경우에는 DMZ라든지 포트 포워딩과는 무관하겠지요?
앞으로의 설명 중 192.168.2.12는 모두 210.95.205.15로 이해하시길 바랍니다.
네임서버를 구축하는 동안은 내부 IP 주소로 설정할 곳은 없고 이 후 강좌인 Virtual Hosting할 때 필요합니다.)

3) 현재 서비스를 받고 있는 네임서버 도메인 : ns.jobdahan.dnip.net

5) DNS 서버(BIND9)를 구축하여 생성할 서브 도메인 명

:www.jobdahan.dnip.net(jobdahan.dnip.net), mail.jobdahan.dnip.net, ftp.jobdahan.dnip.net,
shop.jobdahan.dnip.net 등등

3. Windows용 DNS 서버 소프트웨어 BIND9.4.0 다운받기

BIND9은 ISC(http://www.isc.org)에서 배포하고 있으므로 그 사이트에 접속해서 소프트웨어를 다운받을 수 있습니다만
이 곳에서 직접 다운 받을 수 있게 링크해 놓겠습니다.
그러나, 한 번쯤 그 사이트를 방문하여 최근 소프트웨어를 확인하고 주의사항 등도 살펴보는 것은 어떨까요?

BIND9.4.0 다운로드 링크 : http://ftp.isc.org/isc/bind9/9.4.0/BIND9.4.0.zip

2007.05.07 현재 날짜로는 BIND9.4.1 이 배포되고 있네요.

BIND9.4.1 다운로드 링크 : http://ftp.isc.org/isc/bind9/9.4.1/BIND9.4.1.zip

다운받은 BIND9.4.0.zip 파일을 적당한 곳에 압축을 풀어 놓습니다.
C:\APM_Setup\temp\ 디렉터리에 다운받아 그 곳에 압축을 풀어 놓는 것으로 하겠습니다.

4. BIND9 설치하기

1) 압축을 풀어놓은 C:\APM_Setup\temp\BIND9.4.0 디렉터리 안에 있는 파일 중
BINDInstall.exe를 더블클릭하여 실행시키면 [BIND 9 Installer] 창이 열립니다.
아래의 설명을 참고하여 입력상자에 입력합니다.

Target Directory : BIND9을 설치할 디렉터리를 지정하는 곳으로써,
여기에서는 C:\APM_Setup\Server\DNS라는 디렉터리에 설치하기로 합니다.
Service Account Name : 서비스 계정 이름으로, 우선은 named 그 대로 사용합니다.
Service Account Password : 적당한 서비스 계정 암호를 입력합니다.
Confirm Service Account Password : 서비스 계정 암호 확인을 위한 재입력
Options의 Start BIND Service After Install : 이 항목만 체크를 하지 않습니다.
구동에 필요한 설정 파일들이 아직 없는 상태이므로 설치가 끝난 후에 곧 바로 BIND를 시작하지 않게 해야 합니다.

입력을 다 했으면 [Install] 버튼을 클릭합니다.

2) C:\APM_Setup\Server\ 디렉터리의 하위에 DNS라는 디렉터리가 아직 없으므로 만들 것인지 묻는 창이 나오면
[예(Y)] 버튼을 눌러 설치를 시작합니다.

설치가 진행된 후 끝났다는 대화창이 열리면 [확인] 버튼을 누르고,

Install 창의 아래 부분의 Progress 내용을 참고만 하고 Install 창의 [Exit] 버튼을 눌러 창을 닫습니다.

탐색기를 열어 C:\APM_Setup\Server\DNS\ 디렉터리를 확인해 봅니다.
bin 디렉터리에는 실행 파일들이 존재하고 있으나
etc 디렉터리에는 현재 아무 파일도 존재하지 않습니다. 이 디렉터리에 설정 파일들을 작성하여 넣을 것입니다.

자, 이 것으로써 일단 BIND9의 설치 작업은 끝났습니다.

설치는 되어 있지만 BIND9의 구동을 위한 설정 파일들이 아직 없으므로 실행을 시킨다고 해도 아무 의미가 없겠지요?

지금까지

2. 네임서버 구축 환경 설명
3. Windows용 DNS 서버 소프트웨어 BIND9.4.0 다운받기
4. BIND9 설치하기

에 대해서 알아보았습니다.

다음은

5. BIND9 설정 파일 만들기

에 대해서 알아보기로 하겠습니다.

그런데 이 부분의 분량이 너무 많네요. A4 용지로 8쪽이나 됩니다.

1) 윈도우 시스템 변수의 Path 지정
2) rndc.key, rndc.conf 파일 생성
3) named.conf 파일 만들기
4) named.ca, localhost.zone, named.local 파일 만들기
5) jobdahan.dnip.net.zone 파일 만들기

프로그래밍... Oracle 10g XE

위의 스샷은 모든 설정이 끝나고, 기본 계정인 scott로 샘플 테이블인 emp 테이블의 내용을 보는 중이다.


학기 초이다 보니, 아무래도 새로 듣게 되는 수업을 위한 실습 환경을 만들게 되는 일이 생긴다. 이럴때 또 문제가 되는 것이 나는 왠만하면 Linux 기반에서 이런 것들을 하기를 원한다는 것이다. 그래서 이번 학기에 듣는 데이터 베이스 프로그래밍, 데이터 베이스 응용이라는 두과목에서 Oracle을 배우는 관계로 오늘은 Oracle Database 10g Express Edition(이후 Oracle 10g XE)을 설치하게 되었다.

Oracle 10g XE 버전은 소규모, 개인을 위한(?) 완전 무료 Oracle 10g 버전이다. 때문에 다음과 같은 약간의 제약이 있다.
Oracle Database XE는 서버의 용량, CPU 숫자에 관계없이 설치가 가능합니다. 다만 호스트 별로 1 GB의 메모리, 1 개의 CPU만을 사용할 수 있으며, 최대 4 GB의 사용자 데이터를 저장할 수 있습니다.

하지만 내가 설치하려는 머신은 어짜피 메모리도 500MB 조차 안되고, CPU도 역시 하나이다. 그리고 거창한 사업이나 프로젝트에 Oracle DB를 쓰려는 것이 아니고, 단지 수업 시간에 하는 내용을 실습하거나 하는 용도로 쓰고 싶은 것이기 때문에 나에겐 알맞다고 판단했다. 게다가 Debian Sarge 머신에 설치하려는 생각을 가지고 있었는데, Oracle 10g XE의 경우 deb 패키지 형태로 제공되었다.


데비안이나 우분투라면 설치 과정은 간단하다. 나는 Debian Sarge에 설치를 하였다.

① /etc/apt/sources.list 의 수정, 다음의 저장소를 추가

deb http://oss.oracle.com/debian unstable main non-free

② 인증키 추가 및 패키지 설치
wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle -O- | sudo apt-key add -
sudo apt-get update
sudo apt-get install oracle-xe-universal
위의 작업은 sudo 를 쓰거나 root의 권한으로 해야 하는 작업이다. Universal 버전을 선택한 이유는 다음과 같다.
Multi-byte Unicode database for all language deployment, with the Database Homepage user interface available in the following languages: Brazilian Portuguese, Chinese (Simplified and Traditional), English, French, German, Italian, Japanese, Korean and Spanish.


③ 위의 작업으로 Oracle의 설치는 끝난다. 설치 후에 환경 설정을 해야 하는데, 다음의 명령으로 관리자 계정인 SYS와 SYSTEM의 패스워드 설정 및 웹 GUI 인터페이스 port 설정, 리스너(listener) port 설정등을 해준다.
/etc/init.d/oracle-xe configure

④ 그리고 나서 .bash_profile 혹은 .bashrc 에 아래의 명령을 추가해서 Oracle 10g XE를 위한 환경 변수등을 적용시킨다.
. /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh

⑤ 이렇게 적용이 끝나면 sqlplus 를 이용한 접속이나, 웹을 이용한 DB 접속이 가능하다.
터미널에서는 다음과 같이 sqlplus 를 이용할 수 있고,
sqlplus 계정명
웹에서는 다음과 같이 DB에 접속이 가능하다.
http://host:port/apex/

이렇게 설치를 끝내고 나서 보니, 각종 교재에 나와있는 Oracle의 기본 계정이라고 하는 scott 계정이 존재하지 않았다. 때문에 다음과 같이 sqlplus에 접속한 뒤에 scott 계정을 만들어 주었다.
CREATE USER scott
IDENTIFIED BY tiger
DEFAULT TABLESPACE users;
TEMPORARY TABLESPACE temp;

GRANT AQ_ADMINISTRATOR_ROLE TO scott;
GRANT CONNECT TO scott;
GRANT RESOURCE TO scott;
EXECUTE dbms_aqadm.grant_type_access('scott');
이렇게 scott 계정을 만들어 주고 나니, 교재에서 실습해 볼 때 나오는 기본 예제 테이블도 없다는 것을 알았다. Oracle 10g XE 디렉토리를 뒤져보았지만 찾을 수가 없어서 Oracle 9i 설치된 컴퓨터에서 예제 테이블 생성 파일(demobld.sql)만 가져왔다. 하지만 이 파일을 적용해 보니 다음과 같은 에러를 뿜으면 정상적으로 테이블이 만들어 지지 않았다.
TO_DATE('17-DEC-1980', 'DD-MON-YYYY'), 800, NULL, 20)
*
3행에 오류:
ORA-01843: 지정한 월이 부적합합니다.
원인을 검색해 본 결과 NLS_DATE_FORMAT이 맞지 않아서 생기는 오류였다. 위의 예제 테이블 생성(sql)에서의 NLS_DATE_FORMAT은 'DD-MON-YYYY' 인데, 시스템의 NLS_DATE_FORMAT은 다른 형식으로 설정되어 있어서 오류가 생겼다.(이 글을 작성한 후 꽤 시간이 지나고 나서 알았지만 위의 오류의 정확한 원인은 아래의 NSL_LANGUAGE 설정 문제였다. NLS_DATE_FORMAT의 설정과는 무관한 문제였다.)

NLS_DATE_FORMAT의 확인은 다음의 명령어로 알아볼 수 있다.
select sysdate from dual;
NLS_DATA_FORMAT을 변경하는 방법은 다음과 같다.
alter session set nls_date_format='DD-MON-YYYY';
이렇게 수정해 주었음에도 불구하고, 에러가 났는데 원인입력하려는 데이터의 DATE 타입은 영문 기준인데, 현재 설정되어 있는 NLS_LANGUAGE가 KOREAN으로 설정되어 있어기 때문이다. DATE 타입이 영문으로 표기하면, 'DD-MON-YYYY' 의 경우 '22-MAR-2007'과 같은 형태가 되지만, 한글로 표기하면 '22-3월 -2007'과 같은 형태가 되기 때문에 오류가 생기는 것이였다. 다음의 명령어로 NLS_LANGUAGE를 AMERICAN으로 변경해주고 나서야 정상적으로 예제 테이블 생성 파일(demobld.sql)을 실행(?) 할 수 있었다.
alter session set nls_language='AMERICAN';

테이블 추가가 끝난 후에는 NLS_DATE_FORMAT과 NLS_LANGUAGE를 원하는대로 다시 바꾸어도 상관이 없다. 예제 테이블 생성 파일과 삭제 파일을 첨부해 둔다.
예제 테이블 생성 파일 : demobld.sql
예제 테이블 삭제 파일 : demodrop.sql

참고 사이트
http://www.oracle.com/technology/tech/linux/install/xe-on-kubuntu.html
http://www.oracle.com/technology/software/products/database/xe/files/install.102/b25144/toc.htm
http://database.sarang.net/?inc=read&aid=22003&criteria=oracle
http://database.sarang.net/?inc=read&aid=28034&criteria=oracle
http://www.cryer.co.uk/brian/oracle/ORA01843.htm
phpmyadmin 설치하기 Ubuntu

mySQL을 편리하게 관리할 수 있는 툴이 phpmyadmin 입니다.
물론 터미날 상에서 여러 복잡한 명령을 넣어서 할 수도 있겠지만 (phpmyadmin이 없을 때를 대비해서), 일단 효율과 편리를 위해 설치!

sudo apt-get install phpmyadmin

설치 끝입니다.

그런데, http://127.0.0.1/phpmyadmin 에 접속해 보면 아무 것도 나오지 않습니다.
아직 활성화가 안된 상태입니다.

sudo gedit /etc/apache2/apache2.conf

아파치 설정파일을 엽니다.
위와 같이 명령을 입력한 것은 파일을 열어도 권한 문제 때문에 저장이 안될 수 있기 때문에 미리 루트 권한으로 열었습니다.

맨 마지막에 아래와 같은 문구를 입력하고 저장합니다.

# Enable PHPMyAdmin
Include /etc/phpmyadmin/apache.conf

그리고 아파치 서버를 재시작해 봅니다.

sudo /etc/init.d/apache2 restart

이제 웹브라우저에서 다시 한번 접속해 봅니다.
처음 접속한 뒤 앞서 mySQL을 설치할 때 터미널 상에서 입력했던 아이디와 패스워드를 넣으면 됩니다.
(잊어버렸으면 안되겠죠?)


* 삭제를 원할 땐

sudo apt-get remove phpmyadmin

오라클 클라이언트 깐다고 CD들고 다니고 그런 개발자들 많이 보인다.
DB튜닝 다니는 나야 뭐 Toad랑 Instant Client 하나 USB에 넣어놓고 다니는데 잘 모르는 개발자들이 많다는 생각이 든다.

먼저 오라클사이트에서 Instant Client와 SQL PLUS를 다운로드 받자.
http://www.oracle.com/technology/softwa ··· dex.html
(TOAD에서 지원안 할 수 도 있으니 가급적 구버전으로 -_-;;;)
"Instant Client Package - Basic"와 "Instant Client Package - SQL*Plus" 요 2개 해봐야 40메가 정도...
아무튼 다운로드 받은후에 한폴더에 풀자.

그리고 환경변수 (제어판, 시스템, 고급탭, 환경변수)를 추가해준다.
(다음 예제는 "f:\util\LiteOracleClient"에 설치된경우이다.)

1. TNS_ADMIN = f:\util\LiteOracleClient
2. path = f:\util\LiteOracleClient;%PATH%
3. LD_LIBRARY_PATH=f:\util\LiteOracleClient

* 환경 변수 추가할 줄 모른다면 구글에서 찾아보는 센스
(http://www.google.co.kr/search?complete ··· 3Baq%3Df)

3가지의 환경변수까지 추가가 완료 되었다면 해당 폴더 "f:\util\LiteOracleClient"에다가 "tnsnames.ora"파일을 생성한다.

독립구성이라면
DEVDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = DEV)
)
)

RAC구성이라면
DEVDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(LOAD_BALANCE = YES)
(FAILOVER = YES)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = DEV)
(FAILOVER_MODE =
(TYPE = SESSION)
(METHOD = BASIC)
(RETIRES = 180)
(DELAY = 5)
)
)
)
모든 작업완료 이제 sqlplus로 접속해보자.
1. sqlplus id/password@localhost:1521/DEVDB
2. sqlplus id/password@localhost:1521/DEVDB.DVB
3. SQL>conn id/password@localhost:1521/testdb.world

테스트가 잘된다면 TOAD로 접근하면 새로운 새상이 열릴것이다.

'Computer Science' 카테고리의 다른 글

프로그래밍... Oracle 10g XE  (0) 2008.12.01
phpmyadmin 설치하기  (0) 2008.12.01
우분투(ubuntu) 서버 설정  (0) 2008.12.01
Object-Relational Mapping Strategies  (0) 2008.11.30
자료 정리  (0) 2008.11.30

+ Recent posts