SOLVED - Re: F20 - What replaced start_udev - Re: creating 70-persistent-net.rules

Robert Moskowitz rgm at htt-consult.com
Tue Aug 26 13:44:55 UTC 2014


On 08/26/2014 09:02 AM, Robert Moskowitz wrote:
> It appears to be
>
> udevadm
>
> Which is so complex.  According to the man page 'command 
> --reload-rules' does NOT change any device that has existing rules. So 
> by that, if you change a rule, tough luck.  It is SUPPOSE to be 
> automatic.
>
> I have tried exporting the dev-db and looking for the mac info. But 
> have not succeeded yet.

I had to carefully scan down the db and found:

P: /devices/platform/sunxi_emac.0/net/eth0
E: DEVPATH=/devices/platform/sunxi_emac.0/net/eth0
E: ID_MM_CANDIDATE=1
E: ID_NET_NAME_MAC=enx02560201f3b9
E: IFINDEX=2
E: INTERFACE=eth0
E: SUBSYSTEM=net
E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/eth0
E: TAGS=:systemd:
E: USEC_INITIALIZED=104918

So the macaddr was being registered to udev.  So I started playing with 
the ifcfg0-eth0 file until I found the culprit.  The line:

NM_CONTROLLED="no"

Was really meaning no NetworkManager control of the interface, and since 
network is inactive by default, no eth0!  Dah.  So I just deleted that 
line and let NetworkManager control the interface, as I DO want RA to 
provide the IPv6 info.  This is way I am changing the MAC address, so I 
get an IPv6 address I can work with to put in DNS and can more easily 
change IPv6 prefixes as needed.  Can even change which system I use as 
long as the rules are right, as I set the macaddr.  Local Scope mac 
addresses can be your friend...

thanks for putting up with me as I dug into this one.

What I get from copying ifcfg-eth0 from a Centos6 system to F20... :)

>
> On 08/26/2014 08:23 AM, Robert Moskowitz wrote:
>> All the instructions I have found for 70-persistent-net.rules call 
>> for running:
>>
>> start_udev
>>
>> But it is not on ANY of my f20 systems, arm or intel.  Something 
>> changed.  Most likely related to systemd stuff.
>>
>> So any pointers would be appreciated, as I still don't have this 
>> working.
>>
>>
>> On 08/25/2014 06:19 PM, Robert Moskowitz wrote:
>>>
>>> On 08/25/2014 05:05 PM, Digimer wrote:
>>>> On 25/08/14 04:45 PM, Robert Moskowitz wrote:
>>>>>
>>>>> On 08/25/2014 03:57 PM, Digimer wrote:
>>>>>> On 25/08/14 03:52 PM, Robert Moskowitz wrote:
>>>>>>> This is on a f20 arm system, but it should be like any F20 
>>>>>>> system. Yeah,
>>>>>>> famous last words.
>>>>>>>
>>>>>>> So I want a 70-persistent-net.rules so I can specify the MAC 
>>>>>>> address to
>>>>>>> the device name.  Then in the ifcfg-xxxx I can change the 
>>>>>>> MACADDR to
>>>>>>> what I want.
>>>>>>>
>>>>>>> I got this working on my Redsleeve arm system, but now I need it 
>>>>>>> on my
>>>>>>> F20 arm system.
>>>>>>>
>>>>>>> So I have done a little searching on creating 
>>>>>>> 70-persistent-net.rules,
>>>>>>> and I come up with two commands:
>>>>>>>
>>>>>>> udevadm trigger
>>>>>>> udevadm trigger --action=add
>>>>>>>
>>>>>>> I have run both and no 70-persistent-net.rules
>>>>>>>
>>>>>>> help please...
>>>>>>
>>>>>> As before, you need to create it yourself. I wrote a little script
>>>>>> that will do this, which you can see here:
>>>>>>
>>>>>> https://alteeve.ca/w/Changing_Ethernet_Device_Names_in_EL7_and_Fedora_15%2B#Writing_The_udev_Rules_File 
>>>>>>
>>>>>>
>>>>>
>>>>> Thanks.  I used your script to create my rules file:
>>>>>
>>>>> # cat /etc/udev/rules.d/70-persistent-net.rules
>>>>>
>>>>> # Added by 'write_udev' for detected device 'eth0'.
>>>>> SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",
>>>>> ATTR{address}=="02:56:02:01:f3:b9", NAME="eth0"
>>>>>
>>>>> And that looked good (right madaddr and device name).  So built my
>>>>> ifcfg-eth0:
>>>>>
>>>>> # cat /etc/sysconfig/network-scripts/ifcfg-eth0
>>>>> DEVICE="eth0"
>>>>> BOOTPROTO=none
>>>>> NM_CONTROLLED="no"
>>>>> ONBOOT="yes"
>>>>> TYPE="Ethernet"
>>>>> NAME="System eth0"
>>>>> MACADDR=02:67:15:00:01:78
>>>>> MTU=1500
>>>>> DNS1=208.83.67.188
>>>>> GATEWAY="208.83.67.177"
>>>>> IPADDR="208.83.67.178"
>>>>> NETMASK="255.255.255.240"
>>>>> HOSTNAME="miredo.htt-consult.com"
>>>>> IPV6INIT="yes"
>>>>> DNS2=2607:f4b8:3:3:9254:5400:0:188
>>>>>
>>>>> Something is missing as after the change I restarted network.services
>>>>> and got IPv6 RA errors.  So I rebooted and now no eth0 listed with
>>>>> ifconfig (or ip addr show).  So something is lacking. Almost like 
>>>>> udev
>>>>> is not running at boot?  How do I check this out?
>>>>
>>>> I've not played with IPv6 yet, and on my system it "just worked". 
>>>> So I'm not sure what to suggest. Is there a systemd udev target?
>>>
>>> SOmething like this:
>>>
>>> # systemctl list-unit-files --type=service|grep udev
>>> dracut-pre-udev.service                     static
>>> initrd-udevadm-cleanup-db.service           static
>>> systemd-udev-settle.service                 static
>>> systemd-udev-trigger.service                static
>>> systemd-udevd.service                       static
>>>
>>>
>>
>



More information about the users mailing list