아파치의 기본설정대로 라면 아파치 로그는 한 파일에 모두 다 쌓이게 된다.

하나의 사이트를 운영한다면 괜찮겠지만, 한 서버에서 여러개의 사이트를 운영할 경우
로그를 분석할 상황이 발생했을 때 꽤나 불편하게 되는데,
이런 경우를 위해 VirtualHost 별로 로그를 설정할 수 있는 방법이 있다.


$ vim /etc/httpd/conf/http.conf

<VirtualHost *:80>
DocumentRoot /home/
ServerName Smarthink.co.kr
CustomLog    /home/Service/logs/smarthink/access_log combined
ErrorLog    /home/Service/logs/smarthink/error_log
</VirtualHost>


로그형식
형식문자열설명
%a원격IP-주소
%A서버IP-주소
%f파일명
%h원격 호스트
%l원격 로그인명(값이있을경우)
%s상태
%bHTTP 헤더를 제외한 전송 파이트수
[Foobar]%i서버가 수신한 요청에서 [Foobar: 헤더의 내용]


fdisk 는 2TB까지만 지원하므로 parted 를 사용


1. parted /dev/sda (드라이브주소  fdisk -l 로 확인)

2. mklabel gpt

3. unit tb - TB로 단위를 바꿈

4. mkpart primary 0 최대용량

5. print (설정값 확인)

6. quit

7. vim /etc/mke2fs.conf

8. ext4 부분에 auto_64-bit_support = 1 추가 후 종료

9. yum -y --enablerepo=extras install xfsprogs

10. mkfs -t xfs -f /dev/sda

'기억할것들 > CentOS' 카테고리의 다른 글

Apache HTTPD/2 설정  (0) 2018.05.24
Apache Log 가상호스트 별로 쌓기  (0) 2017.11.28
RSYNC 사용하기.  (0) 2017.06.26
터미널 dir 색상 값 바꾸기  (0) 2017.04.28
.vimrc - 개인적으로 콘솔을 편하게 쓰기위해  (0) 2017.04.28


RSYNC.

생각보다 많은 곳에 사용하는 기능이다.


백업, 배포, 등등등 생각보다 많은 장소에서 쓰인다.

LINUX 에서 파일을 복사하는 등의 작업을 하는 경우,

이어받기와 비슷한 느낌의 기능도 되어있기 때문에

(RSYNC 는 Server 와 Client 간 서로 다른 자료만 전달한다)

서버 개발자 또는 관리자라면 굉장히 긴밀하게 사용할 것이다.


RSYNC 를 사용하기 위해선 먼저 xinetd 와 rsync 가 설치되어 있어야 한다.

RSYNC는 굳이 버전에 큰 차이가 없으니 귀찮으니까 yum 으로 설치하려 한다.


$ rpm -qa | grep rsync
$ rpm -qa | grep xinetd


위 명령어로 설치 여부를 확인 후 없으면 없는 것만 설치하자.

$ yum install rsync
$ yum install xinetd


xinetd 와 rsync 가 설치되었다면, rsync 설치 화면 으로 넘어간다.

$ vim /etc/xinetd.d/rsync


service rsync
{
disable = yes
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = --daemon
log_on_failure += USERID
}

위 파일에 들어가면 아랫줄과 같은 부분이 있는데, disable 부분을 no 로 바꾸고 저장한다.



- SERVER 설정


rsync 는 rsync 포트 (기본 873) 를 사용해 전송하는 방식이 있고,

ssh 포트 (기본 22) 를 사용해 전송하는 방식이 있다.


873 포트를 이용한 전송방식은 아래와 같은 셋팅이 필요하다

$ vim /etc/rsync.conf

max connection = 10
log file = /var/log/rsync.log
timeout = 300

[test]
comment = rsync server test
path = /home/Service/test
read only = no
uid = root
gid = root
hosts allow = 127.0.0.1


맨 위 대괄호로 되어 있는 부분이 rsync 의 프로젝트 명이다.

host allow 는 보안을 위해 있는 부분인데, 입력하지 않으면 전체 오픈된다.

위 셋팅을 완료 후 rsync  서비스를 재시작 한다.


$ /etc/init.d/xinetd restart


위와 같이 생성했으면, client 에서 테스트를 해보자.


$ rsync -avz --progress --delete --exclude 'file_backup.sh' /home/Service/source/ 127.0.0.1::test

위 명령어 중 avz 는

a = archive 모드로 심볼링크, 퍼미션, 소유권 등을 보존

v = 진행상황을 상세히 보여줌

z = 전송 시 압축하여 전송


progress 는 진행상태를 보여주라는 뜻


delete 는 송신측과 수신측을 동일하게 유지 하기 위해 송신측에 없는 정보는 지우라는 명령어

누적 전송을 위해서는 delete 는 빼준다


exclude 는 전송 을 제외하고자 하는 폴더 또는 파일이다.



SSH 를 통해 전송하고자 하는 경우


$ rsync -avz --progress --delete --exclude 'file_backup.sh' /home/Service/source/ 127.0.0.1:/home/Service/backup

과 같이 맨 뒷부분을 수정해 준다.


끝.


혹시나 open failed : permission denied 과 같은 에러가 발생하면

selinux 쪽을 확인해 보자.


윈도우용으로도 cwrsync 라는 프로그램도 있으나, 현재 해당 프로그램이 유료화 된 상태인지라...

저작권이 두려워 차마 업로드는 못하고.......관심있으신 분은 댓글로 달아주세요

+ Recent posts