Dosya /etc/udev/rules.d/70-persistent-net.rulesyeniden başlatma sırasında udev bulunan bir Linux sisteminde otomatik olarak oluşturulur. Ancak sunucuyu yeniden başlatmadan bu komut dosyasının (komutla) nasıl oluşturulacağını bilmek istiyorum.
Bir süredir dolaşıyordum ve kurallar dosyasının bu komut dosyası tarafından oluşturulduğunu gördüm:
/lib/udev/write_net_rules
Ancak, bu komut dosyasını komut satırından çalıştırmak imkansızdır, çünkü (sanırım) udev tarafından başlatılmasını istiyor, bazı ortam değişkenleri düzgün ayarlanmış. Manuel olarak başlatıldığında "eksik $ INTERFACE" hata mesajı yazdırılır. Komut dosyasını başlatmadan önce env değişkenini INTERFACE = eth0 ayarlasam bile, yine de "geçerli eşleşme eksik" hatasını yazdırıyor. Bahsetmiyorum ki iki arayüzüm var ( eth0ve eth1) ve her ikisi için de kurallar dosyasının oluşturulmasını istiyorum.
Ayrıca betiği udev'in kendisinden başlatacağını umarak böyle udev olaylarını tetiklemeyi düşünüyordum, ancak hiçbir şey değişmiyor:
udevadm trigger --type=devices --action=change
Peki, herhangi biri /etc/udev/rules.d/70-persistent-net.rulesyeniden başlatmadan dosyadaki kalıcı net kuralların nasıl yeniden oluşturulacağını biliyor mu?
70-persistent-net.rulesne de /lib/udev/write_net_rulessenaryoya sahip olduğum için alakalı olabilir . Bu nedenle, kontrol edemiyorum, ancak muhtemelen $INTERFACEdeğişken betiğin kendisinde ayarlanır. Büyük olasılıkla bir argüman olarak geçilir. Senaryonun içeriğini bize gösterebilir misin?
$INTERFACEdeğişken kullanır . Basitçe kullanılan, asla beyan edilmeyen çok daha fazla değişken var. Çünkü udev tarafından çağrılır ve udev tüm env değişkenlerini önyüklemede komut dosyasını çalıştırmadan önce ayarlar.