서버를 설치하면서 우분투 최신버전인 11.10과 APM패키지를 설치하였다.

어느 정도 정상적으로 작동하다가, 알수없는 fuser 프로세스가 급격히 증가하면서 좀비프로세스가 되는 현상이 있었다.

DDOS나 DB처리 과정에서 발생하는 것이 아닐까 생각하여 로그도 봐보고, Apache Timout 등 설정도 바꿔봤지만 아무런 효과도 볼 수 없었다.

재부팅 후 10~20분만 지나면 이런 현상이 발생했는데, 관련 자료를 찾아도 없던 중 자료 하나를 발견하여 우선 테스트 중이다.

설정 후 2시간 정도 작동해 보니 현재까지는 양호하게 작동하고 있다.


/etc/cron.d/php5 파일 내용이 11.04와 달라졌는데, 우선 11.04 내용으로 변경하여 적용했다. 

11.10 버전은 아래의 내용이다.

09,39 *     * * *     root   [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -depth -mindepth 1 -maxdepth 1 -type f -cmin +$(/usr/lib/php5/maxlifetime) ! -execdir fuser -s {} 2>/dev/null \; -delete


이 것을 아래처럼 11.04의 것으로 바꾼다. ( ! -execdir fuser -s {} 2>/dev/null \; 삭제)

09,39 *     * * *     root   [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -depth -mindepth 1 -maxdepth 1 -type f -cmin +$(/usr/lib/php5/maxlifetime) -delete


현재까지는 이상이 없지만 모니터링을 해봐야겠습니다.

30분 이상된 세션을 정리해 주는 cron인 것 같네요. 

이 때문에 30분마다 엄청난 fuser프로세스가 생긴 것 같은데요. 위 부분을 지웠다고 어떤 문제가 생길지는 모르겠습니다.

우선은 지켜봐야 할 듯 합니다.







저작자 표시 비영리 변경 금지
신고

PHP로 원격블로깅 툴을 개발하기 위해서 가장 기본이 되는 함수입니다. (몇 개의 예제를 봤는데, 보편적으로 적용하기 어려워서 만들었습니다.)

metaWeblog 지원하는 블로그에 글을 쓸 수 있습니다.


우선 xmlrpc.inc 파일을 다운로드 받아야 합니다.

http://sourceforge.net/projects/phpxmlrpc/files/phpxmlrpc/2.2.2/ 에서 다운로드 받아 압축을 푸시면 됩니다. 여기서는 lib폴더에 있는 xmlrpc.inc 파일 하나만 불러오면 됩니다.


변수설명

$g_blog_url : 블로그 API주소

$blogid : 블로그ID, 보통은 필요 없지만, 티스토리처럼 한 계정으로 여러 블로그를 사용하는 경우 블로그 구분을 위해서 필요합니다.

$user_id : 로그인 ID

$password : 일반적으로 로그인 비밀번호를 사용하기도 하지만, 티스토리나 네이버 등은 별로의 로그인 비밀번호를 API설정 페이지에서 제공합니다.

$title : 글 제목

$description : 글 내용

$publish : 출판 여부, true이면 바로 공개상태가 되며, false이면 비공개상태로 저장됩니다.



<?php
require './xmlrpc/lib/xmlrpc.inc';  // phpxmlrpc.sourceforge.net 에서 다운로드
        $return = newPost("http://xxx.wordpress.com/xmlrpc.php", "blogid", "userid", "userpwd", "연습글입니다.", "연습글 본문입니다.", true);
        print_r($return); // 처리 결과 출력

function newPost($g_blog_url, $blogid, $user_id, $password, $title, $description, $publish) 


$client = new xmlrpc_client($g_blog_url);

$client->setSSLVerifyPeer(false);  // 네이버 블로그 사용을 위해 필요, 보안 연결(https)
$GLOBALS['xmlrpc_internalencoding']='UTF-8';

$struct = array(
'title' => new xmlrpcval($title, "string"), 
'description' => new xmlrpcval($description, "string") 
);

$f = new xmlrpcmsg("metaWeblog.newPost", 
array( 
new xmlrpcval($blogid, "string"),
new xmlrpcval($user_id, "string"),
new xmlrpcval($password, "string"),
new xmlrpcval($struct , "struct"), 
new xmlrpcval($publish, "boolean")
));

$f->request_charset_encoding = 'UTF-8';
return $response = $client->send($f);
}
?>




저작자 표시 비영리 변경 금지
신고

최근에는 패키지로 배포되는 APM이 여러면에서 상당히 편리하므로 컴파일해서 설치할 필요가 없는 편입니다.

이 문서는 개인적인 차원에서 정리하는 것임을 밝혀 둡니다.

 

1. chkconfig 설치

이미 설치되어 있다면, 설치하지 않아도 됨

# apt-get install chkconfig

 

2. MySQL 자동실행 설정

실행 스크립트 /etc/init.d 로 복사

# cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld

chkconfig으로 등록

# chkconfig --add mysqld

 

3. Apache 자동실행 설정

실행 스크립트 /etc/init.d 로 복사

# cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd

스크립트 수정

# vi /etc/init.d/httpd

다음 내용을 #!/bin/sh 하단에 추가

# Comments to support chkconfig on ReaHat Linux
# chkconfig: 2345 90 90
# descrption: A very fast and reliable WebServer engine.

chkconfig으로 등록

# chkconfig --add httpd

 

4. 등록 여부 확인

# chkconfig --list

결과 아래와 같은 항목이 있어야 함

httpd                     0:off  1:off  2:on   3:on   4:on   5:on   6:off

mysqld                    0:off  1:off  2:on   3:on   4:on   5:on   6:off

 

httpd가 없거나 전부 off 일때

mysql은 잘되지만 httpd는 안될 때가 있다.

# chkconfig --edit httpd

실행 후, httpd off 라고 된 부분을 on으로 변경 후 저장

신고

최근에는 패키지로 배포되는 APM이 여러면에서 상당히 편리하므로 컴파일해서 설치할 필요가 없는 편입니다.

이 문서는 개인적인 차원에서 정리하는 것임을 밝혀 둡니다.

 

 

1. PATH 설정

/etc/profile 에 아래 내용 추가

# form Apache located at /usr/local/apache2
if [ –d /usr/local/apache2 ]
  LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apache2/lib; export LD_LIBRARY_PATH
  PATH=$PATH:/usr/local/apache2/bin; export PATH;
fi

# from MySQL located at /usr/local/mysql
if [ –d /usr/local/mysql ]
  LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mysql/lib/mysql; export LD_LIBRARY_PATH
  PATH=$PATH:/usr/local/mysql/bin; export PATH;
fi

 

2. MySQL 설정

mysql 사용자 추가

# groupadd mysql
# useradd -d /home/mysql -g mysql –s /bin/false mysql

환경파일 복사

# cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf

DB파일 생성

# /usr/local/mysql/bin/mysql_install_db
# chown -R mysql:mysql /usr/local/mysql/var

root 비밀번호 변경

# /usr/local/mysql/share/mysql/mysql.server start
# /usr/local/mysql/bin/mysqladmin –u root password ‘new-password’

 

3. Apache 설정

/usr/local/apache2/conf/httpd.conf 파일 수정

# Dynamic Shared Object (DSO) Support
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php .htm .html
AddType application/x-httpd-php-source .phps

ServerName 수정

ServerName 192.168.0.1 처럼 IP를 지정하거나 도메인 지정

Include 주석 해제

가장 하단부에 각 설정이 구분된 Include 설정이 있다. 필요한 설정 부분 주석을 해제한다.

# Server-pool management (MPM specific)
Include conf/extra/httpd-mpm.conf

# Multi-language error messages
Include conf/extra/httpd-multilang-errordoc.conf

# Fancy directory listings
Include conf/extra/httpd-autoindex.conf

# Language settings
Include conf/extra/httpd-languages.conf

# User home directories
Include conf/extra/httpd-userdir.conf

# Real-time info on requests and configuration
Include conf/extra/httpd-info.conf

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

# Local access to the Apache HTTP Server Manual
Include conf/extra/httpd-manual.conf

# Distributed authoring and versioning (WebDAV)
Include conf/extra/httpd-dav.conf

# Various default settings
Include conf/extra/httpd-default.conf

# Secure (SSL/TLS) connections
#Include conf/extra/httpd-ssl.conf

신고

최근에는 패키지로 배포되는 APM이 여러면에서 상당히 편리하므로 컴파일해서 설치할 필요가 없는 편입니다.

이 문서는 개인적인 차원에서 정리하는 것임을 밝혀 둡니다.

주의1)  -기호 2개가 연속으로 있을 때 조금 긴 -기호로 바뀌어 버리네요. 수정이 잘 안되니, 참고 바랍니다. ^^;;

 

 

