![cronでグラフィックアプリを起動する](https://rvso.com/image/1070341/cron%E3%81%A7%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A3%E3%83%83%E3%82%AF%E3%82%A2%E3%83%97%E3%83%AA%E3%82%92%E8%B5%B7%E5%8B%95%E3%81%99%E3%82%8B.png)
セッションの開始時にPython tkinterアプリを起動したいので、ユーザーとルートのcrontabに次の行を追加します
@reboot python3 /home/alvaro/Desktop/python/good.py
しかし、再起動してもアプリは起動しません
This is the output of the cron status
● cron.service - Regular background program processing daemon
Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2021-04-19 10:35:07 CEST; 1min 46s ago
Docs: man:cron(8)
Main PID: 622 (cron)
Tasks: 1 (limit: 9484)
Memory: 19.6M
CGroup: /system.slice/cron.service
└─622 /usr/sbin/cron -f
abr 19 10:35:07 alvaro-VirtualBox cron[622]: (CRON) INFO (pidfile fd = 3)
abr 19 10:35:07 alvaro-VirtualBox cron[622]: (CRON) INFO (Running @reboot jobs)
abr 19 10:35:07 alvaro-VirtualBox CRON[631]: pam_unix(cron:session): session opened for user root by (uid=0)
abr 19 10:35:07 alvaro-VirtualBox CRON[636]: (root) CMD (python3 /home/alvaro/Desktop/python/good.py)
abr 19 10:35:07 alvaro-VirtualBox CRON[632]: pam_unix(cron:session): session opened for user alvaro by (uid=0)
abr 19 10:35:07 alvaro-VirtualBox CRON[693]: (alvaro) CMD (python3 /home/alvaro/Desktop/python/good.py)
abr 19 10:35:09 alvaro-VirtualBox CRON[631]: (CRON) info (No MTA installed, discarding output)
abr 19 10:35:09 alvaro-VirtualBox CRON[631]: pam_unix(cron:session): session closed for user root
abr 19 10:35:09 alvaro-VirtualBox CRON[632]: (CRON) info (No MTA installed, discarding output)
abr 19 10:35:09 alvaro-VirtualBox CRON[632]: pam_unix(cron:session): session closed for user alvaro
答え1
Cron にはグラフィカル環境がないため、そこから GUI プログラムを実行することはできません。また、再起動時にプログラムを実行するときはログインしていないため、グラフィカル セッションは利用できません。
ログイン時に起動するように、プログラムを「スタートアップ アプリケーション」(「スタートアップ アプリケーションの設定」) に追加します。最終的には、ユーザー名とパスワードの入力を回避するために「自動ログイン」を有効にします。
また、「Ubuntu キオスク セットアップ」を検索して、KIOSK ソリューションの設定に関する情報を見つけることもできます。KIOSK ソリューションとは、ユーザーにデスクトップへのアクセス権を与えずに、起動時にアプリケーションが自動的に起動するセットアップです。