(Ubuntu) Linux 파일 복사 알고리즘이 Windows 7보다 낫습니까?


13

Windows 복사는 Windows Vista 이후로 엉망입니다. 마이크로 소프트조차도 사용자 관점에서 성능이 향상되었다고 주장하지만 눈에 띄지는 않습니다. 단일 파일에서도 복사 창에 '계산'및 복사 완료에 너무 많은 시간이 나타납니다 (100 % 완료 후에도 대화 상자가 활성 상태 인 경우도 있음).

동시에 우분투 리눅스에서 일부 파일을 백업했습니다. 정말 빠르다고 느꼈습니다. 빠른 UI 업데이트로 인한 느낌 일 수 있습니다.

몇 년 전 Windows 파일 복사에 관한 Jeff Atwood 의 유익한 게시물을 읽었습니다 . 하지만 내 구체적인 질문은

  • (우분투) Linux 파일 성능이 Windows-7보다 낫습니까?
  • Windows와 Linux 모두 알고리즘이 속도를 향상시키기 위해 다중 스레드와 파이프 라이닝 메커니즘을 사용하고 있습니까? 그렇다면 어느 것이 더 낫습니까?

3
Windows xcopy에서는 또는 심지어 사용 robocopy합니다. 훨씬 낫다. 예를 들어, 후자를 사용하면 먼저 모든 디렉토리를 작성하지만 파일을 복사하지 않고 두 번째 단계를 수행하여 실제 파일을 복사하여 대상에서 조각화를 발생시키지 않을 수 있습니다.
Kerrek SB 2016

1
또는 RichCopy ( blogs.technet.com/b/ken다운로드 )
sehe

파일 시스템에 의존합니다-시스템은 아마도 ext3/4NTFS와 경쟁하는 것과 같은 것을 사용 합니다. 또한 작은 파일을 사용하여 빠른 작업에 최적화 된 reiserfsand 를 시도해 볼 수도 있습니다 xfs.
new123456

@KerrekSB, 의견을 보내주십시오. (나는 그 의견을 +1했지만 내 말의 의미를 알고있다.) 이것이 답이다.
CarlF

Robocopy / CREATE는 빈 파일로 전체 디렉토리 구조를 복제하는 데 매우 유용하지만 대상에서 파일 조각화를 자체적으로 방지하지는 않습니다. 구조는 MFT에 생성되지만 파일 내용은 어디에서나 기록 할 수 있습니다. Robocopy가 단일 스레드로 실행되고 한 번에 하나의 파일을 복사하는 경우 일반적으로 한 번의 패스로도 조각화가 없어야합니다 (멀티 스레드로 실행하는 것은 HDD에서 HDD 로의 복사 성능을 크게 저하시키기 때문에 나쁜 생각입니다. 기계식 드라이브가 훨씬 더 "연삭"해야하기 때문입니다).
GabrielB

답변:


6

표준 copyWindows의 내장은 매우 좋지 않다,하지만 윈도우는 훨씬 더 효율적이 고급 명령과 함께 제공 : xcopyrobocopy. 특히 ACL 또는 대체 데이터 스트림 과 같은 고급 파일 시스템 기능을 완전히 제어해야하는 경우 robocopy선택 도구입니다.

예를 들어, 큰 디렉토리 구조를 복사하는 경우 대상을 조각 모음 하지 않을 수 있습니다 . 표준 호출 robocopy은 이미 잘 알고 있지만 하위 디렉토리가 만들어지면 디렉토리 항목이 업데이트되므로 여전히 조각난 디렉토리를 얻을 수 있습니다. 이를 방지하기 위해 robocopy두 단계로 실행할 수 있습니다 . 첫 번째 단계는 파일 내용을 복사하지 않고 대상 디렉토리 구조 만 작성하고 두 번째 단계는 실제로 파일 본문을 복사합니다.

모두 robocopyNTFS 기능을 매우 효율적으로 인식합니다.


NTFS가 ext3 / 4보다 효율적입니까?
sarat

실제 컨텐츠가 나중에 복사되므로 2 패스 로보 코프가 조각화를 줄이는 데 어떻게 도움이됩니까? 디스크 할당은 전적으로 파일 관리자에 의해 제어됩니다.
sarat

Beyond Compare를 사용하여 파일을 복사하는 것과 같은 트릭을 수행하고 있습니다. 즉, 대역폭 사용을 최대화하기 위해 여러 개의 복사 작업을 실행할 수 있습니다. 그러나 나는 그것이 어떻게 파편화 될지 확신하지 못한다
sarat

2
@Sarath : 조각화 관련 : 디렉토리에 새 파일과 하위 디렉토리가 추가되면 디렉토리 항목이 커집니다. 디렉토리를 순진하게 만들고 파일을 넣기 시작하면 원래 디렉토리 레코드가 너무 작아서 확장해야하지만 파일 데이터가 이미 있으므로 공간이 없습니다. 이 /CREATE옵션을 사용하면 빈 파일과 하위 디렉토리가 생성되어 공간 을 차지 하지 않으므로 디렉토리 항목을 연속적으로 쓸 수 있습니다.
Kerrek SB

