Forum Linux.debian/ubuntu initctl show-config networking

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
5
avr.
2016

Bonjour,

Il y a quelque chose qui m'échappe avec cette commande.

Le script d'init nous dit,

vagrant@ubuntu:~$ cat /etc/init.d/networking 
#!/bin/sh -e
### BEGIN INIT INFO
# Provides:          networking ifupdown
# Required-Start:    mountkernfs $local_fs urandom
# Required-Stop:     $local_fs
# Default-Start:     S
# Default-Stop:      0 6
# Short-Description: Raise network interfaces.
# Description:       Prepare /run/network directory, ifstate file and raise network interfaces, or take them down.
### END INIT INFO

PATH="/sbin:/bin"
RUN_DIR="/run/network"
IFSTATE="$RUN_DIR/ifstate"
STATEDIR="$RUN_DIR/state"

[ -x /sbin/ifup ] || exit 0
[ -x /sbin/ifdown ] || exit 0

. /lib/lsb/init-functions

CONFIGURE_INTERFACES=yes
EXCLUDE_INTERFACES=
VERBOSE=no

[ -f /etc/default/networking ] && . /etc/default/networking

verbose=""
[ "$VERBOSE" = yes ] && verbose=-v

process_exclusions() {
    set -- $EXCLUDE_INTERFACES
    exclusions=""
    for d
    do
    exclusions="-X $d $exclusions"
    done
    echo $exclusions
}

process_options() {
    [ -e /etc/network/options ] || return 0
    log_warning_msg "/etc/network/options still exists and it will be IGNORED! Please use /etc/sysctl.conf instead."
}

check_ifstate() {
    if [ ! -d "$RUN_DIR" ] ; then
    if ! mkdir -p "$RUN_DIR" ; then
        log_failure_msg "can't create $RUN_DIR"
        exit 1
    fi
    if ! chown root:netdev "$RUN_DIR" ; then
        log_warning_msg "can't chown $RUN_DIR"
    fi
    fi
    if [ ! -r "$IFSTATE" ] ; then
    if ! :> "$IFSTATE" ; then
        log_failure_msg "can't initialise $IFSTATE"
        exit 1
    fi
    fi
}

check_network_file_systems() {
    [ -e /proc/mounts ] || return 0

    if [ -e /etc/iscsi/iscsi.initramfs ]; then
    log_warning_msg "not deconfiguring network interfaces: iSCSI root is mounted."
    exit 0
    fi

    while read DEV MTPT FSTYPE REST; do
    case $DEV in
    /dev/nbd*|/dev/nd[a-z]*|/dev/etherd/e*)
        log_warning_msg "not deconfiguring network interfaces: network devices still mounted."
        exit 0
        ;;
    esac
    case $FSTYPE in
    nfs|nfs4|smbfs|ncp|ncpfs|cifs|coda|ocfs2|gfs|pvfs|pvfs2|fuse.httpfs|fuse.curlftpfs)
        log_warning_msg "not deconfiguring network interfaces: network file systems still mounted."
        exit 0
        ;;
    esac
    done < /proc/mounts
}

check_network_swap() {
    [ -e /proc/swaps ] || return 0

    while read DEV MTPT FSTYPE REST; do
    case $DEV in
    /dev/nbd*|/dev/nd[a-z]*|/dev/etherd/e*)
        log_warning_msg "not deconfiguring network interfaces: network swap still mounted."
        exit 0
        ;;
    esac
    done < /proc/swaps
}

