ls -l을 디버깅하는 방법이 느립니까?

ls -l을 디버깅하는 방법이 느립니까?

저는 제가 일하는 대학에서 설치한 우분투 16.04를 사용하고 있습니다. ls잘 작동하지만 ls -l종종 4~5초 동안 중단됩니다. 마운트된 공유 등으로 인해 이것이 발생할 수 있다는 일부 소스를 찾았지만 내 컴퓨터에 파일 시스템이 마운트되어 있지 않습니다(물론 내 하드 드라이브 제외).

IT에서는 이 문제를 디버깅할 시간이 없다고 하는데 문제를 어떻게 찾을 수 있는지 궁금합니다. 이것이 어떻게 작동하는지 잘 알지 못하면서 내 OS가 삼바를 통해 인증 서버와 통신하도록 ls구성되어 있는지 조금 의심스럽습니다 . ls -l어떻게 확인할 수 있나요?

답변1

애플리케이션이 수행하는 작업을 확인하는 가장 좋은 방법은 디버거를 통해 실행하는 것입니다. Linux 시스템의 경우 일반적으로 yes 입니다 gdb.
디버거에서 찾아야 할 내용을 파악하는 가장 빠른 방법은 먼저 Run Application 을 사용하는 것입니다 strace. 그러면 사용 중인 모든 시스템 호출이 표시되고 시간이 걸리는 시스템 관련 항목이 있는지 확인할 수 있습니다.
달리기:strace ls -l

/bin/ls패키지 의 일부를 디버깅 coreutils하려면 해당 패키지에 대한 디버깅 기호를 설치해야 합니다. 이를 수행하려면 저장소를 추가해야 합니다.이 답변에서.
실행: gdb --args ls -l디버깅 모드로 전환됩니다. 관련 정보 더보기여기.

관련 정보