标签: networkmanager

导致在网络启动后执行脚本?

我对 systemd 比较陌生,正在学习它的架构。

现在,我正试图弄清楚如何使自定义 shell 脚本运行。该脚本需要运行后,网络层已启动。

我正在运行 Arch,使用 systemd 和 netctl。

为了测试,我编写了一个简单的脚本,它只执行ip addr list > /tmp/ip.txt. 我为此脚本创建了以下服务文件。

(/etc/systemd/system/test.service)
[Unit]
Description=test service

[Service]
ExecStart=/root/test.script

[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)

然后我启用了脚本,

systemctl enable test
Run Code Online (Sandbox Code Playgroud)

重新启动后,脚本确实会运行,但它会在网络启动之前运行。换句话说,中的输出ip.txt显示没有分配给主接口的 IPv4 地址。到我登录时,IPv4 地址确实已分配并且网络已启动。

我猜我可以通过弄乱WantedBy参数来改变脚本运行的点,但我不知道该怎么做。

有人能指出我正确的方向吗?

networkmanager systemd

125
推荐指数
3
解决办法
17万
查看次数

NetworkManager、networkd、netplan、ifupdown2 和 iproute2 究竟是如何交互的?

我正在学习关于Linux的Kubuntu我18.04工作站上的网络,我看到有两个NetworkManagernetworkd-dispatcher正在运行:

oleg@eclectic:~$ sudo ps -ef | grep -i net
root        56     2  0 Oct11 ?        00:00:00 [netns]
root      1097     1  0 Oct11 ?        00:00:02 /usr/sbin/NetworkManager --no-daemon
root      1098     1  0 Oct11 ?        00:00:00 /usr/bin/python3 /usr/bin/networkd-dispatcher --run-startup-triggers
root      1250     1  0 Oct11 ?        00:00:02 /usr/sbin/inetd
root      1593  1097  0 Oct11 ?        00:00:00 /sbin/dhclient -d -q -sf /usr/lib/NetworkManager/nm-dhcp-helper...
Run Code Online (Sandbox Code Playgroud)

NetworkManager似乎被配置为通过netplan以下方式处理“一切” :

oleg@eclectic:~$ cat /etc/netplan/01-network-manager-all.yaml 
# Let NetworkManager manage all devices on this system
network:
  version: 2 …
Run Code Online (Sandbox Code Playgroud)

networking networkmanager linux-kernel systemd-networkd netplan

30
推荐指数
2
解决办法
2万
查看次数

如何通过网络管理器按名称删除连接

您如何使用nmcli按名称删除wifi连接?

从我读过的内容来看,它只允许通过 UUID 删除:

nmcli connection delete <uuid>
Run Code Online (Sandbox Code Playgroud)

我发现按名称删除的最简单方法是从名称中查找 UUID 并将其传入:

nmcli con delete `nmcli --fields NAME,UUID con list | grep -i mynetworkname | awk '{print $2}'`
Run Code Online (Sandbox Code Playgroud)

有没有更简单的方法?

networkmanager

29
推荐指数
2
解决办法
7万
查看次数

由于错误,无法使用 NetworkManager 连接到任何 wifi:需要机密,但未提供

在 MacBookPro14,3 上的 Arch Linux 上使用 NetworkManager,我无法连接到任何无线网络。我尝试连接到许多不同的 WiFi 网络(家庭、移动热点、工作),结果都一样。我试过用nmcli和来做这件事nmtui。例子:

$ nmcli dev wifi connect <SSID> password <password>
Error: Connection activation failed: (7) Secrets were required, but not provided.
Run Code Online (Sandbox Code Playgroud)

查看带有journalctl显示的日志:

wpa_supplicant[PID]: wlp3s0: CTRL-EVENT-ASSOC-REJECT bssid=00:00:00:00:00:00 status_code=16
Run Code Online (Sandbox Code Playgroud)

NetworkManager[PID]: <info> [TIMESTAMP] device (wlp3s0): state change: need-auth -> failed (reason 'no-secrets', sys-iface-state: 'managed')
Run Code Online (Sandbox Code Playgroud)

Macbook 有一个带有驱动程序 brcmfmac 的 Broadcom BCM43602。NetworkManager 和 wpa_supplicant 已安装并启用。

networking arch-linux networkmanager macintosh

27
推荐指数
3
解决办法
5万
查看次数

如何将 NetworkManager 设置导出和迁移到新系统?

如何将 NetworkManager 设置导出和迁移到新系统?

用例是:

  • 重新安装机器
  • 将网络配置从笔记本电脑移动到台式机系统(反之亦然)

应迁移所有设置,其中包括:

  • 默认和自定义网络连接
  • 带密码的wifi连接
  • VLAN 配置
  • VPN 配置(如果可能,使用密钥)

我在 Arch wiki 上查了一下,没有关于迁移的内容,所以我在这里问你们。

networking networkmanager

26
推荐指数
4
解决办法
3万
查看次数

如何在 dmesg 中禁用无用的“审核成功”日志条目

简短版本:如何在 Fedora 系统上禁用审计消息 (dmesg)?


