하드 링크가 많은 디렉토리 삭제

하드 링크가 많은 디렉토리 삭제

공간을 절약하기 위해 많은 파일이 하드 링크되어 있고 많은 양의 데이터(1TB 이상)가 포함된 디렉터리를 정리하려고 합니다. 어떤 맥락에서 이것은 빌드를 보관하는 드라이브이고 각 빌드에 많은 미디어(수 GB)가 있으므로 파일이 이전 빌드 제품과 동일한 경우 파일을 하드 링크합니다. 나는 이 디렉토리를 삭제하는 것이 매우 느리다는 것을 발견했습니다(초당 최대 5개 항목).

내 생각엔 각 파일에 대한 하드 링크가 너무 많아 삭제하는 데 시간이 너무 오래 걸리는 것 같습니다. 이 프로세스 속도를 높이기 위해 할 수 있는 일이 있습니까? 아니면 5/초에 수백만 개의 항목을 삭제하는 데 어려움을 겪고 있습니까?

답변1

find . -inum [inode-number] -exec rm -i {} \;

이 명령은 제거할 수 있는 inode 번호를 찾아 참조된 데이터를 해제합니다.

테스트할 수 있도록 대화형 플래그를 지정했습니다.

ls -il아, inode 번호를 얻으려면 이름과 inode 번호를 함께 반환하는 방법을 사용할 수 있습니다 .

inode로 직접 파일을 제거할 수 있다면 개선이 되겠지만 그렇게 할 수 있는 방법을 모르겠습니다.

관련 정보