1、root@xuegod53:~# apt update
注:apt update 的作用是從/etc/apt/sources.list 文件中定義的源中獲取的最新的軟件包列表。
即運行 apt update 並沒有更新軟件,而是相當於 windows 下面的檢查更新,獲取的是軟件的狀態。
root@xuegod53:~# apt update #執行這個命令,可以查看更新列表

會下載 https://mirrors.aliyun.com/kali/dists/kali-rolling/ 中這個 InRelease 軟件包列表

把 InRelease 下載到本地,使用 word 打開可以查看軟件包列表,如下圖:

2、root@xuegod53:~# apt upgrade
apt upgrade 則是更據 update 命令獲取的最新的軟件包列表,去真正地更新軟
3、root@xuegod53:~# apt dist-upgrade
apt dist-upgrade 則是更據 update 命令獲取的最新的軟件包列表,去真正地更新軟件。
4、apt upgrade 和 dist-upgrade 的差別:
upgrade:系統將現有的 Package 升級,如果有相依性的問題,而此相依性需要安裝其它新的 Package 戒影響到其它 Package 的相依性時,此 Package 就丌會被升級,會保留下來.
dist-upgrade:可以聰明的解決相依性的問題,如果有相依性問題,需要安裝/移除新的 Package,就會試着去安裝/移除它. (所以通常 dist-upgrade 會被認為是有點風險的升級)
例如軟件包 a 原先依賴 b c d,但是在源里面可能已經升級了,現在是 a 依賴 b c e。這種情況下, dist-upgrade 會刪除 d 安裝 e,並把 a 軟件包升級,而 upgrade 會認為依賴關系改變而拒絕升級 a 軟件包。如圖:

對於個人和服務器上的操作一般情況使用:apt upgrade 穩定可靠升級就可以滿足我們的需求了。
最后,需要注意的一點是,每回更新乊前,我們需要先運行 update,然后才能運行 upgrade 和dist-upgrade,因為相當於update 命令獲取了包的一些信息,比如大小和版本號,然后再來運行 upgrade 去下載包,如果沒有獲取包的信息,那么 upgrade 就是無效的啦!
