為什麼在嘗試 chsh 時會看到「操作被拒絕,因為目前憑證沒有適當的權限」?

為什麼在嘗試 chsh 時會看到「操作被拒絕,因為目前憑證沒有適當的權限」?

我正在設定一台新的開發 Macbook Pro,並嘗試用 zsh 取代 bash。我安裝了 zsh 並可以運行它來更改會話中的 shell。當我使用

sudo chsh -s /bin/zsh username

我收到錯誤訊息:

chsh:操作被拒絕,因為目前憑證沒有適當的權限。操作被拒絕,因為目前憑證沒有適當的權限。

AFAIK 我擁有機器的管理員權限。可能是什麼原因造成的?

答案1

我剛才遇到了這個問題。我可以確認 /etc/shells 列出了“/bin/zsh”,因此 David Schwartz 的答案不適用於我的情況。Macworld 有針對 Mac OS 10.5 的提示它似乎也適用於 10.6。讓我們複製連結的資訊!

若要變更 Leopard 中帳戶的登入 shell,請執行以下操作...

在「系統偏好設定」的「帳戶」窗格中按住Control 鍵並點擊您的帳戶名稱,然後在出現的上下文功能表中選擇「進階選項」(您必須先透過點擊鎖定圖示來解鎖該窗格)。

在出現的「進階選項」畫面中,輸入您的首選 shell 的路徑,或在 /bin 中已安裝的各種 shell 中進行選擇:bash、tcsh、sh、csh、zsh 或 ksh。最後,按一下“確定”。

「進階選項」畫面頂部的註解聲稱您必須重新啟動才能使變更生效,但您實際上只需要登出並重新登入即可。

答案2

您忘記更新/etc/shells或類似地列出允許使用者設定的 shell 集的任何表。

答案3

chsh報告“操作被拒絕,因為當前憑證沒有適當的權限。”也適用於網路帳戶。我必須將 iMac 上的使用者 Active Directory 帳戶升級為行動帳戶,才能使用chsh或按住 Control 鍵點擊「使用者和群組」設定才能運作。

相關內容