目录和文件结构
可以在asterisk.conf配置文件中配置Asterisk使用的顶级目录。
在这里,我们将描述每个目录的用途,以及默认情况下Asterisk将在每个目录中放置哪些子目录。在每个标题下方,您还可以在asterisk.conf中看到相关配置行。
Asterisk配置文件
astetcdir => /etc/asterisk
此位置用于存储和读取Asterisk配置文件。这通常是扩展名为.conf的文件,但也包括其他配置类型,例如.lua和.ael。
Asterisk模块
astmoddir => /usr/lib/asterisk/modules
由Asterisk或用户安装的共享对象格式(.so)的可加载模块应该在此处。
各种Lib库
astvarlibdir => /var/lib/asterisk
其他库元素和包含运行时使用的数据的文件放在此处。
数据库目录
astdbdir => /var/lib/asterisk
此位置用于存储Asterisk内部数据库的数据文件。在使用SQLite3数据库的Asterisk版本中,该文件将命名为astdb.sqlite3。
加密密钥
astkeydir => /var/lib/asterisk
配置基于密钥的加密时,Asterisk将在此位置的keys子目录中查找必要的密钥。
系统数据目录
astdatadir => /var/lib/asterisk
默认情况下,Asterisk语音文件存储在此位置的sounds子目录中并从中读取。
AGI(Asterisk网关接口)目录
astagidir => /var/lib/asterisk/agi-bin
使用各种AGI应用程序时,Asterisk默认情况下会在此处查找AGI脚本。
Spool 目录
astspooldir => /var/spool/asterisk
此目录用于存储来自Asterisk的各种核心和模块提供的组件的假脱机文件。
他们中的大多数使用自己的子目录,如下所示:
- dictate
- meetme
- monitor
- outgoing
- recording
- system
- tmp
- voicemail
运行进程目录
astrundir => /var/run/asterisk
当Asterisk运行时,你会在这里看到两个文件,asterisk.ctl和asterisk.pid。这是Asterisk的控制套接字和PID(进程ID)文件。
记录输出
astlogdir => /var/log/asterisk
当Asterisk配置为提供日志文件输出时,它将存储在此目录中。
系统二进制目录
astsbindir => /usr/sbin
默认情况下,Asterisk在此目录中查找它使用的任何系统二进制文件,如果您移动Asterisk二进制文件本身或其使用的任何其他系统二进制文件,则需要更改此位置。