2020년 7월 10일 금요일

로그파일 삭제 하기 cat /dev/null 주의점

crontab과 같이 반복적으로 프로세스가 시작 종료 되는 환경
#] cat /dev/null > filename.log
filename.log을 삭제하지 않고 0바이트의 빈 파일로 만든다.

종료되지 않는 프로세스에 물려있는 경우
예를 들면 백그라운드에서 종료되지 않고 모니터링 하는 프로그램일 경우
#] test.sh > filename.log &

이와 같은 경우 cat /dev/null > filename.log
내용은 초기화 되지만 용량에는 변화가 없다. 프로세스를 재시작 또는 종료시켜야 용량도 초기화 된다.

현재 상황과 용도에 맞게 사용해야 한다.


2020년 6월 5일 금요일

gitlab 업데이트 방법(centos6)


centos6 기준으로 gitlab-ce가 설치된 경우에 해당된다.

현재 사용하고 있는 12.5.3의 버전을 최신 버전이 13.0.5으로 올리려고 간만에 다음 명령어를 입력한다.

yum install gitlab-ce

잠시 후 아래와 같은 오류가 발생된다.
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Error in PREIN scriptlet in rpm package gitlab-ce-13.0.3-ce.0.el6.x86_64
gitlab preinstall: It seems you are upgrading from major version 12 to major version 13.
gitlab preinstall: It is required to upgrade to the latest 12.10.x version first before proceeding.
gitlab preinstall: Please follow the upgrade documentation at https://docs.gitlab.com/ee/policy/maintenance.html#upgrade-recommendations

내용인 즉 메이저버전 업데이트가 있어 바로 진행을 할 수 없으니 12버전의 최종 버전 설치 후 업데이트를 진행하라 알려 주고 종료된다.

gitlab의 버전의 구성은 3자리로 되어 있다. (예: 12.5.3)
- 12(Major) : 이전 버전과 호환되지 않은 신규api 기능 추가
- 5(Minor) : 이전버전과 호환되는 사소한 기능 추가
- 3(Patch) : 이전버전과 호환되는 버그 수정 등

메이저버전이 동일할 경우 업데이트 가능
yum install gitlab-ce

메이저 버전이 바뀐 경우 (예: 12.x.x -> 13.x.x)
1) 12.x.x 중 최종버전 설치
2) 13.0.x 의 최초 버전 설치
3) 13.x.x 최종 버전 설치

메이저 버전이 2단개 이상 바뀐경우(예: 11.x.x -> 13.x.x)
※ 중간버전을 건너 뛰지 않고 순차적으로 업데이트한다.
1) 11.x.x 최종버전 설치
2) 12.0.x 최초버전 설치
3) 12.x.x 최종버전 설치
4) 13.0.x 최초버전 설치
5) 13.x.x 최종버전 설치

gitlab 지정버전 설치
yum install gitlab-ce-12.10.10


버전확인 : 
 
업그레이드 방법(공식) :





2020년 6월 4일 목요일

.htaccess: RewriteRule: bad flag delimiters 오류

메인페이지 위치가 서브디렉토리로 변경되면서 간단하게 .htaccess 파일을 변경해서 처리하기로 했다.

.htaccess
RewriteEngine On
RewriteBase /
RewriteRule ^$ new_dir [R=302, L]

간단하게 루트디렉토리 접근시 new_dir로 임시 이동하고 종료한다는 간단한 문법이다.
그런데 500 Internal Server Error 이 출력된다.

error로그를 확인해보면 .htaccess: RewriteRule: bad flag delimiters 라고 남아있다.

잘못된 부분은 [R=302, L] 에서 쉼표와 L사이의 공백에 있다.

다음과 같이 붙여 쓰자 [R=302,L]

참고로 아래 사이트에서 .htaccess 문법검사가 가능하다.



2020년 5월 24일 일요일

SSL 보안서버 인증서 설치 확인 사이트

SSL 인증서를 적용하고 웹브라우저 상에서 https로 접근해서 사이트가 잘 뜨는것 까지 확인했는데.... 페이스북 디버거 페이지에서 접근하면 Curl Error : SSL_CACERT SSL certificate problem: unable to get local issuer certificate 문구가 뜨면서 페이스북에서 접근이 불가능하다.

