
私はpi-genを使ってRasberry Pi用のカスタムオペレーティングシステムを作成しています。
プライマリネットワークインターフェイス(eth0とwlan0)への接続/再接続を管理するためにNetworkManagerをインストールすることにしました。
次のように、/etc/NetworkManager/system-connectionsに2つの設定ファイルを作成しました。
/etc/NetworkManager/system-connections/wifi:
[connection]
id=wifi
uuid=319f2d8e-3ce7-4e47-b6eb-fabb0aa69f68
type=wifi
[wifi]
mode=infrastructure
ssid=Facco
[wifi-security]
auth-alg=open
key-mgmt=wpa-psk
psk=facco2016
[ipv6]
method=disabled
[ipv4]
method=auto
/etc/NetworkManager/system-connections/ethernet:
[connection]
id=ethernet
uuid=60d17e82-1be7-3d0f-b924-e980be41fcba
type=ethernet
[ipv6]
method=disabled
[ipv4]
method=auto
どちらのファイルも完全に実行されます。
次に、2つの設定ファイルをOSリポジトリに追加し、OSイメージを作成しました。
OSを起動するとNetwork Managerが正しく表示されますが、nmtui/nmtui-editでは/etc/NetworkManager/system-connectionsにコピーして貼り付けた2つのファイルがまったく表示されません。
nmtuiがシステム接続フォルダを調べてそこに貼り付けたファイルを見つける必要はありませんか?
私が逃したものはありますか?
答え1
NetworkManagerクライアント(nmtuiなど)はこれらのファイルを直接見ることはできません。通常、rootとして実行されず、読み取り/変更権限がありません。代わりにNetworkManagerのD-Bus APIを使用してください。
エディタで接続プロファイルを作成または事前配布できます。つまり、D-Bus APIを使用する代わりにファイルを直接設定することは非常にうまくサポートされており、実行したいことは問題ありません。
キーファイルファイル(その中に含まれる接続プロファイル/etc/NetworkManager/system-connections
)は、ルートが所有し、権限を持っている必要があります0600
。とを使ってファイルの所有者と権限を確認して編集しますls -l
。chown
chmod
NetworkManagerがこれらのファイルにアクセスできない可能性は低いです。例えば。私たちはSELinuxタグを使用します。
それにもかかわらず、NetworkManagerのログファイルを見ると、そのファイルがロードされない理由がわかります。システムログ/ログを確認してください。
たとえば、CentOS 7では、次のログファイルを表示できます。
tail -f /var/log/messages
次のメッセージを傍受するには:
... keyfile: error loading connection from file /etc/NetworkManager/system-connections/example.conf: File permissions (100644) are insecure
答え2
あなたに直接答えを提供するのではなく、インターネットで検索している他の人のためのものですnetwork manager manually configured system-connections file
。
/etc/NetworkManager/system-connections/eno2.nmconnection
正しいスキーマ0600
と所有者定義を使用した後はroot:root
、NetworkManagerを再起動して更新された変更を適用する必要があります。有効にすることもできます。
sudo systemctl restart NetworkManager.service
sudo nmcli up eno2