bt命令是宝塔面板的终端快捷入口,仅限root用户在已安装宝塔的服务器上使用,本质为交互式菜单封装,不替代原生命令、不支持自定义参数或管道操作。

bt 命令是宝塔面板自带的终端快捷入口,不是独立工具,必须在已安装宝塔的服务器上使用,且仅对 root 用户有效。
bt 命令能做什么、不能做什么
它本质是宝塔安装脚本(install.sh)附带的一个交互式菜单封装,底层调用的是宝塔自己的 Python 脚本和系统服务命令。它不替代 systemctl、nginx 或 mysql 原生命令,也不支持自定义参数或管道操作。
- 能快速重启网站、重载 Nginx、重启 PHP-FPM、查看日志路径、切换 PHP 版本
- 不能直接修改站点配置文件、不能批量操作多个站点、不能跳过确认直接执行(比如无法用
bt 12静默重启 Nginx) - 所有操作都走宝塔的权限校验和配置生成逻辑,比如重启 Nginx 实际会先运行
/www/server/panel/pyenv/bin/python /www/server/panel/class/config.py校验配置再 reload
常见误用场景与对应正确做法
很多人以为 bt 是万能运维命令行,结果卡在“没反应”或“权限拒绝”。典型问题包括:
- 非 root 用户执行 → 报错
Permission denied,必须切到 root:sudo su -或su - - 在非宝塔环境(如纯 CentOS + 手动编译 Nginx)执行 → 提示
command not found,因为bt是宝塔安装时写入/usr/bin/bt的软链接 - 想用
bt查看某个网站的 PHP 错误日志但找不到路径 → 先用bt进入菜单选「7」查日志目录,再手动tail -f /www/wwwlogs/xxx_php.err - 执行后卡在「请选择」不动 → 终端不支持 ANSI 颜色或缺少
tput,可临时用TERM=xterm bt启动
绕过菜单直连常用功能(有限但实用)
bt 支持传入数字参数跳过交互,但只覆盖基础项,且版本间有差异(以宝塔 8.0+ 为准):
-
bt 1:列出所有网站(等价于进入菜单后按 1) -
bt 5:重载 Nginx(注意是 reload,不是 restart;若配置错误会失败并提示) -
bt 8:重启 PHP 服务(默认操作当前主版本,如 PHP 8.0;多版本需进菜单选) -
bt 12:重启 Pure-Ftpd(不是 vsftpd) - 没有
bt start site_name这类语法,所有站点级启停必须进菜单选具体站点
如果需要脚本化管理,别依赖 bt,直接调用宝塔 API 或读取 /www/server/panel/vhost/ 下的配置文件更可靠。
真正需要命令行管理网站时,该优先用什么
当 bt 不够用(比如批量更新 SSL、检查 502 原因、调试 rewrite 规则),以下命令才是日常主力:
- 查 Nginx 状态和错误:
systemctl status nginx、tail -n 20 /www/wwwlogs/nginx_error.log - 测试配置是否合法:
/www/server/nginx/sbin/nginx -t - 快速定位某站点配置文件:
ls -l /www/server/panel/vhost/nginx/ | grep example.com - 查 PHP-FPM 进程和慢日志:
ps aux | grep php-fpm、tail /www/wwwlogs/example.com_slow.log - SSL 证书更新失败时,看 acme 日志:
cat /www/server/panel/logs/acme.log
bt 是个省事入口,不是命令行替代品;它的价值在于避免记一堆路径和命令,但一旦出问题,得立刻切回原生命令排查——这点很容易被忽略。










