Linux에서 파일을 복사할 때 Windows 파일 속성을 어떻게 보존할 수 있습니까?

Linux에서 파일을 복사할 때 Windows 파일 속성을 어떻게 보존할 수 있습니까?

저는 FAT32 형식의 USB 드라이브를 대량 복제하기 위해 Linux 시스템에서 실행되는 사용자 정의 Bash 스크립트를 사용하고 있습니다.

"숨김"과 같은 Windows 파일 속성을 유지해야 합니다.

나는 더 나은 안정성과 최적의 대역폭 사용을 위해 I/O 동기화를 강제하기 위해 최신 버전과 함께 사용 rsync합니다 .ddfindmkdir

일부 파일 속성을 유지한다고 맹목적으로 시도하고 전환했지만 -XWindows -A파일 속성에서는 작동하지 않는 것 같습니다.rsync

Linux 환경에서 Windows 파일 속성을 읽고 쓸 수 있는 방법이 있습니까?

더 쉬운 방법이 없으면 복사한 후 적용할 수 있습니다.

나는 전체 소스 파일 시스템을 원하지 않습니다 dd. 특히 수백 개의 드라이브를 작성해야 할 때 최적화되지 않을 것이기 때문입니다. 때때로 드라이브의 용량은 16GB이고 그 안에 있는 파일은 몇 GB에 불과합니다. 멍청한 사람은 dd16GB를 모두 복사하므로 프로덕션에서 작동하는 데 오랜 시간이 걸립니다.

웹을 검색했지만 Linux 확장 속성이 Windows 파일 속성과 아무 관련이 없는 것 같고 이 정보를 읽고 쓰는(또는 파일과 함께 복사하는) 방법을 찾지 못했습니다.

답변1

이 문제를 처리하는 몇 가지 방법을 생각해 볼 수 있습니다.

첫 번째는 사용하는 것입니다.Mtools파일을 복사합니다. 이것이 작동하려면 다음이 필요합니다."드라이브"를 정의하다(A: 소스 드라이브, B: 대상 드라이브) 다음을 사용하여 속성과 타임스탬프를 보존하면서 모든 것을 복사할 수 있어야 합니다.

mcopy -s -p -m a: b:

(테스트되지 않음).

fatattr두 번째는 (대부분의 배포판에서 사용 가능) 을 사용하여 속성을 사후 처리하는 것입니다 . 마운트된 파일 시스템을 처리하므로 현재와 동일한 방식으로 파일 시스템을 복사한 다음 이를 사용하여 fatattr모든 소스 파일의 모든 FAT 속성을 나열하고 이를 구문 분석하여 fatattr대상 파일에 속성을 적절하게 설정하도록 지시합니다. .

관련 정보