openSUSE MicroOS 安装 Cockpit 及配置虚拟化实践
1. First | 序
Cockpit 是一个基于 web 的服务器图形化界面
其简单纯粹深得我心、并且我有且仅需要其虚拟化管理功能
此片记录 openSUSE MicroOS Install Cockpit 过程
📦
本篇所使用到的操作系统&软件版本(配置)如下所示
2. Procedure | 步骤
2.1. 查看并安装 Cockpit
# 查看软件包信息
zypper info microos_cockpit
# 安装 Cockpit
transactional-update pkg install -t pattern microos_cockpit
2.2. 允许 root 用户登录
Cockpit 通过显示将 root 用户写入 /etc/cockpit/disallowed-users 文件来限制 root 用户直接登入面板
反之我们可以通过删除文件中 root 用户来开启其登陆权限
echo > /etc/cockpit/disallowed-users
2.3. 修改其监听地址 & 端口
Cockpit 是由 systemd 的 socket(套接字) 激活而不是传统的后台常驻进程
所以不能直接在 Cockpit 的配置文件里改端口
而是需要修改 systemd 的 socket 配置
-
创建 Systemd drop-in files
sudo systemctl edit cockpit.socket
这会打开一个文本编辑器。在文件开头(两行注释之间的空白处)输入以下内容
[Socket] # 必须先清空默认的监听规则 ListenStream= # 指定你想要监听的具体 IP 和端口 # 示例 1:仅允许本机访问(通常用于配置 Nginx/Apache 反向代理时) ListenStream=127.0.0.1:40000 -
重启 Socket 服务
sudo systemctl daemon-reload sudo systemctl restart cockpit.socket
如果此时完全按照此文档操作现尚未启动,请使用以下命令启动并enable此服务
systemctl enable --now cockpit.socket -
检查是否生效
systemctl status cockpit.socket
回显如下所示
● cockpit.socket - Cockpit Web Service Socket Loaded: loaded (/usr/lib/systemd/system/cockpit.socket; enabled; preset: enabled) Drop-In: /etc/systemd/system/cockpit.socket.d └─override.conf Active: active (listening) since Fri 2026-07-10 21:58:59 CST; 9s ago Invocation: 7e946193381e4f21972cfc75ba514d3d Triggers: ● cockpit.service Docs: man:cockpit-ws(8) Listen: 127.0.0.1:40000 (Stream) Process: 86926 ExecStartPre=/usr/libexec/check_cockpit_users (code=exited, status=0/SUCCESS) Process: 86933 ExecStartPost=/usr/share/cockpit/issue/update-issue localhost (code=exited, status=0/SUCCESS) Process: 86942 ExecStartPost=/bin/ln -snf active.issue /run/cockpit/issue (code=exited, status=0/SUCCESS) Tasks: 0 (limit: 154194) CPU: 20ms CGroup: /system.slice/cockpit.socket Jul 10 21:58:59 CCS-BUF systemd[1]: Starting Cockpit Web Service Socket... Jul 10 21:58:59 CCS-BUF systemd[1]: Listening on Cockpit Web Service Socket.
2.4. 安装并配置虚拟化引擎 (KVM/Libvirt) 及前端插件
-
安装核心虚拟化套件与插件
sudo transactional-update pkg install qemu-kvm libvirt cockpit-machines
- qemu-kvm: 底层的虚拟化引擎(Hypervisor),负责调用硬件加速实现虚拟机运行。
- libvirt: 虚拟化管理后端,提供标准 API 和后台守护进程,是 Cockpit 与底层 KVM 沟通的桥梁。
- cockpit-machines: Cockpit 专属的前端 UI 插件
-
重启以应用更改
transactional-update reboot systectl soft-reboot -
激活后台服务
libvirt 的守护进程默认是未启动,所以我们需要手动启动它
systemctl enable --now libvirtd
⚠️
在 openSUSE MicroOS 中
VM 文件最好存放至
VM 文件最好存放至
/var/lib/libvirt/images/ 目录下