Mysql socket 에러 해결하기

2005/07/04 12:29
아래 내용은 mysql설치 후 소켓에러가 발생했을 시 해결하는 방법입니다.

[에러 내용]
Warning: Can't connect to local MySQL server through socket '/home/mysql/mysql.sock'
(111) in /home/dspaper/public_html/board/index.html on line 15

[문제의 원인]
실제로 mysqld 에 의한 socket 파일은 /tmp/mysql.sock 에 존재하는데 PHP 나 mysql 과 같은
프로그램들은 그 파일을 /var/lib/mysql/mysql.sock 에서 찾습니다. 그러니 당연히 mysqld 와
의사소통이 될리가 없고, 접속이 안된다고 에러가 납니다.

[해결방법]
1. ln -sf /tmp/mysql.sock /var/lib/mysql/mysql.sock
이 해결법은 가장 간단하게 할 수 있지만 문제점은 리부팅 되고 나면 그때마다 다시 이
soft link 를 걸어 줘야 합니다. 왜냐하면 이 파일은 일반적인 파일이 아닌 unix socket
파일이기 때문입니다.

2. msyqld 기동시에 --socket=/var/lib/mysql/mysql.sock 라는 옵션을 추가
이 방법은 강제적으로 소켓 파일을 원하는 디렉토리에 만들도록 해 줍니다. 그러므로 mysqld의
소켓파일이 저 디렉토리에 생성만 된다면 문제는 해결이 되겠지요.

3. PHP 연동시 client 측에서 socket 파일의 위치를 지정해 주는 방법
$conn = mysql_connect("localhost:/tmp/mysql.sock","db_user","db_passwd");
이 방법은 클라이언트 측에서 서버측의 소켓파일의 위치를 명시해 주는 방법입니다.
2005/07/04 10:25
1. Master 측 설정


Replication 에서는 Master 와 Slave 라는 말을 사용하게 된다. Master 라는 말은 즉 능동적인
작업을 수행하는 측을 의미한다. 즉 실제로 업데이트가 발생하고, 동기화를 할 서버의 기준이
되는 서버를 의미한다.

일단, Replication 기능을 사용하기 위해서는 Replication 의 기능을 수행 할 유저가 필요하며
이 유저는 모든 DB 에 대해서 file 의 권한을 가지고 있어야 한다.

GRANT file ON *.* TO $repjob_user@\$slave_host_addr' IDENTIFIED BY '$passwd'

명령을 이용하여 file 에 대해서만 모든 DB 에 권한을 가지는 유저를 추가하도록 한다. 여기서
$repjob_user 는 중복되지 않는 유일한 아무 이름의 유저로 지정하면 되며, $salve_host.addr
은 SLAVE server 로 만들 서버의 주소를 적어 줘야 한다. 그래야 SLAVE 에서 위에서 지정한 유
저로 MASTER server 에 접속이 가능하기 때문이다. 마지막의 $passwd 는 접속할 패스워드를 지
정하는 것이다.

다음 my.cnf 에 아래와 같이 Replication 기능을 위한 MASTER 설정을 한다.




Hanterm - cat /etc/my.cnf

[root@bbuwoo /etc]$ cat my.cnf

[mysqld]
....
....
log-bin
binlog-do-db = test
binlog-do-db = test1
server-id = 1

[root@bbuwoo /etc]$



log-bin 은 Replication 을 위한 binary log 를 남기게 한다. server-id 는 Replication 기능
을 사용하는 서버중 유일값을 가져야 한다. server-id 는 1 에서 2^32-1 까지 지정할 수 있다.

binlog-do-db 는 Replication 을 사용할 database 를 지정한다. binlog-do-db = test,test1 과
같이는 사용이 안된다. 이유는 모르겠지만 하나에 하나씩 적어 줘야 한다. 만약 모든 database
를 동기화 하려한다면 binlog-do-db 를 설정을 안하면 된다. 만약 mysql DB 만 Replication 기
능을 사용하고 싶지 않다면 binlog-ignore-db 를 사용하면 된다.

my.cnf 에서 사용할 수 있는 MASTER 에 관한 옵션은 다음과 같다

log-bin=filename

