CentOS trên HyperV - eth0 không có trong ifconfig?


9

Tôi đã khởi chạy cài đặt CentOS trong HyperV và gán một NIC giống như cách tôi đã thực hiện trên máy ảo Ubuntu , tuy nhiên, thiết bị đơn giản là không được chọn.

Chỉ có loopback của tôi được tìm thấy bởi ifconfig.

Làm thế nào tôi nên đi về rắc rối chụp này?


Những gì hiện lsmodtrên làm việc Ubuntu VM chương trình cho một trình điều khiển card mạng? Là mô-đun được tải trên máy ảo CentOS ? Thành ifconfig eth0 uptựu gì?
Caleb

Hai hệ điều hành có một số lượng lớn các mô-đun không được chia sẻ giữa chúng (ví dụ: cách hơn 20). ifconfig eth0 chỉ ra "eth0: lỗi tìm nạp thông tin giao diện: Không tìm thấy thiết bị"
Ẩn danh

2
Không được hạ mình hoặc quá ấu dâm, nhưng bạn đang chạy ifconfig -a? Một cách khác, nhỏ gọn hơn để xem các giao diện mạng trên một hệ thống là ip a l(giả sử iproute2, được cài đặt theo mặc định trong CentOS tôi tin).
Eli Heady

2
ifconfig -atiết lộ rằng tôi có eth2

Câu trả lời:


8

CẬP NHẬT: Điều này đã được cập nhật để phản ánh những thay đổi mà họ đã thực hiện với LIS v4 không còn yêu cầu chạy trình cài đặt dành riêng cho phiên bản. Ngoài ra, nếu tất cả những gì bạn cần là để Hyper-V báo cáo thông tin trong tab "Mạng", chỉ cần các bước 1-4)

Tôi đã từng gặp vấn đề tương tự; cài đặt lại trình điều khiển. Đây là những gì tôi đã làm:

  1. Cài đặt CentOS
  2. Tải xuống "Đĩa tích hợp Linux" cho Hyper-V từ Microsoft (Có nhiều phiên bản, phiên bản mới nhất chứa các bản phát hành trước đó)
  3. Gắn tệp hình ảnh ISO.
    sudo mount /dev/cdrom /media
  4. Chạy install.shtrong Thư mục LISISO của CD Dịch vụ Tích hợp Linux (Trong đó xx là phiên bản mới nhất hoặc phiên bản cụ thể bạn cần).
    sudo /LISISO/install.sh
  5. Tạo ifcfg-eth0tập tin.
    nano /etc/sysconfig/network-scripts/ifcfg-eth0
  6. Chèn các dòng sau:

    DEVICE=eth0
    BOOTPROTO=dhcp
    ONBOOT=yes
    
  7. Lưu và thoát

  8. Chỉnh sửa hoặc tạo networktập tin
    nano /etc/sysconfig/network
  9. Chèn các dòng sau:

    NETWORKING=yes
    HOSTNAME=server-name.company.lan
    

    Lưu và thoát

  10. Khởi động lại và bây giờ bạn có thể ping ra

Tôi đã gặp vấn đề tương tự ngày hôm nay với máy ảo RHEL 7.4 mới, các bước duy nhất tôi phải thực hiện là 5-9 và điều duy nhất tôi làm khác là (tôi không bao gồm thuộc tính HOSTNAME và tôi đã sử dụng vi thay vì nano
Taegost

4

Có vẻ như các trình điều khiển cho các ảo hóa ảo HyperV bị thiếu trong phiên bản kernel của CentOS mà bạn đang sử dụng và có mặt trong phiên bản Ubuntu mà bạn đã cài đặt thành công. Microsoft gần đây đã nhận được trình điều khiển thiết bị ảo của mình vào kernel chính. Tôi đoán là bạn đang sử dụng một phiên bản CentOS không bao gồm các trình điều khiển này.

Theo như cách khắc phục sự cố, bạn có thể tìm kiếm các thông báo kernel liên quan đến phần cứng mạng. Kiểm tra đầu ra của dmesg | lessless /var/log/messages. Tôi sẽ tìm các mục có chứa "net", "eth". Bất kỳ đăng nhập kernel sẽ là từ tải mô-đun - thành công hoặc lỗi. Nếu không có mô-đun hạt nhân cho NIC ảo hóa, hạt nhân có lẽ sẽ không có gì để nói về phần cứng không được nhận dạng.

Khi tạo VM, bạn có thể chọn thêm "Bộ điều hợp mạng kế thừa" trong HyperV (ít nhất là tùy chọn được sử dụng để gọi đó). Điều này sẽ trình bày NIC cho HĐH khách về cơ bản là một thiết bị cũ hơn, mà khách sẽ hy vọng có trình điều khiển.

Khi bạn đã cài đặt CentOS, bạn có thể cài đặt trình điều khiển từ Microsoft để sử dụng các thiết bị ảo hiệu quả hơn.


Tôi không chắc liệu điều này đã giải quyết nó cho tôi hay nếu trường hợp là VM của tôi chỉ có eth0 được đặt ở chế độ thủ công và tôi phải bật dhcp và onboot
jcolebrand 20/03 '

1

Trong trường hợp của tôi, tôi đã thêm một VM mới vào Windows 10 Hyper-V bằng cách nhập VHD của CentOS7 Linux. Cài đặt vẫn ổn, nhưng mạng trong CentOS hoàn toàn không hoạt động. Để giải quyết vấn đề, trong Hyper-V, tôi đã chọn VM mới và chỉnh sửa cài đặt. Trong Bộ điều hợp mạng, Công tắc ảo được đặt thành "Không được kết nối" theo mặc định. Thay đổi điều này thành "Chuyển đổi mặc định" và lưu đã khắc phục sự cố. Điều này đã giải quyết các lỗi như không tìm thấy thiết bị phù hợp cho kết nối này và không thể tìm thấy 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.