2016-06-22 278 views
1

我在日常工作中使用tftp,作爲我工作的一部分。到目前爲止,這很好,自從昨天(2016年6月21日)以來,它就不再起作用了。我不知道究竟是什麼原因,因爲找不到任何人支持討論這個問題(是否因爲沒有人像我一樣使用tftp來刷新使用Apple的路由器?)。tftpd不工作 - MAC OS X El Capitan 10.11.5

的基本過程我一直沒有啓動TFTPD:

$ launchctl load -F /System/Library/LaunchDaemons/tftp.plist 
$ launchctl start com.apple.tftpd 

然後,我把我的固件的「/私營/ tftpboot的」目錄下,它已經安裝到模式0777

在爲了下載固件,過程很簡單:

$ tftp 
tftp> connect 
(to) localhost 
tftp> get firmware.bin 
Transfer timed out. 

正如你可能猜到的「轉移超時」對我來說不是好事。

帶尾巴看看「/var/log/system.log」我可以在循環中看到下面的消息(嚴重的是,這是一個巨大的消息量,我的SSD HD幾乎燒了,因爲這個高密集的I/O當日志寫入):

... 
Jun 22 14:36:59 MacBook-Pro tftpd[57553]: setgid to -2: Operation not permitted 
Jun 22 14:36:59 MacBook-Pro com.apple.xpc.launchd[1] (com.apple.tftpd[57553]): Service exited with abnormal code: 1 
Jun 22 14:36:59 MacBook-Pro tftpd[57554]: setgid to -2: Operation not permitted 
Jun 22 14:36:59 MacBook-Pro com.apple.xpc.launchd[1] (com.apple.tftpd[57554]): Service exited with abnormal code: 1 
Jun 22 14:36:59 MacBook-Pro tftpd[57555]: setgid to -2: Operation not permitted 
Jun 22 14:36:59 MacBook-Pro com.apple.xpc.launchd[1] (com.apple.tftpd[57555]): Service exited with abnormal code: 1 
... 

由於這是一個非停止服務,導致密集的I/O,我不得不停止它,這是通常的程序我總是這樣:

$ launchctl stop com.apple.tftpd 
$ launchctl unload -F /System/Library/LaunchDaemons/tftp.plist 

我需要這個工具,因爲我在那上面工作。 你能否評估一下發生了什麼? 也許一些操作系統更新,將這種錯誤的行爲,以tftpd?

運行綁定到UDP/69的tftpd的Docker容器都無法工作。 我甚至刪除了我的所有磁盤內容,並試圖做一個全新的OS X安裝,認爲某種bug更新導致了我的系統一些混亂。

注:

  1. 已經與System Integrity Protection (rootless)禁用試過:

  2. 已經嘗試過用 「命令」 運行launchctl啓動程序(如上所述)。

  3. 我重複了這個問題從Ask DifferentServer Fault爲了得到更多的意見。

謝謝, 最好的問候。

回答

1

這個問題也困擾了我。答案很簡單...目錄/ private/tftpboot中沒有文件,因爲蘋果沒有將其作爲標準包含在內。我猜想,蘋果希望人們購買OS X Server軟件來獲得增加的功能。

+0

我不知道這個!希望他們有一天能解決問題,不要這樣做。爲什麼會在這種情況下購買OS X Server?我絕對不會。 – sirboderafael

+0

OSX服務器軟件現已免費使用2年。 – bioffe

0

只是爲了關閉這個問題,因爲我沒有辦法象我以前在日常使用的那樣使用tftpd,使用Mac OS X,然後我決定在途中解決它,並創建了一個簡單的項目,它是基於流浪,VirtualBox和泊塢窗上解決了我所有我的需求:

https://github.com/rpherrera/docker-tftpd

相關問題