使用 OCC 重設遺失的 Nextcloud 管理員密碼
使用 Nextcloud 的 OCC 命令從伺服器 shell 重設管理員密碼,並提供有關使用者名稱、權限和外部登入提供者的指導。
即使無法存取 Nextcloud 的 Web 介面,伺服器管理員仍然可以變更本機帳戶密碼。如果您可以存取伺服器 shell,請occ user:resetpassword以 Web 伺服器使用者身分執行 Nextcloud 的內建命令,然後使用相同的帳戶名稱和新密碼登入。此指令適用於管理員帳戶和普通使用者;「admin」只是一個範例使用者名稱。
以下命令遵循 Nextcloud 35 管理手冊,於 2026 年 10 月 10 日更新。請將範例中的安裝路徑、HTTP 使用者、PHP 執行檔和使用者名稱替換為您伺服器使用的值。
使用可以存取 shell 並提升權限的帳戶連接到主機。尋找包含occ腳本的目錄。常見的 Ubuntu 或 Debian 路徑是 `/etc/ /var/www/nextcloudnextcloud/`;某些打包安裝、容器安裝或託管安裝可能使用其他位置。該命令必須在 Nextcloud 安裝上下文中以 HTTP 使用者身分執行,以確保檔案所有權的一致性。
在 Debian 或 Ubuntu 系統中,該使用者通常是 [此處應填入使用者名稱] www-data。 Nextcloud 文件apache適用於 Fedora 或 CentOS、httpArch 以及wwwrunopenSUSE。請使用您實際的 Web 伺服器帳戶,不一定是您用於登入的 Linux 帳戶。
在典型的 Debian 或 Ubuntu 系統上使用此命令,如果不是,請替換為正確的使用者名稱admin:
sudo -u www-data php /var/www/nextcloud/occ user:resetpassword admin
Nextcloud 會提示您輸入新密碼,並要求您再次輸入。密碼不會寫入 shell 命令,從而避免將其保留在 shell 歷史記錄中。當指令報告密碼重設成功後,請嘗試使用該使用者名稱和新密碼登入網頁。替換使用者名稱時,請勿在使用者名稱周圍新增尖括號。
官方文件也顯示sudo -E -u www-data,此-E選項會保留環境變數;除非您的安裝需要特定的環境設置,否則通常的互動式重置不需要此選項。請使用occ為您的 Web 伺服器配置的 PHP CLI 版本運行。如果預設php可執行檔不相容,請明確呼叫符合的 PHP 二進位。
登入名稱是帳戶的 Nextcloud 使用者名,不一定是其顯示名稱或電子郵件地址。如果您有另一個管理員帳戶,請使用「使用者」頁面確認受影響的登入名稱。管理員可以透過命令列列出帳戶:
sudo -u www-data php /var/www/nextcloud/occ user:list
根據需要替換www-dataOCC 路徑。輸出結果可能包含許多使用者帳戶,因此如果其中包含身分識別訊息,請勿公開分享。對於非常大型的安裝,該命令支援諸如限制和偏移量之類的選項;請查看當前occ help user:list輸出以了解您的版本中可用的語法。
如果您還能聯絡其他 Nextcloud 管理員,請他們幫您在使用者設定中重設密碼會更簡單。只有當您的個人頁面之前保存了有效的電子郵件地址且伺服器可以發送郵件時,登入頁面重置連結才是另一種選擇。如果以上兩種方法都不可行,但可以存取 shell,那麼 OCC 就很有用了。
該指令指向錯誤的安裝目錄。請將路徑變更為實際的occ腳本路徑。您也可以切換到安裝目錄並執行更簡潔的命令sudo -u www-data php occ user:resetpassword admin。請勿在同一伺服器上的其他 Nextcloud 副本中執行名稱相似的腳本。
請確認您使用的 HTTP 帳戶和 PHP CLI 版本與安裝程式預期的版本一致。 Nextcloud 的 OCC 文件指出,APCu 在 PHP 命令列模式下預設為停用;如果 OCC 報告 APCu 不可用,請啟用它apc.enable_cli以進行正確的 CLI 配置,或按照文件中的--define apc.enable_cli=1呼叫步驟進行操作。切勿為了解決 CLI 特定錯誤而盲目更改 Web PHP 設定。
某些部署透過 LDAP、SAML 或其他外部身分提供者進行帳戶驗證。在這種情況下,身分提供者可能擁有密碼權限,因此使用 OCC 重設 Nextcloud 本機帳戶資料的密碼可能不會變更登入時使用的憑證。請透過身分提供者認可的流程重設密碼,或在使用 OCC 之前驗證配置的後端是否支援密碼變更。此命令用於 Nextcloud 帳戶密碼,不會重設身分提供者本身的憑證。
請在應用程式容器內或透過服務提供者支援的 shell 執行 OCC,切勿在無關主機上執行。容器名稱、安裝路徑、PHP 命令和服務使用者會因部署而異,因此請勿在未查閱相關文件的情況下複製為其他映像編寫的 Docker 命令。託管主機可能會限制 shell 存取;如果您無法執行 OCC,請使用其控制面板或向服務提供者申請使用其文件中記錄的復原方法。
檢查 OCC 是否列印了成功訊息,然後在隱私瀏覽視窗中開啟常用的 Nextcloud URL,並使用正確的使用者名稱和新密碼登入。隱私瀏覽視窗有助於區分密碼問題和舊會話或快取的登入頁面。登入後,確認帳戶仍然具有管理員權限,並且可以開啟管理設定。如果登入仍然失敗,請重新檢查使用者名稱、驗證後端、伺服器日誌,以及 OCC 是否針對正確的執行個體執行;對錯誤的執行個體重複重設操作無法修復目前伺服器。
使用 Nextcloud 的 OCC 命令從伺服器 shell 重設管理員密碼,並提供有關使用者名稱、權限和外部登入提供者的指導。
透過在 Apache、NGINX 或 TLS 代理程式上設定標頭來清除 Nextcloud 的 HSTS 警告,然後安全地驗證公共 HTTPS 回應。
追蹤 App Store 安裝失敗是否由 DNS、HTTPS、代理、TLS 或 Nextcloud 伺服器本身的設定問題所引起。
將縮圖製作移至受控的後台計劃,修剪未使用的預覽尺寸,並在不使 Nextcloud 伺服器過載的情況下驗證佇列。
找到導致 Nextcloud 同步失敗的檔案、排除規則、連線問題或用戶端資料庫狀態,然後安全地驗證上傳和下載。
找到觸發 Nextcloud 警告的 PHP OPcache 限制,更新正確的 Web PHP 配置,安全重啟,並驗證結果。
比較內建程式碼和基於 Docker 的程式碼,然後透過安全的 HTTPS 反向代理將 Collabora Online 連接到 Nextcloud。
規劃一個可靠的 Nextcloud 高可用性部署,包括共用儲存、Redis 鎖定、支援仲裁的 MariaDB 路由和實用的故障轉移檢查。
當防火牆或限制性 NAT 阻止直接呼叫媒體時,配置並驗證 Nextcloud Talk 的可達 TURN 中繼。
使用無效文件報告來識別已更改、缺失或多餘的 Nextcloud 程式碼,安全地恢復受信任的文件,並驗證結果。