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

하나의 사이트를 운영한다면 괜찮겠지만, 한 서버에서 여러개의 사이트를 운영할 경우
로그를 분석할 상황이 발생했을 때 꽤나 불편하게 되는데,
이런 경우를 위해 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 라는 프로그램도 있으나, 현재 해당 프로그램이 유료화 된 상태인지라...

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

리눅스를 설치하고 터미널을 들어가서


ls -al 을해보자.


아름답게도 눈이 정말 너무 아플정도로 색이 너무 시퍼렇다.

짜증나서 일을 못하면 안되니까,

색상을 바꾸자


$ vim /etc/DIR_COLORS


/DIR 로 겁색하면 기본값으로 0;34 로 되어있다.

개인적으로 내가 맘에 들어하는색은


38;5;27 이다.


저장하고 터미널을 재접속하면,

음 잘보인다. 대만족.


====================================================================================================================================


우분투는 .bashrc 에 추가한다.


$ sudo vim ~/.bashrc


LS_COLORS='dl=38;5;27';
export LS_COLORS




set ts=4
set sw=4
au Bufenter *.\(py\) set et
au Bufenter *.\(html\) set ts=2 sw=2
set magic
set wrap
set ruler
set showmode
set visualbell
set backupdir=~/.backup
set backup
set writebackup
set incsearch
set background=dark
set title
set fdm=marker
set cindent
au BufRead,BufNewFile *.pc  setf esqlc
syntax on
if &term =~ "xterm"
  if has("terminfo")
    set t_Co=8
    set t_Sf=^[[3%p1%dm
    set t_Sb=^[[4%p1%dm
  else
    set t_Co=8
    set t_Sf=^[[3%dm
    set t_Sb=^[[4%dm
  endif
endif

map <F1> :vs./<CR>


set number

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

RSYNC 사용하기.  (0) 2017.06.26
터미널 dir 색상 값 바꾸기  (0) 2017.04.28
vim 색상 변경하기.  (0) 2017.04.28
.bashrc - 개인적으로 콘솔을 편하게 쓰기위해  (0) 2017.04.28
CentOS 캐시메모리  (0) 2017.04.24

CentOS 를 설치하고 터미널로 들어가서 vim 으로 파일을 열면.

정말 굉장히 불편하게 눈이 아프다. 

잘안보인다.


그래서 나는 바꾼다. vim 색상값을

$ vim /etc/vimrc


로 들어가서 맨 아랫 줄에


$ color desert


저장.!


desert는 색상코드 값으로 인터넷에 찾아보면 많다.


개인 적으로 리눅스 콘솔을 편하게 쓰기 위해 적용하는 것들이 있다.


$ vim ~/.bashrc


아래 내용을 추가한다.


alias vi="vim"
export EDITOR=vim
export LANG=ko_KR.UTF-8
export LC_ALL=ko_KR.UTF-8


1. alias vi

   -> vi 명령어로 vim 을 실행하여라.

2. export EDITOR=vim

   -> editor 는 vim 에디터를 사용한다.

3-4. 로그인 계정 케릭터 셋 설정

뭐든 OS 를 운영하다보면,

메모리가 버벅일때가 분명히 있다.


내가 운영하는건 CentOS.

free 를 날려보면


free 영역은 한없이 낮고, cached 영역은 한없이 높을때가 있다.

이럴때 cached 영역을 clear 시키는 방법이 있다.


나는 이것 cron에 일 1회 동작시킨다

아직까진 문제가 없었으나, 강제로 캐시를 날리는 것이기 때문에 본인들의 시스템에 문제가 있는지 여부는

잘 파악하길 바란다.


매우 간단하다.


$ sync; echo 3 > /proc/sys/vm/drop_caches


끝이다.

최근에 알게되서 너무 아쉬운 Composer. 

계속 기억하려고 기록한다.


Composer 란 ?

PHP 의존성 관리도구 이다.


개발을 할때 필요한 라이브러리를 굉장히 편하게 설치할 수 있다.

(앵간해선 프로젝트 단위로 구성한다. 프로젝트 마다 필요한 라이브러리의 버전이 다를 수 있다.)


PHP 라이브러리 소스파일을 받아보면 composer 와 같은 파일이 있는 경우를 많이 본다.

이는 composer로 편하게 설치할 수 있다는 뜻.


일단 설치 방법은 아래와 같다.


$ curl -sS http://getcomposer.org/installer | php

정말 엄청 빨리 설치 라고 쓰지만 다운받는다.


다운받았으면 명령어를 사용한다 .

php composer.phar.....


매우 귀찮으니 전역적으로 사용할 수 있도록 옮겨버리겠다.


$ mv composer.phar /usr/local/bin/composer

그럼 이제 composer 라는 명령어 만으로 이용할수 있다.!



그럼 이제 composer 도 설치했겠다. 가장 쉬운 과제로 개발 프레임웍인 CodeIgniter 를 설치하도록 하겠다.

(composer 와 관련된 모든 행위는 root 계정이 아닌 사용자 계정으로 하도록 한다)


$ composer search codeigniter

명령어를 입력하면 여러 리스트가 쭉 내려오는데, CodeIgniter 프레임웍 설치는 codeigniter/framework 을 다운받아야 한다.

$ composer require codeigniter/framework

다운을 받고 리스트를 불러와보면
composer.json, composer.lock, vendor 라는 2개의 파일과 1개의 폴더가 생겼다.

composer.json 에는 composer 를 사용해서 어떤 것이 어떻게 설정되어잇는지 json 형태로 확인할 수 있다.
composer.lock 에는 설치된 리스트의 상세한 정보가 들어 있다고 보면된다.
여기서 중요한건 vendor.

composer 로 설치한 패키지들은 vendor 에 있다.
이제 일단 잘 활용해 보는것으로 이번 기록을 마치도록 한다.


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

vim 색상 변경하기.  (0) 2017.04.28
.bashrc - 개인적으로 콘솔을 편하게 쓰기위해  (0) 2017.04.28
CentOS 캐시메모리  (0) 2017.04.24
사용자계정에 sudo 권한부여  (0) 2017.04.13
SSH 공개키 등록하기.  (1) 2017.04.13

서비스를 운영하다 보면, 일반 사용자 계정에 root 권한을 부여서

서비스 재시작 등의 작업을 할 필요가 생길 경우가 있다.


그럴 때를 위해 일반 사용자 계정에 root 권한 부여하는 방법을 기술한다.


먼저 root 로 로그인 후 sudo 가 설치되어 있는지 확인한다


$ rpm -qa sudo

만약 혹시라도 sudo가 없다면 설치하면 되고....

설치후에 아래 파일을 연다.


$ vim /etc/sudoers

자, 편집하려고 보면, 읽기전용 파일을 편집하려고 한다고 뜰 수 있다.

기본 권한이 440 으로 되어있기때문에, 편집 시 640 으로 바꿔주고 편집하도록 한다.


파일을 열고 91번째 쯤 을 가면


root    ALL=(ALL)    ALL
이라는 부분이 있을것이다.

이 아래에 추가하면 된다.

나는 apache 의 사용권한을 줄 예정이다.

{user_id}    ALL={apache 설치경로}/bin/apachectl

정상적으로 저장하고 나서 {user_id} 에 입력한 사용자로 로그인 후 
아래와 같이 명령어를 입력해보자

$ sudo {apache 설치경로}/bin/apachectl restart


이렇게 하면! 자연스럽게 패스워드를 물어본다.

더욱 자연스럽게 사용자 패스워드를 입력해보면

똭.! 아파치가 재시작된다.


하지만 아직 덜 아름답다. 왜 굳이 password 를 입력해야하는가 ?

루트는 안물어보는데 ?


뭐..지극히 OS 단의 보안문제이겠거니 넘어가고 물어보지 않게 하는 방법은 아래와 같다.


{user_id}    ALL=NOPASSWD:{apache 설치경로}/bin/apachectl


apache 설치 경로앞에 NOPASSWD: 를 입력해주고

다시 사용자 계정으로 아파치를 재시작해주면

딱! 명확하게 정확히도 아파치가 재시작된다.


이 정도는 되야 아름답지.

+ Recent posts