como mapear usuários e agrupar com sshfs

5

Como você pode ver abaixo, posso mapear o usuário de kevcoder00 para kevcoder01, mas o grupo é mapeado para marigold, embora esse grupo não exista no kevcoder01

l00py@kevcoder00:~$ sshfs -o idmap=user l00py@kevcoder01:/home/l00py ~/kevcoder01/
l00py@kevcoder01's password: 
l00py@kevcoder00:~$ ls -hl kevcoder01/
total 0
-rw-r--r-- 1 l00py marigold 0 Jul  4 00:34 I_LIVE
-rw-r--r-- 1 l00py marigold 0 Jul  4 00:59 I_LIVE_AGAIN

O que preciso fazer para mapear usuário e grupo?

    
por kevcoder 04.07.2013 / 07:29

1 resposta

6

Eu não acho que é mapear para calêndula. O GID que o calêndula está usando em seu sistema local é o mesmo número que o grupo padrão de 100py no devcoder01 do servidor remoto.

Por exemplo

No meu laptop, meu grupo padrão é GID 501, saml.

$ id -a
uid=500(saml) gid=501(saml) groups=501(saml),502(vboxusers),503(jupiter)

No meu skinner de servidor remoto, o usuário sam usa o seguinte:

$ id -a sam
uid=5060(sam) gid=1000(users) groups=1000(users),1060(pics),1050(mp3s),1070(mock)

Agora, quando me conecto:

$ sshfs -o idmap=user sam@skinner:/home/sam /home/saml/mnt

$ ls -l ~/mnt
drwxr-xr-x 1 saml users     4096 May 27  2011 projects
drwxr-xr-x 1 saml users     4096 Mar 11 22:53 public_html
-rw-r--r-- 1 root root   1992744 Apr 18  2012 rest.war
-rw-r--r-- 1 saml  1000      136 Sep  4  2012 scott_jay_addresses.txt
drwxr-xr-x 1 saml  1000     4096 Jun 27  2012 SparkleShare

Se você olhar neste diretório, parece que eu tenho acesso a outros grupos, mas é apenas o modo que o sshfs funciona. Está apresentando o diretório compartilhado usando os UIDs / GIDs do controle remoto e você tem os mesmos UIDs / GIDs em uso no sistema local.

Se você usar a opção -n para ls -l , poderá ver os UIDs / GIDs reais:

$ ls -ln
drwxr-xr-x 1 500  100     4096 Mar 11 22:53 public_html
-rw-r--r-- 1   0    0  1992744 Apr 18  2012 rest.war
-rw-r--r-- 1 500 1000      136 Sep  4  2012 scott_jay_addresses.txt
drwxr-xr-x 1 500 1000     4096 Jun 27  2012 SparkleShare

Se eu tivesse uma entrada no arquivo /etc/group do meu sistema local para 1000, ela teria sido exibida ao fazer o ls -l . Na saída acima, você pode ver que o grupo "user" está usando o GID 100, e acontece de eu ter uma entrada no meu sistema local para isso:

users:x:100:
    
por 04.07.2013 / 11:56