Replication 기능에 필요한 binary log 를 남기게 한다. filename 을 지정하지 않을 경우에는
mysql 의 lib directory 에 $host-bin.001 과 같이 남게 된다. RPM으로 설치했을 경우에는 보
통 /var/lib/rpm 에 남게되며, prefix 를 지정하지 않은 채 소스 컴파일을 했을 경우에는 보통
/usr/local/mysql/lib/ 에 남게 된다.

log-bin-index=filename

binary file 의 index 파일을 생성한다. 지정하지 않으면 $host-bin.index 로 남게 된다. 지정
하나 하지 않으나 별 상관은 없다.

sql-bin-update-same

If set, setting SQL_LOG_BIN to a value will automatically set SQL_LOG_UPDATE to the same
value and vice versa.

binlog-do-db=database_name

MASTER 의 여러 DB 중 Replication 기능으로 동기화를 할 Database를 선택한다. 이것이 지정이
되어 있으면 지정되지 않은 Database 들은 동기화에서 빠진다.

binlog-ignore-db=database_name

MASTER 의 여러 DB 중 Replication 기능으로 동기화를 하지 않을 Database 를 선택한다. 이것
이 지정이 되어 있으면 지정되지 않은 Database 들만 동기화를 한다. 만약 binlog-do-db 가 설
정이 되어 있을 경우 에는 binlog-do-db 를 먼저 적용하고나서 binlog-ignore-db 를 적용한다.

좀 더 자세한것을 알고 싶다면 http://www.mysql.com/doc/R/e/Replication_Options.html 를 참
고 하도록 한다.


2. SLAVE 측 설정

SLAVE 측의 설정에서는 별다른 유저 추가가 필요 없으며 MASTER 측의 추가한 유저 정보를 이용
하여 my.cnf 에서 SLAVE 설정만 해 주는 것으로 설정이 끝난다.




Hanterm - cat /etc/my.cnf

[root@bbuwoo /etc]$ cat my.cnf

[mysqld]
....
....
server-id = 2
master-host = mater_ipaddres
master-user = $repjob_user
master-password = $passwd
replicate-do-db = test
master-port = 3306

[root@bbuwoo /etc]$



server-id 는 역시 유일값 이어야 한다. MASTER 에서 1 을 사용했으니 SLAVE 에서는 2 를 사용
한다.

master-host 는 MASTER server 의 ip address 를 지정해 준다. master-user 는 Replication 작
업을 할 유저를 지정한다. 위의 MASTER 에서 등록해 준 유저를 적도록 한다.

master-passwd 는 Replication 작업을 할 유저의 패스워드를 지정한다.

master-port 는 MASTER server 가 사용하는 포트를 지정한다. 기본값으로 3306 이다.

만약 MASTER server 의 특정 DB만 Replication 기능을 사용하고 싶다면 replicate-do-db 를 이
용한다. 하지만 이 기능은 MASTER 에서 binlog-ignore-db 로 제한을 하고 있다면 적용이 되지
않는다. 즉 SLAVE level 에서는 MASTER 가 허락 하는 database 중에서 선택을 할 수 있을 뿐이
다. SLAVE 에서 사용할 수 있는 옵션들은

http://www.mysql.com/doc/R/e/Replication_Options.html

를 참고 하도록 한다.

위의 작업을 간단히 설명을 하자면 MASTER 에서는 Replication 을 위한 유저에게 file 에 대해
서는 모든 권한을 준 상태로 추가 했으며, test, test1 database 에 대해서 Replication 을 하
도록 설정을 한 것이다. SLAVE 에서는 replicate-do-db 가 설정이 되어 있으므로 test1 DB 만
동기화를 하게 설정한 것이다.


3. 동기화 초기화 작업

MASTER 와 SLAVE 의 설정을 마쳤으면 Replication 기능을 사용하기 전에 두대간의 동기화 작업
을 먼저 해 놓아야 한다. 먼저 동기화 할 database 를 SLAVE 로 옮긴다. (만약 MASTER 에서 아
무것도 없는 상태에서 시작한다면 이 작업은 필요없다. MASTER에서 운영중인 것을 Replication
기능을 이용하여 동기화 하기 위해 필요한 작업이다.) 위에서는 test1 DB 만 동기화를 하도록
설정을 했으니 MASTER 의 test1 DB를 압축해서 SLAVE 로 옮긴다 (mysql 의 경우에는 data file
만 옮겨도 그냥 적용을 할 수 있다.)

