在 Ubuntu Desktop 10.04.1 上,我刚刚运行apt-get install
安装软件包。建议的软件包列表中有ssh
.
我很困惑,因为我确信我已经ssh
安装了:
# ssh --version
usage: ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]
[-D [bind_address:]port] [-e escape_char] [-F configfile]
[-i identity_file] [-L [bind_address:]port:host:hostport]
[-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port]
[-R [bind_address:]port:host:hostport] [-S ctl_path]
[-w local_tun[:remote_tun]] [user@]hostname [command]
所以...
当apt-get install
建议软件包时,在提出建议之前是否会考虑我现有的设置?如果是这样,为什么它会建议我已经拥有的东西?
答案1
你有这个ssh
程序。您没有名为 的包ssh
。
Ubuntu 将 ssh 分成两个包:openssh-server
和openssh-client
。分裂的原因是很多人只需要客户端,而不是服务器。在您不想要的情况下安装并运行服务器不仅是(微小的)资源浪费,如果您的密码较弱,还会存在安全风险。
还有一个包叫ssh
。它的目的是表达“我只想要 ssh,所有这些,不要用细节来打扰我”。
如果 APT 正在安装的软件包之一建议安装 P,并且 P 尚未安装,则 APT 会建议安装软件包 P。一个建议的意思是
列出的软件包与此相关,也许可以增强其实用性,但在没有它们的情况下安装此软件包是完全合理的。
(用Debian 政策手册,它定义了 Debian 引入的打包格式,也被 Ubuntu 使用)。