레이블이 OS관련인 게시물을 표시합니다. 모든 게시물 표시
레이블이 OS관련인 게시물을 표시합니다. 모든 게시물 표시

2008년 11월 26일 수요일

ubuntu에서 apm설치

우분투 리눅스에서 APM(Apache+Php+MySQL)을 설치해 보도록 하겠습니다.

이 글은 컴파일해서 쓰는게 아니라 패키지 자체설치로 초보자도 간단하게 설치해볼수 있습니다.

APM이란 리눅스에서 웹서버를 구성할때 많이 쓰는 프로그램의 일반적인 통합명칭입니다.

부르기 쉽게 한데로 모아서 APM이라고 부릅니다. 요즘은 LAMP(Linux + Apache + MySQL + Php/Perl,Python)환경 이라고도 부르기도 합니다.

아파치(Apache)는 웹서버 자체로서 일반적인 프로토콜인 Http프로토콜을 사용합니다. 또한 Https,ftp등도 지원을 하게 됩니다.

MySQL은 데이터베이스 엔진으로서 각종 게시판이나 데이터베이스를 사용해야할때 많이 쓰이는 프로그램입니다. MySQL뿐만 아니라 PostgresSQL도 사용이 가능합니다.

PHP는 스크립트언어로서 웹페이지를 구성할수 있는 언어중 하나입니다. 많은 웹 프로그램들이 php로 작성 되고 있습니다.


일반적으로 설치순서는 Apache -> MySQL -> PHP 등으로 이루어 지게 됩니다.


1) 설치

1.Apache

먼저 Apache를 설치하여 보겠습니다. 버전은 apache2버전을 기준으로 하겠습니다.

터미널을 열고 다음 명령을 입력합니다.

 

sudo apt-get install apache2


다음으로 mysql을 인증을 위한 모듈을 설치하겠습니다.


sudo apt-get install libapache2-mod-auth-mysql


다음으로 MySQL


sudo apt-get install mysql-server mysql-client

설치가 완료되면 MySQL서버가 자동으로 시작이 됩니다.


마지막으로 PHP 버전은 PHP5 기준으로 하겠습니다.

마찬가지로 터미널에서 다음을 입력합니다.

sudo apt-get install php5-common php5 libapache2-mod-php5

MySQL과 연동하기 위한 모듈을 설치합니다.

sudo apt-get install php5-mysql

이상으로 설치가 완료 되었습니다.


아파치 웹서버를 제 시작하겠습니다.

sudo /etc/init.d/apache2 restart

MySQL서버도 정상적으로 작동하는지 확인해 보고 작동을 안한다면 restart 를 해줍니다.

sudo netstat -tap | grep mysql

명령을 줬을때

tcp 0 0 localhost.localdomain:mysql *:* LISTEN -

와 비슷한 것을 보면 정상이고 그렇지 않다면

sudo /etc/init.d/mysql restart

로 재시작을 해줍니다.


모든게 정상이라면

에디터를 열고 웹서버의 디렉토리(일반적으로 "/var/www" 에서 phpinfo.php라는 파일을 만들고 다음의 소스코드를 넣어 줍니다.

  1. <?php
  2. print_r(phpinfo());
  3. ?>

그리고 웹브라우저를 열고 실행을 시켜봅니다.


일반적으로 http://호스트주소/phpinfo.php 로 주소를 열면 됩니다.


다음과 같은 화면이 나오면 웹서버를 위한 환경이 구성이 되었습니다.

스크롤을 내려 Apache 와 MySQL 등을 찾아 제대로 연결이 되었는지 확인해 봅니다.

각종 사항은 설정마다 다르게 나올것입니다.

2008년 9월 29일 월요일

ubuntu란 무엇인가?

vmware에서 이클립스 작업을 해볼까 하는데 아무래도 window계열보다는 linux계열이 나을 것 같다.

일단 Ubuntu란 단어는 생소해 보인다. 무슨 뜻일가? 남아프리카에서 사용하는 사람과 사람의 관계와 협동에 관심을 갖는 줄루족과 Xhosa족의 언어에서 나온 말이었다.
흠 왠지 선한 느낌이 든다.


Ubuntu는 노트북, 데스크탑, 서버에 적합하도록 개발된 운영 시스템이다.

이 것을 집이건 회사건 ubuntu는 필요한 모든 워드프로와 이메일부터 서버와 프로그래밍 툴에 이르는 모든 application을 제공해줄 것이다.

Ubuntu는 항상 무료로 제공될 것이며 이것을 친구에게 배포하던 마누라에게 배포하던 마음대로이다.

Ubuntu는 매 6개월마다 새로운 버젼이 제공될 것이며 항상 최고의 프로그램을 사용할 수 있을 것이다. 이것은 또한 보안적인 측면도 많이 고려 되었으며 적어도 18개월에 한 번은 보안 업데이트가 무상으로 진행된다.

Ubuntu Desktop version에서는 다음과 같은것들이 제공된다.
웹 서핑을 할 수 있고(firefox가 제공된다), 문서 생성(Word Processor, think free office 설치) 설치된 office는 ms office나 star office와 호환된다.
내가 원하는 것은 eclipse를 실행하는건데 금일 (2008-9-26) 설치 예정임.

최소 사양도 256M램에 4G의 스페이스만 있으면 설치가 가능하다. 게임을 하지도 않지만 만약 PC게임이 하고 싶으면 어쩌지?

결국 ubuntu와 이클립스는 설치 했건만 정작 flex builder는 리눅스 버젼이 없었다. ㅋㅋㅋ
모야 당연히 있을줄 알았건만. 쩝

2008년 8월 27일 수요일

HA, 클러스터링, 이중화, RAID

1) HA

