CentOS
	
http://blog.naver.com/vmflqkdl?Redirect=Log&logNo=20024988083	
	
CentOS ÇÑ±Û ±úÁö´Â ¹®Á¦ ÇØ°á¹æ¹ý
	
¿ø¹® http://www.ulsannetwork.net/read.cgi?board=linux_tip&y_number=59&nnew=2

CentOS 4.2¿¡¼­ ÇÑ±Û ±úÁö´Â ¹®Á¦ ÇØ°á¹æ¹ý ÀÔ´Ï´Ù.
# /etc/sysconfig/i18n ÆÄÀÏ¿¡¼­
LANG="ko_KR.UTF-8"  =====> LANG="ko_KR.eucKR" ·Î ¹Ù²Ù½Ã¸é µË´Ï´Ù.(¾øÀ¸¸é Ãß°¡)

SELinux(Security-Enhanced Linux)

¿ø¹® http://fduser.org/blog/42

SELinux ¶õ ¹Ì ±¹°¡ º¸¾È±¹ (U.S. National Security Agency)¸® ¿ÀǼҽºÄ¿¹Â´ÏƼ¿¡ 
¸±¸®ÁîÇÑ LinuxÀÇ º¸¾È °­È­ ¹öÀü(ÄÚµå Æ÷ÇÔ)À¸·Î¼­ ¸®´ª½º º¸¾È ¸ðµâ 
±¸Á¶Ã¼(Linux Security Modules(LSM) framework)¸¦ ÀÌ¿ëÇÏ¿© 
¸®´ª½º Ä¿³Î¿¡ Àǹ« Á¢±Ù Á¦¾î(Mandatory Access Control - MAC)¸¦ ±¸ÇöÇÏ´Â °ÍÀÌ´Ù. 
Fedora Core3ºÎÅÍ ±âº»À¸·Î Àû¿ëµÇ±â ½ÃÀÛÇÏ¿´°í, 
ÇöÀç ´ëºÎºÐÀÇ ÃֽЏ®´ª½º ¹èÆ÷ÆÇ¿¡¼­ Áö¿øµÇ°íÀÖ´Ù.

[root@localhost ~]# system-config-securitylevel





JDK ¼³Ä¡ È®ÀÎ
	
[root@localhost ~]# rpm -qa | grep j2sdk
j2sdk-1.4.2_12-fcs     =====> ¼³Ä¡ µÇ¾î ÀÖ´Â °æ¿ì

JDK ¼³Ä¡

[root@localhost ~]# chmod +x j2sdk-1_4_2_12-linux-i586-rpm.bin
[root@localhost ~]# ./j2sdk-1_4_2_12-linux-i586-rpm.bin
[root@localhost ~]# rpm -ivh j2sdk-1_4_2_12-linux-i586.rpm
Áغñ Áß...                  ########################################### [100%]
   1:j2sdk                  ########################################### [100%]
[root@localhost ~]# /usr/java/j2sdk1.4.2_12/bin/javac
Usage: javac  
where possible options include:
  -g                        Generate all debugging info
  -g:none                   Generate no debugging info
  -g:{lines,vars,source}    Generate only some debugging info

[root@localhost ~]# rpm -qa | grep j2sdk
j2sdk-1.4.2_12-fcs
[root@localhost ~]#

PostgreSQL ¼³Ä¡

´Ù¿î·Îµå
ftp://ftp.postgresql.org/pub/v8.1.4/postgresql-8.1.4.tar.gz

Âü°í»çÀÌÆ®
http://database.sarang.net/?inc=read&aid=5845&criteria=pgsql&subcrit=&id=&limit=20&keyword=&page=1
http://kltp.kldp.org/stories.php?story=01/01/31/4408067
http://wiki.kldp.org/KoreanDoc/html/PostgreSQLfaq_korean/PostgreSQLfaq_linux.html
http://www.junjaewoo.com/postgresql/postgresql_install_kr.html

