RTNETLINK答案:没有这样的文件或目录

时间:2011-01-26 09:41:38

标签: linux netlink

当我运行此cmd时:

tc qdisc add dev eth0 root red limit 51200000 min 128000 max 512000 avpkt 1024 burst 200 ecn probability 0.5

我得到了

RTNETLINK answers: No such file or directory

我已为netfilters配置内核,并在menuconfig中配置了所有网络选项。

我不明白为什么会出现这种错误。我正在使用iproute2-2.6.23和Fedora 8。

这在我的笔记本电脑上工作正常,但在我的台式电脑上却没有?

3 个答案:

答案 0 :(得分:0)

在我的系统上,您的命令会自动加载sch_red模块。这个问题比较老,因此在现代系统上,如果您具有必需的模块,则自动加载应该可以正常工作。通过运行以下命令检查是否错过了内核模块:

modprobe sch_red

如果什么都不打印,请重试运行tc命令,看看是否有帮助。

如果没有,请确保您的内核中已编译CONFIG_NET_SCH_RED(随机早期检测)。 More info at kernel documentation

答案 1 :(得分:0)

该错误可能是由于Linux内核中缺少对流量控制的支持所致。

以下是文档摘录,列出了Linux中流量控制功能正常运行所需的内核编译选项:

来源:Traffic Control HOWTO - Kernel requirements

#
# QoS and/or fair queueing
#
CONFIG_NET_SCHED=y
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
CONFIG_NET_SCH_CSZ=m
CONFIG_NET_SCH_PRIO=m
CONFIG_NET_SCH_RED=m
CONFIG_NET_SCH_SFQ=m
CONFIG_NET_SCH_TEQL=m
CONFIG_NET_SCH_TBF=m
CONFIG_NET_SCH_GRED=m
CONFIG_NET_SCH_DSMARK=m
CONFIG_NET_SCH_INGRESS=m
CONFIG_NET_QOS=y
CONFIG_NET_ESTIMATOR=y
CONFIG_NET_CLS=y
CONFIG_NET_CLS_TCINDEX=m
CONFIG_NET_CLS_ROUTE4=m
CONFIG_NET_CLS_ROUTE=y
CONFIG_NET_CLS_FW=m
CONFIG_NET_CLS_U32=m
CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m
CONFIG_NET_CLS_POLICE=y

使用以上选项编译的内核将提供模块化 支持本文档中讨论的几乎所有内容。的 使用特定功能之前,用户可能需要 modprobe module

答案 2 :(得分:0)

我在一个系统上编译(树内)ralink wifi 驱动程序后得到了这个,该系统不包括通常的预构建模块阵列。模块已加载,界面在那里,但无法设置:

ip link set wlanB up
RTNETLINK answers: No such file or directory

(是的,wlanB 是正确的。)最终发现系统还缺少 /lib/firmware 中常见的固件数组。这已通过 apt install firmware-ralink 修复。