Cảm ơn @bwDraco vì câu trả lời hữu ích.
Tôi đang thêm một số chi tiết ở đây về quá trình này trông như thế nào trong thực tế.
Đầu tiên, tôi tải về và giải nén Preboot.tar.gz
. Cảnh báo - điều này không giải nén vào thư mục riêng của nó, vì vậy hãy tạo một thư mục cho nó trước.
Lưu ý rằng tiện ích này hỗ trợ một số hệ điều hành khác nhau. Tuy nhiên, tôi sẽ chỉ mô tả cách nó hoạt động trên Linux, vì tôi không chạy bất cứ thứ gì khác. Các tài liệu chính cho tiện ích này là DOCS/Adapter_User_Guide.pdf
.
Phiên bản Linux của tiện ích này là hai tệp thực thi nhị phân, APPS/BootUtil/Linux_x64/bootutil64e
(64 bit) và
APPS/BootUtil/Linux32$ ls bootutil32
(32 bit). Và tài liệu cho bootutil là APPS/BootUtil/Docs/bootutil.txt
.
Sau đó tôi đã sao chép tệp APPS/BootUtil/Linux_x64/bootutil64e
vào /usr/local/bin
, mặc dù trước tiên tôi phải làm cho nó thực thi được. Khi tôi chạy nó, tôi đã nhận
root@orwell:/home/faheem# bootutil64e -?
Connection to QV driver failed - please reinstall it!
Điều này sau đó yêu cầu tải xuống iqvlinux.tar.gz
, đó là kho lưu trữ nguồn mô-đun hạt nhân Linux, từ https://sourceforge.net/projects/e1000/files/iqvlinux/1.2.0.3/ .
Lưu ý: có một vòng / phút ở đó, nhưng cố gắng chuyển đổi nó thành một cuộc tranh luận có vẻ khá vô vọng. Và nó thậm chí dường như không chứa tệp nhị phân, chỉ là các tệp nguồn và tiêu đề. Điều này không rõ ràng, nhưng người ta cũng cần install
tập lệnh trong cùng thư mục đó. Sau đó chạy
sh install
hoặc tương tự như người dùng (chạy một tập lệnh lạ dưới dạng root không bao giờ là một ý tưởng hay), đảm bảo rằng iqvlinux.tar.gz
nó ở cùng cấp độ với install
tập lệnh.
Điều này cho đầu ra
faheem@orwell:/usr/local/src/iqvlinux$ sh install
Extracting archive..OK!
make: Entering directory '/usr/local/src/iqvlinux/iqvlinux/src/linux/driver'
make -C /lib/modules/3.16.0-4-amd64/build SUBDIRS=/usr/local/src/iqvlinux/iqvlinux/src/linux/driver modules
make[1]: Entering directory '/usr/src/linux-headers-3.16.0-4-amd64'
make[1]: Entering directory `/usr/src/linux-headers-3.16.0-4-amd64'
CC [M] /usr/local/src/iqvlinux/iqvlinux/src/linux/driver/nalioctldrv.o
CC [M] /usr/local/src/iqvlinux/iqvlinux/src/linux/driver/linuxnaldriver.o
CC [M] /usr/local/src/iqvlinux/iqvlinux/src/linux/driver/linuxdriveros_i.o
CC [M] /usr/local/src/iqvlinux/iqvlinux/src/linux/driver/linuxdriverpci_i.o
CC [M] /usr/local/src/iqvlinux/iqvlinux/src/linux/driver/linuxdriverdevice_i.o
CC [M] /usr/local/src/iqvlinux/iqvlinux/src/linux/driver/linuxdrivermemory_i.o
LD [M] /usr/local/src/iqvlinux/iqvlinux/src/linux/driver/iqvlinux.o
Building modules, stage 2.
MODPOST 1 modules
CC /usr/local/src/iqvlinux/iqvlinux/src/linux/driver/iqvlinux.mod.o
LD [M] /usr/local/src/iqvlinux/iqvlinux/src/linux/driver/iqvlinux.ko
make[1]: Leaving directory '/usr/src/linux-headers-3.16.0-4-amd64'
make: Leaving directory '/usr/local/src/iqvlinux/iqvlinux/src/linux/driver'
Skipping removing QV driver - it does not exist...
Copying iqvlinux.ko driver file to /lib/modules directory...cp: cannot create regular file ‘/lib/modules/3.16.0-4-amd64/kernel/drivers/net/iqvlinux.ko’: Permission denied
Error: failed to copy driver (‘/usr/local/src/iqvlinux/iqvlinux/src/linux/driver/iqvlinux.ko’ -> ‘/lib/modules/3.16.0-4-amd64/kernel/drivers/net/iqvlinux.ko’)
Sao chép mô-đun hạt nhân vào vị trí bằng tay làm cho lỗi không còn nữa.
Trước khi làm mới thẻ, đây là đầu ra của bootutil64e
thẻ:
Port Network Address Location Series WOL Flash Firmware Version
==== =============== ======== ======= === ============================= =======
1 001B213916B9 10:00.0 Gigabit YES PXE 1.3.21
Đây là bảng điểm phiên của sự phản xạ. Tùy chọn kết hợp cho phép cả chức năng PXE và UEFI. Lưu ý rằng người ta phải trỏ đến vị trí của hình ảnh khởi động với FILE
tùy chọn:
root@orwell:/home/faheem# bootutil64e -up=combo -all -FILE=/usr/local/src/Intel_Network_Card_Boot_Utility/APPS/BootUtil/BootIMG.FLB
Intel(R) Ethernet Flash Firmware Utility
BootUtil version 1.6.39.1
Copyright (C) 2003-2017 Intel Corporation
Programming flash on port 1 with flash firmware image
Create restore image of NIC 1 before proceeding? (Y)es or (N)o: Y
Y
Saving flash firmware image on port 1 to file 10D34008.FLB...
Filename 10D34008.FLB already exists.
(O)verwrite/proceed or (S)top execution?: O
O
saved
Updating PXE+EFI removes PXE functionality.
Would you like to continue? (Y)es or (N)o: Y
Y
/
Flash update successful
Port Network Address Location Series WOL Flash Firmware Version
==== =============== ======== ======= === ============================= =======
1 001B213916B9 10:00.0 Gigabit YES UEFI,PXE Enabled 1.5.84