Install

為什麼“apt-get install”會建議我已經擁有的軟體包?

  • May 23, 2013

在 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提出建議之前是否考慮了我現有的設置?如果是這樣,為什麼它會暗示我已經擁有的東西?

你有ssh程序。您沒有名為ssh.

Ubuntu 將 ssh 拆分為兩個包:openssh-serveropenssh-client. 分裂的原因是很多人只需要客戶端,而不是伺服器。在您不想要的時候安裝並執行伺服器不僅僅是(微小的)資源浪費,如果您的密碼很弱,這會帶來安全風險。

還有一個名為ssh. 它旨在表達“我只想要 ssh,所有這些,不要用細節來打擾我”。

如果 APT 正在安裝的軟體包之一建議 P 和 P 尚未安裝,則 APT 建議軟體包 P。一個建議意味著

列出的軟體包與這個相關,也許可以增強它的實用性,但是沒有它們安裝這個是完全合理的。

(用Debian Policy Manual的話來說,它定義了 Debian 引入的打包格式,也被 Ubuntu 使用)。

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