crontab 不会在启动时打开 chromium

问题描述 投票:0回答:1

我设置 crontab 在启动时执行 bash 脚本

@reboot bash /home/user/linuxconfig/startup.sh

在每次启动期间,我看到 bash 被执行,因为它创建了虚拟文件。

#!/usr/bin/bash
touch /home/user/linuxconfig/test.txt
chromium-browser https://open.spotify.com/
touch /home/user/linuxconfig/test2.txt

文件已创建,但 chromium 无法打开。 当我在终端启动后执行脚本时,它会打开 chromium。

我做错了什么?

编辑: 我尝试直接从 crontab 打开 chromium,这样我就不必处理 bash 部分:

@reboot /usr/bin/chromium-browser --no-sandbox >> /home/user/linuxconfig/log/startupCrontab.log 2>&1

日志也给了我:

[856:856:0427/103429.042950:ERROR:ozone_platform_x11.cc(243)] Missing X server or $DISPLAY [856:856:0427/103429.043040:ERROR:env.cc(257)] The platform failed to initialize. Exiting.

所以我尝试设置显示:

@reboot export DISPLAY=:0
@reboot /usr/bin/chromium-browser --no-sandbox >> /home/user/linuxconfig/log/startupCrontab.log 2>&1

但是结果是一样的,日志还是说$DISPLAY或者X服务器丢失。

我开始想知道是否可以在 crontab 调用期间启动图形应用程序。由于在此步骤中缺少 DISPLAY,但是当我在启动后启动 chromium 时,它工作正常并且 $DISPLAY 自动设置为 :0

bash cron raspberry-pi boot
1个回答
0
投票

Cron 不是自动启动图形桌面应用程序的适当机制。您可以通过创建桌面应用程序自动启动配置文件

~/.config/autostart/chromium.desktop
,在桌面环境启动期间自动启动 Chromium 浏览器,如下所示:

[Desktop Entry]
Type=Application
Name=Chromium
Exec=chromium-browser
Comment=Start Chromium when logging into the desktop
© www.soinside.com 2019 - 2024. All rights reserved.