tftpd
我想知道是否有人成功地在网络命名空间中启动了(我正在使用tftp-server-5.2-22.el7.x86_64.rpm
)?
即,tftpd
从默认 NS 开始很简单:
bash# systemctl start tftp
bash# systemctl status tftp
* tftp.service - Tftp Server
Loaded: loaded (/usr/lib/systemd/system/tftp.service; indirect; vendor preset: disabled)
Active: active (running) since Mon 2023-08-28 05:32:00 PDT; 3s ago
...
但是,如果我尝试修改其服务单元文件,即这一行:
[Service]
ExecStart=/usr/sbin/in.tftpd -s /var/lib/tftpboot
在命令前面加上ip netns exec ns-red ...
或 with nsenter --net=/run/netns/ns-red ...
,它永远不会起作用,系统日志会抛出这些错误:
systemd[1]: tftp.service: Got no socket.
systemd[1]: tftp.service: Failed to run 'start' task: Invalid argument
systemd[1]: tftp.service: Failed with result 'resources'.
systemd[1]: Failed to start Tftp Server.
任何帮助是极大的赞赏!
答案1
好吧,在玩了一下 tftp 和服务文件之后,发现解决方案相当简单 -tftp
以独立模式(-L
或-l
选项)启动,而不是在xinetd
环境中启动。