1. ±×·ì, »ç¿ëÀÚ ¸¸µé±â

[root@localhost ~]# groupadd dba
[root@localhost ~]# adduser -d /usr/local/pgsql-8.1.4 -g dba -c "PostgreSQL Master User" -m -s /bin/bash postgres
[root@localhost ~]# passwd postgres
Changing password for user postgres.
New UNIX password:
BAD PASSWORD: it is too short
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
[root@localhost ~]#

2. ¼³Ä¡

[root@localhost ~]# tar -xvzf postgresql-8.1.4.tar.gz
[root@localhost ~]# cd postgresql-8.1.4
[root@localhost postgresql-8.1.4]# ./configure \
> --prefix=/usr/local/pgsql-8.1.4 \
> --enable-multibyte \
> --enable-thread-safety \
> --enable-depend \
> --with-openssl
[root@localhost postgresql-8.1.4]# gmake install
[root@localhost pgsql-8.1.4]# cd /usr/local
[root@localhost local]# chown -R postgres:dba /usr/local/pgsql-8.1.4
[root@localhost local]# su - postgres
[postgres@localhost ~]$ vi .bash_profile

export PGDATA=/usr/local/pgsql-8.1.4/data
export PGLIB=/usr/local/pgsql-8.1.4/lib
export PGHOME=/usr/local/pgsql-8.1.4
export MANPATH=$MANPATH:/usr/local/pgsql-8.1.4/man

[postgres@localhost ~]$ source .bash_profile

3. DB »ý¼º

[postgres@localhost ~]$ initdb -E UTF-8 --lc-collate=C -W
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.

The database cluster will be initialized with locales
  COLLATE:  C
  CTYPE:    ko_KR.eucKR
  MESSAGES: ko_KR.eucKR
  MONETARY: ko_KR.eucKR
  NUMERIC:  ko_KR.eucKR
  TIME:     ko_KR.eucKR
initdb: warning: encoding mismatch
The encoding you selected (UTF8) and the encoding that the selected
locale uses (EUC-KR) are not known to match.  This may lead to
misbehavior in various character string processing functions.  To fix
this situation, rerun initdb and either do not specify an encoding
explicitly, or choose a matching combination.

creating directory /usr/local/pgsql-8.1.4/data ... ok
creating directory /usr/local/pgsql-8.1.4/data/global ... ok

--------

copying template1 to postgres ... ok

WARNING: enabling "trust" authentication for local connections
You can change this by editing pg_hba.conf or using the -A option the
next time you run initdb.

Success. You can now start the database server using:

    postmaster -D /usr/local/pgsql-8.1.4/data
or
    pg_ctl -D /usr/local/pgsql-8.1.4/data -l logfile start

[postgres@localhost ~]$

4. µ¥¸ó ½ÇÇà

[postgres@localhost ~]$ pg_ctl --help
pg_ctl ÇÁ·Î±×·¥Àº PostgreSQL ¼­ºñ½º¸¦ ½ÃÀÛ, ÁßÁö, Àç½ÃÀÛ, ȯ°æ¼³Á¤ ÀçÀû¿ë,
¼­¹ö »óÅ º¸±â, ¶Ç´Â PostgreSQL ÇÁ·Î¼¼½º¿¡ ƯÁ¤ ½Ã±×³ÎÀ» º¸³¾ ¼ö ÀÖ´Â
ÇÁ·Î±×·¥ÀÔ´Ï´Ù.

»ç¿ë¹ý:
  pg_ctl start   [-w] [-D DATADIR] [-s] [-l ·Î±×ÆÄÀÏ] [-o "¼­¹ö¿É¼Ç"]
  pg_ctl stop    [-W] [-D DATADIR] [-s] [-m ÁßÁö¹æ¹ý]
  pg_ctl restart [-w] [-D DATADIR] [-s] [-m ÁßÁö¹æ¹ý] [-o "¼­¹ö¿É¼Ç"]
  pg_ctl reload  [-D DATADIR] [-s]
  pg_ctl status  [-D DATADIR]
  pg_ctl kill    ½Ã±×³ÎÀ̸§ PID

