** 참고 **

아래 장애상황과 해결방법은 각 서버의 환경에 따라 장애요인이 다를수 있기때문에 해결방법이 꼭 정답이라고 볼 수없고, 허접스러운 제가 해결하였던 방법이므로, 각자 상황에 맞게 적절히 도움을 받으셨으면 합니다.

 

 

 

[root@localhost httpd-2.2.3]# ./configure --prefix=/usr/local/apache
checking for chosen layout... Apache
checking for working mkdir -p... yes
checking build system type... i686-pc-linux-gnu

 

checking for APR... yes
  setting CC to "gcc"
  setting CPP to "gcc -E"
  setting CFLAGS to " -g -O2 -pthread"
  setting CPPFLAGS to " -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE"
  setting LDFLAGS to " "

Configuring Apache Portable Runtime Utility library...

checking for APR-util... reconfig
configure: error: Cannot use an external APR with the bundled APR-util

 

apr-util 문제가 있는것으로 판단되므로, 

#yum install -y apr*

으로 apr에 관련된것을 모두 받았다. 물론 이렇게 되면 필요없는 프로그램까지 받게되었다.

그러나 컴파일은 완료됨.

 

APR 소스 설치 방법

[apr-1.4.2 설치]

 

 #cd /usr/local/src

 wget http://archive.apache.org/dist/apr/apr-1.4.2.tar.gz

tar xvf apr-1.4.2.tar.gz

cd apr-1.4.2

./configure

 

[./configure 시 에러출력]

