kitamura-a
2022年7月19日 20時34分
下記のコマンドにて一時的に静的アドレスを設定しました。
nmcli connection add type ethernet ifname eth0
nmcli connection modify ethernet-eth0 ipv4.method manual ipv4.addresses "192.168.11.35/24 192.168.11.1"
nmcli connection up ethernet-eth0
マニュアルを確認すると、設定を保存するための、下記コマンド
persist_file /etc/NetworkManager/system-connections/<コネクションファイル名>
がありますが、コネクションファイル名とはどれのことを指しますでしょうか。
また、設定が保存されるファイルはどのディレクトリのどのファイルになりますか。
よろしくお願いします。
コメント
kitamura-a
マルティネさん
回答ありがとうございます。
下記のコマンドにて実行できました。
persist_file /etc/NetworkManager/system-connections/ethernet-eth0.nmconnection
表示結果
EXT4-fs (mmcblk2p1): re-mounted. Opts: (null)
但し、rebootするとethernet-eth0.nmconnectionのファイルの日付が、
root root 298 Jan 1 1970 ethernet-eth0.nmconnection
と表示され、元に戻っているようでした。当然、設定したipアドレスも無くpingも通らない。
persist_fileのコマンドにて再起動しても設定した情報が保存されると思っていましたがそうではないのでしょうか。
at_dominique.m…
> 回答ありがとうございます。
> 下記のコマンドにて実行できました。
> persist_file /etc/NetworkManager/system-connections/ethernet-eth0.nmconnection
>
> 表示結果
> EXT4-fs (mmcblk2p1): re-mounted. Opts: (null)
これは一時的にベースのファイルシステムを書き込み可能にしているメッセージです。persist_file自体にメッセージを表示しませんが、「-v」オプションを指定したら以下のメッセージが表示されます:
'/etc/NetworkManager/system-connections/ethernet-eth0.nmconnection' -> '/mnt/etc/NetworkManager/system-connections/ethernet-eth0.nmconnection'
> 但し、rebootするとethernet-eth0.nmconnectionのファイルの日付が、
> root root 298 Jan 1 1970 ethernet-eth0.nmconnection
すみません、私の提案が今回適用しにくかったです。
再起動前には日付が正しかったでしょうか?
ネットワークを設定したことで、chronydというサービスで時間を取得できたはずですが、nmcli modifyを実行した時点ではまだ時間を取得できてないと思われます。そのため、1970年1月1日の日付になってますが、それ自体は問題ないはずですが…以下に書いた用に ip アドレスが設定されてなかったら何かがおかしいですね。
> と表示され、元に戻っているようでした。当然、設定したipアドレスも無くpingも通らない。
ねんのため、ファイルの中身を見せていただけますか?
シンプルなテクストファイルですので、以下の内容の用にIPが記載されてるはずです
armadillo:~# cat /etc/NetworkManager/system-connections/ethernet-eth0.nmconnection [connection] id=ethernet-eth0 uuid=3b898512-535e-42ce-9b3c-0e8e85ce1071 type=ethernet interface-name=eth0 [ethernet] [ipv4] address1=192.168.11.35/24,192.168.11.1 method=manual [ipv6] addr-gen-mode=stable-privacy method=auto [proxy]
また、こちらで試した時に「nmcli connection modify ethernet-eth0 ipv4.method manual ipv4.addresses "192.168.11.35/24 192.168.11.1"」でエラーが出ていて、マニュアルの「ipv4.addresses 192.168.11.35/24 ipv4.gateway 192.168.11.1」を実行したかったんでしょうか?
> persist_fileのコマンドにて再起動しても設定した情報が保存されると思っていましたがそうではないのでしょうか。
最初の理解であっています。persist_fileを実行したらファイルを再起動しても保存されてるはずです。
注意点としては、Base OSをアップデートするときにパーティション毎すべてを上書きしますので、/etc/swupdate_preserve_files に載っているファイル以外はなくします。ネットワークの設定はデフォルトのファイルに載ってますので今回では問題ありません。
また、普通の再起動にも影響ありませんので、この段階では無視していいです。
https://manual.atmark-techno.com/armadillo-iot-g4/armadillo-iotg-g4_pro…
kitamura-a
at_dominique.m…
at_dominique.m…
2022年7月20日 8時18分
kitamura-aさん、
お世話になっています、
アットマークテクノのマルティネです。
> nmcli connection add type ethernet ifname eth0
> nmcli connection modify ethernet-eth0 ipv4.method manual ipv4.addresses "192.168.11.35/24 192.168.11.1"
> nmcli connection up ethernet-eth0
>
> マニュアルを確認すると、設定を保存するための、下記コマンド
> persist_file /etc/NetworkManager/system-connections/<コネクションファイル名>
> がありますが、コネクションファイル名とはどれのことを指しますでしょうか。
ファイル名はデフォルトでは connection名と一致していますので、この場合では /etc/NetworkManager/system-connections/ethernet-eth0.nmconnection になってるはずです。
確認のため、「ls -l /etc/NetworkManager/system-connections」でディレクトリの中身を表示したらファイル名と最後に編集された時間が表示されますので、ethernet-eth0.nmconnection の編集時が nmcli connection modify の実行時になっていることを確認できます。
> また、設定が保存されるファイルはどのディレクトリのどのファイルになりますか。
Armadillo Base OS の rootfs は ext4 ファイルシステムを read-only にして、tmpfs (メモリファイルシステム)を overlay にして編集可能にしています。
編集されたファイルを保存することで、べーすになってるファイルシステムを一時的に書き込み可能にして、そちらに直接にコピーしているだけです。
今回はpersist_fileのあとに以下のパスで確認できると思います:
/live/rootfs/etc/NetworkManager/system-connections/ethernet-eth0.nmconnection
分からないことあったらまた聞いてください。
よろしくおねがいします。