2024-06-03 16:18:25 +02:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
# Verzeichnis für die systemd-Netzwerk-Units
|
|
|
|
output_dir="/etc/systemd/network"
|
|
|
|
|
|
|
|
# Überprüfen, ob das Ausgabe-Verzeichnis existiert, ansonsten erstellen
|
|
|
|
if [ ! -d "$output_dir" ]; then
|
|
|
|
mkdir -p "$output_dir"
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Alle Netzwerk-Interfaces auslesen und unerwünschte Interfaces herausfiltern
|
|
|
|
interfaces=$(ls /sys/class/net | grep -Ev '^(lo|tap|vlan|vmbr|bonding|fw|veth)')
|
|
|
|
|
|
|
|
# Für jedes Interface ein systemd-Netzwerk-File erstellen
|
|
|
|
for interface in $interfaces; do
|
|
|
|
mac_address=$(cat /sys/class/net/$interface/address)
|
2024-06-03 16:26:23 +02:00
|
|
|
file="$output_dir/10-net$interface.link"
|
2024-06-03 16:18:25 +02:00
|
|
|
cat <<EOF > $file
|
|
|
|
[Match]
|
|
|
|
MACAddress=$mac_address
|
|
|
|
|
|
|
|
[Link]
|
|
|
|
Name=$interface
|
|
|
|
EOF
|
|
|
|
echo "Datei erstellt: $file"
|
|
|
|
done
|
|
|
|
|
|
|
|
echo "systemd-Netzwerk-Units wurden erfolgreich in $output_dir erstellt."
|