du 명령을 사용하여 파일을 생성한 사용자 이름을 얻는 방법

du 명령을 사용하여 파일을 생성한 사용자 이름을 얻는 방법

사용된 상위 10개 파일을 보여주는 find 명령이 있습니다.

$ find /root -type d -name "dummy" -prune -o -type f -exec du -a --time {} + | sort -n -r | head -n 10
1212     2018-11-01 08:35        File.txt

이 파일을 업데이트한 사용자의 마지막 업데이트 이름과 크기(MB/GB)를 얻을 수 있는 방법이 있습니까?

답변1

나는 무엇을 모른다마지막 업데이트 이름그래야 하지만 원하는 것이 다소 불가능하기 때문에 아마도 중요하지 않을 것입니다.

Linux 파일 시스템은 마지막 UID 변경에 대한 정보를 저장하지 않고 시간만 저장합니다. 따라서 이 정보는 파일 시스템에서 전혀 사용할 수 없습니다.

가장 좋은 접근 방식은 아마도 autitd시스템의 모든 쓰기 액세스를 기록하는 것입니다. 이 접근 방식을 사용하면 시스템이 더 빨라지지는 않지만 RAM 디스크(tmpfs)에 기록할 수 있습니다.

답변2

find가장 큰 파일 10개를 반환하려면 다음을 사용하세요 stat.

find . \
-exec stat --printf '%s\t%y\t%U\t%n\0' {} + \
|  sort -rnz | head -zn10 | xargs -0 -n1

관련 정보