Vin*_*ent 144 linux permissions mount chown cifs
我可以访问 cifs 网络驱动器。当我将它安装在我的 OSX 机器下时,我可以读取和写入它。
当我在 ubuntu 中安装驱动器时,使用:
sudo mount -t cifs -o username=${USER},password=${PASSWORD} //server-address/folder /mount/path/on/ubuntu
Run Code Online (Sandbox Code Playgroud)
我无法写入网络驱动器,但可以从中读取。我检查了挂载文件夹的权限和所有者,它们看起来像:
4.0K drwxr-xr-x  4 root root    0 Nov 12  2010 Mounted_folder
Run Code Online (Sandbox Code Playgroud)
我无法更改所有者,因为我收到错误消息:
chown: changing ownership of `/Volumes/Mounted_folder': Not a directory
Run Code Online (Sandbox Code Playgroud)
当我深入网络驱动器并更改那里的所有权时,我收到错误消息,即我无权更改文件夹的所有者。
我应该怎么做才能激活我的写权限?
Huy*_*ens 215
您以 root 身份挂载 CIFS 共享(因为您使用了sudo),因此您无法以普通用户身份进行编写。如果您的 Linux 发行版及其内核足够新,您可以以普通用户身份挂载网络共享(但在用户拥有的文件夹下),您将拥有正确的凭据来写入文件(例如,将共享文件夹挂载在您的主目录,例如$HOME/netshare/。显然,您需要在安装之前创建文件夹)。
另一种方法是指定安装的网络共享应该使用的用户和组 ID,这将允许该特定用户和潜在的组写入共享。添加下列选项到您的安装:uid=<user>,gid=<group>和替换<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
Run Code Online (Sandbox Code Playgroud)
如果服务器正在发送所有权信息,您可能需要添加forceuid和forcegid选项。
sudo mount -t cifs -o username=${USER},password=${PASSWORD},uid=$(id -u),gid=$(id -g),forceuid,forcegid, //server-address/folder /mount/path/on/ubuntu
Run Code Online (Sandbox Code Playgroud)
        小智 32
我成功测试了以下命令:
sudo mount -t cifs -o username=[username],password=[password],uid=1001,gid=1001 //172.16.148.2/dfsgob01 /home/ususario/Documentos/benz-win
Run Code Online (Sandbox Code Playgroud)
        |   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           367516 次  |  
        
|   最近记录:  |