【已关闭】

ellenptio 2026-07-03 09:35 1

cat > /opt/komari-fakemem/gen.py <<'PYEOF'

#!/usr/bin/env python3

import re, os, time


SRC = "/proc/meminfo"

DST = "/opt/komari-fakemem/fake_meminfo"


def read_real():

info, raw_lines = {}, []

with open(SRC) as f:

for line in f:

m = re.match(r"(\w+):\s+(\d+)( kB)?", line)

if m:

info[m.group(1)] = int(m.group(2))

raw_lines.append(line.rstrip("\n"))

return info, raw_lines


def write_fake():

info, raw_lines = read_real()

total = info.get("MemTotal", 0)

avail = info.get("MemAvailable", total)

buffers = info.get("Buffers", 0)

cached = info.get("Cached", 0)

sreclaim = info.get("SReclaimable", 0)

shmem = info.get("Shmem", 0)


target_used = total - avail
fake_free = total - buffers - cached - sreclaim + shmem - target_used
fake_free = max(fake_free, 0)

out_lines = []
for line in raw_lines:
if line.startswith("MemFree:"):
out_lines.append(f"MemFree: {fake_free} kB")
elif line.startswith("MemAvailable:"):
out_lines.append(f"MemAvailable: {fake_free} kB")
else:
out_lines.append(line)

content = "\n".join(out_lines) + "\n"
with open(DST, "r+") as f:
f.seek(0)
f.write(content)
f.truncate()

if name == "main":

if not os.path.exists(DST):

with open(DST, "w") as f:

f.write("")

while True:

try:

write_fake()

except Exception:

pass

time.sleep(1)

PYEOF

systemctl restart komari-fakemem && sleep 2 && systemctl restart komari-agent && echo "修复完成"

最新回复 (4)
  • deerxxx 07-03 09:36
    1

    这种纯AIGC的内容都没有欲望尝试

  • Zz- 07-03 09:36
    2

    帮顶

  • ellenptio 楼主 07-03 09:37
    3

    @deerxxx #1 我只是让ai总结

  • wsk1911789694 07-03 09:48
    4

    到时候 试试

* 帖子来源NodeSeek
返回