1
@Sarath : NTFS를 Ext와 비교할 때 NTFS가 공개되지 않고 효율성에 대한 질문이 모호하기 때문에 말할 수 없습니다. NTFS는 많은 기능을 갖춘 훌륭한 기술입니다. 그러나 Windows에서는 NTFS를 사용하고 Linux에서는 Ext (또는 BTRFS)를 사용하기 때문에 실제로는 선택의 여지가 없습니다.
Kerrek SB

4

우분투 리눅스에서 볼 수있는 속도 중 일부는 아마도 파일 캐싱 일 것입니다. 내가 아는 한 Linux의 파일 복사는 파일 캐시 사용을 최소화하기 위해 노력하지 않습니다.

Linux에서 RAM의 약 50 %보다 작은 파일을 복사하면 전체 파일이 파일 캐시에 복사 된 다음 시간이 허락하는대로 디스크에 기록됩니다. 이것은 매우 빠르지 만 다른 유용한 파일을 캐시에서 강제로 제거합니다. 웹 캐시 파일, 이메일, 구성 파일, 글꼴 파일 등일 수 있습니다.

Windows XP는 파일 캐시와 무관하게 복사하는 데 사용되었습니다. 그러나 Windows Vista에서 Microsoft는 탐색기가 복사 될 때 제한된 양의 파일 캐시를 사용하도록 탐색기를 변경했습니다 . 이는 큰 파일 사본이 나머지 시스템에 미치는 영향을 줄입니다. 그러나 비교적 작은 파일 사본의 속도를 하드 디스크 속도로 줄입니다.


파일 캐싱 메커니즘을 사용하는 우분투. 또한 복사가 진행되는 동안 탐색 속도가 약간 느려졌습니다. 또한 많은 수의 파일을 복사 할 때 특히 속도가 지속적으로 향상되는 것으로 나타났습니다.
sarat

나는 이것이 거의 완전히 질문에 대한 답이라고 생각합니다.
Nandakumar Edamana

2

Windows에서는 Teracopy를 사용하십시오-Explorer의 전반적인 어리 석음 문제를 해결합니다.

우분투에서 파일 복사가 매우 빠르다는 것을 알았습니다.

이동식 드라이브를 사용하는 경우에도 "파일 작업"대화 상자가 사라지지 않습니다. 대화 상자가 사라진 후 즉시 드라이브를 안전하게 꺼내려고하면 오류 메시지가 나타납니다. 데이터는 통과합니다.

업데이트 : Windows 파일 작업이 서비스 및 레지스트리와의 모든 통합 속도가 느릴 수 있습니다. 노틸러스 (Gnome)는 익스플로러가 가지고있는로드 / 인터럽트가 없거나 최소한의 프로세스 일뿐입니다.


우분투에서 필자의 경험은 복사 / 이동 대화 상자를 닫을 수 있고 시스템 트레이로 이동하여 완료되면 알림을 표시한다는 것입니다. Natty와 Unity 데스크톱의 작동 방식에 대해 잘 모름
sehe

Teracopy는 Explorer로로드됩니다. 열어 둘 필요는 없습니다. 따라서 Teracopy는 사용자의 노력없이 메모리에로드되며 눈에 띄지 않게 작동합니다. 우분투에는 노틸러스에 내장 된 모든 정보, 즉 "병합"및 "모두 건너 뛰기"옵션이 있기 때문에 이와 같은 것은 필요하지 않습니다.
BZ1

+1 : TeraCopy를 주목 해 주셔서 감사합니다!
sehe

fastcopy라는 무료 오픈 소스 도구를 사용하고있었습니다. [ ipmsg.org/tools/fastcopy.html.en]
sarat

-1

Linux에서 파일을 이동하고 복사하는 것은 당연히 빠른 작업입니다. 파일을 너무 빨리 이동하고 복사 할 수있는 이유는 소스와 대상이 동일한 파티션에 있기 때문입니다. 작업은 inode 만 변경하면됩니다. 다른 파티션간에 파일을 이동하는 것은 여전히 ​​매우 빠릅니다 (1-gig 파일의 경우 1 분 정도 소요). Windows에서는 Windows의 파일 관리가 복잡하기 때문에 파일을 동일한 파티션의 대상으로 이동해야합니다. (파일 조각화와 Windows가 하드 디스크를 포맷하는 방법에 대해 생각하십시오.)


파티션 내에서 이동하는 것이 매우 빠르다는 데 동의합니다. 그러나 복사는 항상 디스크에 날짜가 중복되어 새 inode가 생성되기를 원했습니다. 또한 물리적 파일 이동이 발생하기 때문에 파티션간에 파일을 이동하는 데 비용이 많이 드는 것은 의심의 여지가 있습니다. 내가 틀렸다면 나를 바로 잡으십시오.
sarat
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.