Có một lệnh tương đương cho 'init.d / khởi động lại mạng' trong OS X


17

Thỉnh thoảng, tôi gặp phải sự cố với các kết nối mạng của máy khách OS X (Có dây và Không dây, Leopard / Snow Leopard) khi không có gì sẽ khắc phục sự cố cho đến khi bạn khởi động lại.

  • Có "dịch vụ / quy trình mạng" cụ thể nào mà tôi nên đề phòng không?
  • Tôi đã nghĩ rằng sẽ hữu ích khi biết một lệnh sẽ thiết lập lại dịch vụ / quy trình loại 'kết nối mạng' (giống như chạy sudo /etc/init.d/networking restart).

Sau khi khắc phục sự cố cơ bản như DHCP, DNS, kiểm tra sự cố giao diện (tắt / bật), kiểm tra nhật ký và không tìm thấy đủ thông tin hữu ích, đôi khi mọi thứ khác không thành công, điều tốt nhất chỉ là khởi động lại máy. Tôi không chắc chắn tất cả những gì 'init.d / khởi động lại mạng' làm trong Linux, nhưng tôi biết nó hữu ích hơn nhiều so với việc vô hiệu hóa và kích hoạt giao diện.

Cảm ơn!


1
Bạn nói "không có gì" sẽ sửa nó .... bạn có thể cho chúng tôi biết những gì bạn đã thử mà không hiệu quả không?
TCampbell

Hehehe, gần như tất cả mọi thứ trong tầm tay của tôi ... và đó không phải là một vấn đề, nó đã xảy ra rất nhiều .. một lần nữa, với cả có dây và không dây. Ví dụ: tôi đã thấy một vấn đề trong đó card mạng sẽ KHÔNG hoạt động lại, ngay cả sau khi tắt và bật (trên hai máy khác nhau với các phiên bản OS X khác nhau và các kiểu máy khác nhau). Tôi sẽ không hỏi điều này nếu các vấn đề không ngẫu nhiên :)
l0c0b0x

Bạn đã tìm ra cách để mạng hoạt động trở lại mà không cần khởi động lại, tôi cũng gặp vấn đề tương tự. Điều thực sự kỳ lạ là tôi đang chạy Windows trong VMWare và vẫn có kết nối mạng từ phiên VMWare.

2
Nói thẳng ra, câu hỏi của bạn hơi giống như đi đến bác sĩ và nói: "Tôi bị bệnh, hãy cho tôi một loại thuốc sẽ chữa khỏi cho tôi." Về cơ bản, /etc/init.d/networking restart sẽ loại bỏ giao diện, tăng lại giao diện và sau đó áp dụng địa chỉ được định cấu hình. Một số trình điều khiển thẻ ethernet khởi động lại thẻ mỗi lần nó được nâng lên. Đây có thể là lý do tại sao thực hiện khởi động lại mạng đã làm việc rất tốt cho bạn. Quan điểm của tôi là, nếu bạn muốn có một câu trả lời đáng giá, bạn có thể tập trung vào ví dụ khó chịu nhất về điều này không? Có phải tất cả các tình huống của bạn ở cùng một vị trí chẳng hạn? "Các vấn đề" có nghĩa là "không tải các trang web?"
etherfish

1
Tôi đã có một phiên bản thậm chí sởn gai ốc. Thỉnh thoảng, mọi thứ sẽ giảm xuống. Các quả bóng bãi biển thả xuống wifi và trên bảng điều khiển Hệ thống mạng Prefs, danh sách ở bên cạnh trống. Thậm chí không có "wifi" để khởi động lại. ifconfig trống, thậm chí không có vòng lặp localhost. Khởi động lại /etc/init.d/network sẽ khá ngọt ngào, nhưng có lẽ với máy ở trạng thái đó, khởi động lại chính xác là những gì cần thiết. Trên lunix tôi có thể tải lại các mô-đun hạt nhân, khởi động lại mạng, tất cả các loại tài liệu tốt. khi maccenbox đáng tin cậy nhận được theo cách này, về mặt kỹ thuật được gọi là "rời khỏi giường", tôi rút phích cắm :(
Shayne

Câu trả lời:


19

Bạn có thể đưa giao diện mạng xuống và đưa nó trở lại một lần nữa, điều đó sẽ hoàn thành điều tương tự.

sudo ifconfig en0 down
sudo ifconfig en0 up

2
Tôi nghĩ rằng điều này sẽ giống như đi tới pref / panel và vô hiệu hóa thiết bị và bật lại, phải không? (trong đó, tất nhiên tôi đã thử).
l0c0b0x

Tôi có nhiều giao diện mạng hơn en0. Điều này không thực sự tương đương với câu hỏi đang được hỏi.
gman

11

Không, không có init.d / service / launchctl tương đương với 'init.d /etwork'.

Nếu nó liên quan đến wifi, bạn có thể chọc giao diện từ dòng lệnh (trên SL) bằng: / System / L Library / PersonalFrameworks / App802802.framework / Warions / Cản / Resource / airport

Nếu nó có dây, hãy sử dụng ifconfig.

Khác sau đó ... Tôi sẽ kiểm tra lỗi dmesg và / var / log / *.

Bạn cũng có thể tải / tải lại kld hoặc kiểm tra lỗi .. và tải lại, nhưng tôi chưa bao giờ thử điều đó, tôi chỉ muốn khởi động lại. :)

Xem:

