温馨提示×

debian getconf可查什么变量

小樊
48
2026-10-07 12:36:12
栏目: 智能运维

在 Debian(以及其他使用 GNU C 库的 Linux 发行版)中,getconf 命令用于查询系统配置变量,这些变量来自:

  • POSIX / IEEE 标准
  • System V 接口定义(SVID)
  • GNU C 库(glibc)
  • 文件系统与系统限制

一、getconf 能查哪些变量

1️⃣ 系统通用配置(非特定路径)

getconf VARIABLE

常见变量示例:

变量名 含义
WORD_BIT int 类型的位数(通常 32)
LONG_BIT long 类型的位数(32 或 64)
_POSIX_VERSION POSIX 标准版本
_XOPEN_VERSION X/Open 规范版本
PAGE_SIZE 内存页大小(字节)
PHYS_PAGES 物理内存页数
AVPHYS_PAGES 可用物理内存页数
NPROCESSORS_CONF 配置的 CPU 数量
NPROCESSORS_ONLN 在线 CPU 数量
HOST_NAME_MAX 主机名最大长度
LOGIN_NAME_MAX 登录名最大长度

示例:

getconf LONG_BIT
getconf PAGE_SIZE
getconf NPROCESSORS_ONLN

2️⃣ 文件系统相关变量(需指定路径)

getconf VARIABLE path
变量名 含义
NAME_MAX 文件名最大长度
PATH_MAX 路径最大长度
LINK_MAX 硬链接最大数量
FILESIZEBITS 支持的最大文件大小位数
SYMLINK_MAX 符号链接最大长度
MAX_CANON 终端规范输入最大长度

示例:

getconf NAME_MAX /
getconf PATH_MAX /home

3️⃣ POSIX / 系统限制

getconf -a

会列出所有可用变量(非常长)


二、查看 getconf 支持哪些变量

查看全部变量

getconf -a

查看某个变量是否存在

getconf NAME_MAX / || echo "not supported"

三、典型使用场景

  • 判断系统是 32 位还是 64 位
    getconf LONG_BIT
    
  • 查看 CPU 核心数
    getconf _NPROCESSORS_ONLN
    
  • 判断文件系统限制(写程序时很有用)
  • 编写可移植 C / Shell 程序

四、底层来源(你可以理解为)

getconf 实际读取的是:

  • sysconf()
  • pathconf()
  • confstr()
  • glibc 中的 <limits.h>、<unistd.h>

如果你愿意,我可以:

  • 给你一份 Debian 常用 getconf 变量速查表
  • 对比 getconf vs ulimit vs /proc
  • 用 C 程序演示 sysconf() 用法

0 踩