저는 라이브 USB에서 Peppermint OS(Lubuntu 기반 배포판)를 사용해 보고 있습니다. 명령으로 메모리를 확인했습니다
free -h
밝혀지다
peppermint@peppermint ~ $ free -h
total used free shared buff/cache available
Mem: 3.8G 1.0G 1.0G 866M 1.8G 1.8G
Swap: 5.7G 51M 5.7G
내 USB는 4G이고 메모리는 4G입니다.
스왑이 5.7G인 이유는 무엇입니까? 다른 우분투 기반 배포판에서도 이런 일이 발생합니까?
내가 이해한 바에 따르면 라이브 USB에서 우분투 배포를 시도해도 하드 드라이브에 스왑이 생성되지 않으므로 3가지 시나리오를 고려했습니다.
이전에(듀얼부팅 생성시) 4G 스왑을 생성해서 이 스왑을 사용했는데 여기서 스왑은 5.7G 입니다.
USB에 또 다른 스왑을 생성했지만 내 USB는 4G만인데 왜 스왑이 5.7G인가요?
USB에 1.7G 스왑이 생성되고, 5.7G는 두 스왑이 합쳐진 결과입니다. 하지만 USB에 2.5G의 여유 공간이 있는지 확인했는데, 거기에 포함된 Linux ISO는 약 1.3G이므로 USB에서 1.7G 스왑을 할 수 없습니다.
sourcejedi가 제안한대로 결과는 다음과 같습니다 cat /proc/swaps
.
peppermint@peppermint ~ $ cat /proc/swaps
Filename Type Size Used Priority
/dev/sda5 partition 3998716 0 -2
/dev/zram0 partition 1006892 26320 5
/dev/zram1 partition 1006892 26044 5
답변1
따라서 4GB(십진수) 스왑 파티션을 감지하고 자동으로 활성화했습니다. 나는 이것이 꽤 흔한 일이라고 생각합니다. 일반적인 Ubuntu 코드에서 나올 수 있습니다.
또한 2 x 1GB
zram
스왑 공간을 사용합니다. 교환된 데이터는zram
압축되어 RAM에 저장됩니다. 이는 메모리가 부족한 시스템에서 특히 유용합니다. 메모리가 부족한 시스템의 Windows 10과 마찬가지로 Android에서도 유사한(동일한) 접근 방식을 사용할 수 있습니다.
이것은 Ubuntu 패키지를 포함하는 Peppermint의 결과입니다 zram-config
. 내가 아는 한, 원래 Ubuntu 데스크탑 zram-config
은 기본적으로 설치되지 않습니다.
에서 코드를 볼 수 있습니다 /usr/bin/init-zram-swapping
. 현재는 CPU당 하나의 zram 장치를 생성합니다(병렬 압축 또는 압축 해제용).
# Calculate memory to use for zram (1/2 of ram)
totalmem=`LC_ALL=C free | grep -e "^Mem:" | sed -e 's/^Mem: *//' -e 's/ *.*//'`
mem=$(((totalmem / 2 / ${NRDEVICES}) * 1024))
# initialize the devices
for i in $(seq ${NRDEVICES}); do
DEVNUMBER=$((i - 1))
echo $mem > /sys/block/zram${DEVNUMBER}/disksize
mkswap /dev/zram${DEVNUMBER}
swapon -p 5 /dev/zram${DEVNUMBER}
done