web-dev-qa-db-ja.com

起動を完了してネットワーク依存アプリを起動する前にDHCPリースを待機するようにMythbuntu11.10を構成するにはどうすればよいですか?

Mythbuntu11.10をフロントエンドとしてのみクリーンインストールしています。 eth0を使用してネットワーク化されており、同じサブネット上でDHCPサーバーとして機能するルーターがあります。

フロントエンドが起動し、自動的にログオンしてMythフロントエンドを実行します。

ただし、4回の起動のうち3回ごとに概算されますが、神話が始まる前に、ボックスはDHCP経由でIPアドレスをまだ取得していません。これにより、神話は構成モードに入ります。キャンセルすると、DHCP応答を受信したため、神話は正常に開始されます。

ログオンする前にDHCP応答を待機するようにブートを変更するにはどうすればよいですか?

1
Andy Hitchman

オリに感謝します。他の誰かが興味を持った場合に備えて、ここで説明するオプション3を選択しました。

  1. Xmbcでネットワークマネージャーをアンインストールします(これが必須かどうかはわかりませんが、必要ありません):

    # apt-get remove network-manager
    
  2. 以下を追加して、/ etc/network/interfacesを構成します。

    auto eth0
    iface eth0 inet dhcp
    
  3. /etc/init/lightdm.confで開始トリガーを変更することにより、既存のトリガー条件に加えて、ループバック以外のインターフェースが起動したときにのみ開始するようにlightdmに指示します。

    start on ((filesystem
       and runlevel [!06]
       and started dbus
       and (drm-device-added card0 PRIMARY_DEVICE_FOR_DISPLAY=1
            or stopped udev-fallback-graphics)
       and net-device-up IFACE!=lo) 
      or runlevel PREVLEVEL=S)
    

条件net-device-up IFACE!=loを追加しました。

これまでのところ、うまく機能しているようです。

1
Andy Hitchman

手動だが簡単なものから、手動で博士号を取得する必要があるものまで、3つのオプションがあります(その進行中)。

1.DHCPを使用しないでください。

ルーターに静的IPを割り当て(そのIPが別のデバイスに渡されないようにするため)、その静的アドレスを使用するようにUbuntuを構成します。これは、Network Manager(使用している場合)を使用するか、/etc/network/interfacesを次のように編集することで実行できます。

auto eth0
iface eth0 inet static
        address 192.168.0.4
        netmask 255.255.255.0
        network 192.168.0.0
        broadcast 192.168.0.255
        gateway 192.168.0.1

2.何かを置いて、ネットワークが起動してIPを取得するのを待ちます

ネットワークカードが起動しているかどうかを確認するスクリプトを作成することについて話しています。簡単にするために、XBMCを起動するものを( フォーラムから盗まれた )のようなチェックと組み合わせることができます。

#!/bin/bash

until wget -q -O - http://www.google.com | grep Lucky > /dev/null; do
    sleep 10
done

xbmc

そして、xmbcを直接呼び出す代わりに、そのスクリプトを呼び出します。

3. Upstartをいじって、それを壊して意志を実行します。

Upstartは、すべてのシステムのものを管理し、各ジョブが発行するイベントに基づいてwhenの実行を管理するものです。 DHCPアドレスが割り当てられている場合に正確に信号を送信できる可能性があるため、これは最も適切なルートのように思われます。

問題は、物事を変更するために、ブートプロセスを実際に掘り下げる必要があるということです。私はそれについて合理的に助けるのに十分なことを知りません。

3
Oli