(Mac 上的日子) sshd 服務啟用

東來發表於2014-11-17

scp (Secure copy) 命令相信 同學們都知道。今天我想從我的一臺同區域網內的Linux 機器上拷貝幾個檔案到我的的機上來。突然想到,mac 畢竟不是 linux, sshd 服務預設沒有啟動的可能性很大。

到底有沒有 sshd 服務呢?看看唄?於是:

➜  ~  ps auwx | grep sshd
yin 1921  0.0  0.0  2432772 640 s000  S+  6:53下午   0:00.00 grep sshd

果然沒有啟動 sshd 服務。那怎麼辦呢?

在 linux 上啟動 sshd 服務的方式 很簡單。

-> ~ sudo /etc/init.d/sshd start

但是 mac 上沒有 init.d 目錄啊。

那這樣試試。直接使用二進位制可執行程式 + 配置檔案啟動。

-> ~ sudo /usr/bin/sshd - f /etc/sshd_config

這樣沒有問題,可以正常使用,但是 不能每次開機都執行 一次 命令吧。

於是上網蒐羅了一番。原來需要使用 蘋果的自家方案.

一般情況下 linux 中的啟動服務的方案(包括開機自動啟動)都是這樣的

-> ~ sudo service sshd start
-> ~ chkconfig --level 35

而最新的 CentOS 7 中是這樣的

-> ~ sudo systemctl sshd.service start

Mac OS 中是這樣的

-> ~ sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist

.plist 檔案是 objective-c 程式設計架構中的 配置檔案。
說明 launchctl 服務管理器是oc寫的,怎麼又廢話起來了

停止

-> ~ sudo launchctl unload -w /System/Library/LaunchDaemons/ssh.plist

如何檢視程式是否啟動

-> ~ sudo launchctl list | grep sshd
-   0   com.openssh.sshd

OK 啟動正常。剩下的事情就不必多說了。

相關文章