环境变量
环境变量(environment variables)是一组键值对(KEY---VALUE)列表,环境变量名和变量值都是字符串。环境变量为系统提供一组动态可变参数,系统提供统一的读写、存储、同步等方法,通过程序或 Shell 命令都可以访问。内核和应用程序都会用到各种环境变量,具体某项环境变量起什么作用、如何解析则由使用该环境变量的程序具体决定,如 TZ 用于设置系统时区。
SylixOS 的 Shell 环境中,实现了一个简单易用的环境变量功能,如下是基本环境变量及其默认值。
[root@sylixos:/root]# vars
variable show >>
VARIABLE REF VALUE
-------------------- --- --------------------------------------------------
TERM_PS_COLOR
TERMCAP /etc/termcap
TERM vt100
LUA_CPATH ?.so;/usr/local/lib/lua/?.so;/usr/lib/lua/?.so;/lib/lua/?.so
LUA_PATH ?.lua;/usr/local/lib/lua/?.lua;/usr/lib/lua/?.lua;/lib/lua/?.lua
VPROC_MODULE_SHOW 0
VPROC_EXIT_FORCE 0
LOGINBL_REP 3
LOGINBL_TO 120
DEBUG_CRASHTRAP 0
DEBUG_CPU -1
PATH_LOCALE /usr/share/locale
LC_ALL
LANG C
LD_LIBRARY_PATH /usr/lib:/lib:/usr/local/lib
PATH /usr/bin:/bin:/usr/pkg/sbin:/sbin:/usr/local/bin
NFS_CLIENT_PROTO udp
NFS_CLIENT_AUTH AUTH_UNIX
SYSLOGD_HOST 0.0.0.0:514
KERN_FLOAT 1
SO_MEM_DIRECT 0
SO_MEM_PAGES 8192
TSLIB_CALIBFILE /etc/pointercal
TSLIB_TSDEVICE /dev/input/touch0
MOUSE /dev/input/mouse0:/dev/input/touch0
KEYBOARD /dev/input/keyboard0
STARTUP_WAIT_SEC 1
TZ CST-8:00:00
TMPDIR /tmp/
LICENSE SylixOS license: Commercial & GPL.
VERSION 2.1.6
SYSTEM SylixOS kernel version: 2.1.6 Code name: Enterprise
环境变量 | 默认值 | 功能说明 |
---|---|---|
TERM_PS_COLOR | 空 | 命令提示符色彩 eg。 "01;32" |
TERMCAP | /etc/termcap | BSD 终端转义 |
TERM | vt100 | 终端类型,对端软件起作用 |
LUA_CPATH | ?.so;/usr/local/lib/lua/?.so;/usr/lib/lua/?.so;/lib/lua/?.so | LUA 语言 C 脚本搜索路径 |
LUA_PATH | ?.lua;/usr/local/lib/lua/?.lua;/usr/lib/lua/?.lua;/lib/lua/?.lua | LUA 语言脚本搜索路径 |
VPROC_MODULE_SHOW | 0 | 是否输出进程启动打印 module 信息 |
VPROC_EXIT_FORCE | 0 | 主线程退出是否自动删除子线程 |
LOGINBL_REP | 3 | 连续出现几次则加入黑名单 |
LOGINBL_TO | 120 | 网络登录黑名单刷新时间,单位秒 |
DEBUG_CRASHTRAP | 0 | 是否 crashtrap 所有进程 |
DEBUG_CPU | -1 | 是否将被调对象锁定到一个CPU |
PATH_LOCALE | /usr/share/locale | 注意:需要从 BSD 系统将 UTF-8 目录拷贝到这里 |
LC_ALL | 空 | 推荐不要使用此变量 |
LANG | C | 系统默认语言为 C 语言 |
LD_LIBRARY_PATH | /usr/lib:/lib:/usr/local/lib | 动态库搜索路径,可以有多个值,用冒号分割,先后顺序决定了系统查找的搜索顺序 |
PATH | /usr/bin:/bin:/usr/pkg/sbin:/sbin:/usr/local/bin | 应用程序搜索路径,可以有多个值,用冒号分割,先后顺序决定了系统查找的搜索顺序 |
NFS_CLIENT_PROTO | udp | NFS 客户端协议,默认使用 udp 协议 |
NFS_CLIENT_AUTH | AUTH_UNIX | NFS 登录验证模式。AUTH_NONE 对应 windows 客户端, AUTH_UNIX 对应 UNIX 类系统客户端 |
SYSLOGD_HOST | 0.0.0.0:514 | syslog 服务器地址 |
KERN_FLOAT | 1 | 内核是否支持浮点格式,0 不支持 1 支持 |
SO_MEM_DIRECT | 0 | 应用程序是否允许使用缺页中断分配内存,0 不允许 1 允许 |
SO_MEM_PAGES | 8192 | 应用程序初始堆内存空间页面数 |
TSLIB_CALIBFILE | /etc/pointercal | 触摸屏校准文件 |
TSLIB_TSDEVICE | /dev/input/touch0 | 触摸屏校准关联设备 |
MOUSE | /dev/input/mouse0:/dev/input/touch0 | 鼠标设备文件集,可以有多个,冒号隔开 |
KEYBOARD | /dev/input/keyboard0 | 键盘设备文件集,可以有多个,冒号隔开 |
STARTUP_WAIT_SEC | 1 | 执行 startup.sh 延迟时间,单位秒,范围 0~10 |
TZ | CST-8:00:00 | 系统时区配置,默认为东 8 区 CST-8:00:00,即北京时间。 |
TMPDIR | /tmp/ | 配合 stdio 的临时文件夹,要以 "/" 结尾 |
LICENSE | SylixOSlicense:Commercial&GPL. | 系统许可,内核自带生成 |
VERSION | 2.1.6 | 系统版本,内核自带生成 |
SYSTEM | SylixOSkernelversion:2.1.6Codename:Enterprise | 系统信息,内核自带生成 |