config.status: executing libtool commands
rm: cannot remove `libtoolT': No such file or directory
config.status: executing default commands
config.status: include/apr.h is unchanged
config.status: include/arch/unix/apr_private.h is unchanged

 

위와같은 에러 출력시 아래처럼 파일을 복사해주고 진행을 계속 해줍니다.

cp -arp libtool libtoolT

./configure

make

 

[make시 에러 출력]

make[1]: Entering directory `/usr/local/src/APM_setup/apr-1.4.2'
/bin/sh /libtool --silent --mode=compile gcc -g -O2 -pthread   -DHAVE_CONFIG_H -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE   -I./include -I/usr/local/src/APM_setup/apr-1.4.2/include/arch/unix -I./include/arch/unix -I/usr/local/src/APM_setup/apr-1.4.2/include/arch/unix -I/usr/local/src/APM_setup/apr-1.4.2/include  -o passwd/apr_getpass.lo -c passwd/apr_getpass.c && touch passwd/apr_getpass.lo
/bin/sh: /libtool: No such file or directory
make[1]: *** [passwd/apr_getpass.lo] Error 127
make[1]: Leaving directory `/usr/local/src/APM_setup/apr-1.4.2'
make: *** [all-recursive] Error 1
 

위와 같은 에러가 나온다면 아래처럼 심볼릭 링크를 걸어주고 진행을 계속 합니다.

# ln -s /usr/bin/libtool /

# make clean

# make

# make install

 

[apr-util-1.4.2 설치]

 

#cd ..

#wget http://archive.apache.org/dist/apr/apr-util-1.3.9.tar.gz

# tar xvzf apr-util-1.3.9.tar.gz
# cd apr-util-1.3.9
# ./configure --with-apr=/usr/local/apr
# make
# make install

 

이글은 http://system.neulwon.com/xe/?mid=linux_os&page=2&document_srl=2472 여기서 도움을 받았습니다.

chmod

chmod는 파일의 퍼미션(permission:허가권)을 조정하는 명령어 입니다.

 

옵션

-R : 하위 디렉토리 및 파일들의 소유권을 모두 변경 

 

-rw-r--r-- 1 leeahnlee leeahnlee 58290  6월  1 03:55 sendmail.cf
[root@localhost leeahnlee]# chmod 650 sendmail.cf
[root@localhost leeahnlee]# ls -l
합계 68
-rw-r-x--- 1 leeahnlee leeahnlee 58290  6월  1 03:55 sendmail.cf 

 

*CRT에서 실행파일인 경우 초록색 형광색으로 나타납니다.(securecrt 기준)

'Linux > Linux 명령어' 카테고리의 다른 글

:: Linux 명령어 scp  (0) 2013.09.29
Linux 명령어 chown  (0) 2013.06.02
Linux 명령어 date  (0) 2013.06.02
Linux 명령어 wc  (1) 2013.06.02
Linux 명령어 split  (0) 2013.06.02

chown

리눅스의 파일이나 그 디렉토리에는 그 파일의 소유권 및 소유 그룹이 지정되어 있습니다.

chown은 소유자를 변경하고, chgrp는 소유 그룹을 변경하는 명령어 입니다. 만약 소유자와 소유그룹 을 동시에 변경하고자 한다면 소유자, 소유그룹 사이에 점(.)을 사용합니다.

 

옵션

-R : 하위디렉토리 및 파일들의 소유권을 모두 변경 

 

[root@localhost leeahnlee]# ls -l
합계 68
-rw-r--r-- 1 root root 58290  6월  1 03:55 sendmail.cf

[root@localhost leeahnlee]# chown leeahnlee.leeahnlee sendmail.cf  
[root@localhost leeahnlee]# ls -l
합계 68
-rw-r--r-- 1 leeahnlee leeahnlee 58290  6월  1 03:55 sendmail.cf 

 

 

'Linux > Linux 명령어' 카테고리의 다른 글

:: Linux 명령어 scp  (0) 2013.09.29
Linux 명령어 chmod  (0) 2013.06.02
Linux 명령어 date  (0) 2013.06.02
Linux 명령어 wc  (1) 2013.06.02
Linux 명령어 split  (0) 2013.06.02

date

형식 : date [옵션] [+포맷]

사용예 : date +%Y%m%d

 

 포맷

(아래 괄호는 2013년 6월 2일 12시를 기준으의 예입니다.

%a : 요일(일)

%A : 요일(일요일)

%B : 월(6월)

%c : 날짜와 시간(2013년 06월 02일 (일) 오후 12시 32분 45초)

%d : 그 달의 날짜(02)

%D : 날짜(06/02/13)

%e : 그날의 날짜(2)

%H : 시간(12)

%l : 시간 (12..오전 오후로 시간체크)

%m : 달(05)

%M : 분(32)

%p : 오전, 오후 (오후)

%r : 12시간 단위의 시간(오후 12시 32분 45초)

%s : 1970년 1월 1일부터 지나온 초(1370144177)

%S : 초(45)

%T : 24시간 단위의 시간(12:37:12)

%U : 일요일을 기준으로 한 그 해의 몇 번째 주인가를 표시(22)

%V : 월요일을 기준으로 한 그 해의 몇 번째 주인가를 표시(22)

%w : 일주일에서 몇 번째 날, 일요일이 0,토요일이 6(0)

%x : 전체 날짜(2013년 06월 02일)

%X : 전체시간(12시 39분 47초)

%y : 년도의 마지막 두 자리(13)

%Y : 년도(2013)

 

date 명령어는 주로 서버에서 백업할대 자주 사용됩니다. 백업하여 만들어질때 이름을 날짜,시간별로 하면 다른파일과

구분이 쉽기 때문입니다.

'Linux > Linux 명령어' 카테고리의 다른 글

Linux 명령어 chmod  (0) 2013.06.02
Linux 명령어 chown  (0) 2013.06.02
Linux 명령어 wc  (1) 2013.06.02
Linux 명령어 split  (0) 2013.06.02
Linux 명령어 find  (0) 2013.06.02

wc

형식 : wc [옵션] "파일명"

사용예 : wc sendmail.cf

 

wc 명령어는 파일 내의 라인, 단어 문자의 수를 출력합니다.

 

 

옵션

-c : 전체 문자의 수를 출력

-l  : 전체 라인의 수를 출력

-w : 전체 단어의 수를 출력

 

[root@localhost leeahnlee]# wc sendmail.cf
 1827  9497 58290 sendmail.cf 

이처럼 아무런 옵션없이 사용하면 위와 같은 결과를 출력합니다. 즉,sendmail.cf 파일이 1827줄로 구성되었고, 9497개의 단어가

있으며, 58290개의 철자(문자)로 이루어졌다는 결과를 알수있습니다.

 

 

[root@localhost leeahnlee]# wc -c sendmail.cf
58290 sendmail.cf 

필요하다면 위처럼 -c 옵션으로 전체 문자의수만 출력할수 있습니다.

 

[root@localhost leeahnlee]# ls -l
합계 68
-rw-r--r-- 1 root root 58290  6월  1 03:55 sendmail.cf
[root@localhost leeahnlee]# ls -l | wc -l
2 

위처럼 ls -l 의 결과(디렉토리내의 리스트출력)를 wc -l 로 측정함으로 디렉토리내 파일의 갯수를 샐수 있습니다.

위에는 '합계 68'까지 라인에 포함시켰습니다. 따라서 하나를 제외하면 디렉토리내 1개의 파일이 있다는걸 알수있습니다.

 

 

'Linux > Linux 명령어' 카테고리의 다른 글

Linux 명령어 chown  (0) 2013.06.02
Linux 명령어 date  (0) 2013.06.02
Linux 명령어 split  (0) 2013.06.02
Linux 명령어 find  (0) 2013.06.02
Linux 명령어 rm  (0) 2013.06.02

split

split 은 파일을 분할하는 명령어 입니다. 파일의 내용을 라인수로 분할할 수도 있고, 용량 단위로 분할 할수도 있습니다.

주로 디스켓에 파일을 나누어 복사하거나, 백업할 때 CD-RW 용량 단위로 분할할 경우에 유용합니다.

 

 옵션

-b : 파일을 byte 단위로 분할

-l  : 파일을 주어진 라인수 단위로 분할

 

'sendmail.cf' 파일은 기존에 56290byte입니다. 이걸 10000byte 단위로 나누어 보겠습니다.

[root@localhost leeahnlee]# ls -l
합계 68
-rw-r--r-- 1 root root 58290  6월  1 03:04 sendmail.cf
[root@localhost leeahnlee]# split -b 10000 sendmail.cf
[root@localhost leeahnlee]# ls -l
합계 164
-rw-r--r-- 1 root root 58290  6월  1 03:04 sendmail.cf
-rw-r--r-- 1 root root 10000  6월  1 03:44 xaa
-rw-r--r-- 1 root root 10000  6월  1 03:44 xab
-rw-r--r-- 1 root root 10000  6월  1 03:44 xac
-rw-r--r-- 1 root root 10000  6월  1 03:44 xad
-rw-r--r-- 1 root root 10000  6월  1 03:44 xae
-rw-r--r-- 1 root root  8290  6월  1 03:44 xaf 

생성될 파일의 이름을 특별히 지정해 주지 않는다면 xaa,xab,xac ... 와 같은 순으로 이름이 정해집니다.

 

 다음은 10kbyte 단위로 나누어 보겠습니다. 끝에 이름도 지정합니다.

[root@localhost leeahnlee]# split -b 10k sendmail.cf send
[root@localhost leeahnlee]# ls -l
합계 160
-rw-r--r-- 1 root root 10240  6월  1 03:48 sendaa
-rw-r--r-- 1 root root 10240  6월  1 03:48 sendab
-rw-r--r-- 1 root root 10240  6월  1 03:48 sendac
-rw-r--r-- 1 root root 10240  6월  1 03:48 sendad
-rw-r--r-- 1 root root 10240  6월  1 03:48 sendae
-rw-r--r-- 1 root root  7090  6월  1 03:48 sendaf
-rw-r--r-- 1 root root 58290  6월  1 03:04 sendmail.cf 

sendaa,sendab,sendac 와 같이 지정한 파일명 뒤에 aa,ab,ac 등이 순차적으로 붙는것을 볼수 있습니다.

 

 다음은 라인별로 나누는걸 보겠습니다. 기존에 test파일에 1,2,3이 3라인에 걸쳐 작성되어있습니다.

이걸 -l 옵션으로 1줄씩 잘라보겠습니다.

[root@localhost leeahnlee]# cat test
1
2
3
[root@localhost leeahnlee]# split -l 1 test
[root@localhost leeahnlee]# ls -l
합계 32
-rw-r--r-- 1 root root 6  6월  1 03:51 test
-rw-r--r-- 1 root root 2  6월  1 03:51 xaa
-rw-r--r-- 1 root root 2  6월  1 03:51 xab
-rw-r--r-- 1 root root 2  6월  1 03:51 xac
[root@localhost leeahnlee]# cat xaa
1 

다음과 같이 한줄씩 잘리는게 확인됩니다. -l 옵션뒤에 수치를 지정하지 않는다면 기본값인 1000라인으로 분할됩니다.

'Linux > Linux 명령어' 카테고리의 다른 글

Linux 명령어 date  (0) 2013.06.02
Linux 명령어 wc  (1) 2013.06.02
Linux 명령어 find  (0) 2013.06.02
Linux 명령어 rm  (0) 2013.06.02
Linux 명령어 mv  (0) 2013.06.02

find

fnd 명령은 특정 파일을 찾을때 사용합니다.

 

형식 : find "디렉토리" [옵션] "파일명" 

 

옵션

-name <패턴> : 패턴 형식으로 되어 있는 파일

-amin n : n분전에 최종 접근된 파일

-atime n : n day 전에 최종 접근된 파일

-cmin n : n분전에 마지막으로 변경된 파일

-ctime n : n day 전에 마지막으로 변경된 파일

 

예를들어 아파치 설정파일인 httpd.conf 을 찾고 싶은데 위치를 모른다면 다음과 같이 찾으면 됩니다.

[root@localhost leeahnlee]# find / -name httpd.conf
/etc/httpd/conf/httpd.conf
[root@localhost leeahnlee]#  

 

sendmail로 시작되는 파일을 찾고 싶다면 * 을 사용합니다.

[root@localhost leeahnlee]# find / -name sendmail*
/etc/mail/sendmail.mc
/etc/mail/sendmail.cf
/etc/rc.d/init.d/sendmail
/etc/sysconfig/sendmail
/usr/sbin/sendmail.sendmail
/usr/sbin/sendmail

  .

  .

(중략)

  .

  .
/usr/lib/sendmail.sendmail
/usr/lib/sendmail
/var/lock/subsys/sendmail
/var/run/sendmail.pid
/var/cache/yum/base/packages/sendmail-cf-8.13.8-8.1.el5_7.i386.rpm
/var/cache/yum/base/packages/sendmail-8.13.8-8.1.el5_7.i386.rpm
[root@localhost leeahnlee]#  

 

-amin 옵션을 테스트 해보기 위해서 새로운 파일 test을 만들고 1분 이내에 접근된 파일을 찾는 예제 입니다.

[root@localhost leeahnlee]# touch test
[root@localhost leeahnlee]# find /home/leeahnlee/ -amin -1
/home/leeahnlee/
/home/leeahnlee/test 

여기서 주의해야할 것은 -amin -1이라는 옵션인데, 숫자가 -1로 되면 1분 이내에 접근된 파일을 찾는것이고 '-amin 1'로 준다면

1분 전에 접근된 파일을 찾는것이다.

 

 

'Linux > Linux 명령어' 카테고리의 다른 글

Linux 명령어 wc  (1) 2013.06.02
Linux 명령어 split  (0) 2013.06.02
Linux 명령어 rm  (0) 2013.06.02
Linux 명령어 mv  (0) 2013.06.02
Linux 명령어 cp  (0) 2013.06.02

rm

rm 명령어는 파일을 지우는 명령어입니다. 리눅스에서는 윈도우와 같이 삭제한 파일은 복구가 불가능합니다.

(요즘에는 rm명령어로 삭제한 파일을 복구시켜주는 유틸리티가 있다고합니다)

 

옵션

-r : 하위 디렉토리 및 파일들을 모두 삭제

-f : 삭제할 것을 다시 묻지 않고 강제로 삭제 

 

* 디렉토리를 삭제할때는 rmdir 명령어로 삭제가 가능하나, 디렉토리안에 파일들이 있을경우 삭제가 되지 않습니다. 그럴경우 rm -r 명령어로 디렉토리를 지정하면 안에 있는 파일까지 삭제되므로 삭제명령어는 rm -rf 를 자주 사용합니다.

 

[root@localhost leeahnlee]# ls
mv_test
[root@localhost leeahnlee]# rm mv_test
rm: remove 일반 빈 파일 `mv_test'? y
[root@localhost leeahnlee]# ls 

 

 

