Владелец файла NFS(uid) = 4294967294, ничего не могу сделать с монтированием. Как это исправить?

Владелец файла NFS(uid) = 4294967294, ничего не могу сделать с монтированием. Как это исправить?

У меня тут несколько странная настройка: в качестве клиента у меня Android, а его ядро ​​не поддерживает NFSv4, а в моем файле /etc/exports на стороне сервера нет записей в стиле NFSv4.

Я пытаюсь собрать несколько наборов инструментов (у меня на телефоне есть gcc-4.8-armhf и все такое, а также apt-get с настроенными репозиториями, чтобы я мог устанавливать что-то при необходимости), а также следую LFS, но я не могу собрать некоторые программы, такие как perl, из-за невозможности установить владельца файла и т. д.

Мой /etc/exports (сервер):

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

А ls -lвыглядит так (клиент):

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выглядит так (клиент) (rootu — это просто тестовый файл):

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

Моя команда монтирования (клиент):

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

Я просмотрел страницы руководства, прочитал несколько руководств и ответил на другие вопросы, но все они говорят, что нужно просто установить no_root_squash, что я и сделал с самого начала, и это не работает.

У меня нет LDAP или Kerberos, или какой-либо сложной аутентификации, настроенной на данный момент, это все выше моего уровня мастерства (и нулевой оплаты) на данный момент. Я дома, поэтому у меня полный root-доступ и владение всем, и я не слишком беспокоюсь о безопасности, за исключением, может быть, War-Drivers, но у меня есть хороший пароль беспроводной сети, так что мне не нужна шапочка из фольги ;P

Раньше у меня это работало, но, похоже, в Debian были внесены некоторые изменения, и теперь все работает не так хорошо. Агенты Windows портят исходный код Linux!? Шутка

Что это на самом деле? Где я могу найти простой способ смонтировать каталог с файлами, принадлежащими мне или root (через sudo chown), если я выберу, а не какому-то странному пользователю "4294967294", которого нет ни на клиенте, ни на сервере?

решение1

Ненавижу, когда я понимаю это сразу после того, как задал вопрос.

я использовал /system/xbin/busybox mount -t nfs /path/to/share /path/to/mountpoint -o tcp,nolock

Это работает, теперь мои файлы принадлежат моему пользователю "10001:10001" на клиенте, но это неудобное решение, потому что если я использую Cyanogenmod busybox mountбез этой nolockопции, то получаю отказ в доступе, но если я использую монтирование Debian с этой nolockопцией, то все равно будет странное владение UID:GID.

Так что в настоящее время единственный способ работать - это с Cyanogenmod busybox mountс nolock. Использование nolockс Debian mountне исправит проблему с идентификатором, а без nolockCyangenmod я получаю отказ в доступе.

Думаю, правильным решением было бы просмотреть исходный код каждого и пересобрать mountкоманду Debian с патчем, чтобы она была как у Cyan, и выяснить, зачем мне это нужно nolock, я не думаю, что мне это нужно. Может, это проблема с компоновщиком/библиотекой? Я не знаю, это выше моего понимания.

Связанный контент