Package-Management

僅建構 OpenSSH 客戶端

  • January 30, 2019

我正在嘗試從原始碼建構OpenSSH 7.9p1,但我找不到刪除(或不包含)的方法,例如,、、、、、等——當然ssh-agent,假設這些都不需要命令工作。ssh-keygen``scp``sftp``sshd``ssh

理想情況下,我只需要客戶端:ssh命令,但同樣,我不確定還需要哪些其他部分。我認為大多數建構/安裝的內容都是由伺服器使用的,而不是由客戶端使用的。

是的,您可以使用提供的預設建構系統來執行此操作。

如果您查看Makefile通過執行提供的./configure腳本生成的,您應該看到預設(第一個)目標是

TARGETS=ssh$(EXEEXT) sshd$(EXEEXT) ssh-add$(EXEEXT) ssh-keygen$(EXEEXT) ssh-keyscan${EXEEXT} ssh-keysign${EXEEXT} ssh-pkcs11-helper$(EXEEXT) ssh-agent$(EXEEXT) scp$(EXEEXT) sftp-server$(EXEEXT) sftp$(EXEEXT)

(對於類 Unix 系統,$(EXEEXT)應該為空)。每個都有自己單獨的建構目標/規則,例如,您可以執行以下操作:

make ssh

只做客戶端。

前任。

$ make ssh

<snip>

$ find . -type f -executable -newermt yesterday
./config.status
./ssh

$ ./ssh -V
OpenSSH_7.9p1, OpenSSL 1.1.0g  2 Nov 2017

引用自:https://unix.stackexchange.com/questions/497602