until [ "$(cat /sys/class/net/eth0/operstate)" = "up" ]; do sleep 1;done
ip link set up eth0
não está bloqueando. Depois de retornar, seu resultado só é visível no sistema alguns μ / ms depois, principalmente acompanhado por uma mensagem do kernel do driver do dispositivo, como r8169 0000:25:00.0 eth0: link up
.
Neste momento, por ex. /sys/class/net/eth0/operstate
é inicializado e armazena os valores up
ou down
, dependendo se um cabo está conectado no caso de um dispositivo ethernet. Antes de colocar o link, operstate
é sempre down
.
Como posso esperar pelo resultado de ip link set up
, ou seja, o momento em que /sys/class/net/eth0/operstate
e outros eth0/*
arquivos mantêm seus valores atualizados?
until [ "$(cat /sys/class/net/eth0/operstate)" = "up" ]; do sleep 1;done
Tags kernel network-interface