master) cd /var/lib/mysql
master) tar cvfpz test1.tgz test1
master) chmod 777 test1.tgz

slave) cd /var/lib/mysql
slave) ncftp -u user master_server
slave) (Afer login) cd /var/lib/mysql
slave) get test1.tgz
slave) delete test1.tgz (ftp 상의 파일을 삭제)
slave) quit (ftp logout)
slave) tar xvfpz test1.tgz
slave) chown -R mysql.mysql test1


4. Replication 확인

여기 까지의 작업이 완료 되었다면 이제 MASTER 와 SLAVE 의 mysql 을 구동하고 다음을 확인한
다. 여기서의 결과값은 3.23.42 를 기준으로 한다. 버젼 마다 결과값이 다른 형태로 나올 수가
있다.


MASTER Server


Hanterm - mysql -e "show process"

[root@bbuwoo /etc]$ /etc/rc.d/init.d/mysql restart

Shutting down MySQL: [ OK ]
Starting MySQL: [ OK ]

[root@bbuwoo /etc]$ mysql -uroot -p -e "show processlist"

+----+-------+--------+------+-------------+------+
| Id | User | Host | db | Command | Time |
+----+-------+--------+------+-------------+------+
| 7 | $user | $slave | NULL | Binlog Dump | 2865 |
+----+-------+--------+------+-------------+------+
+---------------------------------------------+------+
| State | Info |
+---------------------------------------------+------+
| Slave connection: waiting for binlog update | NULL |
+---------------------------------------------+------+

[root@bbuwoo /etc]$ mysql -uroot -p -e "show master status"

+---------------+----------+------------------+------------------+
| File | Position | Binlog_do_db | Binlog_ignore_db |
+---------------+----------+------------------+------------------+
| $host-bin.001 | 729 | test,test1 | |
+---------------+----------+------------------+------------------+

[root@bbuwoo /etc]$




SLAVE Server


Hanterm - mysql -e "show process"

[root@bbuwoo /etc]$ /etc/rc.d/init.d/mysql restart

Shutting down MySQL: [ OK ]
Starting MySQL: [ OK ]

[root@bbuwoo /etc]$ mysql -uroot -p -e "show processlist"

+----+-------------+------+------+---------+------+-----------------------+------+
| Id | User | Host | db | Command | Time | State | Info |
+----+-------------+------+------+---------+------+-----------------------+------+
| 1 | system user | none | NULL | Connect | 2847 | Reading master update | NULL |
+----+-------------+------+------+---------+------+-----------------------+------+

[root@bbuwoo /etc]$ mysql -uroot -p -e "show slave status"

+-------------+-------------+-------------+---------------+---------------+-----+
| Master_Host | Master_User | Master_Port | Connect_retry | Log_File | Pos |
+-------------+-------------+-------------+---------------+---------------+-----+
| $master_ip | $rejob_user | 3306 | 60 | $host-bin.001 | 729 |
+-------------+-------------+-------------+---------------+---------------+-----+
+---------------+-----------------+---------------------+------------+
| Slave_Running | Replicate_do_db | Replicate_ignore_db | Last_errno |
+---------------+-----------------+---------------------+------------+
| Yes | test | | 0 |
+---------------+-----------------+---------------------+------------+
+------------+--------------+
| Last_error | Skip_counter |
+------------+--------------+
| | 0 |
+------------+--------------+

[root@bbuwoo /etc]$



와 같이 나와 있음을 확인하면 된다.


5. Replication Error 복구방법

Replication 이 잘 되다가 갑자기 slave 에서 master 가 반영이 되어 있지 않을 경우 slave 의
error log 를 보도록 한다. error log 를 보고 문제점을 fix 한 다음

shell> mysqladmin -uroot -p slave-start

명령을 실행하면 반영되지 않았던 master 의 자료가 하나씩 반영되는 것을 볼 수 있을 것이다.

또 한가지 주의할 점은 replication 을 구현할때 master 에서

mysql> create database DB명;

명령은 slave 에 반영이 되지를 않는다. 그러므로 slave 의 설정에

replicate-do-db = DB명

