systemd-networkd - làm thế nào để buộc cấu hình mới mà không cần khởi động lại?


12

Trên hộp Arch của tôi, tôi có một cây cầu mạng. Mục tiêu là loại bỏ cây cầu và chỉ sử dụng bộ điều hợp mạng không được bắc cầu. Để làm như vậy, tôi đã xóa tất cả các tệp cấu hình * .netdev và * .network bên dưới /etc/systemd/networkvà thay thế chúng bằng một tệp đơn giản:

/etc/systemd/network/lan.network
--------------------------------
[Match]
eno*

[Network]
DHCP=ipv4

Sau đó tôi khởi động lại dịch vụ mạng sử dụng systemctl restart systemd-networkd, giả sử điều này sẽ để lại cho tôi chỉ với loeno*giao diện. Thật không may, mặc dù, điều này không có hiệu lực. Nhìn nhanh ip linkvẫn thấy giao diện cầu nối hoạt động.

Vì thời gian hoạt động trong trường hợp cụ thể này không quan trọng, tôi chỉ khởi động lại máy đã giải quyết vấn đề. Tuy nhiên, tôi muốn nghĩ rằng việc khởi động lại không cần thiết cho loại điều này. Tôi đã bỏ lỡ những gì để làm?


v244 có networkctl reloadreconfigure @ github.com / systemd
frostschutz

Câu trả lời:


9

Nếu giao diện tổng thể cầu của bạn vẫn còn thì giao diện nô lệ bị ràng buộc của nó sẽ vẫn bị ràng buộc ngay cả khi cấu hình mới được phát hiện cho chúng trong khi đó. Thế là mất cầu.

ip link set down br0
ip link del dev br0
systemctl restart systemd-networkd

1
Tôi sẽ không mất quyền truy cập mạng trong quá trình chứ?
nạn nhân

@vic - nếu truy cập mạng của bạn được chuyển qua một cây cầu mà bạn đã ràng buộc nic của mình thì có, tôi mong đợi như vậy. Tôi không thể nghĩ ra một cách đơn giản để làm khác, và những cách phức tạp mà tôi có thể nghĩ ra chỉ là một nửa nướng và liên quan đến việc giữ tạm thời các ảo ảo và bộ lọc mạng trong nhân của tất cả các gói trên dev. xấu xí và ngớ ngẩn. hoặc đó hoặc du hành thời gian. có thể có cách khác, nhưng bạn sẽ không học nó của tôi. dù sao, mạng chỉ bị mất theo lệnh đầu tiên và sau đó được khôi phục sau lệnh thứ ba. có lẽ ít dt hơn khởi động lại.

1
@vic Tôi biết tôi đến bữa tiệc muộn, nhưng một cách có thể là xâu chuỗi các lệnh lại với nhau trong một dòng, chẳng hạn như ip link set down br0 && ip link del dev br0 && systemctl restart systemd-networkd. Kết nối của bạn có thể bị mất, ít nhất là trong giây lát, nhưng dịch vụ mạng của máy chủ sẽ trực tuyến trở lại và bạn luôn có thể tạo phiên SSH mới miễn là bạn biết địa chỉ IP bạn sẽ nhận được sau khi khởi động lại.
code_dredd

1
Sử dụng dấu chấm phẩy, không &&xâu chuỗi các lệnh này. Nếu một lỗi, nó vẫn có thể cấu hình lại kết nối mạng theo cách có thể sử dụng để bạn không phải thức dậy và truy cập máy chủ ...
Josef Kufner
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.