誰かが構成ファイルの完全な構造をリストできますか?ネットワークマネージャーが既知のネットワークの既知のネットワークの/ etc/NetworkManager/system-connectionsに保存しますか?
サンプル(ファイル名askUbuntu):
[connection]
id=askUbuntu
uuid=81255b2e-bdf1-4bdb-b6f5-b94ef16550cd
type=802-11-wireless
[802-11-wireless]
ssid=askUbuntu
mode=infrastructure
mac-address=00:08:CA:E6:76:D8
[ipv6]
method=auto
[ipv4]
method=auto
スクリプトを使用して自分でそれらのいくつかを作成したいと思います。しかし、そうする前に、 every 可能なオプションを知りたいです。
さらに、この構造は、何らかの方法でアクティブな接続にdbusを使用して取得できる情報に似ているようです。
dbus-send --system --print-reply \
--dest=org.freedesktop.NetworkManager \
"$active_setting_path" \ # /org/freedesktop/NetworkManager/Settings/2
org.freedesktop.NetworkManager.Settings.Connection.GetSettings
教えてくれます:
array [
dict entry(
string "802-11-wireless"
array [
dict entry(
string "ssid"
variant array of bytes "askUbuntu"
)
dict entry(
string "mode"
variant string "infrastructure"
)
dict entry(
string "mac-address"
variant array of bytes [
00 08 ca e6 76 d8
]
)
dict entry(
string "seen-bssids"
variant array [
string "02:1A:11:F8:C5:64"
string "02:1A:11:FD:1F:EA"
]
)
]
)
dict entry(
string "connection"
array [
dict entry(
string "id"
variant string "askUbuntu"
)
dict entry(
string "uuid"
variant string "81255b2e-bdf1-4bdb-b6f5-b94ef16550cd"
)
dict entry(
string "timestamp"
variant uint64 1383146668
)
dict entry(
string "type"
variant string "802-11-wireless"
)
]
)
dict entry(
string "ipv4"
array [
dict entry(
string "addresses"
variant array [
]
)
dict entry(
string "dns"
variant array [
]
)
dict entry(
string "method"
variant string "auto"
)
dict entry(
string "routes"
variant array [
]
)
]
)
dict entry(
string "ipv6"
array [
dict entry(
string "addresses"
variant array [
]
)
dict entry(
string "dns"
variant array [
]
)
dict entry(
string "method"
variant string "auto"
)
dict entry(
string "routes"
variant array [
]
)
]
)
]
このタイプの入力を渡すdbus(/ org/freedesktop/NetworkManager/SettingsのAddSettings())を使用して新しい設定ファイルを作成できます。この構造を説明し、すべての可能なオプションを教えてくださいも役立ちます。わかりました、これは辞書{文字列、辞書{文字列、バリアント}}です。
構成ファイルを直接作成する場合とdbusを使用する場合に違いはありますか?
このファイルは、ユーザーが編集するためのものではなく、Network Managerツールによって編集するためのものです。以下を使用してマニュアルを読むことができます。
man nm-settings
ファイル
/etc/NetworkManager/system-connections or distro plugin-specific location
リストは長すぎる/広すぎるため、いつでも変更される可能性があります。したがって、マニュアルページはNMバージョンと同期されるため、使用することをお勧めします。
Braiam's answer (コメントには長すぎます)に追加し、上記の/etc/NetworkManager/system-connections/askUbuntu
という名前のキーファイルでアドレス/識別子の衝突を回避するための潜在的に有用な詳細:
1)システム内の既存のUUIDと衝突しないようにするために、端末でuuidgen
を実行し、セクションuuid=
のキー[connection]
に出力を貼り付けるランダムUUIDを作成できます。ファイル/etc/NetworkManager/system-connections/askUbuntu
。
2)国内のホームネットワーク(ゲートウェイ内で安全で健全な)で既に使用されている別のIPv4と衝突しないように(たとえば、ゲートウェイ内で安全で)、192.168.0.0から192.168.255.255の範囲のアドレスを選択できます。セクション[ipv4]
、キーmethod=
をmanual
に変更し、選択したアドレスでキーaddress1=
を作成します。
2.1)アドレスのアイデアがわからない場合は、ターミナルでshuf -i 1:255 -n 2
を実行して、最後の位置を取得できます-65kの衝突で1回のチャンス