Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: 12.04 -> 14.04, nfs, большие диски и 32-х разрядные приложения - несовместимы?  (Прочитано 902 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Karl500

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2267
    • Просмотр профиля
Приветствую!
Что-то я в тупике... Обновил файловый сервер с 12.04 на 14.04 и получил полную неработоспособность на 32-х разрядных приложениях у клиентов.

Имеем: экспортируемый по nfs раздел размером 11ТБ. После обновления у клиентов, работающих на 32-х разрядных 10.04 все файлы из монтируемого по nfs раздела принадлежат "nobody.nogroup". У клиентов, сидящих на 64-х разрядных 14.04 не работают 32-х разрядные приложения (ошибки при доступе к nfs-файлам типа "Value too large for defined data type".

Гугление показало, что проблема в том, что nfs отдает 64-х разрядные иноды, которые 32-х разрядные приложения просто не могут правильно прочесть. Раньше были варианты типа sysctl vfs.nfsrv.do_32bit_fileid=1 но теперь этого параметра нет.
Параметр ядра nfs.enable_ino64=0 тоже не сработал.

Вопрос: почему на 12.04 все работало, и (главное) как вернуть работоспособность nfs для 32-х разрядных приложений? Или единственный вариант - вручную переставить ОС на файл-сервере на 12.04?

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Karl500,
ядро уже другое, пример пае уже нет для 14.04
ZL~#
ZL~# uname -r
3.13.0-29-generic
ZL~# free
             total       used       free     shared    buffers     cached
Память:    4127664
4гиг.
Wars ~.o

Оффлайн Karl500

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2267
    • Просмотр профиля
Понятно, что ядро другое. Непонятно, что делать.

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Было уменя 12.04
3.хх.хх-хх-generic-pae
Wars ~.o

Оффлайн Karl500

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2267
    • Просмотр профиля
Да нет, pae ни при чем - у меня и 12.04 на файл-сервере стояла 64-х разрядная.

Оффлайн Karl500

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2267
    • Просмотр профиля
В общем, похоже, дело обстоит так:

Проблема не в NFS (правда, я не вполне понимаю тогда назначение параметра ядра nfs.enable_ino64=0), а в XFS. По умолчанию XFS должен монтироваться (и раньше так и было) в режиме 32-х разрядных inodes. Однако после обновления на 14.04 с какого-то перепугу начали создаваться файлы с 64-битными inodes (естественно, что параметры монтирования не менялись)
UUID=cf15ac1c-07a3-4ffd-9074-c31e5a9e7b75 /raid    xfs    rw,noatime,nodiratime,largeio,logbufs=8,allocsize=64m,logbsize=256k,osyncisdsync,nobarrier 0     0
Есть параметр монтирования XFS inode64 который включает 64-х разрядные inodes, но нет параметра, который выключает их.

При этом сейчас не работает довольно большое количество 32-х разрядных старых программ, когда им "попадается" файл с inode, превышающем длину 32 бита.

Выход видится только один - сохранить все файлы из раздела, убить его и пересоздать заново, но теперь не XFS, а, например, ext4 (правда, не факт, что там тоже осталось умолчание 32-х битных inodes). Прелестно, особенно если учесть, что один такой раздел содержит 5.8 ТБ, а другой - 9.4 ТБ информации...

 

Страница сгенерирована за 0.029 секунд. Запросов: 26.