Fedora 系统不断在 dmesg 中记录“审计:成功”消息 - 以一种极端的方式,dmesg 变得无法使用,因为它被这些消息填满(dmesg | grep -v audit为空)。这些消息完全没有用,因为它们显然想通知用户一些日常内部过程已经成功(在调试某些东西时可能会感兴趣,但在这种情况下它只是噪音)。

甚至命令行界面(切换到与非X TTY当Ctrl+ Alt+ F2)变得不可使用,因为它总是与这些审核消息混乱,这是不可能的读取实际上是由用户运行的命令的输出。例如,输入用户名(登录)后,会喷出一条审核消息(显然是告诉用户某些内容已格式化/打印成功):

审计:类型=1131审计(1446913801.945:10129):pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=fprintd comm="systemd" exe="/usr/lib/systemd/systemd" 主机名 地址=? 终端=?资源=成功'

似乎这些消息中的大多数表示“成功”,但是也有许多审核消息不包含此关键字。运行 Chromium 会触发数百个:

审计:类型=1326审计(1446932349.568:10307):auid=500 uid=500 gid=500 ses=2 pid=1593 comm="chrome" exe="/usr/lib64/chromium/chrome" sig=0 arch=c000003e系统调用=273 兼容=0 ip=0x7f9a1d0a34f4 代码=0x50000

其他消息包括:

审计:类型=1131审计(1446934361.948:10327):pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=NetworkManager-dispatcher comm="systemd" exe="/usr/lib/systemd/systemd" =?地址=? 终端=?资源=成功'

审计:类型=1103 审计(1446926401.821:10253):pid=28148 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:setcred grantors=p am_env,pam_unix"exe acct/="user/usr /crond”主机名=?地址=? 终端=cron res=成功'

通常,大多数最近的审计消息(在撰写本文时)都包含关键字“ NetworkManager ”或“ chrome ”。

如何完全禁用这些消息?


附加点:

  • 如果有人可能会想“您应该阅读和分析这些审核消息,而不是禁用它们,它们可能很重要”,不,它们不重要,它们几乎完全是“成功”消息。没有人需要被告知应该有效的东西实际上有效。但是,如果记录了一条真正重要的消息,那么在成千上万条无关紧要的消息风暴中永远不会注意到它。在任何情况下,这个特定系统都不需要审计日志(无论如何它都在受控环境中运行)。 …

linux fedora networkmanager systemd audit

20
推荐指数
3
解决办法
3万
查看次数

谁阅读/etc/resolv.conf?

我的 Centos 7 服务器无法正确解析域名。据我所知,在现代 Linux 系统/etc/resolv.conf中,通常使用dhclient, dnsmasqNetwork Manager.

因此,我有一个关于现代 Linux 中网络堆栈的一般理论问题:

谁负责阅读/etc/resolv.conf?域名解析涉及哪些参与者(服务或内核子系统)?

简短回答: Arch linux 手册说域名解析的高级配置 /etc/nsswitch.conf在名称服务切换glibcAPI 中完成并依赖的。

glibc使用nss-resolve函数向 DNS 服务器发送 DNS 请求。

通常现代 CentOS 系统nss-resolve 依赖于 systemd-resolved服务。If/etc/resolv.conf是由类似的东西生成的dhclient-scriptsystemd-resolved读取它并在兼容模式下工作,模拟旧系统(如BINDDNS 客户端)的行为。

networking dns networkmanager resolv.conf

18
推荐指数
2
解决办法
4869
查看次数

如何使用网络管理器在 Fedora 中设置 DNS 解析器?

我想试用 Google 公共 DNS。为此,我需要更改名称服务器地址。我知道它在文件中/etc/resolv.conf,但是每当我启动时network-manager,它都会用它通过使用 DHCP 获得的值覆盖该文件中的值。

我怎么告诉它不要这样做?我查看了 GUI,但我只能找到添加更多 IP 地址的选项。

下面是奖杯:)

在此处输入图片说明

linux fedora dns networkmanager

17
推荐指数
2
解决办法
9万
查看次数

网络管理器未列出 wifi

当我使用 NetworkManager 命令工具扫描无线网络时,输出为空。

root@radxa:~# nmcli dev wifi list
SSID    BSSID   MODE    FREQ    RATE    SIGNAL  SECURITY    ACTIVE
root@radxa:~#
Run Code Online (Sandbox Code Playgroud)

但如果使用iwlist,扫描就可以了:

root@radxa:~# iwlist wlan0 scan
          Cell 01 - Address: 78:A1:06:7F:CF:C9
                    ESSID:"olivia"
                    Protocol:IEEE 802.11bgn
                    Mode:Master
                    Frequency:2.462 GHz (Channel 11)
                    Encryption key:on
                    Bit Rates:300 Mb/s
                    IE: WPA Version 1
                        Group Cipher : CCMP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : PSK 
                    Extra:rsn_ie=30140100000fac040100000fac040100000fac020000
                    IE: IEEE 802.11i/WPA2 Version 1
                        Group Cipher : CCMP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : PSK …
Run Code Online (Sandbox Code Playgroud)

linux wifi networkmanager nmcli

17
推荐指数
1
解决办法
5万
查看次数

是否有在控制台中显示 WiFi 信息的工具?

我可以在命令行中查看检测到的 WiFi 网络详细信息(如信号强度、加密等)吗?越详细——越好。

networking wifi networkmanager

16
推荐指数
3
解决办法
3万
查看次数