在 Debian(以及一般的 Linux/glibc 系统)里,getconf 本身并不能“设置”缓存大小,getconf 只是一个读取系统配置参数的工具,用来查询当前系统的限制和参数(例如 GETCONF = getconf)。
如果你说的“缓存大小”是指以下几类常见场景,下面分别说明:
getconf 能查的“缓存相关”参数(只能看,不能设)例如:
getconf LEVEL1_DCACHE_SIZE
getconf LEVEL2_CACHE_SIZE
getconf LEVEL3_CACHE_SIZE
这些是 CPU 硬件缓存,由硬件和内核决定,无法用 getconf 或任何用户态命令修改。
Linux 的磁盘缓存是 内核自动管理的,不通过 getconf 设置。
查看:
free -h
cat /proc/meminfo
清理缓存(谨慎):
sync
echo 3 > /proc/sys/vm/drop_caches
调整内核缓存行为(示例):
sysctl -w vm.dirty_ratio=10
sysctl -w vm.dirty_background_ratio=5
持久化:
/etc/sysctl.conf
getconf 不涉及 DNS 缓存。
Debian 常见方案:
systemd-resolvednscddnsmasq例如 nscd:
apt install nscd
vim /etc/nscd.conf
enable-cache hosts yes
positive-time-to-live hosts 3600
这些都不是 getconf 管理的。
例如 apt 缓存:
apt-get clean
/etc/apt/apt.conf.d/95cache
getconf只能“读”系统参数,不能“设”缓存大小。
如果你能具体说一下:
我可以给你更精确的 Debian 配置方法。