'Linux > Linux 명령어' 카테고리의 다른 글

Linux 명령어 split  (0) 2013.06.02
Linux 명령어 find  (0) 2013.06.02
Linux 명령어 mv  (0) 2013.06.02
Linux 명령어 cp  (0) 2013.06.02
Linux 명령어 touch  (0) 2013.06.02

mv

mv 명령어는 move의 의미로서 다음과 같은 두가지 기능이 있습니다.

  • 파일의 위치를 다른 디렉토리로 옮길때(move)
  • 파일의 이름을 변경할때(rename)

옵션

-f : 대상 파일이 있을 경우강제로 덮어쓴다. 

 

[root@localhost leeahnlee]# ls
test
[root@localhost leeahnlee]# mv test mv_test
[root@localhost leeahnlee]# ls
mv_test 

 

 

'Linux > Linux 명령어' 카테고리의 다른 글

Linux 명령어 find  (0) 2013.06.02
Linux 명령어 rm  (0) 2013.06.02
Linux 명령어 cp  (0) 2013.06.02
Linux 명령어 touch  (0) 2013.06.02
linux 명령어 mkdir,rmdir  (0) 2013.06.01

cp

cp명령어는 copy의 의미입니다. 파일을 복사할대 사용합니다.

 

옵션

-p : 원본 파일의 소유권 등의 정보를 그대로 복사

