2009년 8월 28일 금요일

PC Antispyware 2010 - 국외 스파이웨어

PC Antispyware 2010은 "ClamAV"라는 안티 바이러스 오픈 소스를 복사해서 작동하는 악성 프로그램이다. 마치 국외 안티 바이러스 프로그램처럼 가장을 하여 시스템에 잠식하기 때문에 일반 사용자는 당할 가능성이 매우 높다.

 

[감염증상]

 

 프로그램이 일단 설치되면 허위로 진단하여 시스템의 보안수준이 위험하다고 경고하여 프로그램을 통해 검사를 하도록 유도하고 있다.

 

해당 프로그램을 통해 검사를 수행하게 되면, 시스템 드라이브가 변조되는 심각한 상황이 유발되거나 시스템이 급격하게 느려지고(CPU 점유율 100%), 인터넷 브라우져를 통한 사이트 차단 등 매우 위태로운 상황을 야기한다.

 

 

 

[해결방안]

 

1. 먼저 [제어판] - [프로그램 추가 / 삭제]에서 PC Antispyware 2010을 제거한다.

   만약 제거가 되지 않는다면, CMD 창에서 "taskmgr" 또는 ctrl+alt+del 눌러서

   해당 프로그램일 일단 제거하자

위 단계를 거치게 되면, 일단 웹브라저 접속은 가능하게 되지만, 재부팅 이후 다시 설치가 되어 있는 고약한 경우를 맛보게 된다.

 

< CPU 점유율 100%를 자랑하는 스파이웨어의 모습 >

 

2. MS에서 제공하는 악성 소프트웨어 제거 도구(MRT)를 이용하여 완전히 제거한다.

CMD 창에서 "c:\windows\system32\mrt.exe"를 입력한다.

실행 후 최신 버전을 요구하면 다운로드 받아 설치해 주도록 한다.

<최신 버전을 다운받아 설치하는 모습>

 

치료할 수 있는 악성코드 목록 중에 반드시 "Win32/FakeRean"이 존재해야 한다.

<Win32/FakeRean이 보인다. 넌 이미 죽어있다. ㅋㅋㅋㅋ>

 

시스템 검사를 통해서 해당 프로그램을 말끔히 정리하도록 한다.

<안티 스파이웨어를 포착한 모습>

 

이제 시스템을 재부팅하고 시스템 자원이나 웹 브라우져를 통한 인터넷 접속이 원할한지 확인해 본다.

 

 

2009년 8월 22일 토요일

MySQL 계정 생성하기

DB 추가 명령어

CREATE DATABASE [IF NOT EXISTS] db_name;

 

계정 생성 명령어

GRANT USAGE ON *.* TO user_ID@host_name IDENTIFIED BY 'password';

 

권한주기

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON
db_name TO user_ID@host_name;

 

적용시키기

mysql> flush privileges;

AmaterasERD

AmaterasERD

 

AmaterasUML is an Eclipse plug-in to draw ER diagram. AmaterasERD has following features:

  • ER diagram graphical editing
  • Import from existing database
  • Generate DDL from diagram
  • Export table definition as HTML

 

Use Plug-in

Put downloaded JAR file into ECLIPSE_HOME/plugins. AmaterasERD works with Eclipse 3.3. AmaterasERD also requires GEF and AmaterasUML

 

How to Use

  1. Choose [File]->[New]->[Others]->[AmaterasERD]->[ER Diagram]
  2. Input filename and database type (1.0.0 supports only hsqldb) in the New Diagram Creation Wizard. You can also import from existing database in this wizard.
  3. After the erd file is created, the diagram editor would be opened.
  4. You can generate DDL by [Right Click]->[Generate]->[DDL].

2009년 8월 20일 목요일

MySQL 패스워드 변경하기

[MySQL의 비밀번호 변경하기]

 

 

1. update문을 이용 변경

mysql로 로그인 한후 변경하는 방법으로 mysql DB를 선택한 후에 update문을 사용하여 변경한다. 유의할 점은 flush privileges; 라는 구문을 이용해서 적용을 시켜야 운영 중에

변경된 패스워드를 적용시킬 수 가 있다.

mysql> use mysql

 

mysql> update user

        > set password=password('newpassword')

        > where user='root';

 

mysql> flush privileges;

 

2. mysqladmin 이용

