UbuntuとDebianでネットワークを再起動する推奨方法は何ですか


37

次を使用してネットワークを再起動すると:

/etc/init.d/networking restart

私はこの警告を受け取ります:

 Running /etc/init.d/networking restart is deprecated because it may not enable again some interfaces

それでは、変更を行った後にネットワークを再起動する最良の方法は何でしょうか?

netbaseパッケージはdebianから継承されるため、この問題はDebianにも当てはまります。

回答:


27

再起動オプションがなくなると言っているだけです

/etc/init.d/networking stop; /etc/init.d/networking start

1行しかないことに注意してください!ネットワークを介してネットワーク再起動を実行する場合、これは重要です。


28
2つのコマンド:-/リモートにいる場合は悪い考えです。1つのライナーを使用する方がよい:/etc/init.d/networking stop; /etc/init.d/networking start
hmontoliu

@hmontoliu:開始コマンドを忘れることができないため、非推奨の再起動を使用するのが賢明なようです
mbx

1
リモートにいる場合は、常に使用する必要がありますscreen
Avio

5
リモートサーバーでネットワークをシャットダウンすると、画面はあまり役に立ちません。この場合、何らかの直接アクセスを検索する必要がありますが、これは必ずしも便利ではありません。
metakermit

1
stopstart明らかに非推奨ではありませんが、組み合わせて使用​​すると、以前と同じ潜在的な問題が発生restartします。
-HåkanLindqvist 14

19

パラメータなしでinit.dコマンドを実行すると、どちらが使用されているかがわかります。

~# /etc/init.d/networking 
Usage: /etc/init.d/networking {start|stop}

再起動は非推奨のようです

Debianでは少なくとも以下の理由で非推奨です:

netbase (4.38) unstable; urgency=low

  * Create /etc/sysctl.d/bindv6only.conf on upgrades and new installs
    to set net.ipv6.bindv6only=1.
  * Made the init script check for swap over the network. (Closes: #540697)
  * Temporarily depend on initscripts to work around a bug in multistrap.
    (Closes: #556399)
  * etc-services: added sieve (4190/tcp).
  * etc-services: removed sieve (2000/tcp). (Closes: #555664)
  * Made the init script warn that using the force-reload and restart
    parameters is not a good idea. (Closes: #550240)

 -- Marco d'Itri <md@linux.it>  Sun, 06 Dec 2009 17:09:41 +0100

関連するバグ#550240はこちら

これは非常に厄介です。リモートからnetwokringを再起動するには、おそらく最も安全で最も安全な方法は、スクリーンセッション内で次を実行することです。

~# /etc/init.d/networking stop; /etc/init.d/networking start

今日のようnetworkinginitスクリプト、restartおよびforce-reload動作するほとんどの状況。警告を無視し、それでもrestartを使用することは合理的に安全だと思います。しかし、私はストップ+スタートの方法で行きます:-)

case "$1" in
start)
    process_options

    log_action_begin_msg "Configuring network interfaces"
    if ifup -a; then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    ;;

stop)
    check_network_file_systems
    check_network_swap

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

force-reload|restart)
    process_options

    log_warning_msg "Running $0 $1 is deprecated because it may not enable again some interfaces"
    log_action_begin_msg "Reconfiguring network interfaces"
    ifdown -a --exclude=lo || true
    if ifup -a --exclude=lo; then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    ;;

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

本当に?再起動は、リモートで作業しているときに便利です!
アントニウスブロッホ

2
編集をご覧ください。弾丸のない再起動は、停止+開始よりも優れていることに同意します
hmontoliu

stop+ startは、まったく同じことを行うように見えることに注意する価値があると思いrestartます。推奨されないオプションを使用しないこと以外は、これ以上安全ではないようです(この操作を防ぐために非推奨です)。
-HåkanLindqvist 14

5

を使用しますnohup sh -c "/etc/init.d/networking stop; sleep 2; /etc/init.d/networking start"sleep 2おそらく再起動の問題はハードウェアに依存するレイテンシーと関係があると思うので付け加えますが、これは未確認であり、公に恥ずかしいと思います。したがって、合理的だと感じている場合は、それをスキップできます!


だから基本的には、restart = "nohup sh -c /etc/init.d/networking stop; sleep 2; /etc/init.d/networking start"というエイリアスを作成する必要があると言っている。実際にLinuxを趣味の良いOSを超えて進化させれば、どうなるでしょうか

1
どういたしまして。なんてこった!
エドゥアルドイヴァネック

3

以下のコマンドは、警告をスローすることなく、サーバー環境でうまく機能します。ネットワークサービスで停止要求と開始要求の両方を実装します。

sudo service networking start

それは停止&&開始をしないようです。とにかく、Debian Wheezyでは私にとってはそうではありませんでした。他のディストリビューションで行われている可能性があります。
mivk

Ubuntuで正常に動作します
エリック


1

Debian Wheezyでは、

service networking restart

期待されることを行い、文句を言わない。

systemdを使用したJessieでは、また違うかもしれません。


ではsystemdそれはだsystemctl restart networkingIIRCが、「古い」service方法はまだ働いています。
wb9688

0

ネットワークの再起動に失敗する理由が見つからない場合は、screenセッション内で詳細モードで実行してください。

ifdown -v --force eth0; ifup -v eth0
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.