아래 사이트에서 SSL 테스트가 가능하다.








위 사이트에서 SSL설치시 체인에 문제가 있다는것을 발견하고 설치는 정상적으로 되었으나 웹방화벽에 SSL인증서 문제가 있어 재설치 요청으로 문제가 해결됨.


2020년 3월 26일 목요일

php5.4 에서 php5.6 으로 업그레이드

remi 저장소가 이미 설치되어 있다는 전제하에 아래와 같이 업그레이드 가능하다.
#] yum --enablerepo=remi-php56 upgrade php*


아래와 같이 저장소를 찾을 수 없는 경우 따로 받아 설치한다.
libwebp-0.4.3-3.el6.x86_64: failure: Packages/l/libwebp-0.4.3-3.el6.x86_64.rpm from epel: [Errno 256] No more mirrors to try.

#] wget http://dl.fedoraproject.org/pub/epel/6/x86_64/Packages/l/libwebp-0.4.3-3.el6.x86_64.rpm
#] rpm -Uvh libwebp-0.4.3-3.el6.x86_64.rpm
#] yum --enablerepo=remi-php56 upgrade php*
#] php -v

따로 opcache가 필요하다면
#] yum --enablerepo=remi-php56 install php-opcache

설정파일은 /etc/php.d/ 안에 ini 파일들이 존재한다.
※ yum remove로 php를 삭제 후 설치 하지 않아도 된다.

2020년 3월 18일 수요일

아파치 http 에서 https로 변경

SSL 적용으로 http로 유입되는 트레픽을 https로 자동변경 하는 방법

1.httpd-vhosts.conf 파일수정

/etc/httpd/conf.d/httpd-vhosts.conf 파일에 내용 추가
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

2. .htaccess 파일 수정 또는 추가

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

마지막 옵션은 검색엔진에 색인된 http로 유입되는 경우 https로 301리디렉션(페이지주소 영구이동) 후 L의 옵션에 의해 다음 라인의 명령어를 무시한다.

검색엔진에 의해 301리디렉션이 실행된 경우 색인된 URL을 수정한다. 시간이 지나면 자연스럽게 https로 주소가 수정된다.

혹 302로 변경한 경우(페이지 임시 이동) 페이지는 이동되지만 검색엔진의 경우 색인된 url을 변경하지 않는다.

2020년 3월 16일 월요일

homestead 시작이 안되는 문제(vagrant up)

잘 사용하던 홈스테드가 갑자기 아래와 같은 오류를 밷으면서 멈춰버린다.

vagrant up error

Booting VM...
There was an error while executing 'VboxManage', a CLI used by Vagrant for controlling Virtual Box. The command and stderr is shown below.

구글에서 검색하고 하라는거 다 해봐도 소용이 없다.
vagrant 업그레이도 해보고, 재부팅해도 변화가 없다.

결과적으로 VirtualBox를 최신버전 받아서 재설치 하면 문제가 해결된다.

https://www.virtualbox.org/wiki/Downloads

2020년 3월 10일 화요일

심볼릭링크(symbolic link) 생성, 삭제

심볼릭링크란?

윈도우에서 바로가기 아이콘과 동일한 역활

심볼릭 링크

컴퓨팅에서 심볼릭 링크(symbolic link) 또는 기호화된 링크는 절대 경로 또는 상대 경로의 형태로 된 다른 파일이나 디렉터리에 대한 참조를 포함하고 있는 특별한 종류의 파일이다. 심볼릭 링크는 이미 1978년까지 DEC와 데이터 제너럴의 RDOS의 미니 컴퓨터 운영 체제에 존재했다.


심볼릭링크 생성

#] ln -s {원본파일 또는 원본 디랙토리 경로} {생성할 링크 파일 또는 디랙토리명}

ex) ln -s /tmp/link link

심볼릭링크만 삭제

#] rm -f {심볼릭링크}

ex) rm -f link

심볼릭링크 삭제시 주의

#] rm -rf {심볼릭링크}
※ 실수로 옵션으로 r을 넣는 경우 지옥을 맛볼수 있다. 링크된 디렉토리를 따라가서 원본의 모든 파일과 디렉토리까지 깔끔하게 삭제된다.