Tôi đang chạy một vài bộ định tuyến OpnSense (dựa trên FreeBSD 12.1) trong máy ảo qemu trong Proxmox 6.4.
Promox có cách cấu hình máy ảo không phải libvert của riêng mình, nhưng để thêm thiết bị theo dõi, người ta thêm dòng sau vào tệp cấu hình máy ảo:
cơ quan giám sát: model=i6300esb,action=reset
Tôi có thể thấy rằng điều này đang hoạt động và thiết bị ảo có trong VM vì pciconf -l -v
trong khách bao gồm đầu ra sau:
none0@pci0:0:4:0: class=0x088000 card=0x11001af4 chip=0x25ab8086 rev=0x00 hdr=0x00
nhà cung cấp = 'Tập đoàn Intel'
device = '6300ESB Watchdog Timer'
lớp = thiết bị ngoại vi cơ sở
Thật không may, mặc dù ichwd
trình điều khiển hỗ trợ chipset giả lập, nó không bị phát hiện và không có gì trong nhật ký dmesg về nó.
Tôi đã kích hoạt watchdogd bằng cách thêm dòng watchdog_enable=có
đến /etc/rc.conf
. Điều này đang hoạt động, nhưng nó sẽ mặc định sử dụng cơ quan giám sát phần mềm và dường như không tạo ra thông tin gỡ lỗi nào, vì vậy không hữu ích.
Tôi cũng có thể buộc hạt nhân tải trình điều khiển ichwd bằng cách thêm ichwd_load="CÓ"
đến /boot/loader.conf
(thực ra trong OpnSense, điều này được thực hiện bằng cách thêm nó vào Hệ thống -> Cài đặt -> Điều chỉnh
trong GUI, nhưng hiệu ứng cuối cùng giống hệt nhau). Đầu ra từ chương trình 'kldstat`
Id Tham chiếu Địa chỉ Kích thước Tên
12 1 0xffffffff82959000 70c8 ichwd.ko
Do đó, tôi chắc chắn một cách hợp lý rằng thiết bị ảo có trên hệ thống và trình điều khiển thiết bị chính xác đã được tải, nhưng tôi không thể lấy thêm bất kỳ thông tin gỡ lỗi nào từ qemu, ichwd hoặc watchdogd. Tôi nên thử gì tiếp theo?