분류 전체보기
-
파이썬을 이용한 압축 해제와 동시에 파일 이름 변경Python 2018. 4. 17. 14:17
파이썬을 이용한 압축 해제와 동시에 파일 이름 변경특정 사이트에서 대량의 압축된 파일을 받아 하나의 디렉터리에 풀어야 하는 미션이 떨어졌다.문제는 같은 파일 명이 중복으로 발생할 수 있다.이에 대한 해결책으로 다음 2개의 방법으로 고민했다.파일 압축 해제 후 MV 명령어로 이름 변경압축을 해제할 때 PATH를 줄 수 있는가?1번의 방법은 누구나 쉽게 할 수 있을 것 같았다.2번의 경우 가능 한지 조차 몰라서 Python에서 압축 관련 모듈인 ZipFile을 살펴보았다.내용을 확인 결과 압축 파일에서 하나의 파일을 읽을 수 있는 read리는 function이 있다.이를 이용해 다음과 같이 처리하였다with ZipFile("filename.zip") as zf: file_list = map(lambda x:..
-
SHELL] 디렉토리 구조 출력LINUX/명령어 사용법 2018. 4. 17. 14:16
특정 디렉토리에서 구조를 출력 하는 방법디렉토리의 구조를 출력 하는 방법은 2가지가 있다.Tree 모듈을 설치 한다.tree 명령어는 많은 옵션을 제공하고 널리 사용되는 모듈이다.다만 쉬운 설치를 위해서 인터넷이 되어야 한다.Command 를 이용한 출력find . -type d | sed -e "s/[^-][^\/]*\// |/g" -e "s/|\([^ ]\)/|-\1/" 설치가 필요 없고 단순하게 철력이 가능하다. 다만, 옵션이 없기 때문에 COMMAND를 조합 해야 한다. 예를 들어 abc 디렉토리를 제외 하고 싶다면 다음과 같은 명령어를 실행 해야 한다.find . -type d | grep -v abc | sed -e "s/[^-][^\/]*\// |/g" -e "s/|\([^ ]\)/|-\1/..
-
QRadar SDK를 Ubuntu 16.x에서 사용하기 위한 모듈 교체 작업설치&설정 관련 2018. 4. 17. 14:06
QRadar SDK를 Ubuntu 16.x에서 사용하기 위한 모듈 교체 작업먼저 QRadar SDK를 받아야 한다.설치는 간단하게 압축을 해제 하고 install.sh 을 실행하면된다.설치 하고 나서 이후 의존성 문제로 qradar_app_creator 명령어를 실행하면 오류가 발생한다.Python 버젼은 2.7.9 이상이라고 되어 있지만 기본적으로 2.7.15가 설치 되어 있다. 상위 버젼이면 호환성에 문제가 없을 것이라 생각했지만, 모듈 오류가 많이 발생하므로 2.7.9를 설치하자Python 설치에 필요한 모듈을 함께 설치 한다.sudo apt-get install python-pip python-dev sudo apt-get install build-essential sudo apt-get inst..
-
Python과 Java에서 사용가능한 AES 암/복호화 모듈Python 2018. 1. 24. 14:14
엔진단은 Python으로 되어 있고, WEB은 JAVA로 되어 있는 프로젝트에서 AES 256기반의 암/복호화 처리를 한다. 단순하게 KEY와 SALT만 마춰주면 된다.Python Sourcefrom Crypto.Cipher import AESimport base64import hashlib BS = AES.block_sizepad = lambda s: s + (BS - len(s) % BS) * chr(BS - len(s) % BS)unpad = lambda s : s[0:-ord(s[-1])] if __name__ == '__main__': key = "12345678901234567890123456789012"; # 32bit iv = '1234567890123456' # 16bit beforeCi..
-
Elastic Search 하나의 서버에서 여러 노드 구동시 설정설치&설정 관련 2018. 1. 15. 12:18
Elastic Search 하나의 서버에서 여러 노드 구동시 설정Elastic Search(이하 ES)에서 노드의 메모리는 서버의 메모리의 반(half)을 할당하는 것이 좋다고 한다.다만 서버의 메모리가 큰 경우(128GB 이상) 32GB만 할당한 노드를 2개를 띄우는 것을 추천 한다.1,2이때 일반적으로 ES를 여러개를 설치 하는 것이 아니라 설정 파일만 교체 하여 서버를 기동 하는 방식을 사용 한다. ** 설정 파일만 변경하는 것도 있는데 이는 동작 하지 않는다.**# ES_PATH_CONF 설정으로 elasticsearch.yml 파일이 있는 위치를 설정 한다. ES_PATH_CONF=/path/to/my/config ./bin/elasticsearch 참고 자료엘라스틱서치 ( elasticsear..
-
MariaDB를 binary tar.gz 파일로 설치카테고리 없음 2018. 1. 15. 12:17
MariaDB를 binary tar.gz 파일로 설치 하자일반적으로 설치 방법은 다음과 같이 3개의 방법이 있다.패키지 관리 명령어를 이용한 설치데비안 계열의 apt-get레드햇 계열의 yum배포 파일을 이용한 설치데비안 계열의 .deb레드햇 계열의 .rpm바이너리 파일을 이용한 설치실행파일로 tar.gz 형태 제공물론 모든 프로그램이 상위 3가지 버젼을 제공하지는 않는다.오늘 정리할 내용은 이중 바이너리 파일을 이용한 설치이다.먼저 바이너리 파일을 이용한 설치의 경우 설치 & 삭제가 쉽다는 장점이 있다.압축을 풀어서 놓은 디렉토리가 설치 위치가 된다.해당 디렉토리를 삭제하면 끝!하지만 다음과 같은 단점도 있다.의존성있는 라이브러리 설치 따로 진행 해야한다.설치 환경OS : Ubuntu 16.04.3 L..
-
Eclipse와 JDK9에서 @PostConstruct 어노테이션 오류JAVA 2018. 1. 15. 12:17
Eclipse와 JDK9에서 @PostConstruct 어노테이션 오류오랜만에 Eclipse를 띄어서 이전 프로젝트를 확인 하는데 @PostConstruct 어노테이션을 찾을 수 없다는 오류가 보였다.따로 변경한 것은 JDK 버젼을 8에서 9로 업그레이드 한거 말곤 없었다.검색을 해보니 해당 문제에 대한 해결책이 있었다.eclipse.ini 파일에 –add-modules=java.se.ee 옵션을 추가 하면 된다.-vmargs --add-modules=java.se.ee -Dosgi.requiredJavaVersion=1.8 -Xms256m -Xmx1024m JDK9이 아직 안정화가 안된건지, 여러 모듈에서 오류가 발생한다.참고 자료Platform won’t launch on Java 9-ea build..
-
내부 서비스만 가능한 PORT를 원격지 호출 가능하도록 변경LINUX 2017. 12. 21. 16:47
Tor Proxy 포트 9050을 원격에서 접속 하는 방법netstat 로 특정 포트를 확인 하면 2개의 IP:PORT가 표출 되는데, 첫번째 IP가 127.0.0.1 일 경우, 오직 로컬(localhost-loopback interface)에서만 접근 이 가능하다.$ sudo netstat -ntlup | grep 9050 tcp 0 0 127.0.0.1:9050 0.0.0.0:* LISTEN 683/tor Tor에서 제공되는 Proxy 9050 port는 socks5 protocol로 로컬에서만 서비스 된다. DeleGate 설정일본에서 제작된 것으로 보이며, 2014년 10월에 9.9.13으로 마지막 UPDATE 된 프로그램이다. 기초 사용법은 Delegate 사이트에 잘 나와있다. 설치는 BINA..