我尝试做一个cron作业让dpdk在服务器重启后自动启动。
我创建了一个bash脚本:如果手动运行bash脚本,它可以正常工作。但是在crontab中运行时会出现问题。
#! /bin/bash
hugepages=1024
echo 1024 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
mount -t hugetlbfs nodev /mnt/huge
sleep 5s
modprobe uio_pci_generic
modprobe vfio-pci
sleep 5s
/mypath/dpdk-stable-17.08.1/usertools/dpdk-devbind.py --bind=uio_pci_generic 20:00.1
然后在root用户帐户中,我创建了cron选项卡:
@reboot sleep 30 && /var/diode/script/init.sh
服务器重启后,我发现驱动器已挂载,但未添加uio_pci_generic(即:未运行modprobe) 任何想法,如何让它在服务器重启后自动启动?
答案 0 :(得分:0)
有关dmesg
失败的详细信息,请参阅modprobe
。
这取决于您的操作系统,但最好在重新启动后使用service(8)
或您的操作系统启动脚本来运行DPDK应用程序。当所有必需的子系统都已初始化时,service(8)
允许指定正确的时刻。