: High Availability의 준말

: 번역 - 고가용성, 고가용도

: 가용성은 시스템 고장 발생시 빠른 시간내에 치료하여 다시 정상적으로 서비스할 수 있는 상태를 분석하기 위해서 사용되는 척도입니다. 따라서 고가용성이란 결함 또는 고장 발생 빈도를 줄이면서 결함 발생시 빠르게 수리하여 일년중 대략 30분 가량만 서비스 불능 상태이고 나머진 정상적인 서비스가 가능하다는 것을 의미합니다. 99.999%


2) 클러스터링

: Clustering

: PC 또는 서버를 하나의 시스템처럼 관리 및 운영하기 위해 사용하는 기술입니다. 클러스터 시스템의 응용분야는 고가용성 클러스터 시스템, 고성능 클러스터 시스템, 웹서버 클러스터 시스템이 있습니다. 먼저 고가용성 클러스터 시스템이란 PC 또는 서버를 연결하는 목적이 가용성을 높여 고가용성을 제공하기 위해 구성된 시스템을 말합니다. 나머지 고성능이나 웹서버 또한 비슷하게 이해하시면 됩니다.


3) 이중화

: Duplex 또는 Duplicate

: 위에서 가용성을 높인다는 표현을 많이 사용하였는데, 그럼 어떻게 하면 될까요? 이를 위한 가장 기본적인 방법이 이중화입니다. 용어에서 힌트를 얻을 수 있는 것처럼 서버를 한대만 두는 것이 아니라 여분서버 하나를 더 비치하는 것입니다. 즉 서버 2대를 사용하는 것이죠. 이때 관리정책에 따라 Hot과 Cold 두가지 방식이 있습니다. Hot은 서버 2대를 동시에 동작을 시켜 한대의 서버가 고장이 발생하였을 경우 다른 한대의 서버가 바로 고장난 서버에서 제공하던 서비스를 인계받아 서비스를 하게 하는 것입니다. Cold는 우선 1대만 서비스를 하게 했다가 고장이 발생하면 다른 서버를 동작시키고 그 후 고장난 서버의 서비스를 인계받아 서비스를 제공하는 것입니다.


4) RAID

: Redundant Array of Inexpensive Disks의 약자

: 어떤 사람은 Inexpensive 대신에 Independent를 사용하는 사람도 있습니다.

: RAID는 하드디스크 다시 말해서 저장장치를 중복하는 것입니다. 목적은 위에 서버를 이중화하는 것과 비슷합니다. 저장장치의 고장으로 인한 가용도 감소를 여러 저장장치를 중복하여 가용도를 높이기 위한 것이죠. 이 또한 메커니즘에 따라 RAID0~RIAD5 방식이 있습니다.

자세한 구현 방법이나 원리는 http://www.linux-ha.org/ 을 참고하세요. 리눅스 기반으로 클러스터를 만들어 HA를 제공하기 위한 프로젝트로써 소스가 모두 공개이고 관련 기술 및 개념에 대한 document도 비교적 정리가 잘되어 있습니다.

2007년 10월 26일 금요일

unpack 옵션들

TAR, Unpacking Packages


There are packages in many different formats and I thought you would like to know all the different options for unpacking them:


.tar.gz
CODE
$ tar -xvzf package_name.tar.gz

( x= extract v=verbose z=(un)compress f=file )


.tgz
CODE
$ tar -xvzf package_name.tgz



.tar.z
CODE
$ tar -xvzf package_name.tar.z



.tar.bz2
CODE
$ tar -jxvf package_name.tar.bz2

( j=bzip2 )


.gz
CODE
$ gunzip package_name.gz



.bz2
CODE
$ bunzip2 package_name.bz2

2007년 7월 4일 수요일

[unix] VI 메뉴얼 - 내가 만들었음 내가 주로쓰느것들만 모음

esc: 명령어 입력
 
