LINUX

포스트: 487|아이템:LINUX(477)
Tags

Posts

487 posts

locate - mlocate 데이터베이스 정보 확인 및 수동 갱신

반달가면|2018년 12월 5일

파일을 빠르게 찾기 위한 locate 명령에 대한 기본적인 내용은 이전 게시물을 참고하자. 여기로 기본적인 사용 예시는 아래와 같다. # 디렉토리 경로 또는 파일명에 문자열 "abc"를 포함한 경우 찾기 locate "abc" # 파일명(basename)에 문자열 "abc"를 포함한 경우 찾기 locate -b "abc" # 정규표현식 사용, 문자열 "Abc" 또는 "abc"를 포함한 경우 찾기 locate --regex "[Aa]bc" locate에서 참조하는 데이터베이스(mlocate DB) 관련 정보를 확인하려면 -S(대문자) 옵션을 이용한다. # mlocate DB 정보 출력 locate -S Database /var/lib/mlocate/mlocate.d

locate - 리눅스에서 고속으로 파일 찾기

반달가면|2018년 12월 3일

파일을 검색할 때 개인적으로 가장 요긴하게 사용하는 명령어가 find인데, 파일 수가 엄청나게 많은 상황에서 특정 파일의 위치를 확인하려면 시간이 꽤 걸릴 수 있다. 이럴 경우 locate를 사용하면 훨씬 빠르게 결과를 얻을 수 있다. 파일 시스템을 직접 검색하는 find와 달리, locate는 파일 정보가 저장되어 있는 데이터베이스(DB)를 검색해서 결과를 출력하기 때문에 속도가 훨씬 빠르다. 검색 조건과 관련된 옵션에 있어서는 find가 훨씬 유연하고 다양하므로 필요에 따라 두가지 명령을 상호보완적으로 사용하면 되겠다. (find 활용은 이전 게시물들을 참고하자. 여기로) 가장 간단한 예로, 파일시스템 어딘가에 my_file.txt 파일이 어디에 있는지 보려면 아래와 같이 입력하면 된다.

리눅스에서 파일이 매우 많은 디렉토리에 대한 ls 명령 실행속도 향상 (-f 옵션)

반달가면|2018년 11월 29일

간단한 내용이지만, 간혹 요긴할 때가 있어 정리해 두기로. 리눅스에서 디렉토리 하위에 상당히 많은 파일이 있을 경우, ls 명령을 입력하면 시간이 상당히 오래 걸릴 수 있다. 특히 속도가 느린 HDD에서는 더욱 두드러질 수 있다. 출력이 느린 이유중 하나는 ls에서 조회한 내용을 출력할 때 정렬(sorting)을 하기 때문이다. 항목이 많지 않을 때는 문제가 없지만 항목이 꽤 많을 경우엔 정렬에 소요되는 시간도 무시할 수 없게 된다. 이런 상황일 경우 -f 옵션을 추가해서 정렬하지 않고 바로 결과를 출력하도록 할 수 있다. # -f 옵션: 정렬 비활성화(do not sort) ls -f 예를 들어 특정한 문자열이 포함된 파일이 있는지 유무를 확인하려 할 경우에 굳이 정렬로 시간을 낭비

[라즈베리파이] 시그널 - 시그널을 받으면 프로세스 어떻게 반응할까?

Guillermo Austin Kim|2018년 11월 28일

시그널을 전달받은 프로세스는 어떤 동작을 할까요? 크게 2가지 동작을 수행합니다.1> 시그널을 무시한다.말 그대로 아무런 동작을 하지 않습니다. 하지만 SIGKILL, SIGSTOP 과 같은 시그널은 프로세스가 무시할 수 없습니다. 특정 상황에서 지정한 프로세스를 반드시 종료해야 하는 상황이 있기 때문입니다. 2> 시그널에 명시된 동작을 수행합니다.시그널 핸들러로 등록된 시그널 핸들러 함수를 실행하고 시그널 별로 명시된 동작을 수행합니다.대부분 시그널을 받으면 프로세스가 취하는 액션은 프로세스 종료입니다. 프로세스는 어떤 이벤트에 대해서 특정 루틴을 수행해야 하기 때문에, 시그널을 한 번에 하나의 용도로만 사용합니다. 이번 시간까지는 유저 프로세스 입장에서 시그널 처리 동작에 대해 살펴봤습