У меня есть Ubuntu 11.10 VPS, работающий внутри OPenVZ с хостинговой компанией. Я пытаюсь заставить его смонтировать удаленный сервер NFS с помощью NFS4, но могу заставить его работать только с версией 3. Я довольно много искал это в Google и иногда читаю что-то вроде «NFS4 клиенты не могут работать внутри контейнеров OpenVZ ». Я не могу найти конкретный ответ на этот вопрос, поэтому спрошу здесь:
Это правда, и если так, отлично - тогда я могу перестать пытаться заставить это работать! Но если это возможно, почему не работает ?? Вот что я сделал -
По словам ответственного инженера, я зарегистрировал заявку, и теперь соответствующий модуль установлен на узле VPS. Он ответил, что теперь он должен работать, но я думаю, что он, возможно, только что повторно включил "стандартный" модуль NFS (см. Выше re: cat / proc / filesystems | grep nfs)
$ sudo mount -v -t nfs4 [SERVER_IP]: / / NFS-ARCHIVE / mount.nfs4: pinging: prog 100003 vers 4 prot tcp port 2049 mount.nfs4: такого устройства нет
$ sudo mount.nfs [SERVER_IP]: / / NFS-ARCHIVE / -w -n -o nfs4 mount.nfs: Неподдерживаемый параметр монтирования nfs: nfs4
Я прочитал, что мне может потребоваться вручную загрузить модуль запустив modprobe nfs перед монтированием, но я не думаю, что смогу сделать это на VPS. sudo modprobe -l на клиенте ничего не возвращает
Любая помощь очень ценится, особенно если вы можете категорически ответить на первый вопрос - по крайней мере, если я знаю, что это невозможно, я могу перейти к настройке всего с помощью версии 3!
Хотя клиенты NFS 4 действительно работают в OpenVZ VPS (протестировано с Proxmox 2.1), если функция nfs: on включена и модуль nfs загружен на хост (т. Е. Контейнер 0), поиск по имени -> UID выполняется. всегда выполняется с помощью rpc.idmapd, запущенного на хосте. Это означает, что у вас должны быть те же пользователи на вашем хосте / etc / passwd, что и на вашем VPS.
Кроме того, параметр монтирования по умолчанию sec = sys permissions не работает правильно, если номера UID / GID не совпадают между вашим VPS, хостом и сервером! Можно было бы ожидать, что с nfs3 (поскольку он отправляет номера UID / GID по сети), но с nfs4 отправляются имена пользователей / групп. Видеть http://thread.gmane.org/gmane.linux.nfsv4/7103/focus=7105 (и ответь на RHEL - NFS4: подключено / экспортировано как rw, пользователю отказано в разрешении на запись) Больше подробностей.
В результате вы можете смонтировать nfs4 внутри VPS с помощью sec = sys.
У вас достаточно новое ядро openVZ.
У вас достаточно контроля над хостом и настройкой VPS, чтобы
Вы можете жить с ограничениями, связанными с необходимостью делиться именами пользователей VPS / хоста.
Возможно, удастся настроить что-то более гибкое с помощью kerberos / ldap или, возможно, даже если есть способ контролировать домен idmapd, используемый для монтирования, но у меня нет опыта работы с этими параметрами.
Более поздние версии OpenVZ поддерживают NFS4 в контейнере. Мы используем последнюю версию CentOS 6.2 вместе с последней стабильной версией OpenVZ 2.6.32-042stab053.5, и NFS4 нам подходит.
На самом VPS должна быть включена функция nfs: on. Попросите вашу хостинговую компанию включить это.
Вы можете найти дополнительную информацию в Wiki: http://wiki.openvz.org/NFS