J'avais toujours compris qu'il ne faut jamais utiliser allow-hotplug comme un équivalent à auto dans un fichier interfaces.
Récemment, j'ai encore entendu le contraire mais je ne savais pas argumenter ma version. Maintenant que j'ai la réponse, je la note ici pour ne pas remettre ça en question encore une fois. :-
allow-hotplug n'est pas équivalent à auto.
Pour auto, le man nous dit :
Lines beginning with the word "auto" are used to identify the physical interfaces to be brought up when ifup is run with the -a option. (This option is used by the system boot scripts.)
Pour allow-hotplug, le man nous dit :
Lines beginning with "allow-" are used to identify interfaces that should be brought up automatically by various subsytems. This may be done using a command such as "ifup --allow=hot‐plug eth0 eth1", which will only bring up eth0 or eth1 if it is listed in an "allow-hotplug" line. Note that "allow-auto" and "auto" are synonyms.
Voilà : allow-XXXXXX attend un événement d'un sous-système. Forcément, au boot, on reçoit l'événement "la carte réseau devient up" ce qui donne l'illusion qu'allow-hotplug = auto. Mais, en réalité, allow-hotplug attend un retour de l'API udev. Et si l'on vire udevd ? Une interface en auto continue à monter au boot, une interface en allow-hotplug ne monte plus automatiquement.
Pourquoi virer udevd ?