🛠 T面板命令文档

T面板 Linux 服务器管理面板的完整命令参考,包含安装、运维、故障排查、账号管理等场景。

目录

🔧 服务管理

日常 查看面板运行状态
systemctl status tpanel
显示面板是否正在运行(active(running) / inactive(dead))
日常 启动面板
systemctl start tpanel
启动 T面板 后端服务(Flask 应用)
日常 停止面板
systemctl stop tpanel
停止面板服务(网站后台不可访问)
日常 重启面板
systemctl restart tpanel
重启面板(修改配置后需执行使配置生效)
日常 开机自启
systemctl enable tpanel
设置面板开机自动启动(服务器重启后自动运行)
日常 关闭开机自启
systemctl disable tpanel
取消面板开机自动启动
⚠️ 修改「面板域名绑定」后必须执行:systemctl restart tpanel

📊 面板信息

日常 查看面板访问地址
cat /etc/nginx/sites-enabled/tpanel.conf | grep proxy_pass
查看面板反代的端口和配置
日常 查看面板版本
cat /opt/tpanel/backend/main.py | grep version
查看当前安装的 T面板 版本号
日常 查看面板进程
ps aux | grep tpanel
确认面板进程是否在运行(应有 python3 main.py 进程)
日常 查看面板端口
ss -tlnp | grep 8848
确认 8848 端口是否在监听
配置 查看面板绑定的域名
sqlite3 /opt/tpanel/data/tpanel.db "SELECT value FROM settings WHERE key='panel_domain';"
查看当前面板绑定的域名(空值表示未绑定)
配置 查看面板配置
cat /opt/tpanel/config/tpanel.conf
查看面板配置文件(PHP 版本/备份保留天数等)
配置 查看所有站点
sqlite3 /opt/tpanel/data/tpanel.db "SELECT id,domain,site_path FROM sites;"
列出所有管理的站点(域名和路径)

🔑 账号与密码

紧急 强制重置管理员密码
sqlite3 /opt/tpanel/data/tpanel.db "DELETE FROM admin; INSERT INTO admin(username,password_hash) VALUES('admin','');"
清空管理员账号,之后用下方命令重建
紧急 重建管理员账号(admin / tpanel.cn)
python3 -c "
import bcrypt, sqlite3
pw = bcrypt.hashpw(b'tpanel.cn', bcrypt.gensalt())
conn = sqlite3.connect('/opt/tpanel/data/tpanel.db')
conn.execute('DELETE FROM admin')
conn.execute('INSERT INTO admin(username,password_hash) VALUES(?,?)', ('admin', pw.decode()))
conn.commit()
print('done')
"
重建管理员账号,用户名 admin,密码 tpanel.cn(bcrypt 加密存储)
配置 通过环境变量修改密码(推荐)
# 先连接数据库
sqlite3 /opt/tpanel/data/tpanel.db

