%20%3D%204294967294%2C%20n%C3%A3o%20posso%20fazer%20muito%20com%20minha%20montagem.%20Como%20fa%C3%A7o%20para%20corrigir%20isso%3F.png)
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 -l
se 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:root
se 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 mount
sem a nolock
opção ele terá permissão negada, mas se eu usar a montagem do Debian com a nolock
opção ainda tem a estranha propriedade UID:GID.
Portanto, atualmente a única maneira de trabalhar é com o Cyanogenmod busybox mount
com nolock
. Usar nolock
com o Debian mount
não resolverá o problema de identificação e sem nolock
o Cyangenmod, recebo permissão negada.
Eu acho que a solução adequada seria revisar o código-fonte de cada um e reconstruir mount
o 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.