EXT4에서 대용량 콘텐츠가 포함된 디렉터리를 어떻게 복사/이동하나요?

EXT4에서 대용량 콘텐츠가 포함된 디렉터리를 어떻게 복사/이동하나요?

그래서 EXT4 파일 시스템을 갖춘 Micro-SD 카드가 있습니다. 위에는 이 구조에 저장하는 데 사용하는 여러 파일이 있습니다. /YYYY-MM/folders/files- 파일 수는 일반적으로 1~10개에 불과하지만 folders그 안에는 많은 파일이 있습니다. 지금은 좀 더 이쁘게 바꾸긴 했지만..foldersYYYY-MMYYYY-MM/YYYY-MM-DD/..

µSD 카드에 있는 모든 파일을 복사/이동해야 합니다. 이것은 2019-10너무 많은 폴더가 포함된 폴더를 제외한 모든 폴더에 적용됩니다. 실패한 명령(이동에 대한 전부는 아님):

  • rsync(ssh를 통해): "델타 파일 목록 수신" 후 약 2일 후에 연결이 끊어집니다.
  • mv: DEST에 디렉토리를 생성한 후 중단됩니다.
  • cp: 같은 상황, 갇혀 있음./2019-10/ -> DEST/2019-10/
  • find .: 한 시간 동안 아무것도 하지 않고 Ctrl+C를 눌렀습니다.
  • ls: 위와 동일
  • du -chs 2019-10: 3일 정도 켜두었는데 아무 일도 일어나지 않았습니다

크기 2019-10는 약 15.5GB입니다( df -h다른 모든 항목을 이동한 후 결정됨). 번호 folders(폴더 데이터베이스가 있어서 알고 있음)는 2019-1040472입니다. 각 폴더에는 평균 약 4개의 파일이 있습니다.

이제 내 질문은: 이 모든 폴더를 거기 밖으로 이동하는 방법은 무엇입니까?

참고: 처음에는 µSD 카드에 문제가 있는 줄 알았습니다. 그래서 디렉토리를 읽을 수 없었지만 정상 속도로 움직이고 잘 작동했습니다 2019-11. 2019-12여기에는 총 동일한 수의 파일이 포함되어 있지만 더 나은 구조로 인해 단일 디렉터리에 2000개 이상의 폴더가 포함되지 않습니다.

측면 정보: 32GB SanDisk A1 µSD 카드(가짜 없음), 내장 노트북 SD 카드 리더기(최고 성능), debian 10 OS(아키 버전 사용 가능), 8GB RAM 및 4x3.2GHz i7 CPU.


이 질문을 쓰면서 해결책을 깨달았습니다(너무 자주 발생하는 일이라 말도 안 되는 일입니다). 데이터베이스를 통과하고 각 폴더 항목에 대해 폴더 이름을 검색한 다음 이동하여 mv -v /sd-card/2019-10/${folderid}/ DEST이동하는 스크립트를 만들었습니다. 정상 속도에서는 잘 작동합니다.

나는 아직도 이 질문을 하고 있고 데이터베이스가 없으면 어떻게 해야 할지 궁금합니다. 이것은 나중에 다른 사람들에게 유용할 수 있습니다.

관련 정보