리눅스 9

[ Python ] 리눅스 iostat 결과값 DataFrame만들고, csv 저장

iostat : CPU통계와 디바이스와 IO통계를 출력해주는 유틸 tps 장치에서 초당 입출력 작업 수 kB_read/s 장치에서 초당 읽은(Read) 데이터 블록 (초당) kB_wrtn/s 장치에서 초당 쓴(Write) 데이터 블록 (초당) kB-read 장치에서 초당 읽은(Read) 데이터 블록 kB-wrtn 장치에서 초당 쓴(Write) 데이터 블록 [ 옵션 ] -m MB단위로 표현 iostats명령어의 결과를 DataFrame으로 만들고, csv 파일로 export import subprocess from datetime import datetime import time def iostat_data(): ps = subprocess.Popen(('iostat', '-m'), stdout=subpr..

Compression Comparison of gzip and 7z on CentOS 7. (CentOS 7에서 gzip과 7z 압축 비교)

윈도우 플랫폼에서만 7z을 써봤지만 리눅스에서도 설치가 가능하여 설치하고, 몇 개 로그성 파일을 압축해 보고 gzip과 비교하여 압축율을 보았다. p7z 설치 # yum install epel-release # Extra Packages for Enterprise Linux 저장소 설치 # yum install p7zip p7zip-plugins # 7z | grep Version p7zip Version 16.02 Sample Log 324448621 Sep 11 02:03 2019-09-10.log 285908878 Sep 16 16:53 2019-09-16.log 381334202 Sep 26 16:20 2019-09-26.log 376169644 Sep 28 14:13 2019-09-28.log ..

Linux Access log 일 단위 자동압축 쉘 스크립트

리눅스 파일시스템 용량이 넉넉하면 괜찬지만 지속적인 용량관리가 필요하다면 로그를 압축보관할 필요가 있다. 이번 포스팅은 엑세스 로그가 일 단위로 생성되면, 전일(yesterday) 로그를 자동으로 백업할 수 있는 간단한 쉘 스크립트를 알아보겠다. date명령어를 이용하여 전일 날짜를 출력 date명령어의 -d 옵션을 이용하여 전일 날짜 출력. (현재일 2019년 10월 16일 기준) # date -d 'yesterday' Tue Oct 15 07:37:07 EDT 2019 로그포맷(yyyy-dd-mm)에 맞게 출력 # date +%Y'-'%m'-'%d -d 'yesterday' 2019-10-15 로그포맷에 맞는 gzip 압축 명령어 완성하기 대상파일 : localhost_access_log.2019-1..

Linux/Shell Script 2019.10.16

linux history 명령어 실행일시 표시하기

간단히 환경변수를 추가하여 간단하게 history 명령어에 실행일시를 표시할 수 있다. 전역 적용시) /etc/Profile 파일 맨 아래 명령어 추가 root만 적용시) /root/.bash_profile 파일 맨 아래 명령어 추가 --------------------------------------------------------------------------- export HISTTIMEFORMAT="%Y-%m-%d_%H:%M:%S" --------------------------------------------------------------------------- 적용후 재로그인을 하고 history 명령어를 실행하면 아래와 같은 포맷으로 출력된다. 973 2019-10-07_17:05:10 ..

리눅스에서 cifs 마운트 폴더 실행금지 시키기

리눅스 서버에서 윈도우 서버 공유폴더를 마운트 할 때, cifs 형식을 이용한다. 기본적으로 마운트를 하게 하게 되면, 윈도우 공유권한이 "읽기, 쓰기" 만 체크 되어 있어도 실행권한이 들어가 있다. mount -t cifs //10.10.x.x/cifstest/ /cifstest/ -o username='username',password='password' (윈도우 공유 폴더) (리눅스 폴더) 공유폴더에 간단한 실행파일을 만들고, 실행을 하면 실행이 된다 실행을 막기 위해서는 noexec 옵션을 추가하여 마운트 하면 실행을 거부 시킬 수 있다. noexec : 마운트된 화일 시스템 상의 어떤 바이너리도 실행을 허가하지 않는다. 자신이 지원하지 않는 바이너리를 포함하는 화일 시스템에 대해 유용하다. mo..

[Python] Linux 디렉토리와 파일 리포팅

python의 os.walk module을 이용하면 디렉토리와 파일정보를 출력할 수 있고, os.path module을 추가하면 파일사이즈, 생성일, 수정일, 변경일 등을 추가로 활용할 수 있습니다. 디렉토리는 샘플이기 때문에 테썹이기 때문에 /etc로 하였는데, 실썹은 조심해야죠. 경로는 input으로 받아도 되겠습니다. python version : 2.7 [ Sample 1 - 특정 디렉토리내에 있는 파일명과 디렉토리 경로 보기 ] #!/usr/bin/python import os sum = 0 for (path, dir, files) in os.walk('/etc'): for filename in files: splitfilename = filename.split('.') print path, f..