을 명확하게 밝혀 놓아야지 에러가 발생하는 것을 막을 수 있다. 그럼 Master 에서 DB 를 추가
할 때는 귀찮더라도 slave 에서 수동으로 create database 를 한 다음 추가된 db 를 my.cnf 에
서 replicate-do-db 를 설정한 다음 slave 를 재시작 하는 것을 권장한다.

database 추가가 반영이 되지 않는 것은 필자가 그 방법을 찾지 못한 것인지 아니면 원래 구현
이 안되어 있는 것인지를 모르겠다. 혹시 아는 사람이 있으면 필자에게 포스팅을 해 주면 감사
하겠다.


6. Replication Error 유형

mysql> show processlist;

+----+-------------+------+------+---------+------+-----------------------+------+
| Id | User | Host | db | Command | Time | State | Info |
+----+-------------+------+------+---------+------+-----------------------+------+
| 1 | system user | none | NULL | Connect | 2847 | Waiting to reconnect | NULL |
| | | | | | | after a failed read | |
+----+-------------+------+------+---------+------+-----------------------+------+
2 rows in set (0.00 sec)

mysql> show slave status;
+-------------+-------------+-------------+---------------+---------------+-----+
| Master_Host | Master_User | Master_Port | Connect_retry | Log_File | Pos |
+-------------+-------------+-------------+---------------+---------------+-----+
| $master_ip | $rejob_user | 3306 | 60 | $host-bin.101 | 729 |
+-------------+-------------+-------------+---------------+---------------+-----+
+---------------+-----------------+---------------------+------------+
| Slave_Running | Replicate_do_db | Replicate_ignore_db | Last_errno |
+---------------+-----------------+---------------------+------------+
| Yes | test | | 0 |
+---------------+-----------------+---------------------+------------+
+------------+--------------+
| Last_error | Skip_counter |
+------------+--------------+
| | 0 |
+------------+--------------+

이 경우를 보도록 하자. processlist 에서는 읽기 실패후에 재접속을 기다리고 있다고 상황을
출력하고 있고, slave status 에서는 host-bin.101 에서 멈춰있다. 그리고 master 에서는 로그
파일이 host-bin.130 번을 생성하고 있을 경우이다. 즉 로그 101 에서 slave 는 멈춰진 상태이
다. 그리고 slave 의 에러로그 파일에는 다음과 같은 내용이 있다.

020312 17:52:37 Error reading packet from server: Could not open log file
(read_errno 0,server_errno=13)
020312 17:53:37 Slave: Failed reading log event, reconnecting to retry, log
'$host-bin.101' position 729
020312 17:53:37 Slave: reconnected to master '$rejob_user@$master_ip:3306',
replication resumed in log '$host-bin.101' at position 729

이런 경우에는, master 의 바이너리 로그 파일의 소유권을 잘 살펴보기 바란다. 보통 mysql 은
mysql 유저로서 구동을 하는 경우가 많은데 이때 로그파일이 간혹 root 의 권한으로 생성이 되
는 경우가 있다. 이 경우 읽기 권한이 없어 위와 같은 에러가 발생하는 경우가 존재한다.
Posted by 채종윤
2005/07/04 11:27
우선 클라이언트두 mysqldump 명령을 쓸수 있게
관리자 가 /bin 밑에 mysqldump 명령을 복사 해주어야 합니다.
그래야 클라이언트 사용자두 그 명령을 사용할 수 있으니까요..

그런후 아래와 같은 옵션을 써서 디비 백업 받으면 됩니다.

형식:
$ mysqldump [OPTIONS] database [tables]

설명:
테이블이 생략되면 전체 태이블을 백업.
예제:
$ mysqldump --opt database > backup-file.sql
$ mysqldump --opt database | mysql --host=remote-host -C database
$ mysqldump --quick -c -ujhs -p jhs > jhs.out.sql
$ mysqldump --quick -c -t --add-locks -urp bizaide110 > bae110.data.sql

마지막 예제 처럼, -u, -p 가 데이터베이스 앞에와야하며,
데이터베이스는 맨 뒤에 와야한다.


도움말:
$ mysqldump --help

주의: 만약, --quick 이나 --opt 없이 덤프하면 메모리가 많이 소모되어
큰 데이터베이스의 경우 문제가 발생할 수 있다.