# 在 sqlite3 里执行(把 NEW_PASSWORD 换成你要的密码)
.mode list
.output stdout
SELECT '请使用 Python 重置密码,参考命令:';
.quit
如果忘了密码,用上面「重建管理员账号」命令重新设置即可
日常 查看面板登录日志
grep "login" /opt/tpanel/logs/*.log 2>/dev/null || sqlite3 /opt/tpanel/data/tpanel.db "SELECT * FROM security_logs WHERE event_type LIKE 'login%' ORDER BY id DESC LIMIT 10;"
查看登录记录(成功和失败的尝试)
⚠️ 默认账号:admin / tpanel.cn ,安装后请立即修改密码

🌐 Nginx 管理

日常 查看 Nginx 状态
systemctl status nginx
日常 重载 Nginx 配置
nginx -s reload
重载 Nginx 配置(不中断现有连接)
日常 测试 Nginx 配置语法
nginx -t
检查 Nginx 配置语法是否正确,修改配置前必做
日常 查看所有站点配置
ls /etc/nginx/sites-enabled/
查看所有已启用的站点 Nginx 配置文件
日常 查看单个站点配置
cat /etc/nginx/sites-available/你的域名.conf
查看指定域名的 Nginx 配置内容
紧急 禁用所有站点(紧急停用)
rm /etc/nginx/sites-enabled/*.conf && nginx -s reload
删除所有站点配置(所有网站暂停访问)

🐘 PHP 管理

日常 查看 PHP-FPM 状态
systemctl status php*-fpm
日常 重启 PHP-FPM(各版本)
systemctl restart php7.4-fpm
systemctl restart php8.0-fpm
systemctl restart php8.1-fpm
systemctl restart php8.2-fpm
按版本重启 PHP-FPM 服务
日常 查看 PHP 版本
php -v
日常 查看所有已安装的 PHP 版本
ls /etc/php/

🗄️ 数据库管理

日常 查看 MySQL 状态
systemctl status mysql
日常 登录 MySQL(root)
mysql -u root -p
交互式 MySQL 命令行(会提示输入密码)
配置 查看 T面板 数据库内容
sqlite3 /opt/tpanel/data/tpanel.db ".tables"
列出 T面板 SQLite 数据库中的所有表
配置 查看所有 MySQL 数据库
mysql -u root -p -e "SHOW DATABASES;"
配置 查看 MySQL 数据目录大小
du -sh /var/lib/mysql/

💾 备份与还原

日常 查看备份文件列表
ls -lah /opt/tpanel/backups/
日常 查看备份目录总大小
du -sh /opt/tpanel/backups/
配置 查看备份记录(数据库)
sqlite3 /opt/tpanel/data/tpanel.db "SELECT id,site_id,type,size,status,datetime(created_at,'unixepoch') as created FROM backups ORDER BY id DESC LIMIT 20;"
紧急 手动清理过期备份
find /opt/tpanel/backups/ -name "*.tar.gz" -mtime +30 -delete
删除 30 天前的备份文件(请根据备份保留天数设置)
配置 备份 T面板 数据库
cp /opt/tpanel/data/tpanel.db /opt/tpanel/backups/tpanel_$(date +%Y%m%d).db.bak
配置 恢复 T面板 数据库
cp /opt/tpanel/backups/tpanel_YYYYMMDD.db.bak /opt/tpanel/data/tpanel.db && systemctl restart tpanel
用备份文件恢复 T面板 数据库(YYYYMMDD 换成实际日期)

🔐 SSL 证书

日常 查看所有证书
sqlite3 /opt/tpanel/data/tpanel.db "SELECT domain,cert_path,expire_date FROM ssl_certs;"
日常 查看证书到期日期
openssl x509 -in /opt/tpanel/ssl/你的域名/fullchain.pem -noout -enddate
配置 手动续期证书
certbot renew --cert-name 你的域名
手动执行 Let's Encrypt 证书续期(只续期已到期或即将到期的)
日常 测试 certbot
certbot certificates
列出 certbot 管理的所有证书及状态

🛡️ 防火墙

日常 查看防火墙状态
ufw status
日常 查看已开放的端口
ufw status numbered
日常 开放 HTTP/HTTPS
ufw allow 80/tcp
ufw allow 443/tcp
日常 开放 SSH
ufw allow 22/tcp
紧急 关闭防火墙(不推荐)
ufw disable
关闭 UFW 防火墙(请确保服务器在可信网络环境中)

📋 日志查看

日常 实时查看面板日志
journalctl -u tpanel -f
实时滚动查看 T面板 系统日志(Ctrl+C 退出)
日常 查看最近面板日志
journalctl -u tpanel --no-pager -n 50
配置 查看安全日志(数据库)
sqlite3 /opt/tpanel/data/tpanel.db "SELECT datetime(created_at,'unixepoch'),event_type,details,ip FROM security_logs ORDER BY id DESC LIMIT 30;"
日常 查看 Nginx 访问日志
tail -50 /opt/tpanel/logs/你的域名.access.log
日常 查看 Nginx 错误日志
tail -50 /opt/tpanel/logs/你的域名.error.log
日常 查看系统日志(最近错误)
journalctl --since '1 hour ago' --priority=err --no-pager

🛡️ 安全与更新

日常 手动执行安全更新
apt-get update && apt-get upgrade -y --only-upgrade
执行系统安全更新(只升级已安装的包,不安装新包)
日常 检查可升级的安全更新
apt list --upgradable 2>/dev/null | grep security
日常 查看系统负载
top -bn1 | head -10
日常 查看内存和磁盘
free -h && df -h /
配置 查看定时任务(cron)
crontab -l

🗑️ 卸载与重装

危险 完全卸载 T面板
# 停止服务
systemctl stop tpanel
systemctl disable tpanel

# 删除文件和配置
rm -rf /opt/tpanel
rm -f /etc/nginx/sites-enabled/tpanel.conf
rm -f /etc/nginx/sites-available/tpanel.conf
rm -f /etc/systemd/system/tpanel.service
systemctl daemon-reload
完全移除 T面板(站点数据和备份不会自动删除)
配置 重新安装 T面板
# 下载最新安装脚本
wget -O install.sh https://tpanel.cn/install.sh
chmod +x install.sh
bash install.sh
配置 升级 T面板(新版本覆盖)
# 备份数据库
cp /opt/tpanel/data/tpanel.db /opt/tpanel/backups/tpanel_$(date +%Y%m%d).db.bak

# 停止面板
systemctl stop tpanel

# 覆盖源码(上传新版本到 /opt/tpanel)

# 重启面板
systemctl restart tpanel
注意 重新初始化数据库(丢失所有数据)
# 备份后执行
rm -f /opt/tpanel/data/tpanel.db
cd /opt/tpanel/backend
python3 db_init.py

📌 快速命令参考

命令说明
systemctl status tpanel查看面板状态
systemctl restart tpanel重启面板(修改配置后必做)
journalctl -u tpanel -f实时查看面板日志
nginx -t && nginx -s reload测试并重载 Nginx 配置
sqlite3 /opt/tpanel/data/tpanel.db "SELECT * FROM sites;"查看所有站点
sqlite3 /opt/tpanel/data/tpanel.db "SELECT * FROM security_logs ORDER BY id DESC LIMIT 10;"查看最近安全日志
certbot certificates查看所有 SSL 证书
ufw status查看防火墙状态
systemctl restart nginx重启 Nginx
systemctl restart mysql重启 MySQL