안녕하세요 warehouse 입니다.
오늘은 우연히 회사에서 lsof 를 사용하게 되었는데요, 제대로 알지 못하고 필요한 목적으로만 사용하다보니 발전이 없더라구요.
그래서 생각만 하면서 미뤄 온 포스팅을 드디어 하게되었습니다.
lsof 의 개념
lsof 의 개념은 위키에 잘 나와있어요
List open files의 약자이고 열려있는 파일의 정보를 제공해 주는 명령어 입니다.
유닉스 계열 운영체제에서 열려있는 파일과 그 파일을 열고 있는 프로세스의 목록을 출력해 주는 오픈소스로 제작 된 lsof 유틸리티 입니다.
참고 : 위키백과
lsof 의 사용
그래서 lsof 는 어떤 경우에, 어떻게 사용해야 할까요?
앞에서 설명했던 대로 lsof 는 열려있는 파일들 그리고 그 파일을 사용하는 프로세스를 출력 하는데요
저는 주로 특정 파일이 수정이 불가할 때, 어떤 사람이 사용하고 있는지 확인하기 위해서 lsof를 많이 사용합니다.
그리고 거의 같은 이유이기는 한데, 프로그래밍을 하다보면 파일이 열려있어서 exception이 떨어지는 경우가 있어요. 이런 경우에 debugging 용도로도 사용하는 것 같습니다.
아, 그리고 저는 socket 기반 통신을 사용하는 service 를 운영하는데, socket이 열려있는 수준을 확인하기 위해서도 활용하고 있어요.
정리하면, 제가 주로 사용하는 목적은 아래와 같습니다.
1. 파일 수정이 불가능한 경우, 프로세스 확인 후 account 확인 목적
2. Process에서 file read / write 관련 debugging
3. Socket 통신 connection count 목적
이번 포스팅 에서는 lsof 의 개념와 사용 목적에 대해 알아봤습니다.
세부 명령어와 옵션 사용 방법은 다음 포스팅에 이어서 작성하겠습니다.
감사합니다.
'CS' 카테고리의 다른 글
gcov를 이용한 C++ 코드 커버리지의 확인, 테스트 지표 사용하기 (0) | 2022.03.18 |
---|---|
데브옵스(devops)와 개발자가 되려면 무엇을 배워야 하는가? - Developer Roadmaps / Devops roadmap (0) | 2022.03.08 |
[도커] docker 버전 확인하고 신규 컨테이너 생성하기 (0) | 2022.02.23 |
[CS/AWS] 아마존 웹 서비스 EC2 에서 Amazon Linux 생성하기 (0) | 2022.02.21 |
[CS overview] Docker container 구성요소 ( 도커 구성요소 ) (0) | 2022.02.20 |