가장 최근에 수정된 상위 10개 파일 찾기

가장 최근에 수정된 상위 10개 파일 찾기

시스템에서 가장 최근에 수정된 파일 10개를 가져오는 방법. 디스크 사용량이 최대치에 도달한 시스템이 있는데 어떤 파일이 빠르게 증가하는지 잘 모르겠습니다.

별도의 설치 장치에 mysql 인스턴스가 저장되어 있고 루트 장치의 /var/lib 디렉터리에 대한 소프트 링크를 방금 만들었습니다. 나는 심볼릭 링크가 디스크 사용량에 영향을 미치지 않는다는 것을 알고 있습니다.

답변1

find, 및 를 stat사용 하여 이 작업을 수행할 수 있습니다.sorttail

find . -exec stat --format="%X" + | sort -n | tail -n 10

watch그러나 및 사용을 고려할 수도 있습니다 du. watch명령은 주기적으로(기본적으로 2초마다) 실행됩니다. du디스크 사용량을 표시합니다 . 이 명령은 현재 디렉터리에 있는 모든 파일과 폴더의 디스크 사용량을 표시하고 출력은 지속적으로 새로 고쳐집니다.

watch "du -s *"

루트 디렉터리에서 시작하여 가장 빠르게 성장하는 폴더를 확인한 다음, 범인을 찾을 때까지 폴더 계층 구조를 따라 작업할 수 있습니다.

한 번에 화면에 표시할 수 없는 파일이 너무 많은 폴더에 있는 경우 du -s [a-h]*..*.[a-h]*

답변2

find+ sort+...와 같은 명령을 함께 사용하여 문자 그대로 원하는 작업을 수행 할 수 있습니다 . 그러나 디스크 사용량이 가장 많은 프로그램을 찾는 목적을 달성하려면 다음을 사용하는 것이 가장 좋습니다.오토프.

답변3

실시간 모니터링을 위해 다음 방법 중 하나를 시도해 볼 수 있습니다.로깅 파일 시스템아니면 리눅스감사 하위 시스템(또는 Unix 변형에 해당하는 것). 바라보다이 답변더 많은 정보를 알고 싶습니다. 많은 프로그램이 이 파일 시스템을 사용하는 경우 많은 로그가 생성됩니다. 모니터링되는 파일 시스템에 로그인되어 있지 않은지 확인하십시오. 감사 하위 시스템의 경우 이 규칙을 사용하면 됩니다.

auditctl -a exit,always -F dir=/mount/point -S write

관련 정보