KDE 플라즈마 5.27.5와 함께 Debian 12.2 사용하기
외부 장치에 대한 정보는 어디서 nmcli device
얻을 수 있나요 docker0
?virbr0
# nmcli device console output
DEVICE TYPE STATE CONNECTION
eno1 ethernet connected Wired_eno1
lo loopback connected (externally) lo
docker0 bridge connected (externally) docker0
virbr0 bridge connected (externally) virbr0
enp5s0 ethernet unavailable --
완전성을 위해 `의 내용은 다음과 같습니다.
cat `/etc/network/interfaces
# console output
source /etc/network/interfaces.d/*
auto lo
iface lo inet loopback
ls -l /etc/NetworkManager/system-connections/
# console output
-rw------- 1 root root 322 Nov 15 09:15 Forti_VPN
-rw------- 1 root root 210 Nov 14 21:48 Wired_eno1
읽다Linux에서 NetworkManager 시작하기. NetworkManager가 D-Bus 정보를 사용하여 각 NIC를 초기화한다는 것을 배웠습니다.
udev 데몬은 시스템에 설치된 각 네트워크 인터페이스 카드(NIC)에 대해 네트워크 규칙 파일에 항목을 만듭니다. D-Bus는 새로운 네트워크 장치(유선 또는 무선)가 있음을 NetworkManager에 알립니다. 그런 다음 NetworkManager는 D-Bus의 트래픽을 수신하고 새 장치에 대한 구성을 생성하여 응답합니다. 기본적으로 이러한 구성은 RAM에만 저장되며 영구적이지 않습니다. 컴퓨터가 시작될 때마다 생성되어야 합니다.
하지만 물리적 장치나 가상 장치 등 네트워크 장치에 대한 udev
정보는 어디서 얻을 수 있습니까?eno1
enp5s0
docker0
virbr0
udev
NetworkManager에서 검색한 네트워크 장치에 대한 정보를 쿼리하기 위해 어떤 수동 단계나 명령을 실행할 수 있는지 알아보십시오 .
답변1
커널은udev 이벤트추가, 변경, 삭제를 위해모든 장치, 네트워크 장비를 포함합니다. 이러한 이벤트를 모니터링 한 결과 udev
, 해당 드라이버는 하드웨어를 감지하면 모든 네트워크 장치를 인식하게 됩니다.
udevadm info -q all -n <device node>
udev에서 네트워크 장치를 쿼리하려면 해당 네트워크 장치에 장치 노드가 없으므로 사용할 수 없습니다 . 하지만 당신은할 수 있는sysfs 경로를 사용하여 쿼리합니다.
udevadm info -q all -p /sys/class/net/<interface name>
또는
udevadm info -q all -a -p /sys/class/net/<interface name>
이전 명령은 새 네트워크 인터페이스에 사용할 수 있는 모든 이름을 알려줍니다.예측 가능한 네트워크 인터페이스 이름 체계, 다양한 ID_NET_NAME_*
환경 변수가 있습니다.
후자의 명령은 네트워크 인터페이스 장치 및 모든 상위 장치(해당되는 경우)에 대한 모든 udev 속성을 나열합니다. 이는 일부 특이한 속성을 기반으로 네트워크 인터페이스에 이름을 할당하는 등 사용자 정의 udev 규칙을 작성해야 하는 경우 까다로울 수 있습니다. . 효과가있다.