Linux가 파일 대신 스왑 파티션을 사용하는 이유는 무엇입니까?

Linux가 파일 대신 스왑 파티션을 사용하는 이유는 무엇입니까?

제 생각에는 스왑 파일이 더 유연합니다.

답변1

스왑 파일은 스왑 파티션보다 유연하지만 오류가 발생하기 쉽습니다. 파일 시스템 오류로 인해 스왑 파일이 손상될 수 있습니다. 파일을 이동하거나 삭제할 수 없기 때문에 파일 교환은 관리자에게 번거로운 일이 될 수 있습니다. 최대 절전 모드에는 스왑 파일을 사용할 수 없습니다. 예전에는 파일 교환 속도가 약간 느렸지만 이제는 그 차이가 미미합니다.

스왑 파일의 장점은 크기를 미리 결정할 필요가 없다는 것입니다. 그러나 Linux에서는 여전히 스왑 파일의 크기를 온라인으로 조정할 수 없습니다. 등록을 취소하고 크기를 조정한 다음 다시 등록해야 합니다(또는 다른 파일을 만들고 이전 파일을 삭제해야 함). 따라서 Linux에서 스왑 파일은 스왑 파티션에 비해 많은 이점을 제공하지 않습니다. 영구적인 고정 장치가 아닌 일시적으로 더 많은 가상 메모리가 필요할 때 주로 유용합니다.

답변2

스왑 파티션은 주소 지정 가능한 메모리 풀만 필요할 때 파일 시스템에 대한 의존성을 피하기 때문에 선호될 수 있습니다.

그러나 스왑 파티션 대신 또는 스왑 파티션에 추가하여 스왑 파일을 사용하는 것을 막을 수는 없습니다.

  • 파일을 생성합니다:

    dd if=/dev/zero of=/extraswap bs=1M count=512
    
  • 초기화 파일 내용:

    mkswap /extraswap
    
  • 그걸 써:

    swapon /extraswap
    
  • 작동하는지 확인하세요.

    free -m
    

부팅 시 항상 스왑 파일 사용을 시작하려면 /etc/fstab을 편집하고 추가하십시오.

/extraswap           swap          swap    defaults    0 0

[1]http://www.redhat.com/docs/manuals/linux/RHL-8.0-Manual/custom-guide/s1-swap-adding.html

답변3

아마도 주된 이유는 디스크에 대한 주요 커널 일시 중지가 스왑 파일에서 작동하지 않기 때문일 것입니다. 예를 들어데비안 위키uswsusp필요한 경우 지침에 따라 설치하십시오.

최근에는 파일 시스템이 작동하면 스왑 파일이 작동하지 않으므로 btrfs배포판에서는 항상 스왑을 파티션으로 생성하는 것이 가장 쉽습니다.

누군가 커널 버전 2.6 이전에는 스왑용 파일을 사용하면 파티셔닝보다 성능이 저하될 수 있다고 막연하게 언급했습니다. https://www.kernel.org/doc/gorman/html/understand/understand014.html#text15

답변4

이는 주로 파티션에 위치한 데이터의 접근 시간이 짧기 때문인 것으로 생각됩니다. 스왑 파일의 목적은 시스템 관리자가 실제로 메모리가 부족하여 시스템에 충돌을 일으킬 수 있는 많은 작업을 수행해야 할 때 도움을 주는 것입니다. 이 경우 필요할 때 가끔 스왑 파일을 생성합니다.

하지만 어쨌든 둘 다 가질 수 있습니다.

관련 정보