옵션:
--add-locks
테이블의 덤프하기전에 해당 테이블을 잠그고 덤프한 후에
테이블을 풀어준다.
-c, --complte-insert
INSERT 구문에서 필드명을 포함한 전체를 덤프
-f, --force
덤프 중 에러가 있어도 계속 진행
-h, --host
특정 호스트의 MySQL 에서 데이터 덤프
-t, --no-create-info
테이블 생성 정보는 덤프하지 않음(데이터만 덤프)
-d, --no-data
테이블 스키마만 덤프
-q, --quick
버퍼를 사용하지 않고 바로 표준출력으로 보낸다.


위의 예기는 원론적인 예기구요..
실사용예
만약 사용자가 할당 받은 디비 이름이 hahaha 라면
그 디비 안에 여러개의 table 이 있지 않습니까?
그러면 여기서는 한번에 기냥 hahaha 라는 디비 전체를 다 긁어 오는 방법을 설명 드릴게요..

#mysqldump -u님의디비아뒤 -p님의디비패스 hahaha >
hahaha_backup.sql
이렇게 해주시면 됩니다.
그러면 hahaha 디비안에 들어있는 테이블과 전체 내용이 싹 읽혀서 .sql 화일 안에 들어 갑니다.
vi hahaha_backup.sql 이렇게 해보세요..
그럼 모든게 들어가 있는것이 확인 될테니..
2005/07/05 14:56
mysql을 설치하여 사용하다보면, 서버부하가 없음에도 불구하고 "Warning...too many connections...."라는 메시지와 함께 MySQL 이 죽는 경우가 있습니다.

원인은 Mysql의 실행환경변수 설정에 있습니다 .

우선 Mysql설치홈의 bin디렉토리에서 "./mysqladmin -u -p variables"라고 해보시면 다음과 유사한 결과를 얻으실수 있습니다.


max_connections | 1000

wait_timeout | 300



와 같은 것을 볼수 있습니다 .



max_connections는 mysql에 connect할수 있는 최대 갯수를 지정해 둔것입니다.

"too many connections"라는 메시지는 이 갯수를 초과해서 connect하려고 할때 발생하는 메시지입니다.



결론부터 말씀드리자면 이 갯수를 적절히 조절해야한다고 말씀드릴수 있습니다.

하지만, max_connections 아래에 있는 wait_timeout이란 variable은 connect된 후에 몇초간 지속적으로 연결을 유지할 것인가를 지정해 둔 것입니다.



이를 설명하기 위해서는 mysql_connect()와 mysql_pconnect의 차이점 그리고, mysql_close()함수에 대한 정확한 이해가 필요한데.



간단히 설명해 보자면, mysql_connect()함수로 DB connect를 했다면 해당스크립트가 종료됨과 동시에 mysql_close()함수를 호출하지않아도 자동으로 연결이 종료됩니다.



하지만, mysql_pconnect()함수는 해당스크립트가 종료된후 mysql_close()함수가 호출되었더라도 연결이 끊어지지않은채로 계속 연결을 유지하고 있습니다.



따라서, 얼핏보기에는 "too many connections"라는 에러메시지는 mysql_pconnect()라는 함수의 사용때문에 발생하는 것 같지만, 그런 이유도 있을수 있지만, 직접적인 이유는 그것이 아니라 MySQL의 메뉴얼을 보면 mysql_connect()함수를 사용하면 해당스크립트의 종료와 함께 연결이 종료된다고 되어있지만

./mysqladmin -u -p processlist"라는 명령어를 통해서 살펴보면 그대로 살아 있음을 알수 있습니다.

맨위에서 살펴보았던 "mysqladmin -u -p variables"의 결과로서 볼수 있는 여러가지 시작옵션들중 "wait_timeout"의 값만큼 서버에 그대로 연결을 유지한채로 남아 있는 것입니다.

따라서, 이것이 "too many connections"의 직접적인 이유인 것입니다.

그렇다면 문제의 해결은 간단하게

실행옵션을 주어서 이들 값들을 자기가 운용하고 있는 서버의 성능과 용도에 알맞게 수정해 주면 됩니다.

MySQL실행시에 주는 실행옵션값은 다음과 같습니다.

./safe_mysqld -O max_connections=1000 -O table_cache=256 -O wait_timeout=300 &


