Proprietário do arquivo NFS (uid) = 4294967294, não posso fazer muito com minha montagem. Como faço para corrigir isso?

Proprietário do arquivo NFS (uid) = 4294967294, não posso fazer muito com minha montagem. Como faço para corrigir isso?

Eu tenho uma configuração um tanto estranha acontecendo aqui, tenho Android como cliente e seu kernel não suporta NFSv4, também meu arquivo /etc/exports no lado do servidor não tem entradas no estilo NFSv4.

Estou tentando construir alguns conjuntos de ferramentas (tenho gcc-4.8-armhf e tudo isso no meu telefone, bem como o apt-get com repositórios configurados para que eu possa instalar coisas, se necessário), bem como seguir o LFS, mas não consigo construa alguns programas como perl devido à impossibilidade de definir a propriedade do arquivo e outras coisas.

Meu /etc/exports (servidor):

/media/usb3/Android     192.168.1.209(rw,sync,subtree_check,no_root_squash)

A ls -lse parece com isto (cliente):

drwxr-xr-x  6 4294967294 4294967294      4096 Jun 21 17:23 toolchains
-rw-r--r--  1 4294967294 4294967294         0 Jun 25 18:51 rootu

A sudo chown root:rootse parece com isto (cliente) (rootu é apenas um arquivo de teste):

sudo chown root:root rootu
chown: changing ownership of `rootu': Invalid argument

Meu comando de montagem (cliente):

sudo mount -t nfs 192.168.1.210:/media/usb3/Android /home/edge-case/Android-Lab/ -o tcp

Examinei as páginas de manual e li alguns tutoriais e outras perguntas, mas todos dizem para apenas definir no_root_squash, o que fiz desde o início, e isso não funciona.

Não tenho LDAP ou Kerberos, ou qualquer autenticação sofisticada configurada no momento, o que está além do meu nível de habilidade (e 0 pagamento) no momento. Estou em casa, então tenho acesso root completo e propriedade de tudo e não estou muito preocupado com a segurança, exceto talvez com drivers de guerra, mas tenho uma boa senha sem fio, então não preciso de nenhum chapéu de papel alumínio; P

Eu costumava fazer isso funcionar, mas parece que algumas mudanças foram feitas no Debian e as coisas não estão mais funcionando tão bem. Os agentes do Windows estão estragando a fonte do Linux!? J/k

Realmente o que é isso? Onde posso encontrar uma maneira simples de montar um diretório com arquivos de minha propriedade ou root (via sudo chown), se eu quiser, e não algum usuário estranho "4294967294" que não existe no cliente ou servidor?

Responder1

Eu odeio quando descubro isso logo depois de fazer a pergunta,

eu usei /system/xbin/busybox mount -t nfs /path/to/share /path/to/mountpoint -o tcp,nolock

Funciona, agora meus arquivos pertencem ao meu usuário "10001:10001" no cliente, mas é uma solução confusa porque se eu usar o Cyanogenmod busybox mountsem a nolockopção ele terá permissão negada, mas se eu usar a montagem do Debian com a nolockopção ainda tem a estranha propriedade UID:GID.

Portanto, atualmente a única maneira de trabalhar é com o Cyanogenmod busybox mountcom nolock. Usar nolockcom o Debian mountnão resolverá o problema de identificação e sem nolocko Cyangenmod, recebo permissão negada.

Eu acho que a solução adequada seria revisar o código-fonte de cada um e reconstruir mounto comando do Debian com um patch para ser como o do Cyan e descobrir por que preciso nolock, não acho que deveria precisar disso. Talvez seja um problema de vinculador/biblioteca? Eu não sei, além de mim atm.

informação relacionada