Bash

為什麼在 tmux 會話中不考慮使用者權限修改?

  • April 2, 2017

我正在通過 SSH 連接到一個 debian 伺服器,為了避免同時有多個連接,我使用了 tmux。

我更改了目錄(此處為/opt/syncserver)的權限,並將所有者設置為組和使用者www-data。該目錄的權限等價於770in chmod,表示rwxrwx---(對所有者和組的讀/寫/執行)。

然後我將主要使用者(我們將user1在此處呼叫)添加到組www-data中,因為他以前不在其中。然後我嘗試 cd 進入新修改的目錄,但沒有成功(Permission denied錯誤)。

在同一個 tmux 會話中創建一個新的 shell 也不能解決問題(請參閱此問題的可能副本)。

我嘗試啟動另一個 SSH 會話,仍然使用相同的使用者,並且進入目錄沒有問題。

在 tmux 會話中創建的新 shell 如何不考慮權限的修改?有沒有辦法解決這個問題,還是我完全弄錯了,一開始做錯了什麼?

創建一個新的 tmux 會話(另一個仍然連接)也不能解決問題。我想完全重新啟動 tmux 應該可以解決問題,但我想避免這種情況並知道為什麼會發生這種情況。

在 tmux 會話中創建的新 shell 如何不考慮權限的修改?

與程序關聯的 uid、gid 和補充組僅在登錄時重置。在 tmux 會話中創建的新 shell 不是新登錄,它們只是 tmux 程序的新子程序。

要更新您的組成員資格,您必須重新登錄,或使用一組非常小的命令(newgrp、tmux 等已執行程序的憑據)。su``sudo

引用自:https://unix.stackexchange.com/questions/355334