![파일에 텍스트를 추가할 때 lsof는 파일을 열린/액세스된 것으로 표시하지 않습니다.](https://linux55.com/image/168308/%ED%8C%8C%EC%9D%BC%EC%97%90%20%ED%85%8D%EC%8A%A4%ED%8A%B8%EB%A5%BC%20%EC%B6%94%EA%B0%80%ED%95%A0%20%EB%95%8C%20lsof%EB%8A%94%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EC%97%B4%EB%A6%B0%2F%EC%95%A1%EC%84%B8%EC%8A%A4%EB%90%9C%20%EA%B2%83%EC%9C%BC%EB%A1%9C%20%ED%91%9C%EC%8B%9C%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
한 세션에서는 다음과 같이 파일에 일부 텍스트를 추가합니다.
while true;do echo some_text >> file1 ; done
동일한 디렉터리의 다른 세션에서 다음을 실행합니다.
lsof file1
출력이 반환되지 않습니다. 이유를 아시나요? lsof가 파일을 쓰는 과정을 보고하면 안 되나요? RHEL 7.2를 사용하고 있습니다.
답변1
그것은 단지 "불운"일 뿐입니다(또는 원하는 경우 매우 좁은 기간). pv
파일을 더 오래 열어두기 위해 쓰기를 제한하여 프로세스 속도를 늦출 수 있습니다 .
echo "0000000000000000000000000000000000000000000000000000000000" | pv -L 2 >> opened.dat
다른 터미널에서:
lsof opened.dat
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
pv 30636 me 1w REG 253,1 60 24642407 opened.dat