-r  : 서비 디렉토리 안의 모든 파일까지 전부 복사 

 

[root@localhost test]# ls -al /home/leeahnlee/
합계 48
drwx------ 3 leeahnlee leeahnlee 4096  5월 31 14:48 .
drwxr-xr-x 6 root      root      4096  5월 31 14:48 ..
-rw-r--r-- 1 leeahnlee leeahnlee   33  5월 31 14:48 .bash_logout
-rw-r--r-- 1 leeahnlee leeahnlee  176  5월 31 14:48 .bash_profile
-rw-r--r-- 1 leeahnlee leeahnlee  124  5월 31 14:48 .bashrc
drwxr-xr-x 4 leeahnlee leeahnlee 4096  5월 31 14:48 .mozilla
[root@localhost test]# cp /home/leeahnlee/.bashrc /test/
[root@localhost test]# ls -al /test/
합계 24
drwxr-xr-x  2 root root 4096  5월 31 16:00 .
drwxr-xr-x 24 root root 4096  5월 31 15:21 ..
-rw-r--r--  1 root root  124  5월 31 16:00 .bashrc 

 

cp 명령어만으로 복사를 하면 소유권이 복사하는 계정으로 변경되는것을 볼수 있습니다.

그럼 -p 옵션으로 복사를 하고 상태를 확인해 보겠습니다.

 

[root@localhost test]# cp -p /home/leeahnlee/.bashrc /test/
[root@localhost test]# ls -al /test/
합계 24
drwxr-xr-x  2 root      root      4096  5월 31 16:01 .
drwxr-xr-x 24 root      root      4096  5월 31 15:21 ..
-rw-r--r--  1 leeahnlee leeahnlee  124  5월 31 14:48 .bashrc 

 

소유권이 기존에 있던걸 유지하고 있네요.

'Linux > Linux 명령어' 카테고리의 다른 글

Linux 명령어 rm  (0) 2013.06.02
Linux 명령어 mv  (0) 2013.06.02
Linux 명령어 touch  (0) 2013.06.02
linux 명령어 mkdir,rmdir  (0) 2013.06.01
linux 명령어 cd  (0) 2013.06.01