[linux] 오래된 log 파일 찾아서 지우기
·
Development/OS
find -name '*.log' -mtime +10 |xargs rm # .log에 해당하는 파일을 찾아서 mtime(수정시간)이 10일 이상이 된 것들을 지운다(xargs rm) # 명령어를 실행하는 디렉토리 밑의 파일들을 찾는다. # 데몬 디렉토리 혹은 톰캣 디렉토리 등으로 들어가서 명령어를 실행하면 된다. # -mtime : 수정시각, -atime : 접근시각, -ctime : 생성시각 # 대부분 로그는 append된 후, rolling 되기 때문에 mtime을 기준으로 하면 된다.
[Linux] 리눅스 ssh 프롬프트 폰트 coloring 적용
·
Development/OS
리눅스 시스템을 처음 설치하고 나면 아주 밋밋한 "하얀" 글자만 bash에 보이게 된다. 이는 원래 컬러링을 적용해야 하는데 적용이 안되는 경우로 특정 파일의 내용을 바꿔주는 것으로 컬러링을 적용시킬 수 있다. ~/.bashrc 파일을 수정함으로써 가능하다. 위 파일을 수정해본다 vim ~/.bashrc 를 치게 되면 bash에 대한 설정값이 적힌 파일이 오픈되는데, 여기서 주석처리가 되있는 부분을 풀어주면 된다(없으면 직접 타이핑을 해도 된다) # uncomment for a colored prompt, if the terminal has the capability; turned # off by default to not distract the user: the focus in a terminal wi..
[Linux] sudo 로그인 시 패스워드 입력 없이 권한얻기
·
Development/OS
대부분 리눅스 운영체제를 처음 설치하고 유저를 생성한 뒤 sudo su - 혹은 sudo -s 로 루트 권한을 받으려 할 때루트의 패스워드를 다시 묻는 경우가 발생하게 된다. 하지만 대부분의 서버.. 는(물론 루트의 패스워드를 따로 관리해서 매번 패스워드를 치는게 보안상 더 바람직 하긴 하나)그렇게 크리티컬한 서버가 아닐경우 패스워드 입력 없이 루트권한을 받아야 하는 경우도 있다 음.. 앞단에서 방화벽 장비가 막아주거나, 특별히 보안 상 위협이 없을 것이라고 판단할 경우에만 사용하는 것을 권장한다. 거두절미하고 방법은 /etc/sudoers 파일을 수정하는 것이다 이 파일에는 sudo 로 권한을 얻고자 하는 유저들의 권한에 관련된 정보가 담겨 있다 # # This file MUST be edited wi..
[Linux] 자바 웹 어플리케이션 서버 실행 쉘(Shell) 스크립트
·
Development/OS
JAVA로 작성한 jar파일을 데몬으로 돌려야할 때 필요한 쉘 스크립트 정리 기본적으로 java -jar 를 이용해 jar파일을 실행하는 것을 서비스 운영 모드로 동작하게 해주는(관리 측면 효율성) 쉘 스크립트이다. #!/bin/sh SERVICE_NAME=서비스명 PATH_TO_JAR=실행할 JAR 파일 path.jar PID_PATH_NAME=./서비스명.pid JAVA_OPT="-Xms2048m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m" case $1 in start) echo "Starting $SERVICE_NAME ..." if [ ! -f $PID_PATH_NAME ]; then nohup java -jar $JAVA_OPT $PATH_TO_JA..
[C] 컴파일러 메모리 배치표
·
Development/OS
1) Text 영역Read-Only변수가 저장되는 곳. 프로그래머 작성하는 코드가 이 영역에 포함된다. 2) Data 영역메모리 접근 공간으로 사용 가능하고, 프로그램 실행 도중 자유롭게 수정 및 변경이 가능하다. 3) BSS 영역메모리상 공간만 확보 후, 실제로 초기화를 시키지 않는다. 즉, 런타임 이후에 메모리영역이 확보된다. 지역변수 : Stack전역변수 : BSS(초기값 없는 전역변수) / DATA(초기값 있는 전역변수)
[OS] Thread Safe란?
·
Development/OS
Thead Safe 스레드 안전(thread 安全, 영어: thread safety)은 멀티 스레드 프로그래밍에서 일반적으로 어떤 함수나 변수, 혹은 객체가 여러 스레드로부터 동시에 접근이 이루어져도 프로그램의 실행에 문제가 없음을 뜻한다. 보다 엄밀하게는 하나의 함수가 한 스레드로부터 호출되어 실행 중일 때, 다른 스레드가 그 함수를 호출하여 동시에 함께 실행되더라도 각 스레드에서의 함수의 수행 결과가 올바로 나오는 것으로 정의한다. Thread-safe를 지키기 위한 방법 1. Re-entrancy어떤 함수가 한 스레드에 의해 호출되어 실행 중일 때, 다른 스레드가 그 함수를 호출하더라도 그 결과가 각각에게 올바로 주어져야 한다. 2. Thread-local storage공유 자원의 사용을 최대한 줄..