ÀÏ¹Ý ¿É¼Çµé:
  -D, --pgdata DATADIR   µ¥ÀÌÅͺ£À̽º ÀÚ·á°¡ ÀúÀåµÇ¾îÀÖ´Â µð·ºÅ丮
  -s, --silent           ÀϹÝÀûÀÎ ¸Þ½ÃÁö´Â º¸ÀÌÁö ¾Ê°í, ¿À·ù¸¸ º¸¿©ÁÜ
  -w                     ÀÛ¾÷ÀÌ ³¡³¯ ¶§±îÁö ±â´Ù¸²
  -W                     ÀÛ¾÷ÀÌ ³¡³¯ ¶§±îÁö ±â´Ù¸®Áö ¾ÊÀ½
  --help                 µµ¿ò¸»À» º¸¿©ÁÖ°í ¸¶Ä§
  --version              ¹öÀü Á¤º¸¸¦ º¸¿©ÁÖ°í ¸¶Ä§
(±âº» ¼³Á¤Àº ÁßÁö ÇÒ ¶§´Â ±â´Ù¸®°í, ½ÃÀÛÀ̳ª Àç½ÃÀÛÇÒ ¶§´Â ¾È ±â´Ù¸².)
-D ¿É¼ÇÀ» »ç¿ëÇÏÁö ¾ÊÀ¸¸ç, PGDATA ȯ°æº¯¼ö°ªÀ» »ç¿ëÇÔ.

start, restart ¶§ »ç¿ëÇÒ ¼ö ÀÖ´Â ¿É¼Çµé:
  -l, --log ÆÄÀÏÀ̸§     ¼­¹ö ·Î±×¸¦ ÀÌ ÆÄÀÏ¿¡ ±â·ÏÇÔ
  -o ¿É¼Çµé              PostgreSQL ¼­¹öÇÁ·Î±×·¥ÀÎ postmaster ½ÇÇàÇÒ ¶§
                         »ç¿ëÇÒ ¸í·ÉÇà ¿É¼Çµé
  -p PATH-TO-POSTMASTER  postmaster °æ·Î (º¸ÅëÀº ÇÊ¿äÄ¡ ¾ÊÀ½)

stop, restart ¶§ »ç¿ë ÇÒ ¼ö ÀÖ´Â ¿É¼Çµé:
  -m ÁßÁö¹æ¹ý        "smart", "fast", "immediate" Áß Çϳª

ÁßÁö¹æ¹ý ¼³¸í:
  smart       ¸ðµç Ŭ¶óÀ̾ðÆ®ÀÇ ¿¬°áÀÌ ²÷±â°Ô µÇ¸é ÁßÁö µÊ
  fast        Ŭ¶óÀ̾ðÆ®ÀÇ ¿¬°áÀ» °­Á¦·Î ²÷°í Á¤»óÀûÀ¸·Î ÁßÁö µÊ
  immediate   ±×³É ¹«Á¶°Ç ÁßÁöÇÔ; ´Ù½Ã ½ÃÀÛÇÒ ¶§ º¹±¸ ÀÛ¾÷À» ÇÒ ¼öµµ ÀÖÀ½

»ç¿ëÇÒ ¼ö ÀÖ´Â ÁßÁö¿ë(for kill) ½Ã±×³Î À̸§:
HUP INT QUIT ABRT TERM USR1 USR2

[postgres@localhost ~]$ pg_ctl start -s
[postgres@localhost ~]$ LOG:  database system was shut down at 2006-09-20 20:04:36 KST
LOG:  checkpoint record is at 0/33ADC0
LOG:  redo record is at 0/33ADC0; undo record is at 0/0; shutdown TRUE
LOG:  next transaction ID: 567; next OID: 10794
LOG:  next MultiXactId: 1; next MultiXactOffset: 0
LOG:  database system is ready
LOG:  transaction ID wrap limit is 2147484148, limited by database "postgres"
[postgres@localhost ~]$

