대부분의 Linux 설치에서는 스왑 파티션을 포함할 것을 권장합니다. 단일 파티션에 전체 운영 체제를 사용하는 데 익숙한 Windows 사용자에게는 이것이 이상하게 보일 수 있습니다.
스왑 파티션은 무엇을 하며 필요하며 얼마나 커야 합니까? 이것들은 모두 올바른 대답과 함께 시스템 성능을 심각하게 향상시킬 수 있는 중요한 질문입니다.
Linux 스왑 파티션의 기능
스왑 파티션은 RAM의 오버플로 공간 역할을 합니다. RAM이 완전히 차면 추가 응용 프로그램이 RAM이 아닌 스왑 파티션에서 실행됩니다.
이것은 실제로 더 많은 RAM을 확보하지 않고도 컴퓨터의 사용 가능한 메모리 양을 늘리는 쉬운 방법처럼 들릴 수 있지만 그렇지 않습니다. RAM은 상대적으로 훨씬 느린 하드 드라이브와 달리 매우 빠르기 때문에 메모리에 이상적인 하드웨어입니다.
솔리드 스테이트 드라이브는 훨씬 향상된 속도로 인해 성능 문제를 덜 문제로 만들었을 수 있지만 RAM과 일치하지는 않습니다. 이는 최신 NVMe SSD에서도 마찬가지입니다. 두 경우 모두 솔리드 스테이트 드라이브에 추가적인 마모를 일으키고 싶지 않을 것입니다.
스왑 파티션과 가장 유사한 것은 Windows 페이지 파일이지만 둘 사이에는 많은 기술적인 차이가 있습니다.
Linux 스왑 파티션은 오버플로 저장 공간으로 제한되지 않습니다. 다른 방식으로 PC를 지원할 수 있습니다.
우선순위 지정
스왑 파티션은 또한 메모리에서 더 중요한 항목을 위한 메모리 공간을 더 많이 확보하기 위해 메모리에서 하드 드라이브로 일부 항목을 이동하는 데 도움이 될 수 있습니다. 이것은 거의 건드리지 않는 항목이 스왑 파티션으로 이동됨을 의미합니다.
"희귀한" 것으로 간주되는 임계값은 구성 가능한 "교체성"(예, 실제로 사용된 용어임)에 따라 다릅니다. 스왑이 높을수록 데이터가 스왑 파티션으로 이동할 가능성이 더 높아집니다. 낮은 스왑성은 데이터가 스왑 파티션으로 이동할 가능성이 낮다는 것을 의미합니다.
최대 절전 모드
스왑 파티션은 시스템에 최대 절전 모드를 지시할 때마다 메모리 내용의 대상으로 사용됩니다. 즉, 스왑 파티션이 없으면 Linux에서 최대 절전 모드가 불가능합니다.
하지만 사람들이 최대 절전 모드 기능을 사용하는 일이 드물어졌으므로 이것이 중요하지 않을 수 있습니다.
스왑 파티션이 필요하십니까?
이것은 스왑 파티션이 필요하다는 것을 의미합니까? 별말씀을요! Linux 시스템은 스왑 파티션 없이 완벽하게 수행할 수 있습니다. 우리는 이미 스왑 파티션의 이점에 대해 논의했습니다. 이제 갖고 싶지 않은 이유는 무엇입니까?
스왑 파티션이 도움이 되지 않는 경우
스왑 파티션에는 단점이 있습니다. 그들은 사용하지 않을 때 동적으로 크기가 조정되지 않는 하드 드라이브의 공간을 차지합니다. 스왑을 많이 사용하면 메인 드라이브의 마모도 증가할 수 있습니다. 어떤 경우에는 스왑 파티션이 성능 향상에 도움이 되지 않습니다. 다음은 스왑 파티션이 없는 것보다 실제로 더 나쁠 수 있는 예입니다.
2GB RAM과 5400rpm 하드 드라이브가 있는 구형 넷북에 Linux를 설치했다고 가정해 보겠습니다. 2GB의 메모리만 있으면 브라우저 탭 몇 개만 열어도 매우 빠르게 채워지는 것을 상상할 수 있습니다. 스왑 파티션을 사용하면 메모리가 오버플로될 때 모두 열린 상태로 유지할 수 있습니다.
그러나 하드 드라이브의 5400rpm 속도 때문에 병목 현상이 나타납니다. 하드 드라이브가 너무 느리고 시스템이 지속적으로 스왑 파티션에 액세스하려고 하기 때문에 넷북은 매우 느려집니다. 메모리를 확보하기 위해 모든 항목을 닫지 않으면 컴퓨터를 사용할 수 없을 정도로 속도가 느립니다.
설정된 swappiness는 RAM에서 공간을 사용할 수 있게 되면 스왑 파티션의 모든 항목이 다시 이동한다는 것을 보장하지 않습니다. 대신 스왑 파티션에 많은 것이 남아있어 넷북이 계속 느려질 수 있습니다. 따라서 시스템을 종료하기 전에 스왑 파티션에서 모든 것을 제거해야 하기 때문에 깨끗한 상태에서 시작하기 위해 컴퓨터를 재부팅해야 합니다.
스왑이 없을 때 일어나는 일
스왑 파티션을 포기하기로 결정했다면 위험을 알고 있어야 합니다. 컴퓨터에 사용 가능한 것보다 더 많은 RAM이 필요한 경우 인터페이스가 잠길 수 있습니다. 컴퓨터를 강제 종료하고 작업 중이던 모든 데이터를 잃게 될 위험이 있습니다.
이러한 경우 한 번만 사용된 경우에도 주변에 스왑 파티션이 있기를 원할 수 있습니다. 이는 저장 공간이 자주 부족해지는지 여부에 따라 다릅니다. 스왑에 4GB를 사용했기 때문에 사용 가능한 저장 공간이 4GB가 줄어들었는지 확인하시겠습니까?
Linux 스왑 권장 사항
다음은 스왑 파티션이 필요한 시기와 파티션 크기에 대한 몇 가지 권장 사항입니다.
- 컴퓨터를 최대 절전 모드로 설정하려면 , 그러면 스왑 파티션이 있어야 합니다. 이 파티션의 크기는 설치된 메모리의 크기에 이미 스왑 파티션으로 옮겨진 항목을 위한 공간을 추가로 10-25% 더한 크기여야 합니다.
- 작은 성능 향상만 원하는 경우 (그리고 최소 7200rpm의 하드 드라이브가 있습니까?) 그런 다음 원하는 경우 스왑 파티션을 추가할 수 있습니다. 이 크기는 원하는 대로 만들 수 있지만 최대 절전 모드를 활성화하기 위해 스왑 파티션을 만드는 경우에는 이보다 더 크게 만들지 않을 것입니다.
- 가끔 무거운 애플리케이션을 사용하는 경우 추가 RAM이 필요한 경우 스왑 파티션이 마음의 평화를 제공할 수 있습니다. 이 경우 스왑 파티션이 RAM만큼 클 필요는 없습니다.
- 5400rpm 하드 드라이브가 있는 경우 스왑 파티션을 만들고 싶지 않을 수 있습니다 병목 현상이 컴퓨터를 악화시킬 수 있기 때문입니다. 그러나 절대적으로 스왑을 원할 경우 위에서 설명한 것과 동일한 크기 조정 지침을 사용하여 파티션을 생성할 수 있습니다. swappiness 값을 훨씬 더 낮은 값으로 변경하십시오.
Swappiness 변경
Linux 데스크탑의 많은 측면과 마찬가지로 컴퓨터의 스왑피니스는 텍스트 파일에 저장됩니다. /proc/sys/vm으로 이동하여 이 파일을 찾을 수 있습니다. .
파일을 열면 현재 swappiness를 나타내는 단일 숫자가 표시됩니다. 루트 권한이 있는 한 원하는 텍스트 편집기를 사용하여 이 파일을 편집할 수 있습니다.
Ubuntu 및 Fedora에 있는 기본 GNOME 텍스트 편집기로 이 작업을 수행하려면 다음을 시도할 수 있습니다.
sudo gedit /proc/sys/vm/swappiness
설치한 텍스트 편집기에 관계없이 작동하는 명령줄 옵션도 있습니다. 간단히 입력하십시오:
sudo sysctl vm.swappiness=20
0에서 100 사이의 숫자를 입력할 수 있습니다. 이 값은 Linux가 메모리에서 스왑 파티션으로 프로세스를 능동적으로 이동하기 시작할 때를 나타냅니다. 예를 들어 값 20은 메모리 사용량이 80%에 도달하면 프로세스가 이동됨을 나타냅니다. Ubuntu의 기본 swappiness 값 60은 메모리 사용량이 40%에 도달하면 프로세스가 이동됨을 나타냅니다.
해당 텍스트 파일을 다시 열어 변경이 성공했는지 확인할 수 있습니다. 당연히 터미널은 스와핑을 확인하는 더 빠른 방법을 제공합니다. 다음 명령을 입력하세요.
cat /proc/sys/vm/swappiness
PC가 더 빠르게 느껴지나요?
스왑 파티션은 시스템 성능에 큰 차이를 만들 수 있습니다. 때로는 더 좋을 때도 있고 더 나쁠 때도 있습니다. 이제 스왑 파티션이 무엇을 위한 것인지 알았으므로 상황에 적합한 결정을 내릴 준비가 되었기를 바랍니다.
그러나 드라이브를 다시 파티션하기 전에 메모리 관리에 필요한 RAM의 양과 Linux 스왑 파티션의 크기보다 더 많은 것이 있음을 알아야 합니다. 잠시 시간을 내어 Linux에서 RAM을 관리하는 방법을 알아보세요.