Phương pháp ưa thích để khởi động lại mạng trong Ubuntu và Debian là gì


37

Khi tôi khởi động lại mạng bằng cách sử dụng:

/etc/init.d/networking restart

Tôi nhận được cảnh báo này:

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

Vì vậy, cách tốt nhất để khởi động lại mạng sau khi thực hiện thay đổi bây giờ là gì?

Vấn đề này cũng áp dụng cho Debian vì gói netbase được kế thừa từ debian.

Câu trả lời:


27

Nó chỉ nói rằng tùy chọn khởi động lại sẽ biến mất

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

Lưu ý chỉ có một dòng! Điều đó rất quan trọng khi chạy khởi động lại mạng thông qua mạng.


28
hai lệnh: - / ý tưởng tồi nếu bạn ở trong điều khiển từ xa. Tốt hơn nên sử dụng một lớp lót:/etc/init.d/networking stop; /etc/init.d/networking start
hmontoliu

@hmontoliu: sau đó một lần nữa có vẻ khôn ngoan khi sử dụng khởi động lại không dùng nữa vì bạn không thể quên lệnh bắt đầu
mbx

1
Nếu bạn ở xa, bạn nên luôn luôn sử dụngscreen
Avio

5
Màn hình sẽ không thực sự hữu ích nếu bạn tắt mạng trên một máy chủ từ xa. Trong trường hợp này, bạn sẽ phải tìm kiếm một số loại truy cập trực tiếp, không phải lúc nào cũng thuận tiện.
metakermit

1
stopstartrõ ràng là không được phản đối nhưng được sử dụng kết hợp chúng có cùng một vấn đề tiềm năng restartđã từng có.
Håkan Lindqvist

19

Chạy lệnh init.d không có tham số, nó sẽ cho bạn biết đó là cách sử dụng:

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

Có vẻ như khởi động lại không được chấp nhận

Nó cũng không được dùng trong Debian ít nhất là kể từ:

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

Lỗi liên quan # 550240 tại đây

Mà là khá khó chịu. Để khởi động lại netwokring từ xa có lẽ cách tiếp cận tốt nhất và an toàn nhất sẽ được chạy như sau trong một phiên màn hình :

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

Theo networkingkịch bản init ngày nay , restartforce-reloadsẽ hoạt động trong hầu hết các trường hợp. Tôi đoán nó hợp lý an toàn để bỏ qua cảnh báo và vẫn sử dụng khởi động lại . Tuy nhiên tôi sẽ đi với điểm dừng + cách bắt đầu :-)

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

Có thật không? Khởi động lại rất hữu ích khi bạn làm việc từ xa!
Antonius Bloch

2
Xem chỉnh sửa của tôi. Tôi đồng ý rằng khởi động lại bằng chứng đạn sẽ tốt hơn dừng lại + bắt đầu
hmontoliu

Tôi nghĩ rằng đáng chú ý rằng stop+ startdường như làm chính xác những gì restartsẽ làm. Nó dường như không an toàn hơn, ngoài việc không sử dụng tùy chọn không dùng nữa (không dùng nữa để không khuyến khích thao tác này).
Håkan Lindqvist

5

Tôi sử dụng nohup sh -c "/etc/init.d/networking stop; sleep 2; /etc/init.d/networking start". Tôi nói thêm sleep 2bởi vì tôi nghĩ có lẽ các vấn đề về khởi động lại có liên quan đến độ trễ phụ thuộc vào phần cứng, nhưng điều này chưa được xác nhận và một quy tắc bán ngón tay cái tôi hơi xấu hổ khi công khai. Vì vậy, bạn có thể bỏ qua điều đó nếu bạn cảm thấy hợp lý!


Vì vậy, về cơ bản, bạn đang nói rằng tôi phải đặt lại bí danh sẽ có mặt trên đường nếu chúng ta thực sự phát triển Linux ngoài một hệ điều hành tinh vi nhất?

1
Không có gì. Làm thế nào zany của bạn!
Eduardo Ivanec

3

Lệnh dưới đây hoạt động tốt trong môi trường máy chủ, không đưa ra cảnh báo. Nó thực hiện cả yêu cầu dừng và bắt đầu trên dịch vụ mạng.

sudo service networking start

Điều đó dường như không dừng lại && bắt đầu. Dù sao, nó không dành cho tôi trong Debian Wheezy. Có lẽ nó làm trong một số distro khác.
mivk 18/07/2015

Nó hoạt động tốt trong Ubuntu
Erick


1

Trong Debian Wheezy,

service networking restart

dường như làm những gì được mong đợi và không phàn nàn.

Tôi đoán trong Jessie với systemd nó có thể lại khác.


Với systemdsystemctl restart networkingiirc, nhưng "cũ" servicecách vẫn còn làm việc.
wb9688

0

Nếu bạn không thể tìm thấy lý do kết nối mạng không khởi động lại, hãy thực hiện ở chế độ dài dòng bên trong screenphiên:

ifdown -v --force eth0; ifup -v eth0
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.