какая разница между ip link set eth0 down
и ip link set dev eth0 down
?
Разница между командами нигде не задокументирована.
Нет никакой разницы; dev
не является обязательным при условии, что имя устройства нельзя спутать с другим ключевым словом, которое ip
команда понимает. Например, если у вас был интерфейс с именем bridge
тогда вам придется использовать dev
так как bridge
также ключевое слово, которое ip
использует.
Это недокументированное поведение, но, похоже, оно работает.
Вы узнаете, если столкнетесь с ip
парсером опций, если вы получили (немного грамматически некорректное) сообщение вроде:
either "dev" is duplicate, or "bridge" is a garbage.
Для вещей, которые абсолютно должны постоянно работать на 100%, например сценариев конфигурации сети, вы должны включить dev
просто чтобы убедиться.