toki
2023年11月10日 17時58分
下記記事を確認しながら作業をしたのですが、初心者の為理解出来ず手詰まりになってしまいました。
https://armadillo.atmark-techno.com/forum/armadillo/12879
armadillo-iota6_product_manual_ja-1.6.2.pdfの中で、
"11.3.1. 出荷状態のルートファイルシステムアーカイブを構築する"
を参考にさせて頂き、ルートファイル構築を行いました。
このルートファイルの構築とはどのように実施すればよろしいのでしょうか?
Armadillo-IoT ゲートウェイ A6 開発用ツールをダウンロードしビルドまで実施したのですが、
おそらくaiota6_resources/ 以下にファイルやディレクトリ配置していないので現状と変わりありませんでした。
また、v4.14-at62のソースファイルをダウンロードし、試しにmenuconfigを実施したのですが
Networking support --->内に[*] Network packet filtering framework (Netfilter) --->という項目はありませんでした。
至らぬところばかりで申し訳ありませんが、詳しい設定方法のリンク等ご教示頂けますと助かります。
宜しくお願い致します。
コメント
toki
高橋様
ご返信ありがとうございます。
Network packet filtering framework (Netfilter) --->
この部分で差異があります。
添付したスクリーンショットのように
IP: Netfilter Configuration --->
という項目が見つかりません。
現在、問題の原因を特定することができておらず、対応に苦慮しております。
専門的なご支援を賜れますと幸いです。
何卒宜しくお願い致します。
> 高橋です。
>
> 正しくは
>
> Networking support ---> > Networking options ---> > Network packet filtering framework (Netfilter) ---> > IP: Netfilter Configuration ---> > iptables NAT support ---> > MASQUERADE target support >
> という順番になっています。
> (「MASQUERADE target support」は、「iptables NAT support」をスペースキーで有効にすると出てきます。
> その後、「MASQUERADE target support」も有効にしてください。)
>
> 該当のフォーラムの回答が不足しており申し訳ありません。
> また、この変更(menuconfigによるコンフィギュレーションの変更)についてはルートファイルシステムアーカイブの構築は必要ありません。
>
ファイル | ファイルの説明 |
---|---|
スクリーンショット 2023-11-14 104434.png |
at_keitaro.takahashi
高橋です。
menuconfigなど、イメージをカスタマイズする作業については、Armadilloの開発環境であるATDE
(https://armadillo.atmark-techno.com/guide/atde)
の使用を前提としています。上記URLからATDE(Version 8)をダウンロードしたあと、
Armadillo-IoT ゲートウェイ A6 製品マニュアル 「4.5.1. ATDEのセットアップ」
https://manual.atmark-techno.com/armadillo-iot-a6/armadillo-iota6_produ…
及び
「22.2. イメージをカスタマイズする」
https://manual.atmark-techno.com/armadillo-iot-a6/armadillo-iota6_produ…
など参考にもう1度作業を行っていただけますでしょうか。
また、何らかのコマンドを実行する際は実行したコマンドそのものについても、
(今回だと「make ARCH=arm menuconfig」などのコマンドを実行したかと思います)
フォーラムに記載していただけると、サポートが行いやすくなります。
toki
高橋様
Armadilloの開発環境ご教授ありがとうございます。
ATDEを使用して再度「make menuconfig」を実施しましたが、項目に変わりはありませんでした。
事前に何か特別な準備が必要なのでしょうか?
現在、ソースファイルは /usr/src に配置し、そこでコマンドを実行しております。
また、現在のカーネルバージョン(4.14-at61)とソースファイルのバージョン(4.14-at62)の相違が影響している可能性はありますでしょうか?
お手数をお掛けして申し訳ございませんが、再度ご確認お願い致します。
ファイル | ファイルの説明 |
---|---|
スクリーンショット 2023-11-16 100539.png |
at_keitaro.takahashi
高橋です。
おそらくATDE Version 9をご使用かと思いますが、前の回答にもある通り
Armadillo-IoTゲートウェイ A6用の開発環境は、ATDE Version 8となります。
また、今回行うイメージのカスタマイズ・ビルドについては、ATDEのコンソール内で行う作業となっており、
Armadilloを接続する必要はありません。
(勿論、カスタマイズ・ビルドを行ったあとは別途Armadillo上に配置する作業が必要となります。)
ATDEの中でカーネルのソースファイルをダウンロードした上で、
改めて製品マニュアルに記載されているコマンドを実行してください。
Armadillo-IoT ゲートウェイ A6 製品マニュアル 「22.2.1. イメージをカスタマイズ」
https://manual.atmark-techno.com/armadillo-iot-a6/armadillo-iota6_produ…
toki
高橋様
すぐに理解することが出来ず、大変申し訳ございませんでした。
ATDE Version 8「make menuconfig」を実行し、MASQUERADE target supportを有効にすることが出来ました。
しかし製品マニュアル 「22.2.1. イメージをカスタマイズ」に記載されてある
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x82000000 uImage
を実行し、選択画面をデフォルト通り選択していったら下記のエラーが発生しました。
make[1]: *** 'certs/x509_certificate_list' に必要なターゲット 'debian/certs/debian-uefi-certs.pem' を make するルールがありません. 中止. make: *** [Makefile:1068: certs] エラー 2
コンフィギュレーションの変更では「IPv4 connection tracking support (required for NAT) 」という項目を有効にすることによって
MASQUERADE target supportの項目が表示されたので、変更箇所はここだけです。
ビルド時の選択時に全てデフォルト値を入力したのが、問題だったのでしょうか?
ご確認の程、宜しくお願い致します
at_keitaro.takahashi
toki
高橋様
コマンド結果を下記に記載します。
atmark@atde8:~$ history |grep make 48 make menuconfig 49 sudo make menuconfig 51 sudo make menuconfig 53 sudo make menuconfig 54 make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x82000000 uImage 55 sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x82000000 uImage 56 sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- 58 sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- 59 sudo make CROSS_COMPILE=arm-linux-gnueabihf- ARCH=arm 60 sudo make menuconfig 69 sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- 70 sudo make menuconfig 71 sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- 72 sudo make CROSS_COMPILE=arm-linux-gnueabihf- ARCH=arm 73 sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x82000000 uImage 78 make CROSS_COMPILE=arm-linux-gnueabihf- ARCH=arm 79 sudo make CROSS_COMPILE=arm-linux-gnueabihf- ARCH=arm 80 sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x82000000 uImage 81 sudo make menuconfig 82 sudo make CROSS_COMPILE=arm-linux-gnueabihf- ARCH=arm 83 sudo make menuconfig 84 history |grep make
atmark@atde8:~$ ls /usr/share/images/atde atde.xml atde8.jpeg
宜しくお願い致します。
at_keitaro.takahashi
toki
at_keitaro.takahashi
高橋です。
> root権限でビルドを実行すべきところをユーザー権限で実行してしまい、その際にも多々エラーが発生しておりました。
「/usr」などの「/」以下のディレクトリは基本的にrootユーザーの持ち物なので、
一般ユーザー(ATDEを起動する際にログインするatmarkユーザーなど)だとsudoコマンドなどによるroot権限が必要になります。
基本的に、ATDEで行う作業はユーザーのホームディレクトリ(ATDEで「端末(terminal)」を開いたときに最初にいるディレクトリ)
で行うことをオススメします。
なお、製品マニュアル内で、「~/」となっている箇所はユーザーのホームディレクトリを表しています。
https://manual.atmark-techno.com/armadillo-iot-a6/armadillo-iota6_produ…
> 作成したイメージファイルをArmadillo-IoT-A6に配置する方法について、配置する手順に関するマニュアルやフォーラムの記事があれば教えて頂けますと幸いです。
> お手数をお掛けしますが、何卒宜しくお願い致します。
USBメモリが使用できる環境なら、最初はUSBメモリ(またはmicro SDカード)でデータを移動するのが楽かと思われます。
https://manual.atmark-techno.com/armadillo-iot-a6/armadillo-iota6_produ…
ArmadilloとATDE(を起動しているPC)が同一のネットワークに接続されているなら、ATDE上にサーバーを構築してsshやwgetコマンドでダウンロードするのもオススメです。
以下、「/usr/src/linux-v4.14-at62/arch/arm/boot/uImage」にビルドしたuImageが配置されている場合の例です。
・scpコマンド(sshを利用したファイル転送)の例
1. ATDE上でopenssh-serverをインストール
sudo apt install openssh-server
2. ATDEのIPアドレスを確認
hostname -I
(基本「10.x.x.x」、「192.168.x.x」、「172.x.x.x」などの形式になっているかと思います。)
3. Armadillo上でscpコマンドを実行
scp atmark@<ATDEのIPアドレス>:/usr/src/linux-v4.14-at62/arch/arm/boot/uImage .
例えばATDEのIPアドレスが192.168.0.11の場合、コマンドは
scp atmark@192.168.0.11:/usr/src/linux-v4.14-at62/arch/arm/boot/uImage .
となります。
scpコマンド実行後、「Are you sure you want to continue connecting (yes/no)?」と表示されたら
「yes」を入力してEnterを押してください。(初回のみ)
その後、「atmark@'s password:」
と表示されるので、ATDEのatmarkユーザーのパスワード(初期値は「atmark」です)を入力してEnterを押すと、
Armadillo上にファイルが転送されます。
・wgetコマンドでダウンロードする例
1. ATDE上で以下のコマンドを実行してサーバー上にファイルを配置
sudo cp /usr/src/linux-v4.14-at62/arch/arm/boot/uImage /var/www/html/
2. ATDEのIPアドレスを確認
hostname -I
3. Armadillo上でwgetコマンドを実行
wget <ATDEのIPアドレス>/uImage
ATDEのIPアドレスが192.168.0.11の場合、コマンドは
wget 192.168.0.11/uImage -O uImage
となります。
いずれかの方法でファイルを転送したあと、必要に応じて「Linuxカーネルイメージの書き換え」などの作業を行ってください。
https://manual.atmark-techno.com/armadillo-iot-a6/armadillo-iota6_produ…
toki
at_keitaro.takahashi
2023年11月10日 18時33分
高橋です。
正しくは
という順番になっています。
(「MASQUERADE target support」は、「iptables NAT support」をスペースキーで有効にすると出てきます。
その後、「MASQUERADE target support」も有効にしてください。)
該当のフォーラムの回答が不足しており申し訳ありません。
また、この変更(menuconfigによるコンフィギュレーションの変更)についてはルートファイルシステムアーカイブの構築は必要ありません。