Linux

掛載 cifs 網路驅動器:寫入權限和 chown

  • July 23, 2018

我可以訪問 cifs 網路驅動器。當我將它安裝在我的 OSX 機器下時,我可以對其進行讀寫。

當我在 ubuntu 中安裝驅動器時,使用:

sudo mount -t cifs -o username=${USER},password=${PASSWORD} //server-address/folder /mount/path/on/ubuntu

我無法寫入網路驅動器,但我可以從中讀取。我檢查了掛載文件夾的權限和所有者,它們看起來像:

4.0K drwxr-xr-x  4 root root    0 Nov 12  2010 Mounted_folder

我無法更改所有者,因為我收到錯誤:

chown: changing ownership of `/Volumes/Mounted_folder': Not a directory

當我深入網路驅動器並在那裡更改所有權時,我收到錯誤消息,即我無權更改文件夾的所有者。

我應該怎麼做才能啟動我的寫權限?

您正在以 root 身份安裝 CIFS 共享(因為您使用了sudo),因此您無法以普通使用者身份寫入。如果您的 Linux 發行版及其核心足夠新,您可以以普通使用者的身份安裝網路共享(但在使用者擁有的文件夾下),您將擁有寫入文件的正確憑據(例如,將共享文件夾安裝在您的主目錄,例如$HOME/netshare/. 顯然,您需要在掛載之前創建文件夾)。

另一種方法是指定已安裝的網路共享應使用的使用者和組 ID,這將允許該特定使用者和可能的組寫入共享。將以下選項添加到您的 mount :並分別將uid=<user>,gid=<group>and 替換為您自己的使用者和預設組,您可以使用該命令自動找到它們。<user>``<group>``id

sudo mount -t cifs -o username=${USER},password=${PASSWORD},uid=$(id -u),gid=$(id -g) //server-address/folder /mount/path/on/ubuntu

如果伺服器正在發送所有權資訊,您可能需要添加forceuidforcegid選項。

sudo mount -t cifs -o username=${USER},password=${PASSWORD},uid=$(id -u),gid=$(id -g),forceuid,forcegid, //server-address/folder /mount/path/on/ubuntu

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