私はRaspberry Piで起動時にブラウザを開こうとしています。

私はRaspberry Piで起動時にブラウザを開こうとしています。

私はRaspberry PiでRaspbianを実行していて、起動時にブラウザを表示したいと思います。起動時に正しいページでMidoriウィンドウを開くことができますが、問題は、インターネットに接続していない場合に発生するエラーなどの「ホスト名を解決できません」というエラーが発生することです。上記の指示に従いました。http://www.niteoweb.com/blog/raspberry-pi-boot-to-browserコマンドラインに次のように入力します。

$ sudo nano /etc/xdg/lxsession/LXDE/autostart

すべての内容をコメントアウトし、次の行を追加します。

@xset s off
@xset -dpms
@xset s noblank
@midori -e Fullscreen -a http://google.com

このプロセスが開始されると、Midoriウィンドウが開きますが、上記のエラーが発生します。ページを更新すると機能しますが、マウスやキーボードなしでURLを呼び出すことができるようにしたいです。起動時にインターネットが接続できない可能性があることを読んだので、Midoriウィンドウを開く前にプロセスを20秒間遅らせるbashスクリプトを作成しました。これも機能せず、同じエラーが続きます。また、Chromeプロセスを試してみましたが、役に立ちませんでした。

答え1

私のPiには、他のタスクを実行する前にIPアドレスがあることを確認するスクリプトがあります:

IP.py

輸入ソケット
時間から睡眠を取得

デフチェックネットワーク():
    ipi = false
    努力する:
        s = ソケット.ソケット (ソケット.AF_INET, ソケット.SOCK_DGRAM)
        s.connect(('google.com', 0))
        ip = s.getsockname()[0]
        s.閉じる()
    ソケットエラーを除いて:
        戻りエラー
    その他:
        IPリターン

デフメイン():
    x = ネットワーク確認()
    x == Falseの場合:
        「ネットワーク確認中…」印刷
        x = ネットワーク確認()
        睡眠(1)

これは単に既知のアドレスでソケットを開こうとし、実際に接続する前に失敗します。実行可能にする:

chmod +x ip.py

その後、/etc/rc.localに追加して起動時に追加する必要があります。

#!/bin/sh -e
#
#rc.ローカル
#
#このスクリプトは、各マルチユーザーランレベルの終わりに実行されます。
#成功や他の状況でスクリプトが「0で終了」していることを確認してください。
#エラー値。
#
#このスクリプトを有効または無効にするには、実行方法を変更できます。
#少し。
#
#デフォルトでは、このスクリプトは何もしません。

/usr/bin/python/directory/where/you/put/ip.py

0番出口

お役に立てば幸い

答え2

ワイヤレスネットワークキーを入力せずにAPルーターのボタンオプションを使用してこの問題を解決しました。ワイヤレスキーボードとマウス(電源付きUSBハブを介して)を使用してもすぐに接続すると、もはや問題は発生しません。

答え3

ifconfigを使用してIPアドレスを検出し、IPアドレス($? == 0など)が取得されるまで待ちます(ipv4と仮定)。

$ /sbin/ifconfig |grep "inet " |grep -v "127.0.0.1"
inet 10.2.3.15  netmask 255.255.255.0  broadcast 10.2.3.255
$ echo $?
0

それは、

#!/bin/bash
while [ 1 ]; do
    ip=`/sbin/ifconfig |grep -v "127.0.0.1" |grep "inet "`
    [[ $? == 0 ]] && break;
    echo "wait for ip"; sleep 1;
done
echo "got ip: $ip"

答え4

/etc/xdg/lxsession/LXDE/自動起動:

@lxpanel --profile LXDE

@pcmanfm --desktop --profile LXDE

@xscreensaver -no-splash

@midori  --inactivity-reset=60 -e Fullscreen -a http://www.google.com

私のために働く

関連情報