ฉันต้องทำสิ่งที่คล้ายกับสิ่งนี้ แต่ต้องการให้อุปกรณ์ไม่มาเลย เราได้ทำการปิดบังพอร์ตอีเธอร์เน็ตในอุปกรณ์ที่ใช้ลินุกซ์ดังนั้นจึงไม่ควรปรากฏขึ้นเลย
ฉันทำสิ่งนี้ด้วยกฎของ udev
กฎ udev นี้จะบอก linux ให้ลบอุปกรณ์ pci เมื่อมีการเพิ่มอุปกรณ์เครือข่ายที่มี ID_NET_NAME_ONBOARD ของ eno2 /etc/udev/rules.d/90-disable-eno2.rules
เพิ่มไปยังเช่น
ACTION=="add", SUBSYSTEM=="net", ENV{ID_NET_NAME_ONBOARD}=="eno2", RUN+="/bin/sh -c 'echo 1 > /sys$DEVPATH/device/remove'"
ตัวแปรสภาพแวดล้อมเช่นมายากล ID_NET_NAME_ONBOARD ถูกกำหนดโดย udev ที่นี่ ฉันได้คัดลอกตัวอย่างจากความคิดเห็นในไฟล์ด้านล่าง
PCI Ethernet card with firmware index "1":
ID_NET_NAME_ONBOARD=eno1
ID_NET_NAME_ONBOARD_LABEL=Ethernet Port 1
PCI Ethernet card in hotplug slot with firmware index number:
/sys/devices/pci0000:00/0000:00:1c.3/0000:05:00.0/net/ens1
ID_NET_NAME_MAC=enx000000000466
ID_NET_NAME_PATH=enp5s0
ID_NET_NAME_SLOT=ens1
PCI Ethernet multi-function card with 2 ports:
/sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/enp2s0f0
ID_NET_NAME_MAC=enx78e7d1ea46da
ID_NET_NAME_PATH=enp2s0f0
/sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.1/net/enp2s0f1
ID_NET_NAME_MAC=enx78e7d1ea46dc
ID_NET_NAME_PATH=enp2s0f1
PCI wlan card:
/sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlp3s0
ID_NET_NAME_MAC=wlx0024d7e31130
ID_NET_NAME_PATH=wlp3s0
USB built-in 3G modem:
/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.4/2-1.4:1.6/net/wwp0s29u1u4i6
ID_NET_NAME_MAC=wwx028037ec0200
ID_NET_NAME_PATH=wwp0s29u1u4i6
USB Android phone:
/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/net/enp0s29u1u2
ID_NET_NAME_MAC=enxd626b3450fb5
ID_NET_NAME_PATH=enp0s29u1u2
s390 grouped CCW interface:
/sys/devices/css0/0.0.0007/0.0.f5f0/group_device/net/encf5f0
ID_NET_NAME_MAC=enx026d3c00000a
ID_NET_NAME_PATH=encf5f0
เมื่อทดสอบกฎของคุณคุณจะต้องเรียกใช้คำสั่งดังต่อไปนี้เพื่อให้แน่ใจว่าทุกอย่างตรงกันและไวยากรณ์ถูกต้อง
# Find the path marked "P" with this command.
udevadm info --path=/sys/class/net/eno2
# Test with this command with the path from above
udevadm test --action="add" /devices/pci0000:00/0000:00:1c.4/0000:03:00.0/net/eno2 2>&1 | less