분류 전체보기 90

조회된 파일 용량알아보기

이전 글에서는 특정시간이 지난 파일을 찾아지우는 방법을 찾아보았는데,그로 인해 확보되는 용량이 얼마인지 궁금해져, 그 방법도 찾아보았다.find /path/ -ctime +365 | xargs du -sk | awk '{total += $1} END {print total}'이와 같이 하면 생성한지 1년지난 파일들의 전체 용량을 합하여 kbyte 단위로 보여준다. 관련옵션 : http://www.jnetwork.co.kr/bbs/board.php?bo_table=useguide&wr_id=138

Development/OS 2016.03.22

일정시간지난 파일 조회하기

서버운영중 용량문제로 오래된 파일을 지워야 할 필요가 생겼다.파일이나 디렉토리가 몇안되면 일일이 찾아지우겠지만,그 수가 많거나 계속해서 수행해줘야 할 경우 번거로우므로 방법을 찾아보았다.find /path/..../files/* -mtime +1 -exec rm {} \;이와 같이 수행하면 수정한지 하루가 지난 파일과 디렉토리를 찾아서 파일만 지워준다. (디렉토리는 rm 옵션때문에 지워지지는 않는다)디렉토리까지 포함하여 지우려면 다음과 같이 하면 되지만...검색조건에 해당하지 않는 파일이 해당 디렉토리에 안에 있는 경우에도 지워버리지 조심해야 할 듯 하다find /path/..../files/* -mtime +1 -exec rm -rf {} \;생성날짜 기준으면 mtime 을 ctime 으로 바꿔주면 된..

Development/OS 2016.03.22

디렉토리 용량 확인하기

df를 이용해서 디스크 용량을 확인하곤 했었다. 디렉토리의 용량을 확인할 필요가 있을땐, samba로 연결해서 확인했었는데, 현재 사용중인 서버는 samba가 설치되어있지 않아, linux명령어를 찾아보았다. 전체 용량 확인 다음과 같이 하여 손쉽게 확인할 수 있었다. $ du -sh -s : 서브디렉토리도 합쳐서 표시 (없으면 서브디렉토리를 각각 나눠서 표시) -h : 용량단위도 표시 (없으면 kbyte로 표시) 디렉토리별 용량 확인 du -sh로 하면 현재 경로의 전체 사이즈는 알 수 있지만, 서브디렉토리별로 알고 싶을 때가 있다. du -h du -h 명령을 실행하면 서브디렉토리의 서브까지 모두 나와서 알아보기 힘들다. 아래와 같은 옵션으로 실행하면, 한단계만 취합하여 현재 위치의 서브 디렉토리 단..

Development/OS 2016.01.08

Ubuntu에서 /etc/sudoers 파일을 잘못 수정한 경우

sudo 권한을 주기 위해 /etc/sudoers 파일을 수정할 일이 가끔 생긴다.그런데 이 파일을 잘못 수정하면, sudo 명령을 실행할 수가 없어, 해당 파일을 수정할 수도 없는 곤란한 상황이 벌어진다.ssh 를 통해 원격에서 접속한 경우에는 무척이나 곤란한 상황이 발생하니, 다음과 같이 해결하도록 하자. 우선, 해당 PC에 직접 접속하여야 한다.1. reboot2. shift 키를 계속 누르고 있는채로 booting한 후, recovery 모드로 진입한다.3. command line as root 로 들어간다.4. 아래 명령어를 통해 /etc/sudoers 파일을 다시 편집해준다.- mount -n -o remount,rw /- nano /etc/sudoers

Development/OS 2015.12.23

putty 에서 ctrl-S 눌러 화면잠겼을 때 해결방법

1. Putty 멈춤 업무상 그리고 개인용도로 Linux를 원격으로 붙어서 사용하곤 하는데, 주로 putty를 사용하여 접속을 한다 오랫동안 window를 사용하던 습관탓인지 vi editor에서 편집을 한 후, 저장을 위해 ctrl-S를 누르곤 한다. 하지만 putty에서 ctrl-S를 누르면, 화면이 멈춰버린다. 그래서 편집한 게 아깝지만 종료하고 다시 접속하곤 했었는데, 찾아보니 방법이 있었다. (잠그는 방법이 있으면 푸는 방법도 있게 마련이거늘...) 2. 해결 1. ctrl-Q 를 누르면, ctrl-S로 잠근 화면을 풀 수 있다. ctrl-S는 XOFF를 수행한다. 즉, 터미널이 키 입력을 허용하지만 그 결과를 표시하지 않아 터미널이 죽은 것처럼 나타난다. 이때 ctrl-Q 를 눌러 흐름 제어를..

Development/OS 2015.06.18

클래스 내 함수 랜덤 호출하기

요구사항 프로젝트에서 테스트자동화 업무를 담당하여 수행한적이 있었다. 개발담당자들이 개발한 API를 호출하여 테스트하는 업무였는데, 자동화시스템을 구현하여 랜덤으로 해당 API들을 호출하는 요구사항이 있었다. 해결 아래과 같이 해당 요구사항을 만족할 수 있어 코드를 정리해놓았다. method_list = [] # list for contain test scripts def __init__(self): list = inspect.getmembers(self, predicate=inspect.ismethod) for item in list: if item[0] not in ("__init__", "test", "runner"): # 제외할 method들을 작성 self.method_list.append(it..

현재 시간과 주어진 시간사이의 차이를 구하는 항수

특정횟수만큼 실행되는 것이 아니라, 정해진 시간까지 수행되도록 프로그램을 할 필요가 있어 찾다가 발견하여 정리한다 def __get_time(self, base_date): returnValue = "Passed" current_time = datetime.datetime.now() if not base_date or len(base_date) < 14: return 0,0,0,0 dest_time = datetime.datetime(int(base_date[:4]), int(base_date[4:6]), int(base_date[6:8]), int(base_date[8:10]), int(base_date[10:12]), int(base_date[12:14])) days = (current_time - ..

Git Tag 사용법

업무상 git 을 사용하곤 한다.2010년부터 사용을 했었는데, 제대로 알고 사용하는 부분이 없어서...필요할대마다 정리하려고 한다.이번엔 git tag - 목록 보기$ git tag - tag 생성하기 $ git tag -a v1.0.0 [-m "Detail comment"] - 생성한 tag를 remote에 추가하기 $ git push origin v1.0.0 - 생성한 tag들을 한번에 올리기$ git push --tags - local 에 있는 tag 삭제하기 $ git tag -d {tag이름} $ git tag -d v1.0.0 - remote에 있는 tag 삭제하기 $ git push origin :tags/v1.0.0

Development/Etc 2015.03.12

List 복사하기

python에서 원본 List를 남겨두고 복사한 List만 편집할 경우가 생겨서 다음과 같이 시도하여보았다.a = ['5', '2', '3']b = []b = a b.sort()a list는 남겨둔 채, b list만 정렬하려하였으나 a 도 함께 정렬되 버렸다.포인터마냥 같은 곳을 참조하는 것처럼 보여, 해결 방법을 찾아보았다. 다음과 같이 아주 간단하게 해결할 수 있었다.a = ['5', '2', '3']b = a[:]b.sort()