hibari
Posts: 24
Joined: Thu Jun 07, 2018 12:34 am

起動時にアプリを自動実行したいのですが

Fri Aug 23, 2019 8:07 am

これまでラスパイで起動時にアプリが自動実行していたのですが、最新バージョンのraspbian(July 2019)を新たにダウンロードしたところ、従来のやり方で自動実行できなくなりました。

これまでラズパイ3Bを使い、NOOBSをマイクロSDカードにコピーし、初期設定しました。
今回はCM3+とCMIOを使い、raspbianをetcherで書き込みました。ラズパイ自身は正常に起動します。

従来は
vi ~/.config/lxssion/LXDE-pi/autostart

を実行し、ファイルの最後に
@mono home/pi/実行ファイル名

を書き込み、最初から起動するとアプリが自動的に立ち上がりました。

「mono」はご存じかもしれませんが、フリーウェアで、過去にC#で開発したPC向けアプリを修正してラスパイで動かすために、すでにインストールしました。

ところが今回は、「autostartが見つかりません」のメッセージが出ます。

また、上記とは別に、nanoやテキストエディタ で「/etc/rc.local」の「exit 0」の上に実行ファイル名を書き込もうとしましたが保存できません。

起動時にアプリを自動実行したいのですが、どうしたらいいでしょうか。

hibari
Posts: 24
Joined: Thu Jun 07, 2018 12:34 am

Re: 起動時にアプリを自動実行したいのですが

Sat Aug 24, 2019 9:52 am

nanoの使い方に少し慣れ、「/etc/rc.local」を書き込み、「exit 0」の前に絶対パスで実行ファイル名を書き込みましたが、全く立ち上がりません。

autostartがなくなったということで「/etc/systemd/system」に「xxx.service」を作りました。

作った後、「sudo systemctl enable~」もやりました。

[Service]に、接待パスで実行ファイルを書き込みましたが、立ち上がりません。monoを指定しましたが、だめでした。

ちなみに、ライン入力で「./実行ファイル名.exe」で正常に立ち上がります。

どのような原因が考えられるでしょうか。具体的にソースを上げた方がいいでしょうか。

matoken
Posts: 62
Joined: Sat Jan 05, 2013 10:30 am
Location: kagoshima japan

Re: 起動時にアプリを自動実行したいのですが

Sat Aug 24, 2019 3:05 pm

従来は
vi ~/.config/lxssion/LXDE-pi/autostart

を実行し、ファイルの最後に
@mono home/pi/実行ファイル名
この最後の部分ですが, home/pi/実行ファイル名/home/pi/実行ファイル名 としてみるとどうでしょうか?

また,/home/pi/.xsession-errors になにかログが書き出されているかもしれません.
Kagoshima Linux User Group : https://kagolug.org/
my site: https://matoken.org
my pi : 1B/1B+/1A/1A+/2B/3B/Zero/Zweo W

hibari
Posts: 24
Joined: Thu Jun 07, 2018 12:34 am

Re: 起動時にアプリを自動実行したいのですが

Tue Aug 27, 2019 4:49 am

sudo nano /etc/xdg/lxssion/LXDE-pi/autostart

を実行し、ファイルの最後に
@mono home/pi/実行ファイル名
を書き込み、再起動させたところ、アプリが自動起動しました。

アドバイスをしていただいた方、ありがとうございました。

matoken
Posts: 62
Joined: Sat Jan 05, 2013 10:30 am
Location: kagoshima japan

Re: 起動時にアプリを自動実行したいのですが

Tue Aug 27, 2019 12:53 pm

解決されたようですが今回設定された, /etc/xdg/lxssion/LXDE-pi/autostart はシステムワイドな設定です.
piユーザだけでなく別のユーザでも実行されます.

piユーザだけの設定にしたければこういう感じでokでした.

autostartファイルを格納するディレクトリを作成

Code: Select all

$ mkdir -p ~/.config/lxsession/LXDE-pi
autostartファイルを作成すると /etc/xdg/lxssion/LXDE-pi/autostart が実行されないので既定値をコピー

Code: Select all

$ cp /etc/xdg/lxsession/LXDE-pi/autostart ~/.config/lxsession/LXDE-pi/
autostartファイルを編集(ここではx11-appsパッケージ内のxeyesを起動)

Code: Select all

$ echo '/usr/bin/xeyes' >> ~/.config/lxsession/LXDE-pi/autostart
LXDE-pi 部分はセッション名で,lxsession プロセスを確認することでわかります.

Code: Select all

$ ps -ef|grep lxsession 
pi         412   390  0 21:33 ?        00:00:00 /usr/bin/lxsession -s LXDE-pi -e LXDE
試した環境は Raspbian Buster with desktop 2019-07-10をapt update & apt upgradeして x11-appsパッケージを導入したものです.

Code: Select all

pi@raspberrypi:~$ dpkg-query -W lxsession x11-apps
lxsession       0.5.4-1+rpt1
x11-apps        7.7+7
pi@raspberrypi:~$ lsb_release -dr
Description:    Raspbian GNU/Linux 10 (buster)
Release:        10
pi@raspberrypi:~$ cat /proc/device-tree/model ;echo
Raspberry Pi 2 Model B Rev 1.1    
Kagoshima Linux User Group : https://kagolug.org/
my site: https://matoken.org
my pi : 1B/1B+/1A/1A+/2B/3B/Zero/Zweo W

Return to “日本語”