kextfind (8) - tìm phần mở rộng kernel (kexts) dựa trên nhiều tiêu chí khác nhau và in thông tin
kextload (8) - tải phần mở rộng kernel (kexts) vào kernel
kextunload (8) - chấm dứt trình điều khiển I / O Kit trình điều khiển và hủy kernel tiện ích mở rộng (kexts)
kextutil (8) - tải, chẩn đoán sự cố và tạo biểu tượng cho tiện ích mở rộng kernel (kexts)


1
+1 cho câu trả lời 'liên quan đến hạt nhân'.
l0c0b0x

8

Nếu bạn muốn làm điều đó từ shell ssh / remote:

sudo ifconfig <interface> down;sleep 1;sudo ifconfig <interface> up

3

Nếu một chế độ ifconfiglên / xuống đơn giản sẽ không hoạt động, hãy tạo thêm một Vị trí định vị, có tất cả các thiết bị mạng bị vô hiệu hóa, sau đó chạy scutilđể chuyển sang nó, ngủ trong vài giây, sau đó đưa nó trở lại.

Điều đó nói rằng, tôi đã không thấy điều này xảy ra trên bất kỳ máy Mac nào của tôi ngoại trừ nơi máy chủ DHCP có sự phù hợp và nó trùng khớp với việc gia hạn hợp đồng thuê (và do đó, Mac đã bị định cấu hình sai). Là cấu hình mạng thực sự chính xác khi điều này xảy ra? Nếu chúng là DHCP, việc nhấn nút Đổi mới của mạng trong Tùy chọn mạng> {Thiết bị}> TCP / IP có ảnh hưởng gì không? Còn trong trường hợp không dây, tắt và bật lại Sân bay thì sao? Nếu bạn có thể tìm ra cái gì, ngoài việc khởi động lại, sẽ mang nó trở lại, thì bạn sẽ tiến một bước gần hơn để tìm ra điều gì thực sự kích hoạt hành vi - đánh nó bằng một cây gậy lớn (đó là cách nảy giao diện hiệu quả), chỉ bao giờ sẽ có hiệu lực các triệu chứng, không phải là nguyên nhân.


Đã thêm một số thông tin cho câu hỏi. Vâng, trong trường hợp này (sáng nay) DHCP đã hoạt động tốt, DNS cũng vậy. Tôi đang tìm kiếm 'nếu mọi thứ thất bại' không bao gồm khởi động lại hệ điều hành.
l0c0b0x

1
trên Linux, /etc/init.d/networking stopkhá nhiều không chỉ ifconfig ethX downcho mỗi giao diện. nó cũng có thể làm trống bảng định tuyến và có thể xóa bộ đệm ARP. ma thuật nằm trong startlệnh, không phải stop- và tất cả những gì cấu hình địa chỉ và tuyến đường (hoặc gia hạn hợp đồng thuê DHCP, nếu phù hợp) nếu mô-đun thiết bị mạng đã có sẵn. Khởi động lại là rất rất rất hiếm khi quá trình hành động tốt nhất.
Mùng

để làm rõ - khi bạn nói DHCP và DNS đang hoạt động tốt, đầu ra từ ifconfigarptrên các máy khách có giống như trong các trường hợp thông thường không? (các) công tắc của bạn có thể liên lạc với họ không, ngay cả khi họ không thể thấy những thứ khác trên mạng? để điều này xảy ra thường xuyên đủ (và với các điều kiện khác nhau như vậy) để bạn thực hiện câu hỏi, tôi sẽ xem xét một phần của cơ sở hạ tầng ngoài chính khách hàng, một cách trung thực.

Có lẽ đó chủ yếu là những gì tôi đang cố gắng trả lời ở đây, những gì mạng dừng / bắt đầu thực sự làm cho bạn ... và cách bạn có thể làm tương tự trên OSX. Trong trường hợp này, máy OSX có thể có được IP, nhưng không kết nối với điểm truy cập để xác thực / cổng thông tin hoạt động (liên kết vẫn ổn), tôi nên thực hiện một tcpdump để tìm ra nơi COM bị phá vỡ, nhưng đã quyết định để khởi động lại và điều đó dường như 'khắc phục' vấn đề. Mối quan tâm của tôi là tôi đã gặp vấn đề trước đó, thậm chí việc vô hiệu hóa / kích hoạt một NIC không thực hiện được 'mẹo', khi khởi động lại đã xảy ra.
l0c0b0x

okay ... tương đương với gần networking restart được vô hiệu hóa / tạo điều kiện cho các giao diện - đó là những gì những kịch bản shell làm. vì vậy, nếu điều đó không thực hiện được, thì đó là vấn đề về trình điều khiển hoặc phần cứng. Cho rằng điều này xảy ra trên một loạt các máy khác nhau trên các phiên bản HĐH khác nhau, qua cả có dây và không dây, yếu tố phổ biến thực sự duy nhất là cơ sở hạ tầng mà chúng đang kết nối.

1

Tôi gặp vấn đề tương tự (mạng bắt đầu chậm sau vài giờ, tôi chủ yếu làm việc trên máy Mac được kết nối bởi mạng có dây với Máy tính Windows) và công việc của tôi là loại bỏ máy tính mà tôi đã kết nối. (trong Finder) và tắt Ethernet (Tùy chọn hệ thống -> Mạng -> Ethernet -> Tắt) và sau đó kết nối hai mạng đó lại. :)

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.