次の問題があります:Raspbian Jessie(バージョン4.4.26-v7 +)を実行しているRaspPi 3Bを使用する起動時に自己記述PythonスクリプトのGUIを実行したいです。
この質問はこのウェブサイトだけでなく他のウェブサイトでも尋ねられていることを知っていますが、Raspbianは変化し続けており、以前に提案された解決策はどれも役に立たなかったため(下記参照)、もう一度質問したいと思います。
私の理解では、XServerをロードし、その後スクリプトを実行する必要があります。これは、デスクトップ全体をロードする代わりに発生するはずです。
これを達成する1つの方法は、LXDE自動起動ファイルを使用することです(この回答で説明されています)。私は、ファイルを編集した/etc/xdg/lxsession/LXDE-pi/autostart
だけでなく、ファイル/etc/xdg/lxsession/LXDE/autostart
(参照記事で示唆されているように、前者はもともと4本の線の代わりに3つ含まれている) -の行を追加@sudo python /full/path/to/file.py
して@openbox
、私のPiはまだブーツデスクトップに、自動的にすべてのスクリプトを実行しません。注釈:どちらかのファイルと両方のファイルについて、スクリプト行とスクリプト行をopenbox行と一緒に試しました。
別の戦略には、rc.localファイルが含まれます(公式ドキュメントで提案されています)。ただし、追加するだけでpython /full/path/to/file.py &
は機能せず(GUIがまだstartx
ないため)、さらに追加しても助けにはなりませんでした。明らかにstartxをpythonスクリプトにリンクできなかったため、前者は起動直後に閉じられました。
いくつかは示唆(さらに)の.xinitrcが使用されるべきであること、。ただし、これも機能しませんでした。
su -c python /full/path/to/file.py pi
そして、最後になりましたが、何らかの方法で、init.dを使用して実行可能にする必要があります。
正しい方向へのヒントをいただければ幸いです。私の間違いはどこですか?rc.localまたは.xinitrcの私の行はどのように見えますか?または、ピクセルへの切り替えに関連する大きな変更がありましたか?
追加情報:スクリプトにはsudo権限が必要です。GUI 2.7はTkinterを使用しているPython 2.7で書かれています。GUIは画面を完全に埋めるため、背景は無関係です。スクリプトは永久に(またはGUIを介したユーザー入力によって停止されるまで)実行されることになっており、wifiやイーサネットなどのシステムサービスを使用します。
詳細:すべてローカルで発生しています。
明確化:これまでに、8時間以上ネットを検索し、さまざまな開始点からチュートリアルを試したり、それらを組み合わせたりしました。2016年10月がRaspbianに変更されたため、非デスクトップ環境で実行するとスクリプト(ピクセルで起動したときに完全に動作する)が動作しない(疑わしい)か、新しいチュートリアルが必要であるという結論に達しました。古いチュートリアルを廃止しました。さらに、スクリプトを起動したり、Xserver(または同様のもの)を互いに独立して起動するのではなく、Xserverによって作成されたディスプレイをスクリプトが使用するように両方をリンクすることが課題です。