Skrivet av Meto:
Ja vet ni varför? Hört om någon som nämnde att de har bytt namn trodde han hade missförstått något men alltså sant
Det har att göra med att man vill ha beständiga enhetsnamn för nätverksgränssnitten.
eth0
och eth1
säger i någon mån att eth0
var det gränssnitt som sågs "först" när datorn startade. Dels ger detta problemet att om man installerar ett extra nätverkskort (eller tar bort ett gammalt, eller någon hårdvara temporärt strular) så skulle potentiellt namngivningen kunna ändras, vilket i sin tur skulle kunna ha stora konsekvenser för säkerhet och allmän tillförlitlighet. Därutöver så har begreppet "först" blivit klart mer komplext sedan Linuxsystem skiftade till att använda parallelliserade bootprocesser — att ha en dator där nätverksgränssnittens namn inte är deterministiska är ett stort problem, kan jag tyvärr säga av personlig erfarenhet .
Denna problematik känns igen från hur lagringsenheter tidigare namngavs beroende på fysisk inkoppling (/dev/hda
, /dev/hdb
, etc.), men idag oftast adresseras via UUID-namn och liknande metoder (se ls -lR /dev/disk
), där /dev/hdX
-stilen (idag snarare /dev/sdX
) i praktiken bara finns kvar som en bekvämlighetsmappning.
På liknande sätt har distributioner faktiskt redan försökt lösa nätverksgränssnittens namn, där MAC-adresserna använts för att kunna hålla en beständig mappning mellan gränssnitt och logisk enhet: har en enhet väl givits namnet eth2
så har den fått behålla detta på maskinen, även om eth0
och eth1
inte längre är kvar. Detta ger dock en del negativa konsekvenser, så som att nätverkskonfigurationen får ett beroende på att kunna skriva mappningar till permanent lagring väldigt tidigt i bootprocessen, och återigen potentiella kapplöpningsproblem under boot för att sätta "rätt" namn på gränssnitten.
Man hade möjligen kunnat behålla ethX
-standarden och lägga mer krut på att få tilldelningen robust, men i praktiken vore det ingen vinst utöver någon sorts falsk bekvämlighet för vissa användare, samtidigt som det ofrånkomligen skulle skapa en hård koppling mellan den konfiguration som var lagrad på en viss enhet och hårdvaran. I stället slutade man låtsas som att världen var enkelt inkrementellt uppräknelig och namnger i stället gränssnitten förutsägbart (åtminstone så länge hårdvaran inte ändras alltför mycket (nytt moderkort, kort byter plats, etc.)).
Längre förklaring här: Predictable Network Interface Names [freedesktop.org].