vi로 게시물 열기 및 저장
 vi file : vi를 시작하여 지정한 파일 편집
 vi -R file : 읽기 전용 편집기로서 vi를 시작하여 지정한 파일 편집
 view file : 읽기 전용 편집기로서 vi를 시작하여 지정한 파일 편집
 wq : 데이터를 저장하고 종료
 :q! : 데이터를 저장하지 않고 종료 
 
입력키의 종류
 a : 커서 위치의 다음 칸부터 입력하기
 A : 커서가 있는 줄의 끝부터 입력하기
 i : 커서 위치부터 입력하기 (Insert도 같은 역할)
 I : 커서가 있는 줄의 맨 앞에서부터 입력하기
 o : 커서 바로 아래에 줄을 만들고 입력하기
 O : 커서 바로 위에 줄을 만들고 입력하기
 s : 커서가 있는 단어를 지우고 입력하기
 S : 커서가 있는 행을 지우고 입력하기

삭제
 x  : 문자 삭제
 #x : #개의 문자 삭제
 dd : 한 줄 삭제
 #d : #줄 삭제
 
취소키의 종류
 u : 작업 취소하기
 U : 그 줄에 행해진 작업 모두 취소하기
 . : 조금 전에 했던 명령을 반복하기

줄이동
 h<Left> : 커서를 한 칸 왼쪽으로 이동
 j<Down> : 커서를 한 줄 아래로 이동
 k<Up> : 커서를 한 줄 위로 이동
 l<Right> :커서를 한 칸 오른쪽으로 이동
 <Backspace> :커서를 한 칸 왼쪽으로 이동
 0 : 커서를 현재 줄의 맨 앞으로 이동
 $ : 커서를 현재 줄의 맨 끝으로 이동
 ^ : 커서를 현재 줄의 첫글자(공백이나 탭이 아닌)로 이동


마지막으로 지운거 복사
 p : 마지막으로 지워진 것을 커서의 뒤/아래에 삽입
 P : 마지막으로 지워진 것을 커서의 앞/위에 삽입
 
패턴검색
 / : 이전의 패턴에 대해 앞으로 검색을 반복
 n : 명령에 대해 같은 방향으로 반복
 N : 명령에 대해 반대 방향으로 반복


줄 길이의 조절
 : J : 줄의 결합
 
Visual 모드
  v ㅋㅋ

2007년 6월 21일 목요일

[linux] 네임 서버 변경하려고 할때..

/etc/resolv.conf 파일 수정

 nameserver 168.126.63.1
 nameserver 168.126.63.2

그냥 변경 하고 nslookup실행해 보면

# nslookup
Note:  nslookup is deprecated and may be removed from future releases.
Consider using the `dig' or `host' programs instead.  Run nslookup with
the `-sil[ent]' option to prevent this message from appearing.
>
>
>
> www.auction.co.kr
Server:         168.126.63.1
Address:        168.126.63.1#53

Non-authoritative answer:
Name:   www.auction.co.kr
Address: 211.233.17.11

이런식으로 출력 됨 ㅋㅋ

2006년 12월 19일 화요일

Linux에서 find로 문자열 찾기 욜~~

문자열찾기 방법 1 - 영어만 주로 가능
# grep -rw "찾는문자열" ./

문자열찾기 방법 2 - 대/소문자 구분 안하고 검색
# grep -i -l "찾는문자열" * -r 2> /dev/null

문자열찾기 방법 3 - 한글, 영어 모두 가능
# find . -exec grep -l "찾는문자열" {} \; 2>/dev/null

문자열찾기 방법 4 - 한글,영어, 대소문자 안가리고 검색
# find . -exec grep -i -l "찾을문자열" {} \; 2>/dev/null

문자열찾은 후 치환
# find . -exec perl -pi -e 's/찾을문자열/바꿀문자열/g' {} \; 2>/dev/null

파일명 찾기
# find / -name 파일명 -type f

파일명 찾기(대소문자 구별없음)
# find / -iname 파일명 -type f

디렉토리 찾기
# find / -name 파일명 -type d

디렉토리 찾기(대소문자 구별없음)
# find / -iname 파일명 -type d

특정 사용자 소유의 모든 파일을 찾을때는?
# find / -user "사용자 ID" -print

두세가지 문자열을 동시에 찾아야 할때는 egrep을 쓰면 아주 편합니다.
예를 들어
만약 그냥 grep으로 문자열1,2 를 찾으려면
ps -ef | grep 문자열1; ps -ef | grep 문자열2
와 같이 해야하는것을 egrep를 이용하면

ps -ef | grep '문자열1|문자열2'
와 같이 간단해집니다.

# egrep '(pattern1|pattern2|pattern3)' file.txt

2006년 11월 20일 월요일

[win] 비프음 제거

HKEY_CURRENT_USER\Control Panel\Sound
* Sound 라는 키가 보이지 않으면 새로 만들어 줍니다.
오른쪽 창에서 등록-문자열 값(S)
키 이름: Beep
기본값 : NO