1. MySQL

# wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.67.tar.gz/from/http://mysql.byngsoo.net/
# tar xvzf mysql-5.0.67.tar.gz
# cd mysql-5.0.67
# ./configure --prefix=/usr/local/mysql --without-readline --enable-thread-safe-client --with-charset=utf8 --with-extra-charsets=ucs2,euckr CFLAGS="-I/usr/local/include" CXXFLAGS="-I/usr/local/include"
# make
# make install

 

2. Apache

# wget http://apache.tt.co.kr/httpd/httpd-2.2.9.tar.gz
# tar xvzf httpd-2.2.9.tar.gz
# cd httpd-2.2.9
# ./configure --prefix=/usr/local/apache2 --enable-so --enable-auth-digest --enable-dav --enable-dav-fs --with-mpm=worker --enable-rewrite --enable-deflate --enable-headers --enable-expires --enable-log-forensic --enable-dbd --enable-authn-dbm --enable-authn-dbd --enable-authz-dbm
# make
# make install

--with-mpm=worker 설명

Apache2에는 worker와 prefork가 있다. 일반적으로 worker가 메모리를 적게 사용하지만, prefork에 비해서 불안정하다고 알려져 있다.

해당 옵션을 삭제하면 기본으로 prefork가 된다.

서버의 수용 최대 접속 컴파일 단계에서 늘리기