ifup_hotplug () {
    if [ -d /sys/class/net ]
    then
        ifaces=$(for iface in $(ifquery --list --allow=hotplug)
                do
                    link=${iface##:*}
                    link=${link##.*}
                    if [ -e "/sys/class/net/$link" ] && [ "$(cat /sys/class/net/$link/operstate)" = up ]
                    then
                        echo "$iface"
                    fi
                done)
        if [ -n "$ifaces" ]
        then
        ifup $ifaces "$@" || true
        fi
    fi
}

case "$1" in
start)
    if init_is_upstart; then
        exit 1
    fi
    process_options
    check_ifstate

    if [ "$CONFIGURE_INTERFACES" = no ]
    then
        log_action_msg "Not configuring network interfaces, see /etc/default/networking"
        exit 0
    fi
    set -f
    exclusions=$(process_exclusions)
    log_action_begin_msg "Configuring network interfaces"
    if ifup -a $exclusions $verbose && ifup_hotplug $exclusions $verbose
    then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    ;;

stop)
    if init_is_upstart; then
        exit 0
    fi
    check_network_file_systems
    check_network_swap

    log_action_begin_msg "Deconfiguring network interfaces"
    if ifdown -a --exclude=lo $verbose; then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    ;;

reload)
    if init_is_upstart; then
        exit 1
    fi
    process_options

    log_action_begin_msg "Reloading network interfaces configuration"
    state=$(ifquery --state)
    ifdown -a --exclude=lo $verbose || true
    if ifup --exclude=lo $state $verbose ; then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    ;;

force-reload|restart)
    if init_is_upstart; then
        exit 1
    fi
    process_options

    log_warning_msg "Running $0 $1 is deprecated because it may not re-enable some interfaces"
    log_action_begin_msg "Reconfiguring network interfaces"
    ifdown -a --exclude=lo $verbose || true
    set -f
    exclusions=$(process_exclusions)
    if ifup -a --exclude=lo $exclusions $verbose && ifup_hotplug $exclusions $verbose
    then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    ;;

*)
    echo "Usage: /etc/init.d/networking {start|stop|reload|restart|force-reload}"
    exit 1
    ;;
esac

exit 0

# vim: noet ts=8

Il n'y a pas de fichier d'override,

vagrant@ubuntu:~$ ll /etc/init.d/networking*
-rwxr-xr-x 1 root root 4479 Mar 20  2014 /etc/init.d/networking*

cf http://upstart.ubuntu.com/cookbook/#disabling-a-job-from-automatically-starting

Alors comment se fait il qu'upstart puisse me sortir autant de stanzas, puisqu'à priori celles ci n'existent pas..

vagrant@ubuntu:~$ initctl show-config networking
networking
  emits static-network-up
  emits net-device-up
  emits deconfiguring-networking
  start on (((local-filesystems and (stopped udevtrigger or container)) or runlevel [2345]) or stopped networking RESULT=failed PROCESS=post-stop EXIT_STATUS=100)
  stop on unmounted-remote-filesystems

??

Merci.

  • # /etc/init != /etc/init.d

    Posté par  . Évalué à 4.

    Attention, à ma connaissance (je n'ai eu affaire à Upstart que sous RHEL6), les fichiers d'override ne s'utilisent qu'avec les scripts Upstart natifs (ceux dans /etc/init) et pas la couche de compatibilité SysVRC (/etc/init.d)

    Il y a probablement un service /etc/init/networking.conf avec qui /etc/init.d/networking n'a rien à voir !

    • [^] # Re: /etc/init != /etc/init.d

      Posté par  . Évalué à 0.

      vagrant@ubuntu:~$ ll /etc/init/networking.conf 
      -rw-r--r-- 1 root root 2493 Mar 20  2014 /etc/init/networking.conf

      obvious! le boulay… qu'on me tape à coups de -1.

      (je n'ai eu affaire à Upstart que sous RHEL6)

      $ initctl --version
      initctl (upstart 1.12.1)
      Copyright (C) 2006-2014 Canonical Ltd., 2011 Scott James Remnant

      Je pense qu'on est bon là.

  • # sinon ca pourrait venir de ca

    Posté par  . Évalué à 4.

    . /lib/lsb/init-functions

    qui charge des fonctions qui ne sont pas dans le fichier que tu as copier/coller

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.