一般的に言って、ほとんどの人は仮想マシンでLinuxを使用してWindowsで実験を行っていますが、ここではデュアルシステムを使用しています。 ubootとデュアルシステムUbuntu18.04が相互にpingを実行することは非常に重要です。pingが失敗すると、開発ボードおよびnfsマウントへの後続のtftpダウンロードイメージを実行できなくなります。一日中pingして、やっと通ったので録音します。
私のは64ビットLinuxです。デフォルトでは2つのネットワークカードがあります。1つは有線ネットワークカード(enp2s0)、もう1つはワイヤレスネットワークカード(wlp3s0)です。loはループバックテスト用です。
次に、このファイル vi / etc / network / interfaces
を編集する前に、ワイヤレスネットワークカードを固定IPに設定します。ワイヤレスネットワークカードのIPは、有線ネットワークカードのIPゲートウェイとは異なる必要があります。つまり、wlp3s0は192.168.1です。 .x、有線ネットワークカードenp2s0は192.168.0.xに設定する必要があります。これは、wlp3s0とは異なります。以下に示すように/ etc / network / interfacesを編集し、状況に応じて変更します。
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
auto enp2s0
iface enp2s0 inet static
address 192.168.0.111
gateway 192.168.0.1
netmask 255.255.255.0
次に、 sudo vim / etc / NetworkManager / NetworkManger.conf
と入力して、NetworkManager構成ファイルを変更します。 falseをtrueに変更します。
次に、コマンドを実行してネットワークカードを再起動します。Ubuntuのバージョンごとに、ネットワークカードを再起動するための異なるコマンドがあります。私はバージョン18.04です。ネットワークカードを再起動するコマンドは「sudoservicenetwork-managerrestart」です。
ubootのIPアドレスはすべて環境変数であり、コマンドセットで設定されます。 ubootのIPアドレスは、Ubuntu有線ネットワークカードのIPアドレスのゲートウェイと同じである必要があります。上記のUbuntu有線ネットワークカードのゲートウェイは192.168.0であるため、ubootは次のようにする必要があります。そうでない場合、pingは機能しません。
set ipaddr 192.168.0.88set gatewayip 192.168.0.2set serverip 192.168.0.111//これは、Ubuntu有線ネットワークカードのIPと同じである必要があり、tftpダウンロードに使用されるサーバーIPはnetmask255に設定されています。.255.255.0
次に、 save
と入力して環境変数を保存し、次回の起動を容易にします
開発ボードをネットワークケーブルでUbuntuコンピュータに接続します。注:このとき、ワイヤレスネットワークカードをオフにしてから、pingを実行する必要があります。最初の数回はpingが機能しない場合があります。さらに数回pingを実行すると、コンピュータが応答しない場合があります。ネットワークカード。 xxxxxが有効である場合は、開発ボードに表示され、成功したことを示します。私がテストしたのは、Ubuntuが開発ボードにpingを実行できる場合もありますが、機能しない場合もありますが、次のすべての手順には影響しません。
次に電源を入れると、有線ネットワークカードがデフォルトでオンになり、設定の中間点が接続されていないので、閉じるだけです。
tftpはファイルのダウンロードと転送に使用され、ここではUbuntuのファイルを開発ボードにダウンロードするために使用されます。 Ubuntuをサーバーとして使用し、開発ボードを使用します
tftpメソッドをインストールします。
次のコマンドを順番に実行します
sudo apt-get install tftp-hpa tftpd-hpa
mkdir ~/tftpboot
chmod 777~/tftpboot/
sudo vim /etc/default/tftpd-hpa
このファイル/ etc / default / tftpd-hpaの内容を次の形式で入力します
# /etc/default/tftpd-hpa
TFTP_USERNAME="mengchao"//自分で設定したユーザー名
TFTP_DIRECTORY="/home/mengchao/tftpboot"//tftpboot絶対パス,自分のものに変更することを忘れないでください
TFTP_ADDRESS=":69"
TFTP_OPTIONS="--secure"
次に、tftpサーバーを再起動します。コマンドは次のとおりです。 service tftpd-hpa restart
これで、tftpのセットアップは完了です。
tftpコマンドを使用してubootでダウンロードします。ダウンロードするファイルは、事前に作成したtftpbootフォルダーディレクトリに配置する必要があります。形式は次のとおりです。
tftpアドレスファイル名
tftp 0x30008000 zImage-qt
0 x30008000はLinuxカーネルのロードアドレスです。このアドレスについては、この記事の後半で説明します。
次に、Linuxカーネルを起動し、ubootでコマンド bootm0x30008000
を使用します