Многие мои скрипты перестали работать после установки Ubuntu 15.10, и мне трудно запомнить это новое имя, так как я годами привык к ethx и wlanx. Есть ли причина для этого изменения? Должен ли я привыкнуть к этому или я могу просто переименовать его и вернуться к старому доброму eth0?
Основная идея заключается в том, что в отличие от предыдущей схемы именования * nix, где поиск оборудования происходит в произвольном порядке и может меняться между перезагрузками, здесь имя интерфейса зависит от физического расположения оборудования и может быть предсказано / угадано посмотрев на lspci или lshw выход. И наоборот, мы можем угадать информацию о его физическом положении в системе pci. В вашем случае это была бы шина pci 0, слот 2. Согласно с в freedesktop.org статья На самом деле существует 3 способа присвоения имени интерфейса: на основе BIOS / прошивки для встроенных карт, на основе информации PCI и на основе MAC-адреса интерфейса. Другие примеры приведены здесь.
Согласно с в freedesktop.org страница одна из причин перехода на предсказуемое именование заключается в том, что классическое соглашение об именовании может привести к угрозам безопасности программного обеспечения в многоинтерфейсных системах, когда устройства добавляются и удаляются при загрузке. Кроме того, согласно комментарий около Сэм Хейнс, "На большом сервере с большим количеством портов Ethernet это бесценно: вы можете сразу определить, какой интерфейс подключается к какому порту, а добавление или удаление оборудования не изменяет имена других портов".
FWIW the freedesktop.org Файл PredictableNetworkInterfaceNames ссылается на комментарии исходного файла как на канонические, но этот файл был изменен для удаления комментариев - см. https://github.com/systemd/systemd/pull/12518.
@Mike мой босс (= ведущий программист) тоже всегда соглашается со мной в этом, но тогда он всегда использует жестко закодированные пути и устройства… и я ругаю его снова и снова