networking.service ExecStartPre = (code = exited, status = 1 / FAILURE)

0

Eu tenho uma pergunta, por que ExecStartPre = tem um status de FAILURE neste caso ?, porque tudo parece bem e funcionando. Alguém poderia explicar o que está acontecendo?

● networking.service - Raise network interfaces
   Loaded: loaded (/lib/systemd/system/networking.service; enabled; vendor preset: enabled)
   Active: active (exited) since Tue 2018-04-03 05:04:52 MSK; 3min 54s ago
     Docs: man:interfaces(5)
  Process: 473 ExecStart=/sbin/ifup -a --read-environment (code=exited, status=0/SUCCESS)
  Process: 467 ExecStartPre=/bin/sh -c [ "$CONFIGURE_INTERFACES" != "no" ] && [ -n "$(ifquery --read-environment --list --exclude=lo)" ] && udevadm settle (code=exited, status=1/FAILURE)
 Main PID: 473 (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 36864)
   CGroup: /system.slice/networking.service

апр 03 05:04:52 debian systemd[1]: Starting Raise network interfaces...
апр 03 05:04:52 debian systemd[1]: Started Raise network interfaces.

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.2  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::215:5dff:fe01:303  prefixlen 64  scopeid 0x20<link>
        ether 00:15:5d:01:XX:XX  txqueuelen 1000  (Ethernet)
        RX packets 9032  bytes 6039361 (5.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6961  bytes 915411 (893.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 114  bytes 34267 (33.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 114  bytes 34267 (33.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
por Mikhail Rakhmanov 03.04.2018 / 04:53

1 resposta

2

Isso significa apenas que este comando saiu com status 1:

/bin/sh -c '[ "$CONFIGURE_INTERFACES" != "no" ] && [ -n "$(ifquery --read-environment --list --exclude=lo)" ] && udevadm settle'

Ele pode ter saído com o status 1 se:

  • CONFIGURE_INTERFACES=no está definido (em seu / etc / default / networking); ou
  • ifquery --read-environment --list --exclude=lo retorna vazio; ou
  • udevadm settle sai 1

Os dois primeiros não são realmente erros per se ... Eles estão lá principalmente para ajudar a decidir quando o udevadm settle precisa ser executado ... Então, de certa forma, você poderia considerar que o ExecStartPre falha com status = 1 pode ser "normal" de uma determinada maneira.

Verificando nos meus sistemas, eu tenho um em que o comando ifquery retorna a saída vazia, então é bem provável que a explicação para o status = 1.

Eu acho que o Debian poderia ter feito isso um pouco melhor, usando um if em vez de && , pois nesse caso, se a condição não for verdadeira, o comando não sairá com o status 1, mas 0 :

/bin/sh -c 'if [ "$CONFIGURE_INTERFACES" != "no" ] && [ -n "$(ifquery --read-environment --list --exclude=lo)" ]; then udevadm settle; fi'
    
por 03.04.2018 / 06:42

Tags