旧城梦呓 旧城梦呓
旧城梦呓

Ubuntu Server Kiosk 环境部署

在公司中,由于需要做一个简单的数据看板,所以在工控机上安装了Ubuntu Server ,在Ubuntu上通过 ubuntu-frame 和 Chromium 浏览器以全屏(Kiosk)模式启动网页应用。
包含网络配置、SSH 连接、Wi-Fi 设置、系统初始化、浏览器内核安装、开机自启服务配置、中文显示和时区设置等。

1. 系统基础配置

1.1 更新系统与安装基础工具

sudo apt update && sudo apt upgrade -y
sudo apt install curl git vim net-tools -y

1.2 设置时区(中国上海)

sudo timedatectl set-timezone Asia/Shanghai
sudo timedatectl set-ntp true
timedatectl   # 验证

1.3 安装中文字体(解决浏览器中文显示问题)

sudo apt install fonts-wqy-microhei fonts-wqy-zenhei fonts-noto-cjk -y

1.4 防火墙配置

如果启用 UFW,务必先放行 SSH(22)端口,避免被踢出:

sudo ufw allow 22
# 后续根据服务需要开放其他端口,例如:
# sudo ufw allow 80
# sudo ufw allow 443
sudo ufw enable

2. 网络配置(Wi-Fi / 有线)

2.1 连接 Wi-Fi(Netplan 方式)

确认无线网卡名称:

ls /sys/class/net/   # 找到 wl 开头的名称,如 wlan0

编辑 Netplan 配置文件(通常为 /etc/netplan/00-installer-config.yaml):

sudo nano /etc/netplan/00-installer-config.yaml

填入以下内容(注意缩进,使用空格):

network:
  version: 2
  wifis:
    wlan0:                     # 替换为你的无线网卡名称
      dhcp4: true              # 或 no 以使用静态 IP
      optional: true
      access-points:
        "WI-FI名称":          # SSID
          password: "WI-FI密码"
      # 如需静态 IP,可添加如下字段(将 dhcp4 设为 no)
      # addresses:
      #   - 192.168.1.100/24
      # routes:
      #   - to: default
      #     via: 192.168.1.1
      # nameservers:
      #   addresses: [8.8.8.8, 114.114.114.114]

应用配置:

sudo netplan try   # 测试配置,无报错后按回车确认
sudo netplan apply

3. SSH 远程管理

3.1 安装并启动 SSH 服务

sudo apt install openssh-server -y
sudo systemctl start ssh
sudo systemctl enable ssh

3.2 获取服务器 IP

ip addr show   # 或 ip a

3.3 从 Windows 连接

在 PowerShell 或 CMD 中:

ssh 用户名@服务器IP

输入密码即可登录。

4. 安装 ubuntu-frame 与 Chromium(Kiosk 核心)

4.1 安装 ubuntu-frame

sudo snap install ubuntu-frame
sudo snap set ubuntu-frame daemon=true

4.2 安装 Chromium(Snap 版)

sudo snap install chromium
sudo snap connect chromium:wayland   # 连接 Wayland 接口

5. 配置开机自启服务(自定义 systemd)

由于 Snap 服务的 command-line-args 配置项不生效,采用自定义 systemd 服务来启动 Chromium,并传递所有必需参数(含 --no-sandbox)。

5.1 停止并禁用 Snap 自带的 chromium 服务

sudo snap stop --disable chromium.daemon

5.2 创建自定义服务文件

sudo nano /etc/systemd/system/chromium-kiosk.service

写入以下内容(请将 URL 替换为你的实际地址):

[Unit]
Description=Chromium Kiosk on ubuntu-frame
After=ubuntu-frame.daemon.service network.target
Wants=ubuntu-frame.daemon.service

[Service]
Environment=XDG_RUNTIME_DIR=/run/user/0
ExecStart=/snap/bin/chromium --no-sandbox --enable-features=UseOzonePlatform --ozone-platform=wayland --disable-dev-shm-usage --kiosk https://blog.astrag.top(`这里使用需要启动的网页地址`)
Restart=always
RestartSec=5
User=root
[Install]
WantedBy=multi-user.target

说明

  • --no-sandbox 是必需的,因为以 root 运行 Chromium 需要禁用沙箱。
  • --kiosk 开启全屏无边框模式。
  • 若网址为 HTTPS 且证书无效,可添加 --ignore-certificate-errors

    5.3 启用并启动服务

    sudo systemctl daemon-reload
    sudo systemctl enable chromium-kiosk.service

    5.4 验证状态与日志

    sudo systemctl status chromium-kiosk.service
    sudo journalctl -u chromium-kiosk.service -n 30

    如果服务处于 active (running),显示器应自动全屏显示你的项目页面。

    6. 测试与维护

    6.1 修改项目地址

    编辑服务文件,修改 ExecStart 中的 URL:

    sudo nano /etc/systemd/system/chromium-kiosk.service
    # 修改后
    sudo systemctl daemon-reload
    sudo systemctl restart chromium-kiosk.service

    6.2 查看实时日志

    sudo journalctl -u chromium-kiosk.service -f

    6.3 重启服务器测试开机自启

    sudo reboot

    重启后等待约 30 秒,显示器应自动出现 Kiosk 界面。

附录:常用命令速查

用途命令
查看 Chromium 服务状态sudo systemctl status chromium-kiosk.service
重启 Chromium 服务sudo systemctl restart chromium-kiosk.service
查看实时日志sudo journalctl -u chromium-kiosk.service -f
修改 URL 后重载sudo systemctl daemon-reload && sudo systemctl restart chromium-kiosk.service
手动测试 Chromium(带参数)sudo snap run chromium --no-sandbox --enable-features=UseOzonePlatform --ozone-platform=wayland --disable-dev-shm-usage --kiosk https://你的URL
查看所有 Snap 服务snap services
设置时区sudo timedatectl set-timezone Asia/Shanghai
查看 IP 地址ip a

上一篇 关于享记 下一篇 Git 快速上手使用手册

暂无评论

Ctrl + Enter 发送

还没有评论,来说点什么吧

© 2021-2026 旧城梦呓 All Rights Reserved.
鲁ICP备2021040936号-2
Theme Robes