1
kgdb00 OP 用 fedora / ubuntu 发行版的 ip 命令都不行,用自己编译的 ip 命令,设置 capabilities 后就可以,真奇怪。
|
2
tomychen 2022-06-20 21:15:33 +08:00 1
不考虑安全问题的话
chmod +s /usr/sbin/ip |
3
qbqbqbqb 2022-06-21 13:38:00 +08:00
你看一下 /usr/sbin/ip 是不是链接到 /usr/bin/ip 的软链接。软链接上没法设置 capabilities ,得在实际的文件上设置。
|
5
qbqbqbqb 2022-06-21 13:49:28 +08:00 2
刚刚查了一下资料,确实是 ip 命令本身的问题。ip 命令在启动的时候检测到非 root 就会扔掉一些 capabilities.
源代码: https://github.com/shemminger/iproute2/blob/main/ip/ip.c (注意到 main 函数里调用了 drop_cap ) https://github.com/shemminger/iproute2/blob/main/lib/utils.c ( drop_cap 函数实现) |
6
qbqbqbqb 2022-06-21 13:52:48 +08:00 1
如果你自己编译的 ip 命令没有链接 libcap 的话就不会有 drop_cap 这个功能
|