Apache1.3.x에서는 httpd.h 파일의 HARD_SERVER_LIMIT 값을 변경해 컴파일 해야 하지만, Apache2에서는 조금 다르다.

컴파일 전에 아래 값을 변경해 줘야 한다.

server/mpm/prefork/prefork.c
DEFAULT_SERVER_LIMIT 을 256에서 2048로 변경

server/mpm/worker/worker.c
DEFAULT_SERVER_LIMIT 을 16에서 256으로 변경

 

3. PHP

# wget http://kr2.php.net/get/php-5.2.8.tar.gz/from/this/mirror
# tar xvzf php-5.2.8.tar.gz
# cd php-5.2.8
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --with-iconv=/usr/local --with-libxml-dir=/usr/local/xml --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-zlib-dir=/usr/local --with-freetype-dir=/usr/local --with-curl --enable-mbstring --enable-mbregex --enable-dbase --enable-sigchild --enable-gd-native-ttf --enable-wddx --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --enable-soap --enable-ftp --enable-safe-mode --enable-exif --enable-bcmath
# make
# make install
# cp php.ini-dist /usr/local/php/lib/php.ini

configure 중 libiconv.so.2 문제

아래와 같은 에러가 발생할 수 있다.

Sorry, I cannot run apxs.  Possible reasons follow:

1. Perl is not installed
2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs
3. Apache was not built using --enable-so (the apxs usage page is displayed)