보통 최초 mysql 설치시 사용하는 방법으로 초기 mysql은 패스워드가 걸려있지 않기 때문에 패스워드를 적용시키기 위해서 사용한다. 운영중 DB의 패스워드가 변경될 필요가 있을 경우에는 update 문을 이용해서 변경시키는 것이 좋다.

[root@ ~] # mysqladmin -u root password password

Tomcat JSP만 인식하고 Servlet을 컴파일하지 못할때

[문제발생]

JSP + Servlet 형태의 웹 프로그램을 만들었는데, 자꾸 Servlet을 찾지 못하거나 컴파일하지 못한다면 무엇이 잘못된 것일까?

 

[문제해결]

먼저 $CATALINA_HOME/conf/web.xml 을 열어서 아래부분의 주석을 해제한다.

 

<SERVLET>  
    <SERVLET-NAME>invoker</SERVLET-NAME>  
    <SERVLET-CLASS>  
      org.apache.catalina.servlets.InvokerServlet   
    </SERVLET-CLASS>  
    <INIT-PARAM>  
        <PARAM-NAME>debug</PARAM-NAME>  
        <PARAM-VALUE>0</PARAM-VALUE>  
    </INIT-PARAM>  
    <LOAD-ON-STARTUP>2</LOAD-ON-STARTUP>  
</SERVLET> 

....

....