일반적으로 실행시킬때에는 기본옵션을 그대로 사용하는 "./safe_mysqld"라는 옵션을 사용하면.

이렇게 실행하면 36개의 MySQL시작옵션중에서 위의 3가지 옵션들만 값들을 임의로 지정하여 실행시킨 것입니다.

이렇게 실행시킨후에 다시 "mysqladmin -u -p variables"로 옵션들값을 확인해 보면 변경되어 있음을 알수 있을 것이다.



그리고, 참고로 리눅스 실행시에 mysql을 자동으로 시작하도록 설정해둔 /etc/rc.d/rc.local파일에도

위와 같이 옵션을 함께 주어서 실행하도록 설정하는 것을 잊지말기 바랍니다.
Posted by 채종윤

 

2005/12/20 18:04

음 다람쥐 메일을 가지고 왔습니다
http://www.squirrelmail.org
imap 를 이용한 꾀 좋은 웹메일입니다
자세히 설명 못드린점 죄송하구요
보안에 조금 문제가는 것도 있는 데
일단 설치 해보시라는 맘에서 테스트 했구요

[root@ns test]# tar xvfz squirrelmail-1.4.5.tar.tar
[root@ns test]# ll
합계 596
drwxr-xr-x 3 rmcobol rmcobol 4096 8월 31 23:46 ./
drwxr-xrwx 22 rmcobol rmcobol 4096 8월 31 23:36 ../
drwxr-xr-x 16 1000 users 4096 7월 14 03:45 squirrelmail-1.4.5/
-rw-r--r-- 1 rmcobol rmcobol 591226 8월 28 14:05 squirrelmail-1.4.5.tar.tar
[root@ns test]# mv squirrelmail-1.4.5 mail
[root@ns test]# ll
합계 596
drwxr-xr-x 3 rmcobol rmcobol 4096 8월 31 23:46 ./
drwxr-xrwx 22 rmcobol rmcobol 4096 8월 31 23:36 ../
drwxr-xr-x 16 1000 users 4096 7월 14 03:45 mail/
-rw-r--r-- 1 rmcobol rmcobol 591226 8월 28 14:05 squirrelmail-1.4.5.tar.tar
[root@ns test]# chown rmcobol:rmcobol -R mail/
[root@ns test]# mv mail/ /home/rmcobol/html/
[root@ns test]# cd /home/rmcobol/html/mail
[root@ns mail]# ll
합계 192
drwxr-xr-x 16 rmcobol rmcobol 4096 7월 14 03:45 ./
drwxr-xrwx 21 rmcobol rmcobol 4096 8월 31 23:50 ../
-rw-r--r-- 1 rmcobol rmcobol 7896 6월 8 00:42 AUTHORS
-rw-r--r-- 1 rmcobol rmcobol 15129 6월 16 09:22 COPYING
-rw-r--r-- 1 rmcobol rmcobol 60753 7월 14 03:37 ChangeLog
-rw-r--r-- 1 rmcobol rmcobol 8622 6월 5 00:50 INSTALL
-rw-r--r-- 1 rmcobol rmcobol 2637 6월 27 2004 README
-rw-r--r-- 1 rmcobol rmcobol 4382 7월 14 03:37 ReleaseNotes
-rw-r--r-- 1 rmcobol rmcobol 4733 5월 30 19:07 UPGRADE
drwxr-xr-x 5 rmcobol rmcobol 4096 7월 14 03:45 class/
drwxrwxr-x 2 rmcobol rmcobol 4096 8월 28 14:08 config/
-rwxr-xr-x 1 rmcobol rmcobol 92 12월 27 2001 configure*
drwxr-xr-x 3 rmcobol rmcobol 4096 7월 14 03:45 contrib/
drwxrwxr-x 2 rmcobol rmcobol 4096 7월 14 03:45 data/
drwxr-xr-x 4 rmcobol rmcobol 4096 7월 14 03:45 doc/
drwxr-xr-x 4 rmcobol rmcobol 4096 7월 14 03:45 functions/
drwxr-xr-x 3 rmcobol rmcobol 4096 7월 14 03:45 help/
drwxr-xr-x 2 rmcobol rmcobol 4096 7월 14 03:45 images/
drwxr-xr-x 3 rmcobol rmcobol 4096 7월 14 03:45 include/
-rw-r--r-- 1 rmcobol rmcobol 661 2월 12 2005 index.php
drwxr-xr-x 5 rmcobol rmcobol 4096 8월 28 15:30 locale/
drwxr-xr-x 18 rmcobol rmcobol 4096 7월 14 03:45 plugins/
drwxr-xr-x 2 rmcobol rmcobol 4096 7월 14 03:45 po/
drwxr-xr-x 2 rmcobol rmcobol 4096 7월 14 03:45 src/
drwxr-xr-x 3 rmcobol rmcobol 4096 7월 14 03:45 themes/
[root@ns mail]# ./configure
SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1. Organization Preferences
2. Server Settings
3. Folder Defaults
4. General Options
5. Themes
6. Address Books
7. Message of the Day (MOTD)
8. Plugins
9. Database
10. Languages
D. Set pre-defined settings for specific IMAP servers
C Turn color off
S Save data
Q Quit

