내가 구성하면교환성값이 다른 값(예: 60에서 0)으로 변경된 경우 변경 사항을 적용하려면 항상 컴퓨터를 다시 시작해야 합니까? 수정하는 경우에도:
sysctl -w vm.swappiness=0
답변1
귀하가 제공한 Wikipedia 페이지에 모든 것이 잘 설명되어 있습니다.
# Set the swappiness value as root
echo 10 > /proc/sys/vm/swappiness
# Alternatively, run this as a non-root user
# This does the same as the previous command
sudo sysctl -w vm.swappiness=10
# Verify the change
cat /proc/sys/vm/swappiness
10
이 시점에서 시스템은 방금 구성한 대로 스왑을 관리하지만 지금 재부팅하면 변경 사항이 잊혀지고 시스템이 기본값(60, 즉 40% 점유율에서 스왑을 시작함을 의미함)을 사용하게 됩니다. ).
/etc/sysctl.conf
변경 사항을 영구적으로 적용하려면 다음 줄을 추가해야 합니다 .
vm.swappiness = 10
이제 당신이 더 잘 알게 되기를 바랍니다!
답변2
변경 사항을 적용하려면 컴퓨터를 재부팅해야 합니까?
실제로는 그 반대입니다. 재부팅하면 교환성이 기본값으로 재설정됩니다. 재부팅 후에도 지속되도록 하려면 시작 스크립트에 지시어를 포함하거나 Wikipedia 문서에서 권장하는 방법을 사용하여 추가해야 합니다.
vm.swappiness = ??
사용하려는 값은 어디에 /etc/sysctl.conf
(또는 /etc/sysctl.d
파일) 있습니까? ??
단순히 이 콘텐츠를 추가한다고 해서 그 당시에는 어떤 변경 사항도 발생하지 않는다는 점에 유의하세요.
답변3
허용된 답변은 정확하지만 실수로 다른 설정을 덮어쓰지 않도록 별도의 "sysctl" 구성 파일을 사용하는 것이 좋습니다(전역 "sysctl.conf"를 재정의하는 경우 발생할 수 있음).
# echo 'vm.swappiness=10' >/etc/sysctl.d/swappiness.conf
전역 구성 파일 "/etc/sysctl.conf"를 수정한 사용자는 파일에서 이 "swappiness" 값을 정의하는 줄을 제거할 수 있습니다. 이 명령을 사용하여 전역 구성 파일에서 다음 줄을 제거할 수 있습니다(주석 남겨두기).
# sed -i '/^vm.swappiness=/d' /etc/sysctl.conf
이제 새 값을 적용하려면 sysctl
사용하도록 지시하십시오.
# sysctl -p /etc/sysctl.d/swappiness.conf
또는 교환성을 포함한 모든 설정을 적용합니다.
# sysctl -p /etc/sysctl.d/*
확인하세요:
# sysctl vm.swappiness
vm.swappiness = 10
답변4
관례적으로 사용자가 변경한 사항은 sysctl
접두사가 붙은 파일로 이동하므로 60-
파일 이름은 이어야 합니다 . 구성 값을 강제로 다시 읽으려면 /etc/sysctl.d/60-swappiness.conf
루트로 실행 해야 합니다(재부팅 필요 없음).service procps start