一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Linux下如何安装并配置Cockpit管理面板

时间:2026-06-20 10:13:46 编辑:袖梨 来源:一聚教程网

Cockpit安装需按发行版选用对应命令:RHEL/CentOS/Rocky/AlmaLinux 8+用dnf install cockpit cockpit-machines cockpit-storaged;7系先yum install epel-release再yum install cockpit;Ubuntu 20.04+/Debian 11+用apt install cockpit并可选cockpit-podman;树莓派OS同Debian系。启动cockpit.socket后需确认端口监听、防火墙放行cockpit服务、用户具备wheel/sudo组权限,且后端服务(如libvirtd、podman、udisks2)已运行。

安装命令必须按发行版选对,混用会失败

别直接抄网上“一行万能安装命令”——dnfyumapt 不能乱换,否则依赖解析失败或服务根本起不来。

  • RHEL/CentOS/Rocky/AlmaLinux 8+:用 dnf install cockpit cockpit-machines cockpit-storagedcockpit-machines 是 KVM 虚拟机管理必需,漏掉就看不到虚拟机菜单)
  • RHEL/CentOS 7:先 yum install epel-release,再 yum install cockpitcockpit-docker 已弃用,改用 cockpit-podman
  • Ubuntu 20.04+/Debian 11+:apt install cockpit 即可;需要容器支持?额外装 cockpit-podman(不是 cockpit-docker
  • 树莓派 OS(Debian 衍生):apt install cockpit,体积小(约 115MB 总占用),装完自动启服务

启动 cockpit.socket 后打不开 https://ip:9090?检查三件事

cockpit.socket 是 socket-activated 服务,systemctl status cockpit.socket 显示 active ≠ 实际在监听 —— 它只在第一个 HTTPS 请求到达时才拉起 cockpit-ws 进程。

  • 确认端口真在监听:ss -tlnp | grep :9090,没输出说明 socket 没触发或被其他配置覆盖
  • firewalld 用户:必须用 firewall-cmd --add-service=cockpit(预定义服务),不是 --add-port=9090/tcp;后者在 Rocky 9 等系统上可能被 SELinux 拦截
  • UFW 用户:ufw allow 9090 不够,得写全 ufw allow proto tcp to any port 9090,否则 TLS 握手阶段就被 DROP

登录失败常见原因和解法

Cockpit 认证走的是系统 PAM,不是独立账号体系,所有权限限制都来自底层策略。

  • root 登录被拒:编辑 /etc/cockpit/disallowed-users,删掉或注释掉 root 行,然后 systemctl restart cockpit.socket(注意不是 cockpit.service
  • 普通用户登录失败:大概率没 sudo 权限 —— Cockpit 需调用 systemdlibvirt 等特权接口,用户必须在 wheel 组(RHEL 系)或 sudo 组(Debian 系)
  • 输入正确密码仍跳回登录页:检查 /var/log/securejournalctl -u cockpit,常见是 PAM 模块加载失败或 cockpit-session 进程崩溃

功能模块缺失不是安装问题,而是后端服务没就绪

Cockpit 本身不提供服务,只是 Web 封装层。点开“容器”菜单灰色?不是 Cockpit 装错了,是 podmanlibvirtd 没跑起来。

  • 虚拟机管理不可用:确保 libvirtd 正在运行(systemctl start libvirtd),且当前用户有访问权限(usermod -aG libvirt $USER
  • 存储管理空白:cockpit-storaged 包已装,但 udisks2 服务未启动或被禁用
  • Kubernetes 仪表盘卡死:cockpit-kubernetes 只在真正运行 k8s 的节点上有意义,非集群节点装了反而拖慢首页加载

最容易被忽略的点:Cockpit 默认用自签名证书,浏览器报“不安全”是正常现象,但如果你在内网用 IP 访问却提示证书域名不匹配,说明生成证书时没绑定该 IP —— 这时候不能只点“继续访问”,得手动重建证书或配 DNS 别名。

热门栏目