Không có mạng sau khi nâng cấp lên 16.04


11

Tôi đã nâng cấp máy chủ của mình lên 16.04 từ 14.04, lần lượt được nâng cấp từ 12.04, tất cả đều sử dụng dòng lệnh do-release-nâng cấp. Đây là một bản dựng máy chủ, hoàn toàn không có GUI. Nó chạy apache2, bind9, nfs và một vài dịch vụ liên quan đến mạng khác. Đối với hầu hết các phần, không có gì bị hỏng trong quá trình nâng cấp ... ngoại trừ mạng. Bây giờ, tôi phải chạy

sudo /etc/init.d/networking start

sau mỗi lần khởi động lại để kết nối với mạng. Không hữu ích cho một máy chủ. Tôi đoán là tập lệnh mạng đơn giản là không được chạy khi khởi động; thông thường, tôi có thể khắc phục sự cố bằng cách chạy

sudo update-rc.d networking defaults

nhưng lệnh trên chỉ báo lỗi về việc không thể kết nối để khởi động.

Tôi có thể làm gì để sửa mạng?

Chỉnh sửa: Nội dung của / etc / mạng / giao diện:

#loopback
auto lo
iface lo inet loopback

#eth0
auto eth0
iface eth0 inet dhcp

bạn có thể thêm các dòng trong /etc/network/interfacestập tin của bạn vào câu hỏi của bạn?
John Orion

@Johnion đã xong. Tôi cũng đảm bảo rằng thiết bị mạng thực sự là eth0; Tôi đã có các thiết bị thay đổi giữa eth0 và eth1 trước đây. Đó là, thực sự, eth0.
ArmanX

Không ifconfigthể hiện điều gì? Điều gì xảy ra khi bạn chạy sudo ifup eth0?
Cerin

1
Đối với những người tìm kiếm thông tin trong tương lai: "ifconfig" không hiển thị gì; "ifconfig -a" hiển thị bộ điều hợp ở đó, nhưng không được kích hoạt. "sudo ifup eth0" (hoặc "sudo ifconfig eth0 up") sẽ đưa bộ điều hợp lên, nhưng không khởi động ứng dụng khách dhcp. Tự nâng bộ điều hợp và bắt đầu kết nối dhclient như mong đợi.
ArmanX

Điều đó nói rằng, cuối cùng tôi đã cài đặt lại mọi thứ từ đầu, đã sửa nó.
ArmanX

Câu trả lời:


22

tương tự ở đây

Tôi nghĩ có điều gì đó không ổn trong khi chuyển từ khởi động sang systemd trong quá trình cài đặt?

tôi sẽ mô tả cách tôi sửa nó

Theo hướng dẫn này, tôi đã bật mạng systemd: http://xmodulo.com/switch-from-networkmanager-to-systemd-networkd.html

Các bước tôi đã làm:

$ sudo systemctl enable systemd-networkd
$ sudo systemctl enable systemd-resolved
$ sudo systemctl start systemd-resolved
$ sudo rm /etc/resolv.conf
$ sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
$ sudo vi /etc/systemd/network/20-dhcp.network

Nội dung:

[Match]
Name=e*

[Network]
DHCP=yes

Bây giờ mọi thứ đang hoạt động tốt :-)


huzzah! Điều này cũng giải quyết nó cho tôi!
Craig

Không làm việc ở đây. Tuyên bố thứ ba bị lỗi.
jjmerelo

2

Giải pháp địa chỉ tĩnh:

Để thêm vào câu trả lời của HerrTaschenbier: Nếu bạn có một địa chỉ tĩnh trên máy chủ của mình, bạn nên kiểm tra xem liệu NIC có được đổi tên hay không bằng cách thực hiện ifconfig -a tôi thấy eth0 đã được đổi tên thành ens32. Sử dụng thông tin đó và áp dụng điều đó cho câu trả lời của HerrTaschenbier. Bạn cũng sẽ cần phải tạo tập tin mới theo hướng dẫn , sudo vi /etc/systemd/network/20-ens32.network. Nội dung hơi khác nhau.

[Match] 
Name=ens32

[Network]
DNS=xxx.xxx.xxx.xxx
Domains=somedomain.com
Address=xxx.xxx.xxx
Gateway=xxx.xxx.xxx

Lưu ý định dạng tên tệp có tên bộ điều hợp mạng trong đó. Đừng quên thay đổi tên bộ điều hợp trong tệp / etc / network / giao diện. Điều này đã xảy ra với tôi từ bản nâng cấp 14.04 đến 16.04.


0

Tôi gặp vấn đề tương tự sau khi sử dụng lâu 16.04, có lẽ một số cập nhật đã làm mọi thứ rối tung lên.

Chạy systemctl status networking.servicecho thấy, dịch vụ không khởi động được do lỗi trong ifup -acuộc gọi. Chạy ifup -ariêng tiết lộ rằng nó đang cố gắng làm việc với eth0giao diện, trong khi ifconfig -achỉ được liệt kê enp0s31f6logiao diện. Kiểm tra /etc/network/interfacescho thấy:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

Sửa tên giao diện thành những gì được tìm thấy bằng cách ifconfiggiải quyết vấn đề:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto enp0s31f6
iface enp0s31f6 inet dhcp
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.