<SERVLET-MAPPING>  
    <SERVLET-NAME>invoker</SERVLET-NAME>  
    <URL-PATTERN>/servlet/*</URL-PATTERN>  
</SERVLET-MAPPING>

Tomcat은 4.X 부터 보안상의 이유로 Servlet 부분을 주석처리해 두었기 때문에 이를 해제해주어야 한다.

2009년 8월 19일 수요일

Tomcat 401 Unauthorized

[문제발생]

최초 tomcat을 설치하고 tomcat 매니저를 이용하여 war 파일을 등록하려고 한다.

그런데 401 error 가 뜨면서 접속을 허용하고 있지 않다.

이런 경우는 어떻게 조치하면 좋을까?

 

[문제해결]

기본적으로 tomcat을 설치하게 되면 가장 먼저 조치해야 할 것 중 하나가 manager 패스워드 관리이다. tomcat의 시작페이지에서 사용할 수 있는 manager는 war 로 압축된 JSP 파일들을 편리하게 웹 상에서 등록시킬 수 가 있다.

 

설정파일의 위치는 $CATALINA_HOME/conf/tomcat-users.xml 이다.

<tomcat-users>의 항목을 살펴보게 되면 role을 지정하는 부분과 패스워드를 지정하는 부분이 모두 주석처리가 되어 있다. 이부분을 해제하고 tomcat이나 role1에 대한 것들은 모두 지우고 새롭게 추가하도록 하자.

<tomcat-users>

<role rolename="manager"/>

<user username="tomcat" password="passwd" roles="manager"/>

</tomcat-users>

이제 manager 로그인 창에서 id : tomcat, passwd : passwd 를 입력하면 매니저화면으로 넘어갈 수 있다.

2009년 8월 14일 금요일

No route to host

[문제 : No route to host]

 

이전에 iptables의 방화벽 설정이 잘못되어서 iptables를 내려달라고 요청을 한 적이 있다. 서버가 가상 호스팅 서버라서 직접 콘솔로 작업을 할 수 없어서 부탁을 한 거였는데, 지금 확인을 해보니 iptables를 삭제시켜버리고 방화벽도 사용하지 않고, SElinux도 사용하지 않도록 해두었다. ㅡ_ㅡ;;

 

다시 iptables를 작성하고 방화벽을 열어두었다.

그런데, FTP 접속시 "No route to host" 라는 메시지가 뜨면서 디렉토리 이동은 물론 파일 전송이 불가능해지는 것이 아닌가?

 

FTP 접속만 가능한 상태.. 이것을 어떻게 해결해야 하나?

 

 

 

[해결방안]

 

일단 iptables의 21번 포트를 닫고 다시 iptables를 재시작한다.

[root@ ~] # /etc/init.d/iptables restart

 

네트워크 서비스도 재시작 한다.

[root@ ~] # service network restart

 

방화벽 설정을 활성화 시키고 신뢰할 수 있는 서비스에 ssh, ftp 등을 활성화시킨다.

SElinux 서비스는 사용하지 않도록 한다.

다시 iptables와 network 서비스를 기동 시킨다.

[root@ ~] # /etc/init.d/iptables restart

 

2009년 8월 13일 목요일

CentOs의 Apache / Tomcat에 접속시도시 HTTP 403 오류가 날 경우

[HTTP 403 error]

 

HTTP 403 error는 해당 사이트의 접근 권한이 없는 경우이다.

이는 방화벽이 차단된 경우는 다르다.

방화벽이 차단되어 있다면 아에 접속조차 하지 못하기 때문에 페이지가 없다는 오류를 낸다.

 

HTTP 403  error의 문제는 Apache 설정과 해당 서비스 디렉토리의 퍼미션 문제일 가능성이 크다.

[해결방안 1]

먼저 Apache의 설정파일인 httpd.conf 파일을 열어보자

만약 자신이 가상호스트를 운영한다면 가상호스트의 <Directory ~> 서비스 부분을 확인해 보아야 한다.

<Directory ~

      Order allow,deny

      # Deny for all

      Allow from all

</Directory>

해당 호스트 서비스에 모든 접근을 허락해야 서비스가 이용가능하다.

만약 이렇게 설정이 되어 있어도 접근이 불가능 하다면, 해당 디렉토리 서비스의 퍼미션 문제이다.

[해결방안 2]

user01 이라는 홈디렉토리(/home/user01)이 서비스 디렉토리가 한다면, 이 디렉토리의 퍼미션에 실행 권한을 부여해 주어야 한다.

[root@ ~] # chmod 711 ~user01

 

 

Apache2.2.9 + Tomcat 6.0.20 mod_jk 연동하기

[시스템 환경]

OS : CentOS 5.3(Final)

WAS : Apache 2.2.9

JAVA : JDK.6.1.6

Servlet Container : Tomcat 6.0.20

Tomcat Connector : tomcat-connectors-1.2.28

 

$JAVA_HOME=/usr/local/java

$CATALINA_HOME=/usr/local/tomcat

$HTTPD_HOME=/usr/local/httpd

 

[mod_jk 설치]

mod_jk을 다운로드 한다.

[root@ APM] wget http://apache.tt.co.kr/tomcat/tomcat-connectors/jk/source/jk-1.2.28/tomcat-connectors-1.2.28-src.tar.gz

 

압축을 해제한다.

[root@ APM] # tar zxvf tomcat*

[root@ APM] # cd tomcat*

[root@ tomcat-connectors-1.2.28-src] # cd native

 

./configure 파일을 생성하고 실행시킨다.

[root@ native] # ./configure --with-apxs=$HTTD_HOME/bin/apxs

[root@ native] # make && make install

 

tomcat_native 설치하기 위해 apr-devel을 설치한다.

[root@ native] # yum intall apr*

[root@ native] # cd $CATALINA_HOME/bin

[root@ bin] # tar zxvf tomcat-native.tar.gz

[root@ bin] # cd tomcat-native-*

[root@ tomcat-native-1.1.16-src] # cd jni/native

[root@ native] # ./configure --with-apr=/usr/bin/apr-1-config \

> --with-java-home=$JAVA_HOME

> --with-ssl=yes

> --prefix=$CATALINA_HOME

[root@ native] # make && make install

 

[workers.properties 생성하기]

[root@ native] vi $HTTPD_HOME/conf/workers.properties

worker.list=tomcat1

worker.tomcat1.port=8009

worker.tomcat1.host=localhost

worker.tomcat1.type=ajp13

worker.tomcat1.lbfactor=20

worker.inprocess.type=jni

 

[server.xml 수정하기]

[root@ native] # vi $CATALINA_HOME/conf/server.xml

<server port="8005" shutdown="SHUTDOWN">

<Listener className="org.apache.jk.config.ApacheConfig" modJk="/usr/local/httpd/modules/mod_jk.so" workersConfig="/usr/local/httpd/conf/workers.properties" />

.....

 

[root@ native] # /etc/init.d/tomcat restart

 

정상적으로 수행된다면 아래의 경로에 mod_jk.conf 파일 생성

[root@ native] # cd $CATALINA_HOME/conf/auto

[root@ auto] # ls -al

mod_jk.conf

[httpd.conf 수정하기]

[root@ auto] # cd $HTTPD_HOME/conf

[root@ conf] # vi httpd.conf

# Load mod_jk module
# Update this path to match your modules location
LoadModule jk_module /usr/local/httpd/modules/mod_jk.so

 

# Where to find workers.properties
# update this path to match your conf directory location
JkWorkersFile /usr/local/httpd/conf/workers.properties

 

# Where to put jkshared Memory
JkShmFile /var/log/httpd/mod_jk.shm

 

# where to put jk logs
JkLogFile /var/log/mod_jk.log

 

# Set the jk log level [debug/error/info]
JkLogLevel info

JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkRequestLogFormat "%w %V %T"

 

# test page

Alias /examples /usr/local/tomcat/webapps/examples

JkMount /examples/servlets/* tomcat1

JkMount /examples/jsp/* tomcat1

 

.....

다음의 DocumentRoot 값들을 변경한다. httpdoc 값을 변경

DocumentRoot "/usr/local/tomcat/webapps/ROOT/"

 

....

 

<Directory "/usr/local/tomcat/webapps/ROOT">

[root@ conf] # /etc/init.d/httpd restart

 

[확인하기]

웹 브라우져에서 해당 서버로 접근을 시도한다.

http://192.168.10.128

DocumnetRoot 설정이 tomcat으로 돌려놓았기 때문에 tomcat 화면이 보일 것이다.

그럼, 각각 jsp-example, servlet-example 등의 예제들을 실행시켜 보자.

제대로 실행이 된다면 연동이 제대로 성공한 것이다.

2009년 8월 12일 수요일

vim 설정파일

[vim 설정파일 위치 : ~/.vimrc]

 

set nu

# 줄번호 표기

 

set km=startsel,stopsel

# SHIFT 키로 선택 영역을 만드는 것을 허용

set tabstop=4

set ts=4

set sw=4
# 탭 간격을 4칸으로 지정

 

set nowrap

# 자동 줄 바꿈 미사용

 

set shiftwidth=2
# >>나 << 사용시 들여쓰기 간격을 지정

 

set expandtab
# 탭 문자를 공백문자로 변환

 

set softtabstop=2
# 탭 간격을 공백문자로 변환하며 삭제할 때 두 칸 단위로 삭제

 

set visualbell
# 사용자 실수시 터미널 깜빡임으로 경고 표시

 

set nobackup
# 백업 파일을 생성하지 않음

 

#set backup
# 백업 파일을 생성, 백업 파일 이름 : 원본파일이름 + '~'
# 예) a.c 에 대한 백업 파일 a.c~

 

set cindent, set cin
# c언어 스타일의 들여쓰기를 사용

#set nocin
# cindent 사용 안함

 

set autoindent
set ai
# 자동 들여쓰기를 사용

set noautoindent, set noai
# 자동 들여쓰기 사용 안함

 

set smartindent
# 좀 더 지능적인 들여쓰기를 사용

 

set enc=euc-kr
# 인코딩을 한글로 지정

# 한글을 한글자씩 삭제 가능

 

set enc=utf8

# 인코딩을 utf-8로 지정


set incsearch
# 키워드를 입력할 때마다 검색하는 점진 검색사용

 

syntax on
# 구문강조 기능 사용

 

filetype on
# 파일 종류에 따라 구문을 강조

 

set background=dark
# 배경색을 어두운 색으로 설정

 

colorscheme evening
# vi 색상 테마를 evening로 설정

 

set backspace=eol,start,indent
# 줄의 끝, 시작, 들여쓰기에서 백스페이스를 사용하면 이전줄과 연결

 

set history=100
# vi 편집기록을 100까지 기억함

 

set hlsearch
# 검색어 강조 기능 사용

vim 색상변경하기

[vim 색상변경]

vim에서는 vi와 달리 기본적으로 테마 기능을 제공하고 있다.

커맨드 모드(:)에서 ":colo 테마명"을 입력하면 색상을 변경시킬 수 가 있다.

을 바꿀 수 있다.

vim은 기본적으로 10 여개의 테마가 설치되어 있으며, 추가적으로 설치하여 사용할 수 있다.

 

http://www.cs.cmu.edu/~maverick/VimColorSchemeTest/index-c.html

 

위 주소를 참조하여 다른 테마를 적용시켜 볼 수 있다.

wget이나 lftpget을 이용하여 다운받도록 하자.

 

 

 


[vim 색상 적용 시키기]

CentOS 5.3의 경우 /usr/share/vim/vim70/colors 라는 위치에 테마가 존재한다. 여기에 해당 테마를 넣어준 후 vim에서 ": colo 테마명" 을 입력하면 대상 테마가 적용된다.

 

지속적으로 테마를 유지하고 싶다면, ~/.vimrc 에 "colo 테마명"을 입력해주면 된다.

 

지금은 "darkZ" 라는 테마를 적용시킨 것이다. 앞으로 모든 vim으로 열리는 문서는 darkZ 테마가 적용이 된다.

Tomcat 6.20 Quick Install Guide

[Tomcat 설치 환경]

Ver : apache-tomcat-httpd-6.20
OS : CentOS 5.3(Final)

 

1. 압축해제
다운로드 디렉토리 : /usr/local/src/APM
[root@ APM] # tar -zxvf apache*.tar.gz
[root@ APM] # cp -r apache-tomcat* ../tomcat

 

2. 환경변수 설정하기

[root@ tomcat] # vi /etc/profile

....

export CATALINA_HOME=/usr/local/server/tomcat

.....

CLASSPATH=$CLASSPATH:$CATALINA_HOME/common/lib/jsp-api.jar:$CATALINA_HOME/common/lib/servlet-api.jar

......

 

[root@ tomcat] # vi /etc/init.d/tomcat

 

 

#!/bin/sh
# Startup script for Tomcat
#
# chkconfig: 35 85 15
# description: apache tomcat 6.x
#
# processname: tomcat
#
# Source function library.
export JAVA_HOME=/usr/local/java
export CATALINA_HOME=/usr/local/server/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
# See how we were called.
case "$1" in
  start)
  echo "Starting tomcat: "
  $CATALINA_HOME/bin/catalina.sh start
  echo
  ;;
  stop)
  echo "Shutting down tomcat: "
  $CATALINA_HOME/bin/catalina.sh stop
  echo
 ;;
  restart)
  $0 stop
  sleep 2
  $0 start
  ;;
  *)
  echo "Usage: $0 {start|stop|restart}"
  exit 1
esac
exit 0

4. 8080 port 열기

[root@ tomcat] # vi /etc/sysconfig/iptables

.....

-A RH-Firewall-1-INPUT -p tcp -m -state --state NEW -m tcp --dport 8080 -j ACCEPT

....

[root@ tomcat] # /etc/init.d/iptables restart

 

 

5. 자동실행 등록
[root@ tomcat] # chmod 700 /etc/init.d/tomcat

[root@ tomcat] # chkconfig --add tomcat

[root@ tomcat] # chkconfig --list | grep tomcat

run level 3,5

 

 

7. 실행하기

[root@ tomcat] # service tomcat start

실제 서비스 실행 스크립트 : $CATALINA_HOME/bin/startup.sh

실제 서비스 종료 스크립트 : $CATALINA_HOME/bin/shutdown.sh

웹 브라우져로 고양이 화면의 tomcat이 보이면 성공

Apache 2.2.9 Quick Install Guide

[apache 설치 환경]

Ver : httpd-2.2.9
OS : CentOS 5.3(Final)

 

0. 기존 Apache 삭제
[root@ ~] # yum remove httpd -y

 

1. 압축해제
다운로드 디렉토리 : /usr/local/src/APM
[root@ APM] # tar -zxvf httpd*.tar.gz
[root@ APM] # cd httpd*

 

2. ./configure 실행
[root@ httpd-2.2.9] # ./configure \
> --prefix=/usr/local/server/apache \
> --enable-mods-shared=all \
> --enable-so \
> --enable-rewirte

 

[root@ httpd-2.2.9] # make && make install

 

3. 자동실행 등록
[root@ httpd-2.2.9] # cp /usr/local/server/apache/bin/apachectl \
> /etc/init.d/httpd

 

아래의 내용을 2번째 줄부터 추가
[root@ httpd-2.2.9] # vi /etc/init.d/httpd

 # chkconfig: 2345 90 90
 # description: init file for Apache server deamon
 # processname: /usr/local/server/apache/bin/apachectl
 # config: /usr/local/server/apache/conf/httpd.conf
 # pidfile: /usr/local/server/apache/logs/httpd.pid

 

주석표기 띄어쓰기, 콜론의 위치 등에 유의해서 작업한다.

반드시 2번째 줄부터 추가하고 다 작성 후 이하 빈줄이 있으면 안된다.

[root@ httpd-2.2.9] # chkconfig --add httpd
[root@ httpd-2.2.9] # chkconfig --list | grep httpd
run level 2,3,5

 

4. 환경설정
user와 group 지시어에 설정되어 있는 기본값인 deamon을 nobody로 변경
servername에 도메인 또는 IP 등록, 만약에 기록하지 않으면 127.0.0.1로만 접속
[root@ httpd-2.2.9] # vi /usr/local/sever/apache/conf/httpd.conf

<ifModule !mpp_netware_module>
 User nobody
 Group nobody
 </IfModule>

 

....


 ServerName host.centos53.com

5. apache 실행
[root@ httpd-2.2.9] # /etc/init.d/httpd start
웹 브라우져로 접속하여 "It Works!" 란 문장이 보이면 성공

MySQL 5.51a Quick Install Guide

[MySQL 설치 환경]

Ver : MySQL 5.51a
OS : CentOS 5.3(Final)

 

0. 기존 MySQL 삭제
[root@ ~] # yum remove mysql -y

 

1. 압축해제
다운로드 디렉토리 : /usr/local/src/APM
[root@ APM] # tar -zxvf mysql*.tar.gz
[root@ APM] # cd mysql*

 

2. MySQL 계정 생성
[root@ MySQL5.51a] # useradd -M -s /bin/false mysql

 

3. /.configure 실행
[root@ MySQL5.51a] # ./configure \
> --prefix=/usr/local/server/mysql \
> --with-charset=utf8 \
> --with-extra-charsets=all

[root@ MySQL5.51a] # make && make install

 

4. 환경파일 복사
[root@ MySQL5.51a] # cp support-files/my-large.cnf /etc/my.cnf


my-huge.cnf : Mem 1G ~ 2G
my-large.cnf : Mem 512M
my-medium.cnf : Mem 64~256M
my-small.cnf : Mem less than 64M

 

5. 기본 DB 생성
[root@ MySQL5.51a] # cd /usr/local/server/mysql
[root@ mysql] # bin/mysql_install_db --user=mysql

 

6. 권한설정
[root@ mysql] # chown -R root .
[root@ mysql] # chown -R mysql var
[root@ mysql] # chgrp -R mysql .

 

7. 환경변수 설정
[root@ mysql] # vi ~/.bash_profile
export MYSQL_HOME="/usr/local/server/mysql"
export PATH=$PATH:$MYSQL_HOME/bin

 

[root@ mysql] # source ~/.bash_profile


8. 자동실행 등록
[root@ mysql] # cp share/mysql/mysql.server /etc/init.d/mysqld
[root@ mysql] # chkconfig --add mysqld
[root@ mysql] # chkconfig --list | grep mysqld
run levle 2,3,4,5 에서 수행

 

9. MySQL root 패스워드 변경
[root@ mysql] # /etc/init.d/mysqld start
[root@ mysql] # mysqladmin -u root password mysql
[root@ mysql] # mysql -u root -p

 

10. 기동 확인
mysql> use mysql;
mysql> show tables;

 

2009년 8월 11일 화요일

CentOS5.3 Java 6.16 설치하기

[JAVA 설치하기]

Ver : jdk-6u16-linux-i586.bin

OS : CentOS 5.3(Final)

 

0. 기존 MySQL 삭제

# yum remove -y java

 

1. JAVA 설치하기

다운로드경로 : /usr/local/src/APM

해당 위치에서 wget 이나 lftpget을 이용해서 다운을 받는다.

[root@ APM] # sh jdk-6u-16-linux-i586.bin

 

라이센스 동의에 "yes"라고 입력하면, 자동으로 디렉토리를 생성하며, 압축이 풀리는 것을 볼 수 있다.

 

 

2. JAVA 디렉토리 이동

설치경로 : /usr/local/java

[root@ APM] # mv jdk1.6.1_16 /usr/local/java

[root@ APM] # cd /usr/local/java

 

 

3. JAVA 환경변수 설정

[root@ java]# vi /etc/profile

-------------------------------------------------------------------------------

# JAVA Environment variable

export JAVA_HOME="/usr/local/java"

export PATH="$JAVA_HOME/bin:$PATH"

export CLASSPATH=".:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/ext"

 

환경설정을 적용시킨다.

[root@ java] # source /etc/profile

[root@ java] # env

 

CentOS 5.3 개발 패키지 설치하기

[CenotOS 5.3 개발 패키지 설치하기]

Apache, Tomcat, PHP, JSP 등의 소프트웨어 설치할 때 개발 관련 패키지들이 설치되지 않으면 제대로 동작하지 않는 경우가 있다.

이때, 소스 컴파일시 필요한 gcc 관련 패키지들은 yum을 사용하여 원격 설치할 수 있다.

 

 

[gcc 관련 패키지 설치하기]

# yum install yum-fastestmirror -y

# yum install gcc gcc-c++ make automake autoconf -y

 

 

[yum을 통해 개발 패키지 설치하기]

rpmforge.net 저장소 사용하여 설치할 수 있으며, 자신의 CentOS 버전에 맞게 설치할 수 있다.

 

i386용 다운로드 :

 http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

 

x86_64용 다운로드 :

http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm

 

# lftpget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

 

# rpm -ivh rpmforge-release-0.3.6-1.el5.rf.i386.rpm

[개발 패키지 그룹 설치하기]

# yum groupinstall "Development Libraries"

# yum groupinstall "Development Tools"

# yum groupinstall "Legacy Software Development"

 

설치가 완료하고 나서 업데이트를 하여 최신 버전을 유지할 수 있도록 하자.

# yum update -y

2009년 8월 10일 월요일

vsftpd.conf

vsftpd.conf 의 주요 설정

-------------------------------------------------------------

#  /etc/vsftpd/vsftpd.conf
-------------------------------------------------------------
# anonymous 사용자의 접속 허용 여부 (default = YES)
# 공개된 형태의 FTP 서버로 운영할 것이 아니라면 NO로 한다.
anonymous_enable=NO
# 로컬 계정 사용자의 접속 허용 여부 (default = NO)
local_enable=YES

# write 명령어 허용 여부 (defualt = NO)
write_enable=YES
# 로컬 계정 사용자용 umask (default = 077)
local_umask=022

# anonymous 사용자가 파일을 업로드 할 수 있는지 여부 (default = NO)
# anon_upload_enable=YES
# anonymous 사용자의 디렉토리 생성 허용 여부 (default = NO)
# anon_mkdir_write_enable=YES

# 파일 전송 로그를 남길 것인지 여부 (default = YES)
xferlog_enable=YES
# xferlog 표준 포맷으로 로그를 남길지 여부 (기본 설정파일은 YES)
# 아래에서 NO로 설정했을 때를 설명함
xferlog_std_format=YES
# 파일 전송 로그 파일명
xferlog_file=/var/log/vsftpd.log

# FTP 서버 접속할 때 로긴 메시지 (default = vsFTPd 버전번호)
# 한글 사용 가능
# ftpd_banner=Welcome to blah FTP service.

# 사용자의 홈디렉토리를 벗어나지 못하도록 제한하기 위한 설정 (default=NO)
# 제한이 필요할 경우 YES로 바꾼 후 제한할 사용자 ID를 chroot_list_file= 에 설정한 파일에
# 지정한다.
# chroot_local_user= 설정과 관련이 있으니 '3. 문제 해결'을 꼭 읽어보라.
#
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list

# -------------------------------------------------------------------
# 기본 설정 파일에는 없는 설정값으로 필요한 설정만 추가한다.
# ※ 중요한 설정은 굵은 글씨로 표시
# -------------------------------------------------------------------

# PAM 파일명을 지정 (설치할 때 /etc/pam.d/vsftpd명으로 복사함)
pam_service_name=vsftpd

# wtmp에 로그 남기기 (YES로 해야만 last 명령어로 접속 여부 확인 가능)
session_support=YES

# 사용자가 자신의 home directory를 벗어나지 못하도록 설정
chroot_local_user=YES

# 새로운 디렉토리에 들어갔을 때 뿌려줄 환경 메시지를 저장한 파일명
# message_file=.message

# xferlog 형식으로 log를 남기려면 (위에서 이미 YES로 했음)
# xferlog_std_format=NO
#
#  - xferlog 표준 포맷은 로긴, 디렉토리 생성등의 로그를 남기지 않음
#   그러나 vsftpd 스타일 로그는 이를 포함한 보다 상세한 로그를 남김
#  - vsftpd 스타일 로그 예
#
#  Sun Jul 12 01:38:32 2003 [pid 31200] CONNECT: Client "127.0.0.1"
#  Sun Jul 12 01:38:34 2003 [pid 31199] [truefeel] FAIL LOGIN: Client "127.0.0.1"
#  Sun Jul 12 01:38:38 2003 [pid 31199] [truefeel] OK LOGIN: Client "127.0.0.1"
#  Sun Jul 12 01:38:41 2003 [pid 31201] [truefeel] OK MKDIR: Client "127.0.0.1", "/mp3"
#  Sun Jul 12 01:39:06 2003 [pid 31201] [truefeel] OK UPLOAD: Client "127.0.0.1", "/델리
#  스파이스 5집 - [04]키치죠지의 검은 고양이.mp3", 6855473 bytes, 3857.39Kbyte/sec

# 전송속도 제한 (0은 제한없음, 단위는 초당 bytes)
anon_max_rate=0
local_max_rate=0
trans_chunk_size=0


# 최대 접속 설정 (단 xinetd를 통하지 않고 standalone으로 동작할 때만 사용 가능)
# standalone을 위해서는 listen=YES 추가하고 별도로 vsftpd를 띄워야 함
#
# max_clients=최대 접속자 수, max_per_ip=IP당 접속 수
# max_clients=100
# max_per_ip=3


# Standalone 으로 운영할 때 listen=YES. 포트 변경을 원할 경우 listen_port 설정
# 디폴트 포트는 21번 포트이다.
# listen=YES
# listen_port=21


 

출처 : http://kltp.kldp.net/stories.php?story=03/10/09/5659809

 

CentOS 5.2 설치시 Kernel panic - not syncing : CPU context ...

[문제발생]

 

CentOS 5.2를 설치하기 위해 다음과 같이 환경을 구축하였다.

 

  • VMware 6.0
  • Install OS : CentOS 5.2
  • Virture Machine : Red Hat linux
  • RAM 1G 할당
  • HDD 20G 할당 (SCSI, LSI logic방식)
  • CPU : 인텔 센트리노2 - 2개 process로 설정

 

설치가 성공적으로 진행되고 시스템을 rebooting 하는 과정에서 다음과 같은 메시지를 보게 되었다.

 

Kernel panic - not syncing : CPU context corrupt ..

 

커널 패닉에 빠진 현상으로 CPU context와 동기를 이루지 못해서 / (root) 슬라이스에 마운트를 하지 못한단다.

 

 

 

[해결방안]

 

1. 일단 CPU 프로세서가 인텔 센트리노 2를 사용한다. core 2 DUO 가 아닌이상 2개의 CPU로 인식하지 않기 때문에 CPU의 갯수는 1개로 처리하여 보았다.

 => 해결불가, 여전히 커널 패닉 발생

 

2. CentOS가 Red Hat Linux의 전신이긴 하지만 여기서는 단순히 Red Hat Linux로 설정하니 인식을 하지 못하였다. Red Hat Linux 5 버전으로 교체하였다.

=> 해결불가, 여전히 커널 패닉 발생

 

3. CentOS 5.3 버전으로 교체하여 설치해 보았다.

=> 정상적으로 작동한다. 설정은 CPU 갯수 1개, 디스크 타입은 Red Hat Linux 5 설정

 

 

 

[결      론]

 

CentOS 5.2를 core 2 DUO에서 설치하였을 때는 문제없이 작동하였다. 하지만 인텔 센트리노2에서 문제가 발생하기 때문에 최신의 CentOS 5.3 (Final)로 설치하는 것을 권장한다.

VMware ACE 6.5 GuestOS Guide

VMware 에서 제공하는 GuestOS 6.5 버전입니다.

VMware ACE 6.0 GuestOS Guide

VMware 에서 제공하는 GuestOS 6.0 버전입니다.

VMware Linux Setting

VMware Linux 설정문서입니다.

VMware NAT Setting

VMware NAT 설정 문서입니다.

CentOS 5.3 Install Guide

CentOS 5.3 설치문서입니다.