带有启动画面和 Kiosk 模式的 Ubuntu Server 16.04.02

JPe*_*ier 6 server boot plymouth openbox kiosk

我正在尝试使用 Chrome 在 Kiosk 模式下配置 Ubuntu Server 16.04.02。它正在工作,但我无法配置启动画面而不是显示启动消息。

工作至今

创建 Chrome 自助服务终端的步骤

  1. 安装 Ubuntu Server 16.04.02 和 OpenSSH Server
  2. 更新: sudo apt update && sudo apt upgrade -y
  3. 显示服务器 + Windows 管理器: sudo apt install xorg openbox -y

    注意:我尝试安装 openbox,--no-install-recommends但屏幕的一半(右侧)是黑色的。

  4. 谷歌浏览器

    sudo add-apt-repository 'deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main'
    wget -qO- https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
    sudo apt update && sudo apt install google-chrome-stable -y
    
    Run Code Online (Sandbox Code Playgroud)
  5. 创建一个“信息亭”用户: sudo adduser kiosk
  6. Chrome 启动脚本:

    sudo tee -a /home/kiosk/startchrome.sh <<EOF
    #!/bin/bash
    
    # Turn off DPMS (Display Power Management Signaling)
    xset -dpms
    
    # Disable screen saver blanking
    xset s off
    
    # Start OpenBox
    openbox-session &
    
    # Make sure Chrome is always started - restart if needed
    while true; do
      rm -rf ~/.{config,cache}/google-chrome/
      google-chrome --ignore-certificate-errors --kiosk --no-first-run --disable-infobars --disable-session-crashed-bubble --disable-translate         'http://localhost:8080'
    done
    EOF
    
    Run Code Online (Sandbox Code Playgroud)

    使其可执行并在登录时运行:

    sudo chmod +x /home/kiosk/startchrome.sh
    echo "/usr/bin/startx /etc/X11/Xsession /home/kiosk/startchrome.sh -- :0 &> /dev/null" | sudo tee -a /home/kiosk/.profile
    
    Run Code Online (Sandbox Code Playgroud)
  7. 配置自动登录:

    配置盖蒂:

    sudo mkdir /etc/systemd/system/getty@tty1.service.d/
    sudo tee -a /etc/systemd/system/getty@tty1.service.d/autologin.conf <<EOF
    [Service]
    ExecStart=
    ExecStart=-/sbin/agetty --skip-login --noissue --autologin kiosk --noclear %I $TERM
    Type=idle
    EOF
    
    Run Code Online (Sandbox Code Playgroud)

    启用盖蒂:

    sudo systemctl enable getty@tty1.service
    
    Run Code Online (Sandbox Code Playgroud)
  8. 在启动时隐藏横幅消息

    sudo touch /home/kiosk/.hushlogin
    sudo chown kiosk:kiosk /home/kiosk/.hushlogin
    
    Run Code Online (Sandbox Code Playgroud)

问题 - X 未启动

我想删除所有启动消息。我试过了GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"/etc/default/grub但现在,我看到的只是屏幕左上角的一个小光标。Chrome不再显示?

解决方案

kiosk用户必须加入视频组!在我安装普利茅斯之前不知道为什么它有效:

    sudo usermod -a -G audio kiosk
    sudo usermod -a -G video kiosk
Run Code Online (Sandbox Code Playgroud)

注意:我在 Ubuntu 17.04 中尝试了自己的程序,并且必须执行以下附加步骤:

    sudo apt install xserver-xorg-legacy
    sudo dpkg-reconfigure xserver-xorg-legacy
Run Code Online (Sandbox Code Playgroud)

现在您在菜单上选择“任何人”。比修改/etc/X11/Xwrapper.config和设置:

    needs_root_rights=yes
    allowed_users=anybody
Run Code Online (Sandbox Code Playgroud)

问题 - 如何配置新主题

我也想要一个闪屏,我想我必须安装普利茅斯?我应该安装什么以及如何配置它?

解决方案

我创建了一个基于 ubuntu-logo 的主题并复制了它/usr/share/plymouth/themes/

    sudo update-alternatives --install /usr/share/plymouth/themes/default.plymouth default.plymouth /usr/share/plymouth/themes/MY_THEME/MY_THEME.plymouth 150
    sudo update-alternatives --config default.plymouth
Run Code Online (Sandbox Code Playgroud)

它将要求主题选择,我选择我的,然后您必须执行以下操作:

    sudo update-initramfs -u
    sudo update-grub
Run Code Online (Sandbox Code Playgroud)

谢谢!

小智 2

可以避免启动消息GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"。我不知道为什么你仍然得到光标。

无论如何,要回答有关普利茅斯的问题,您需要通过运行命令来安装它sudo apt-get install plymouth。这应该将其安装到系统中。然后,您想要将所有内容复制/usr/share/plymouth/themes/ubuntu-logo到另一个文件夹(最好是/usr/share/plymouth/themes目录中的某个位置)。然后,您很可能想要更改新复制的文件夹中的图像ubuntu-logo。然后,要更改新的启动徽标,请编辑位于 的 plymouth 配置文件/etc/alternatives/default.plymouth。在那里,将下面两行的地址更改为您之前创建的新文件夹:

ImageDir=/usr/share/plymouth/themes/ubuntu-logo
ScriptFile=/usr/share/plymouth/themes/ubuntu-logo/ubuntu-logo.script
Run Code Online (Sandbox Code Playgroud)

因此,例如,我可能会将这些行编辑为如下所示:

ImageDir=/usr/share/plymouth/themes/mytheme
ScriptFile=/usr/share/plymouth/themes/mytheme/ubuntu-logo.script
Run Code Online (Sandbox Code Playgroud)

然后,保存配置并重新启动。您现在应该拥有启动徽标图像,而不是常规的 Ubuntu 图像。

  • 知道了!!`sudo usermod -a -G 音频信息亭 &amp;&amp; sudo usermod -a -G 视频信息亭` (2认同)