在 Linux 上與 AI Agent 獨立帳號協作,最理想的做法是建立一個共享的工作目錄,並利用「共享群組(Group)」搭配「SGID(Set Group ID)」與「POSIX ACL」,讓你們雙方建立的檔案都能自動繼承群組讀寫權限,避免互相卡權限。
同時,AI Agent 的帳號必須嚴格限制權限,避免指令誤操作影響系統。以下是具體的配置方式:
1. 建立共享群組與帳號設定 #
假設你的個人帳號是 user,AI Agent 的帳號是 gemini。
建立一個協作專用的群組(例如 developers),並將雙方都加入該群組:
|
|
注意:修改群組後,已登入的 session 需要重新登入或執行 newgrp developers 才會生效。
2. 建立協作目錄並設定 SGID #
建立專屬工作目錄(例如 /workspace/projects),並啟用 SGID:
|
|
3. 設定 Default ACL(解決預設 umask 問題) #
SGID 只能保證新檔案的「群組名稱」繼承,但若 AI Agent 或你的系統預設 umask 是 022,新檔案的群組可能只會有唯讀權限(644)。透過 POSIX ACL 設定預設權限,能確保任何一方新增的檔案都自動具備群組寫入權限:
|
|
檢查設定是否成功:
|
|
看到 default:group:developers:rwx 即代表未來不論誰在裡面 touch 檔案或建立目錄,對方都能直接編輯。
4. AI Agent 帳號的安全防護 #
為了避免 AI Agent 具備過大權限,需進行以下防護:
- 隔離 Home 目錄:確保你的個人目錄(
/home/user)權限為700或750,避免 AI Agent 讀取你的 SSH key 或私密設定:
|
|
- 禁止或嚴格限制 sudo:不要將
gemini加入sudo群組。若 AI Agent 需要重啟某些特定服務,應在/etc/sudoers.d/gemini中精確指定指令,並限制不需密碼:
|
|
- 鎖定系統關鍵目錄:AI Agent 僅需對
/workspace/projects有寫入權,其他系統目錄(如/etc、/usr)維持 Linux 預設唯讀即可。
這套架構既能讓你們在同個目錄順暢共編檔案、跑測試,也能確保個人主目錄與主機系統安全。