desenv-web-rp.com

Unidade de rede Mount CIFS: permissões de gravação e chown

Eu tenho acesso a uma unidade de rede CIFS. Quando o montei na minha máquina OSX, posso ler e escrever de e para ele.

Quando monto a unidade no ubuntu, usando:

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

Não consigo gravar na unidade de rede, mas posso ler a partir dela. Eu verifiquei as permissões e o proprietário da pasta mount, eles se parecem com:

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

Não consigo alterar o proprietário, porque recebo o erro:

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

Quando desço mais fundo na unidade de rede e altero a propriedade, recebo o erro de não ter permissão para alterar o proprietário da pasta.

O que devo fazer para ativar minha permissão de gravação?

113
Vincent

Você está montando o compartilhamento CIFS como raiz (porque usou Sudo), portanto não pode escrever como usuário normal. Se sua distribuição Linux e seu kernel forem recentes o suficiente para que você possa montar o compartilhamento de rede como um usuário normal (mas em uma pasta que o usuário possui), você terá as credenciais adequadas para gravar o arquivo (por exemplo, monte a pasta compartilhada em algum lugar sob sua pasta). diretório inicial, como por exemplo $HOME/netshare/. Obviamente, você precisaria criar a pasta antes de montá-la).

Uma alternativa é especificar o usuário e o ID do grupo que o compartilhamento de rede montado deve usar, isso permitiria que esse usuário específico e o grupo potencial gravassem no compartilhamento. Adicione o seguinte opções à sua montagem : uid=<user>,gid=<group> e substitua <user> e <group> respectivamente por seu próprio usuário e grupo padrão, que você pode encontrar automaticamente com o comando id.

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

Se o servidor estiver enviando informações de propriedade, pode ser necessário adicionar as opções forceuid e 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
159
Huygens

Testei o seguinte comando com sucesso:

Sudo mount -t cifs -o username=[username],password=[password],uid=1001,gid=1001 //172.16.148.2/dfsgob01 /home/ususario/Documentos/benz-win
26
ricardo leon