科技 · 實用指南
pip 顯示 externally managed?先判斷安裝目標,不要急著強制覆寫
先證明直譯器、標記與套件擁有者,再選擇發行版套件、venv、pipx 或受控覆寫。

先證明直譯器、標記與套件擁有者,再選擇發行版套件、venv、pipx 或受控覆寫。
這項拒絕表示目前 Python 由另一套套件管理器負責,並不代表所有 pip 安裝都不可能;安全答案取決於安裝對象及其真正擁有者。
固定直譯器與完整錯誤
先保存完整錯誤、命令、目標套件與執行情境;使用 python3 -m pip --version,並記錄 Python 路徑、prefix 與標準函式庫目錄。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
不要先刪除 EXTERNALLY-MANAGED、升級系統 pip 或寫入永久覆寫;同時保存 pip 設定來源。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
先判斷安裝目標
專案函式庫放進專案虛擬環境;獨立命令優先 pipx;系統元件優先發行版套件;受控映像檔另行處理。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
同一套件可能是函式庫、命令、系統相依或映像輸入,角色不同,安全工具與回復方法也不同。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
核對標記與擁有者
規範同時檢查是否在虛擬環境外,以及 sysconfig 的標準函式庫目錄是否有標記。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
刪除標記不會改變實際擁有者、更新政策或回復責任;要辨識原發行版套件管理器。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
專案函式庫使用 venv
從正確直譯器建立 .venv,並用其中的 python -m pip 安裝;先確認路徑。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
虛擬環境預設隔離、可刪除並重建;保存需求或鎖定檔,不把 .venv 當唯一資料。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
命令用 pipx,系統需求用發行版套件
獨立 Python 應用優先 pipx;作業系統或服務元件優先 apt、dnf、pacman、brew 等原擁有者。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
pip --user 不是一般逃生路徑,因為使用者套件仍可能影響基礎直譯器。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
覆寫只留給受控例外
--break-system-packages 是允許修改受外部管理直譯器的風險許可,不是預設建議。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
只有能控制完整環境、可重建且有回復計畫時才考慮;不要全域設定或刪除標記。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
驗證匯入、擁有權與回復
重做原目標,記錄直譯器、pip、prefix、匯入位置或命令路徑;映像應從乾淨基礎重建。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
成功修復應保留標記與發行版資料庫一致,專案依賴可重現,也沒有隱藏覆寫。 請把本分支的實際路徑、套件擁有者證據與回復方法一併記錄,驗證後再進入下一步。