[1]
Organization Preferences
1. Organization Name : 짠돌이넷
2. Organization Logo : ../images/sm_logo.png
3. Org. Logo Width/Height : (308/111)
4. Organization Title : SquirrelMail $version
5. Signout Page :
6. Top Frame : _top
7. Provider link : www.xxxxx.co.kr
8. Provider name : 스펨메일

R Return to Main Menu
C Turn color off
S Save data
Q Quit
[2]
1. Domain : xxxxx.co.kr
2. Invert Time : false
3. Sendmail or SMTP : SMTP

A. Update IMAP Settings : localhost:143 (other)
B. Update SMTP Settings : localhost:25

R Return to Main Menu
C Turn color off
S Save data
Q Quit
[3]
Folder Defaults
1. Default Folder Prefix :
2. Show Folder Prefix Option : false
3. Trash Folder : INBOX.Trash
4. Sent Folder : INBOX.Sent
5. Drafts Folder : INBOX.Drafts
6. By default, move to trash : true
7. By default, move to sent : true
8. By default, save as draft : true
9. List Special Folders First : true
10. Show Special Folders Color : true
11. Auto Expunge : true
12. Default Sub. of INBOX : true
13. Show 'Contain Sub.' Option : false
14. Default Unseen Notify : 2
15. Default Unseen Type : 1
16. Auto Create Special Folders : true
17. Folder Delete Bypasses Trash : false
18. Enable /NoSelect folder fix : false

R Return to Main Menu
C Turn color off
S Save data
Q Quit
[4]
SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
General Options
1. Data Directory : /var/spool/data/ touch로 data생성
2. Attachment Directory : /var/spool/attach/ touch로 attach생성
3. Directory Hash Level : 0
4. Default Left Size : 150
5. Usernames in Lowercase : false
6. Allow use of priority : true
7. Hide SM attributions : false
8. Allow use of receipts : true
9. Allow editing of identity : true
Allow editing of name : true
Remove username from header : false
10. Allow server thread sort : false
11. Allow server-side sorting : false
12. Allow server charset search : true
13. Enable UID support : true
14. PHP session name : SQMSESSID

R Return to Main Menu
C Turn color off
S Save data
Q Quit

[root@ns spool]# ll
합계 32
drwxr-xr-x 8 root root 4096 8월 28 14:30 ./
drwxr-xr-x 16 root root 4096 8월 30 23:17 ../
drwxrwxrwx 2 root root 4096 8월 28 14:30 attach/ 777 생성
drwxrwx--- 2 mail mail 4096 9월 1 00:00 clientmqueue/
drwx------ 2 root root 4096 8월 6 22:02 cron/
drwxrwxrwx 2 root root 4096 8월 31 23:44 data/ 777 생성
drwxrwxr-x 2 root mail 4096 9월 1 00:00 mail/
drwxr-xr-x 8 root mail 4096 4월 4 14:21 mqueue/

아래 data 디렉토리에 생기네요 이부분은 만지지 않으셔도 되요
[root@ns spool]$ cd data/
[root@ns spool]$ ll
합계 16
drwxrwxrwx 2 root root 4096 8월 31 23:44 ./
drwxr-xr-x 8 root root 4096 8월 28 14:30 ../
-rw-r--r-- 1 apache apache 0 8월 31 00:51 xxxxx.abook
-rw------- 1 apache apache 375 8월 31 23:44 xxxxx.pref
-rw-r--r-- 1 apache apache 0 8월 28 14:46 rmcobol.abook
-rw------- 1 apache apache 104 8월 31 23:40 rmcobol.pref