The output of /opt/modules/apache2/bin/apxs follows:
/opt/modules/apache2/bin/httpd: error while loading shared libraries:libiconv.so.2: cannot open shared object file: No such file or directory
apxs:Error: Sorry, no shared object support for Apache.
apxs:Error: available under your platform. Make sure.
apxs:Error: the Apache module mod_so is compiled into.
apxs:Error: your server binary `/opt/modules/apache2/bin/httpd'..
configure: error: Aborting

해결방법

# ln -s  /usr/local/lib/libiconv.so.2 /usr/lib/

다시 configure 실행

 

4. ZendOptimizer

http://www.zend.com 에서 다운로드

# tar xvzf ZendOptimizer-3.2.8-linux-glibc21-i386.tar.gz
# cd ZendOptimizer-3.2.8-linux-glibc21-i386
# ./install

install스크립트

- 자동으로 설치함
- 설치 중 php.ini 경로 입력 : /usr/local/php/lib
- 설치 중 Apache Control Utility 경로 입력 : /usr/local/apache2/bin/apachectl

ZendOptimizer 제거

- /usr/local/php/lib/php.ini-zend_optimizer.bak 을 php.ini로 바꿈

신고

최근에는 패키지로 배포되는 APM이 여러면에서 상당히 편리하므로 컴파일해서 설치할 필요가 없는 편입니다.

이 문서는 개인적인 차원에서 정리하는 것임을 밝혀 둡니다.

주의1)  -기호 2개가 연속으로 있을 때 조금 긴 -기호로 바뀌어 버리네요. 수정이 잘 안되니, 참고 바랍니다. ^^;; 

 

1. readline

# wget ftp://ftp.cwru.edu/pub/bash/readline-5.2.tar.gz
# tar xvzf readline-5.2.tar.gz
# cd readline-5.2
# .configure –enable-multibyte
# make
# make install

 

2. libxml2

# wget ftp://xmlsoft.org/libxml2/libxml2-2.7.3.tar.gz
# tar xvzf libxml2-2.7.3.tar.gz
# cd libxml2-2.7.3
# ./configure --prefix=/usr/local/xml
# make
# make install

 

3. zlib

# wget http://www.zlib.net/zlib-1.2.3.tar.gz
# tar xvzf zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure –s
# make
# make install

 

4. libiconv

# wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.12.tar.gz
# tar xvzf libiconv-1.12.tar.gz
# cd libiconv-1.12
# ./configure --prefix=/usr/local
# make
# make install

 

5. FreeType

# wget http://nchc.dl.sourceforge.net/sourceforge/freetype/freetype-2.3.8.tar.gz
# tar xvzf freetype-2.3.8.tar.gz
# cd freetype-2.3.8
# ./configure
# make
# make install

 

6. GD

# wget http://www.libgd.org/releases/gd-2.0.35.tar.gz
# tar xvzf gd-2.0.35.tar.gz
# cd gd-2.0.35
# ./configure
# make
# make install

 

7. curl

# wget http://curl.haxx.se/download/curl-7.19.4.tar.gz
# tar xvzf curl-7.19.4.tar.gz
# cd curl-7.19.4
# ./configure
# make
# make install

 

8. jpeg

# wget http://www.ijg.org/files/jpegsrc.v6b.tar.gz
# tar xvzf jpegsrc.v6b.tar.gz
# cd jpegsrc.v6b.tar.gz
# ./configure
# make
# make install

 

9. libpng

# wget http://jaist.dl.sourceforge.net/sourceforge/libpng/libpng-1.2.35.tar.gz
# tar xvzf libpng-1.2.35.tar.gz
# cd libpng-1.2.35
# ./configure
# make
# make install

신고

최근에는 패키지로 배포되는 APM이 여러면에서 상당히 편리하므로 컴파일해서 설치할 필요가 없는 편입니다.

이 문서는 개인적인 차원에서 정리하는 것임을 밝혀 둡니다.

주의1) mysql과 apache2 데몬을 반드시 중지 후 제거한다.

주의2) 아래 제거는 상황에 따라 달라질 수도 있으며, 다른 방법이 있을 수 있다. (의존성 검사 후 제거해 주는 거라 이렇게 나열하지 않아도 가능하지 않을까?)

주의3)  -기호 2개가 연속으로 있을 때 조금 긴 -기호로 바뀌어 버리네요. 수정이 잘 안되니, 참고 바랍니다. ^^;;

1. mysqld 제거

# /etc/init.d/mysql stop
# apt-get --purge autoremove mysql-server mysql-client libmysqlclient15-dev

 

2. Apache 제거

# /etc/init.d/apache2 stop
# apt-get --purege autoremove apache2 apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert

 

3. PHP 제거

# apt-get --purge autoremove libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

신고
useradd -m 계정명 -G 그룹명
-m 옵션을 사용하면, 사용자 디렉토리를 생성시킴.


신고

MySQL 사용자 계정의 허용 호스트를 % 또는 IP주소로 허용해 주고 나서도 제대로 연결이 안되는 문제를 겪었다.

이를 해결하기 위해서는 my.cnf 를 수정하여 MySQL을 재실행 해주어야 한다.

1. my.cnf 수정

vi  /etc/mysql/my.cnf

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1 
#
# * Fine Tuning

위의 bind-address = 127.0.0.1 로 된 부분을 아래처럼 주석처리해 준다.

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
# bind-address = 127.0.0.1 
#
# * Fine Tuning

2. MySQL 재실행

/etc/init.d/mysql  restart

신고

제로보드XE를 설치하다가 mod_rewrite가 기본으로는 활성화 되지 않는 점을 발견 했다.

이때는

sudo a2enmod rewrite

명령어를 사용하면 mod_rewrite가 설치된다.

apache2 force-reload

명령어를 사용하여 활성화하면 된다.

앗!! 그런데 안된다... 쩝

/etc/apache2/sites-enabled/000-default 파일을 열어서 아랫부분처럼 수정해 준다.
(apache2.conf 파일이 분리되어 있구나...)

<Directory "/var/www">
  Options FollowSymLinks
  AllowOverride FileInfo
</Directory>

그리곤

apache2 -k restart

명령어로 아파치 재시작!!

그럼 성공!!!

신고
usr/share/fonts/truetype: failed to write cache
/usr/share/fonts/truetype/alee: failed to write cache
/usr/share/fonts/truetype/unfonts: failed to write cache
/var/lib/defoma/fontconfig.d: failed to write cache
/var/lib/defoma/fontconfig.d/B: failed to write cache
/var/lib/defoma/fontconfig.d/E: failed to write cache
/var/lib/defoma/fontconfig.d/G: failed to write cache
/var/lib/defoma/fontconfig.d/J: failed to write cache
/var/lib/defoma/fontconfig.d/P: failed to write cache
/var/lib/defoma/fontconfig.d/S: failed to write cache
/var/lib/defoma/fontconfig.d/T: failed to write cache
/var/lib/defoma/fontconfig.d/Y: failed to write cache
......

처럼 우분투에서 업데이트시 에러가 난다면 다음과 같이 하면 된다.
에러 메시지 중 위에 나타난 부분 (failed to write cache가 있는 부분)을 복사해서 아무 파일에나 저장한다.

# vi temp

을 실행하여 뒤에 붙어 있는 에러메시지를 삭제하고 저장한다.

/usr/share/fonts/truetype
/usr/share/fonts/truetype/alee
/usr/share/fonts/truetype/unfonts
/var/lib/defoma/fontconfig.d
/var/lib/defoma/fontconfig.d/B
/var/lib/defoma/fontconfig.d/E
/var/lib/defoma/fontconfig.d/G
/var/lib/defoma/fontconfig.d/J
/var/lib/defoma/fontconfig.d/P
/var/lib/defoma/fontconfig.d/S
/var/lib/defoma/fontconfig.d/T
/var/lib/defoma/fontconfig.d/Y

아래처럼 명령어를 실행한다.

cat /home/user/temp | xargs touch

다시 업데이트를 시도해 보면 정상적으로 될 것이다.

신고

이 부분은 간단해서 좋다.

일단 설치시, 우분투 설치CD를 넣었을 때 나오는 첫 화면에서 바로 설치하기로 들어가지 말고, F2를 누르면 Language를 선택할 수 있다. 이 때 한국어를 선택하면, 설치화면부터 한글 설정으로 모두 설치해 준다.

만약, 기본값으로 설치를 해버렸더라도 어렵지 않다.
System > Administrator > Language 로 들어가서 Korean을 찾아서 Apply를 눌러주면 자동으로 한국어가 설치된다. (단, 인터넷이 연결되어 있어야 한다.) 그리고 나서  Default Language 를 Korean으로 설정해 주면 끝이 난다.

신고

리눅스 배포판 중에서 이 부분만큼은 가장 쉽다.

pppoeconf

를 실행하면, username과 password를 물어보는데, 자신의 dsl계정을 입력하고 엔터 몇 번을 쳐주면 끝 난다.

신고

아직도 내 모니터의 1920x1200 해상도 잡기에는 실패했다.

일단은 내가 사용한 2가지 방법을 정리해 두고 다시 시작해야겠다.
드디어 세 번째 방법으로 성공했다. 후후~~~

혹시나 자신의 그래픽카드 드라이버를 아직 잡지 않았다면 우선 그래픽드라이버를 설치하시기 바랍니다.

우분투 7.04의 경우, 설치 후 관리 > 제한된 드라이버 관리자 에 가보면 nVidia의 경우 NVIDIA 그래픽 가속 드라이버 항목이 있을 것이다. 비활성화 되어 있는 것을 활성화에 체크해 주면 자동으로 드라이버가 설치된다.

첫 번째 방법 (대부분 이 방법으로 해결되는 것 같다)

sudo dpkg-reconfigure -p high xserver-xorg

를 입력하면 X설정 중 해상도와 관련된 세팅만 할 수 있다.
먼저, 자신의 그래픽카드를 선택하고 다음화면에서 원하는 해상도에 체크를 하고 엔터를 치면 끝.

Ctrl + Alt + BackSpace 를 누르면 X가 재시작되고, 확인할 수 있다.

두 번째 방법 (모니터 해상도와 주사율 설정, 첫 번째 실패하면 이 방법까지 사용)

gtf 1920 1200 60

자신의 모니터 해상도와 화면 주사율을 적용하여, 위 처럼 명령을 입력하면 아래와 같은 출력이 나온다.

  # 1920x1200 @ 60.00 Hz (GTF) hsync: 74.52 kHz; pclk: 193.16 MHz
  Modeline "1920x1200_60.00"  193.16  1920 2048 2256 2592  1200 1201 1204 1242  -HSync +Vsync

sudo vi /etc/X11/xorg.conf

를 실행하여 2번째 줄을 복사하여 붙여 넣어 주면 된다.

Section "Monitor"
        Identifier      "일반 모니터"
        Option          "DPMS"
        HorizSync       28-96
        VertRefresh     43-60
        Modeline "1920x1200_60.00"  193.16  1920 2048 2256 2592  1200 1201 1204 1242  -HSync +Vsync
EndSection

위 처럼 추가해 주고, 저장했으면 Ctrl + Alt + BackSpace 를 눌러서 X 재시작

세 번째 방법 (드디어 성공)

sudo vi /etc/X11/xorg.conf

를 실행하여 다음과 같이 VideoRam크기(KB단위)와 "ModeValidation" "NoDFPNativeResolutionCheck" Option을 추가한다.

Section "Device"
Identifier "GeForce 7300LE"
Driver "nvidia"
BusID "PCI:5:0:0"
VideoRam 262144
Option "ModeValidation" "NoDFPNativeResolutionCheck"
EndSection

VideoRam은 KB단위 이므로 256MB라면 256 x 1024 의 계산 결과를 써주면 된다.

저장했으면 Ctrl + Alt + BackSpace 를 눌러서 X 재시작

신고

우분투 64비트 버전, 혹은 리눅스 64비트 버전에 Firefox를 사용하고 있다면, 플래시플레이어 설치에 애를 먹을 수 있다.
플래시플레이어가 32bit용으로 나오기 때문에, 64비트 아키텍처 컴퓨터에서는 설치할 수 없다는 메시지를 보여주면서 설치가 중단될 것이다.

AMD64의 경우입니다.

1. 아래 명령어로 ia32-libs ia32-libs-gtk linux32 lib32asound2 를 설치합니다. 32비트 버전의 어플리케이션을 실행하기 위해서입니다.

sudo apt-get install ia32-libs ia32-libs-gtk linux32 lib32asound2

2. 설치가 끝나면, 아래 링크를 눌러 2개의 파일을 다운로드 합니다.
http://gwenole.beauchesne.info/proje...2-1.x86_64.rpm 
http://gwenole.beauchesne.info/proje...2-1.x86_64.rpm

3. alien을 설치합니다.

sudo apt-get install alien

4. alien을 이용하여 rpm패키지 파일을 deb패키지로 바꿉니다.

sudo alien nspluginwrapper-0.9.91.2-1.x86_64.rpm 
sudo alien nspluginwrapper-i386-0.9.91.2-1.x86_64.rpm

주의) 다운로드받은 rpm파일의 이름과 경로를 정확히 적어 주세요.

5. dpkg명령어로 패키지를 설치합니다.

sudo dpkg -i nspluginwrapper_0.9.91.2-2_amd64.deb 
sudo dpkg -i nspluginwrapper-i386_0.9.91.2-2_amd64.deb

주의) 파일 이름이 위와 다를 수도 있습니다. 확인 후에 실행해 주세요.

6. Adobe에서 flash player 9 를 아래 링크를 눌러 다운로드 받습니다.
http://fpdownload.macromedia.com/get...9_linux.tar.gz

7. tar로 압축을 해제합니다.

tar xvzf install_flash_player_9_linux.tar.gz

8. 압축 해제된 파일 중 libflashplayer.soflashplayer.xpt/usr/lib/mozilla/plugins 로 복사합니다.

9. nspluginwrapper로 활성화시켜 줍니다.

nspluginwrapper -i /usr/lib/mozilla/plugins/libflashplayer.so

이제 설치가 완료되었습니다. 플래시가 제대로 나타나는지 확인해 보시기 바랍니다.
혹시나 제대로 나타나지 않는다면, 8과 9의 과정을 /usr/lib/mozilla-firefox/plugins 경로를 대상으로 다시 한 번 해보시기 바랍니다.

신고

티스토리로 완전히 데이터를 이전 후,
예전 쓰던 블로그와 어떻게 연결할지 고민이 생겼다.
여러 검색엔진에 연결되어 있었기 때문에 모두 바뀌기까지 기다리는 것도 문제였다.

제가 사용한 방법은 .htaccess 를 수정하여 연결시켜주는 방법이다.

예전 주소는 http://blog.educom.or.kr 이고
현재는 http://k2man.pe.kr 이다.

예전에 쓰던 계정의 .htaccess 파일을 열고 (숨김 파일로 되어 있을 수도 있다.)

RewriteEngine On
RewriteRule "^(.*)"http://k2man.pe.kr/$1

이전에 씌여 있던 것을 지우고, 위 처럼 두 줄을 적어 주면 된다.

그러면 http://blog.educom.or.kr/101 처럼 예전 링크가 그대로
http://k2man.pe.kr/101 로 연결이 된다.

태그링크도 정상적으로 연결이 되고 리퍼러도 이전 블로그계정 주소가 아니라 원래 리퍼러가 제대로 들어온다.

추가) 이제 보니 이전 RSS주소로도 정상적으로 동작하는 것 같습니다. ^^

신고

이 문제로 고생 중 USB키보드는 되는데 PS/2가 안되느니 하는 글들을 많이 봐서 포기하고 있었다.
하지만 그게 아니다.

xev 로 확인을 해보면 분명 한자키와 한영키의 키값이 나오지 않았다.
그래서 포기하고 있었는데

콘솔에서 showkey명령을 통해 알아낸 키 값을 
/etc/rc.d/rc.local 에 먼저 등록해 주어야

X에서 xev로 확인 했을 때 키값이 제대로 나온다.

X의 터미널로 들어가서 showkey를 해도 제대로 안나오고 반드시 Text콘솔로 들어가서 해야 나온다.
귀찮다면 웬만하면 비슷하니 아래 값으로 테스트 해보고 안되면 콘솔로 들어가서 확인해 보는 것도 좋을 것 같다.

/etc/rc.d/rc.local 파일을 열어서

setkeycodes  71  122  #한자키
setkeycodes  72  123  #한영키

두 줄을 추가한다.

이제 X의 터미널에서 xev를 하고 한자키와 한영키를 눌러보면 키값이 제대로 나올 것이다.
만약 나오지 않는다면 앞에서 말한대로 Text콘솔로 들어가서 showkey 명령으로 키값을 확인해 봐야 한다.

제대로 나왔다면
/etc/X11/Xmodmap 을 열어 다음 두 줄을 추가한다.
209와 210은 제 컴퓨터에서 xev 를 했을 때 키값이다. 보통 비슷할 것으로 생각한다.

keycode  209 = Hangul_Hanja
keycode 210 = Hangul

이제 Fedora의 기본 입력기인 SCIM 설정에 가서 전환키에 두 키를 등록해 주면 된다.

신고

fedora core5를 사용중이다.
분명 jre가 설치 되었는데 계속 firefox에서는 jre를 설치하라고 나온다.
이 문제를 해결하기 위해서는 jre plugin을 firefox의 plugin과 연결시켜줘야 한다.

1. 우선 터미널을 열고

2. firefox의 plugins 디렉토리로 이동한다. (기본: /usr/lib/firefox-1.5.0.1/plugins )

3. 다음과 같은 명령을 실행한다.
ln -s /usr/java/jre1.5.0_06/plugin/i386/ns7/libjavaplugin_oji.so ./libjavaplugin_oji.so

jre 디렉토리는 버전에 따라서 약간 다를 수 있으니 확인 하기 바란다.

신고

우선 ntfs 를 마운트 하기 위한 모듈을 다운로드 받아야 한다.
http://www.linux-ntfs.org
에 가서 자신의 버전에 꼭 맞는 rpm으로 받아야 한다.
/lib/modules/ 에 가보면 자신의 커널이 어떤 것을 받아야 할 지 확실히 알 수 있다.

이제 다운로드 받은 rpm을 설치한다.
페도라라면 더블클릭으로 설치가 가능하다.
#rpm -ivh 파일명
으로 설치해도 된다.

이제 모듈을 등록해야 한다.
#/sbin/modprobe ntfs
아무런 메시지가 없이 프롬프트가 나오면 성공이다.
만약 ntfs 모듈을 못 찾겠다 메시지가 나오면 rpm을 잘못 받은 것이니 다시 확인해서 받자.
자신의 커널과 꼭 맞도록....
(한글 파일명이 잘 안 나올 수도 있다.옵션을 추가하면 잘 나온다.)
이제 mount가 잘 되는지 테스트 해보겠다.
먼저 /ntfs 란 폴더를 만들었다.
폴더 이름은 맘대로 지으시고
#mount -t -iocharset=uft8 ntfs /dev/hdb1 /ntfs
아시겠지만 (저는) ntfs파티션 있는 하드를 secondery로 사용하고 있어서 hdb1 이다.

잘 되었는지 /ntfs 디렉터리를 확인해 보자. 
-iocharset 옵션을 한글 파일명을 처리하기 위해서 넣었다.

잘 되었으면
ntfs 파티션을 fstab에 등록하겠다. (재부팅시 매번 mount필요 없다.)
다음과 같이 하면 한글도 잘 나온다.
/dev/hdb1  /ntfs  ntfs  iocharset=utf8,defaults,users,umask=0200  0  0
이제 부터는 컴퓨터를 부팅할때 마다 잘 나올 것이다.

신고

최신 페도라를 설치하면서 가장 골치 썩인 점...

SELinux 라는 보안 강화가 추가 되면서
가상호스트를 추가해도 제대로 안되고

Forbidden
You don't have permission to access / on this server.

Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.

이런 에러만 뱉어 낸다.
아무리 봐도 잘 된것 같은데 가상호스트 설정을 잘못한 줄 알고 몇 번을 바꾸고 아파치 재실행 했다.

해결방법은

1. /etc/selinux/config 에서 SELINUX=permissive로 설정 하는 방법

2. 관리자툴중에 보안 수준 및 방화벽 으로 들어가서 Selinux수준을 위와 같이 Peissive 로 바꿔주는 방법


둘다 같은 방법이다.
그런데 이러면 보안 수준이 낮아 지는게 아닌지 모르겠다.
일단은 이렇게 해뒀지만 문서를 더 봐야 할 듯....
신고

mysql>create database dbname;

mysql>GRANT ALL PRIVILEGES ON dbname.* TO username@localhost IDENTIFIED BY 'password' WITH GRANT OPTION;

신고

/etc/man.config

을 열어서...

PAGER     /usr/bin/less -isr   을
PAGER     /usr/more -s   로  수정

신고

+ Recent posts