Điều thay đổi là họ không muốn bạn "nảy" mạng nữa. dừng lại, và bắt đầu, vẫn làm việc khởi động lại không còn hoạt động. Tôi chỉ "giải quyết" "vấn đề" này, nghĩa là tôi đã lấy lại hành vi cũ. Để trở lại hành vi trước: Lấy tệp 13.10 /etc/init/networking.conf và thay thế tệp 14.04 bằng tệp đó. (chỉnh sửa: làm rõ cái nào thay thế cái nào)
Quá trình này trông như thế này:
(Just before this, I configured my /etc/network/interfaces for eth1 on a 192.168.117.x address)
"/etc/network/interfaces" 16L, 413C written
root@1404-Anode:~# service networking restart
stop: Job failed while stopping
start: Job is already running: networking
root@1404-Anode:~# echo "hmm, wth?"
hmm, wth?
root@1404-Anode:~# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0c:29:d6:a8:19
inet addr:192.168.115.105 Bcast:192.168.115.255 Mask:255.255.255.0
inet6 addr: 2002:4077:9050:1234:a08c:29c1:ce9b:a57b/64 Scope:Global
inet6 addr: fe80::20c:29ff:fed6:a819/64 Scope:Link
inet6 addr: 2002:4077:9050:1234:20c:29ff:fed6:a819/64 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:646 errors:0 dropped:0 overruns:0 frame:0
TX packets:531 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:58748 (58.7 KB) TX bytes:75465 (75.4 KB)
(lo removed here)
root@1404-Anode:~# cd /etc/init
root@1404-Anode:/etc/init# diff networking.conf.1310 networking.conf.1404
13c13
< and (stopped udevtrigger or container)) or runlevel [2345]
---
> and (stopped udevtrigger or container)) or runlevel [2345] or stopped networking >RESULT=failed PROCESS=post-stop EXIT_STATUS=100
16a17,20
> if [ "$UPSTART_EVENTS" = "stopped" ] && [ "$UPSTART_JOB" = "networking" ] && [ "$EXIT_STATUS" = "100" ]; then
> exit 0
> fi
>
21a26,31
> if [ -z "$UPSTART_STOP_EVENTS" ]; then
> echo "Stopping or restarting the networking job is not supported."
> echo "Use ifdown & ifup to reconfigure desired interface."
> exit 100
> fi
root@1404-Anode:/etc/init#
Thực hiện tương tự cho tập lệnh /etc/init.d/networking, đây là những gì các tham chiếu / cuộc gọi tập tin /etc/init/networking.conf.
root@1404-Anode:/etc/init# cp networking.conf.1310 networking.conf
root@1404-Anode:/etc/init# cd ../init.d
root@1404-Anode:/etc/init.d# diff networking.1404 networking.1310
15d14
< STATEDIR="$RUN_DIR/state"
21a21,27
> # Make sure that it's clear to the user that they shouldn't use this
> # script under upstart
> if init_is_upstart; then
> echo "ERROR: Calling a sysvinit script on a system using upstart isn't supported. Please use the 'service' command instead."
> exit 1
> fi
>
52,54d57
< if ! chown root:netdev "$RUN_DIR" ; then
< log_warning_msg "can't chown $RUN_DIR"
< fi
160,162d162
< if init_is_upstart; then
< exit 1
< fi
166c166
< state=$(ifquery --state)
---
> state=$(cat /run/network/ifstate)
root@1404-Anode:/etc/init.d# cp networking.1310 networking
root@1404-Anode:/etc/init.d# service networking restart
networking stop/waiting
networking start/running
root@1404-Anode:/etc/init.d# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0c:29:d6:a8:19
inet addr:192.168.115.105 Bcast:192.168.115.255 Mask:255.255.255.0
inet6 addr: 2002:4077:9050:1234:a08c:29c1:ce9b:a57b/64 Scope:Global
inet6 addr: fe80::20c:29ff:fed6:a819/64 Scope:Link
inet6 addr: 2002:4077:9050:1234:20c:29ff:fed6:a819/64 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3398 errors:0 dropped:0 overruns:0 frame:0
TX packets:2545 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:318654 (318.6 KB) TX bytes:418804 (418.8 KB)
eth1 Link encap:Ethernet HWaddr 00:0c:29:d6:a8:23
inet addr:192.168.117.105 Bcast:192.168.117.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fed6:a823/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:98 errors:0 dropped:58 overruns:0 frame:0
TX packets:15 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:20055 (20.0 KB) TX bytes:1226 (1.2 KB)
(lo removed)
root@1404-Anode:/etc/init.d# echo "hah, it works! *8^)"
Hah, it works! *8^)
root@1404-Anode:/etc/init.d#
(note: the steps where I scp'd the 1310 versions into the 1404 system are omitted for brevity).
Rõ ràng có một lý do khiến họ đặt lối thoát phòng thủ vào đó, nhưng họ không bận tâm đến việc thực sự tạo ra những gì đang diễn ra rất tốt.
Một mục nhập đi vào /var/log/upstart/networking.log khi bạn thử, có vẻ như:
Stopping or restarting the networking job is not supported.
Use ifdown & ifup to reconfigure desired interface.
Nhưng họ thực sự có thể / nên có đầu ra như thông báo hộp thoại khi bạn thử khởi động lại mạng dịch vụ. à tốt tìm ra nó và thậm chí một công việc cũ xung quanh.
EDIT: Tôi đã tìm thấy điều này gây ra sự vô tình kích hoạt tập lệnh được kiểm soát bởi /etc/init/failsafe.conf, điều không mong muốn vì nó gây ra sự chậm trễ thời gian 120 giây trong mỗi lần khởi động ... cũng như che giấu các cấu hình / mạng thực tế. những vấn đề mà sự xuất hiện của sự chậm trễ này sẽ chỉ ra, nhưng nó đã hiển thị mọi lúc. (ví dụ: Cáp không được cắm, cho phép truy cập vào chia sẻ tệp mạng được ánh xạ trong / etc / fstab chẳng hạn)
Trong mọi trường hợp, tôi sẽ tìm ra nguyên nhân gây ra điều này luôn luôn hết thời gian chờ và gửi một bản sửa lỗi khi tôi tìm thấy nó.