5. µ¥¸ó ÁßÁö

[postgres@localhost ~]$ pg_ctl stop
waiting for postmaster to shut down....LOG:  received smart shutdown request
LOG:  shutting down
LOG:  database system is shut down
 done
postmaster stopped
[postgres@localhost ~]$

6. psql

[postgres@localhost ~]$ psql -U postgres
Welcome to psql 8.1.4, the PostgreSQL interactive terminal.

Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit

postgres=#

JBoss ¼³Ä¡

http://blog.naver.com/hk7179?Redirect=Log&logNo=100024707531

1. JBoss ¼³Ä¡

[csmsuser1@localhost ~]$ unzip jboss-4.0.4.GA.zip

2. JAVA_HOME ¼³Á¤

.bash_profile ÆÄÀÏ¿¡ JAVA_HOME Ãß°¡

[csmsuser1@localhost ~]$ vi .bash_profile

export JAVA_HOME=/usr/java/j2sdk1.4.2_12

3. ½ÇÇà (¹é±×¶ó¿îµå·Î ½ÇÇà)

[csmsuser1@localhost ~]$ cd jboss-4.0.4.GA/bin
[csmsuser1@localhost bin]$ nohup ./run.sh &
[1] 7234
[csmsuser1@localhost bin]$ nohup: appending output to `nohup.out'

4. ½ÇÇà ·Î±× º¸±â

[csmsuser1@localhost bin]$ tail -f nohup.out
16:15:07,453 INFO  [testDurableTopic] Bound to JNDI name: topic/testDurableTopic
16:15:07,485 INFO  [testQueue] Bound to JNDI name: queue/testQueue
16:15:07,738 INFO  [UILServerILService] JBossMQ UIL service available at : /0.0.0.0:8093
16:15:07,789 INFO  [DLQ] Bound to JNDI name: queue/DLQ
16:15:08,047 INFO  [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:name=JmsXA,service=ConnectionFactoryBinding' to JNDI name 'java:JmsXA'
16:15:08,112 INFO  [TomcatDeployer] deploy, ctxPath=/jmx-console, warUrl=.../deploy/jmx-console.war/
16:15:08,698 INFO  [Http11BaseProtocol] Starting Coyote HTTP/1.1 on http-0.0.0.0-8080
16:15:08,963 INFO  [ChannelSocket] JK: ajp13 listening on /0.0.0.0:8009
16:15:08,978 INFO  [JkMain] Jk running ID=0 time=1/43  config=null
16:15:09,004 INFO  [Server] JBoss (MX MicroKernel) [4.0.4.GA (build: CVSTag=JBoss_4_0_4_GA date=200605151000)] Started in 27s:760ms

5. Á¾·á

[csmsuser1@localhost bin]$ ./shutdown.sh -S
Shutdown message has been posted to the server.
Server shutdown may take a while - check logfiles for completion
[csmsuser1@localhost bin]$ 

CVS ¼³Ä¡

http://wiki.javajigi.net/pages/viewpage.action?pageId=189
http://blog.naver.com/jooken?Redirect=Log&logNo=130004687179
http://blog.naver.com/bigseven89?Redirect=Log&logNo=10005409481
http://kwon37xi.egloos.com/1784525

1. ÆÐŰÁö ¼³Ä¡

[root@localhost init.d]# yum install cvs

2. »ç¿ëÀÚ Ãß°¡, µð·ºÅ丮 »ý¼º

[root@localhost ~]# useradd cvs
[root@localhost ~]# su - cvs
[cvs@localhost ~]$ pwd
/home/cvs
[cvs@localhost ~]$ mkdir CSMS
[cvs@localhost ~]$ cvs -d /home/cvs/CSMS init
[cvs@localhost ~]$ chmod ug+rwx /home/cvs/CSMS/CVSROOT

3. /etc/services

4. /etc/xinetd.d/cvspserver ÆÄÀÏ »ý¼º

[root@localhost xinetd.d]# vi /etc/xinetd.d/cvspserver

# default : on
# description : The cvsserver serves CVS Password Server sessions; it uses
# unencrypted username/password pairs for authentication.
service cvspserver
{
    disable = no
    flags = REUSE
    socket_type = stream
    wait = no
    user = cvs
    server = /usr/bin/cvs
    server_args = -f --allow-root=/home/cvs/CSMS pserver
    log_on_failure += USERID
}

[root@localhost xinetd.d]# service xinetd restart
xinetd ¸¦ Á¤ÁöÇÔ:                                          [  È®ÀÎ  ]
xinetd (À»)¸¦ ½ÃÀÛÇÕ´Ï´Ù:                                  [  È®ÀÎ  ]
[root@localhost xinetd.d]#

5. cvs ¾ÏÈ£ »ý¼º ½ºÅ©¸³Æ® »ý¼º

[root@localhost xinetd.d]# vi /usr/local/bin/cryptpasswd

#!/usr/bin/env perl 
srand(time()); 
$randletter = "(int (rand (26)) + (int(rand(1) + .5)% 2?65:97))"; 
$salt = sprintf("%c%c",eval$randletter,eval$randletter); 
$plaintext =shift; 
$crypttext = crypt ($plaintext,$salt); 

print "${crypttext}\n";

[root@localhost xinetd.d]# chmod a+x /usr/local/bin/cryptpasswd

6. ¼³Ä¡

[root@localhost xinetd.d]# useradd csmsuser1
[root@localhost xinetd.d]# cryptpasswd 1111
WPGA4j90YnWMI
[cvs@localhost CVSROOT]$ vi /home/cvs/CSMS/CVSROOT/passwd

csmsuser1:WPGA4j90YnWMI:cvs

7. Test

[cvs@localhost ~]$ cvs -d :pserver:csmsuser1@localhost:/home/cvs/CSMS login
Logging in to :pserver:csmsuser1@localhost:2401/home/cvs/CSMS
CVS password:
[cvs@localhost ~]$ cvs -d :pserver:csmsuser1@localhost:/home/cvs/CSMS status
cvs status: in directory .:
cvs [status aborted]: there is no version here; run 'cvs checkout' first
[cvs@localhost ~]$ 

8. ÀÌŬ¸³½º¿¡¼­ CVS¼³Á¤

¸Þ´º [Windows] -> [Show View] -> [Other...]









Xmanager·Î x-windows Á¢¼Ó Çϱâ À§ÇÑ ¸®´ª½º ½Ã½ºÅÛ ¼³Á¤¹æ¹ý

¿ø¹® http://www.netsarang.co.kr/products/xmg_faq.html#p2

¸®´ª½º runlevel ¼³Á¤

# vi /etc/inittab
/etc/inittab ÆÄÀÏ¿¡¼­ runlevelÀ» 5·Î ¼³Á¤ÇÕ´Ï´Ù.
id:5:initdefault:

gdm ȯ°æ ¼³Á¤ (gdmÀ» »ç¿ëÇÏ´Â °æ¿ì)

# vi /etc/X11/gdm/gdm.conf
/etc/X11/gdm/gdm.conf ÆÄÀÏÀÇ [xdmcp] ¼½¼Ç¿¡¼­ EnableÀÇ °ªÀ» 1·Î ¼³Á¤ÇÕ´Ï´Ù.
Enable=1

SSH ÇÁ·ÎÅäÄÝÀ» ÅëÇÑ XÀÀ¿ëÇÁ·Î±×·¥ ½ÇÇà

¿ø¹® http://www.netsarang.co.kr/products/xmg_tutorial6.html





Mail ¼­¹ö ¼³Ä¡

Âü°í

http://rinapc.com/93
http://www.ilug.or.kr/board/lect_server.xml
http://kldp.org/node/59715

qmail Á¦°Å

/etc/rc.d/init.d/qmail stop
rm /usr/lib/sendmail
rm /usr/sbin/sendmail

install

yum install sendmail sendmail-cf dovecot

/etc/mail/sendmail.mc ¼öÁ¤

1. smtp ÀÌ¿ë Á¦ÇÑ Ç®±â

·¹µåÇò °è¿­ 7.1 ÀÌ»óÀÇ ¹èÆ÷ ¹öÀü¿¡ ¼³Ä¡µÈ ¼¾µå¸ÞÀÏÀÇ °æ¿ì ±âº»ÀûÀÎ ¼³Á¤ÀÌ localhost 127.0.0.1 
Áï ·ÎÄà ³×Æ®¿öÅ©³ª ·ÎÄü­¹ö¸¦ ÅëÇÑ ¸ÞÀÏÀÇ ¹ß½ÅÀ» Á¦¿ÜÇÏ°í ¸ðµÎ °ÅºÎÇϵµ·Ï Á¤Çϰí ÀÖ´Ù.

vi /etc/mail/sendmail.mc 
dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl   <-- dnlÀ» Ãß°¡ÇÏ¿© ÁÖ¼® ó¸®

2. SMTP ÀÎÁõ

TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl  <-- dnl Á¦°Å
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl  <-- dnl Á¦°Å

3. sendmail.cf »ý¼º 

m4 /etc/mail/sendmail.mc > /etc/sendmail.cf 

/etc/mail/local-host-names ¼öÁ¤

ÃÖÁ¾¼ö½ÅÁö µµ¸ÞÀÎ ¼³Á¤ 

[root@mail ~]# vi /etc/mail/local-host-names
# local-host-names - include all aliases for your machine here.
mailtest.com RELAY

/etc/dovecot.conf ¼öÁ¤

# Protocols we want to be serving:
#  imap imaps pop3 pop3s
protocols = pop3  <--  pop3 ¸¸ »ç¿ë

pop3_listen = *  <-- ipv6 »ç¿ë ¾È Çϰí ipv4 ¸¸ »ç¿ë

sendmail ½ÃÀÛ

/etc/rc.d/init.d/sendmail start
/etc/rc.d/init.d/saslauthd start 
/etc/rc.d/init.d/dovecot start

ÀÚµ¿ ½ÇÇà

[init.d]# chkconfig --level 35 saslauthd on
[init.d]# chkconfig --level 35 dovecot on
[init.d]# chkconfig --level 35 sendmail on

SMTP Test

C:\Documents and Settings\bluesanta>telnet mailtest.com 25

220 mail.mailtest.com ESMTP Sendmail 8.13.1/8.13.1; Fri, 16 Feb 2007 11:47:22 -0
500
mail from: user1@mailtest.com
250 2.1.0 user1@mailtest.com... Sender ok
rcpt to: user1@mailtest.com
250 2.1.5 user1@mailtest.com... Recipient ok
data
354 Enter mail, end with "." on a line by itself
mail test
.
250 2.0.0 l1GGlMZn004965 Message accepted for delivery
quit
221 2.0.0 mail.mailtest.com closing connection


È£½ºÆ®¿¡ ´ëÇÑ ¿¬°áÀ» ÀÒ¾ú½À´Ï´Ù.

C:\Documents and Settings\bluesanta>

POP3 Test

C:\Documents and Settings\bluesanta>telnet mailtest.com 110

+OK dovecot ready.
user user1
+OK
pass asdf1234
+OK Logged in.
quit
+OK Logging out.


È£½ºÆ®¿¡ ´ëÇÑ ¿¬°áÀ» ÀÒ¾ú½À´Ï´Ù.

C:\Documents and Settings\bluesanta>