[10]
SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Language preferences
1. Default Language : ko_KR <--이건 확장펙설치요
2. Default Charset : EUC_KR
3. Enable lossy encoding : false

R Return to Main Menu
C Turn color off
S Save data
Q Quit
Command >> s 저장
Command >> q 종료
Exiting conf.pl.
You might want to test your configuration by browsing to
http://your-squirrelmail-location/src/configtest.php
Happy SquirrelMailing!

[root@ns mail]# cd locale/
[root@ns locale]# ll
합계 152
drwxr-xr-x 5 rmcobol rmcobol 4096 8월 28 15:30 ./
drwxr-xr-x 16 rmcobol rmcobol 4096 7월 14 03:45 ../
-rw-r--r-- 1 rmcobol rmcobol 15131 1월 4 2005 COPYING.locales
-rw-r--r-- 1 rmcobol rmcobol 6544 7월 13 18:35 ChangeLog.locales
-rw-r--r-- 1 rmcobol rmcobol 2153 7월 1 2004 README.locales
-rw-r--r-- 1 rmcobol rmcobol 2128 7월 13 18:53 ReleaseNotes.locales
drwxr-xr-x 3 rmcobol rmcobol 4096 8월 28 15:24 help/
drwxr-xr-x 2 rmcobol rmcobol 4096 8월 28 15:24 images/
-rw-r--r-- 1 rmcobol rmcobol 473 12월 30 2004 index.php
-rwxr-xr-x 1 rmcobol rmcobol 221 3월 5 2004 install*

drwxrwxrwx 3 rmcobol rmcobol 4096 8월 28 15:24 ko_KR/
<--위 확장펙 아래거 받아서 풀고요 위 언어부분 그대로 적어주세요
-rw-r--r-- 1 rmcobol rmcobol 77047 8월 28 15:23 ko_KR-1.4.5-20050713.tar.gz
이 확장펙을 설치 하는 거여요 위 보시면 표시한거요 압축풀기요
-rw-r--r-- 1 rmcobol rmcobol 7861 3월 30 2002 timezones.cfg
-rw-r--r-- 1 rmcobol rmcobol 43 7월 13 18:35 version


[root@ns conf]# vi httpd.conf

# 한다.
#
Alias /icons/ "/home/httpd/icons/"


Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all


# 앨리어스 mysql
Alias /mysql "/web/home/rmcobol/html/mysql/"


Options Indexes
AllowOverride None
Order allow,deny
Allow from all


Alias /mail "/web/home/rmcobol/html/mail/"


Options Indexes
AllowOverride None
Order allow,deny
Allow from all


계정 : wwww.co.kr/mail
ccccc.com/mail 하시면 다람쥐메일로 가겠지요
확장펙은 찻아보세요 저도 지금 잠이 와서 어딘지 모르겠거든요
한국인 마케터가 브랜드명을 정했다는 코어듀오는 컴퓨터의 중앙연산장치(일명 씨퓨)의 핵심인 코어가 두개다를 의미한다. 이제는 프로세서 내부에 두개의 쌍둥이 연산코어가 자리잡아서 서로가 서로를 보완하는 역할을 해낸다.

서버급에서는 이미 멀티 프로세서( 씨퓨를 두개 이상 꼽을 수 있게 만든 것) 방식이 있었지만 보드에 두개 이상의 씨퓨를 넣을 자리와 전력소모 열 그리고 보드의 버스속도(기판내의 속도)가 씨퓨의 연산속도를 따라가지 못해 병목현상이 발생했다.

더블코어 방식의 씨퓨는 이를 보완하지만, 칩설계를 다시해야 한다.

전투기로 치면 단발엔진 F-16에서 쌍발엔진 F-15로 넘어간 거나 다름없다.
예전에는 씨퓨의 메가헤르쯔 속도를 높였다. 회선폭을 더욱 줄여, 더 많은 연산회로를 집어넣고 속도를 높였다. 그러나 이제는 회선폭의 줄임도 쉽지 않고하니, 이제는 더블코어로 간 것같다.


+ Recent posts