Сетевая файловая система (NFS) Производная от LACHMAN SYSTEM V NFS Замечания по реализации и инсталляции версия 1.1.0 The Santa Cruz Operation, Inc. SCO NFS Замечания по реализации и инсталляции ───────────────────────────────────────────────────────────── 1. Предисловие 2. Особенности системы 3. Документация поставки 4. Требования к конфигурации 5. Инсталляция и настройка SCO NFS 5.1 Инсталляция SCO NFS 5.2 Тестирование SCO NFS 5.3 Динамическая настройка SCO NFS 6. Удаление SCO NFS 7. Вопросы применения данной версии 7.1 Удаление SCO NFS 7.2 Превышение размеров передаваемой порции 7.2.1 Плата 3COM 3C501 Ethernet 7.3 passmgmt(NADM) 7.4 pcnfsd(NADM) 7.5 on(NC) 7.6 df(1) 7.7 locking(2) 7.7.1 SCO Integra 7.8 Системная функция fcntl(2) 7.9 ls(1), lc(1) и l(1) 7.10 Демонтирование неоперативной удаленной файловой системы 7.11 Системная функция chsize(2) 7.11.1 SCO FoxBASE+ 7.12 Смена маски защиты по умолчанию 7.13 Системный параметр NOFILE 7.14 Использование библиотек удаленных процедурных вызовов 1. Предисловие SCO NFS представляет собой сетевую файловую систему, реализу- ющую связь типа "сервер-клиент", и набор протоколов для операци- онной системы UNIX System V/386, версия 3.2. Указанный продукт реализован в виде отдельной файловой системы, использующей в ка- честве транспортного протокола SCO TCP/IP. 2. Особенности системы SCO NFS под UNIX'ом обеспечивает реализацию следующих основ- ных компонент: * Сетевой файловой системы Сетевая файловая система Sun представляет собой файловую систему нового типа. Оба участника протокола - клиент и сервер - работают под управлением ядра ОС UNIX System V/386 3.2. * Поддерживаемых файловых систем SCO NFS поддерживает экспортирование файлов из следующих файловых систем: - AFS - S51K - XENIX * Администратора защиты Сетевое обеспечение защиты представляет собой набор управ- ляющих процедур, работающих в контакте с загружаемым драй- вером физических устройств. Эти процедуры выполняют защиту (обязательную и по запросу) файла в целом и отдельных запи- сей. По отношению к файлам сетевой файловой системы имеет место только защита по запросу. Сюда входит процедура уп- равления состоянием, работающая во взаимодействии с Адми- нистратором защиты. Процедура управления состоянием с дос- точной степенью надежности определяет момент восстановления удаленной главной ЭВМ после сбоя. * Обеспечения удаленного выполнения Процедура обеспечения удаленного выполнения представляет собой набор утилит, команд и библиотечных функций. Она вы- полняет роль удаленного командного процессора, исполняющего на удаленном сервере команды обращения к файлам из текущего пользовательского каталога. Поддерживается также исполнение интерактивных процессов (например, полноэкранного редакти- рования). * Системы разработки Реализуется в виде пакета обработки обращений к удаленным процедурам (RPC), позволяющего разрабатывать распределенные приложения. Пакет RPC включает управляющие файлы и библио- теки, используемые для создания прикладных программ. Библи- отеки поддерживают работу на пользовательском уровне как клиентов, так и сервера. Более подробные сведения о библио- теках см. в разделе "Использование библиотек удаленных про- цедурных вызовов". С помощью управляющих процедур реализу- ются протоколы внешнего представления данных (XDR). Имеется также компилятор RPC, используемый для генерации спецпро- цессоров и реализаций протоколов на Си. ----------------------------------------------------------------- Замечание. Система разработки предназначена для применения, но не явля- ется поддерживаемой частью продукта. ----------------------------------------------------------------- 3. Документация поставки Поставку сопровождает следующая документация: * Замечания по реализации и инсталляции (настоящий документ) * Руководство программиста SCO NFS * Справочник по SCO NFS * Руководство администратора системы SCO NFS 4. Требования к конфигурации Для функционирования SCO NFS необходимы следующие ресурсы: ┌────────────────────────────────────────────────────────────┐ │ КОМПЬЮТЕР Промышленный стандарт AT с процессором │ │ 80386 или совместимые компьютеры. │ ├────────────────────────────────────────────────────────────┤ │ ОПЕРАЦИОННАЯ UNIX System V/386 версия 3.2 и SCO │ │ СИСТЕМА TCP/IP │ ├────────────────────────────────────────────────────────────┤ │ ЕМКОСТЬ ДИСКА Не менее 6010 Кбайт на винчестере. │ ├────────────────────────────────────────────────────────────┤ │ ОПЕРАТИВНАЯ Для SCO NFS и UNIX System V/386 3.2 │ │ ПАМЯТЬ требуется не менее 3 Мбайт ОЗУ. │ └────────────────────────────────────────────────────────────┘ 5. Инсталляция и настройка SCO NFS Включают в себя следующие шаги: 1. Инсталляцию программного обеспечения сетевой файловой сис- темы с помощью утилиты custom. 2. Тестирование системы. 3. Перенастройка параметров конфигурации по умолчанию (при необходимости). 5.1 Инсталляция SCO NFS Инсталляция выполняется с помощью утилиты custom. Перейдем к пошаговому рассмотрению этой процедуры. Обратите внимание на то, что прежде, чем инсталлировать SCO NFS, необходимо установить комплект средств связи (Link Kit). Кроме того, следует включить потоки (Streams) и произвести инсталляцию протокола SCO TCP/IP. В процессе инсталляции NFS выполняется замена нескольких фай- лов. Первоначальные версии этих файлов сохраняются в /usr/lib/custom/nfs. В случае удаления NFS эти файлы восстанавли- ваются. К указанным файлам относятся /etc/mount, /etc/umount и /etc/dfspace. Необходимость замены этих файлов вызвана тем, что NFS связывается с удаленным сервером в момент монтирования и де- монтирования. 1. Зарегистрируйтесь в системе как пользователь root. 2. Введите "custom" и нажмите клавишу . 3. На экране появится начальное меню утилиты. Выберите опцию инсталляции нового продукта. 4. На экране появится меню инсталляции. Выберите опцию "New Product" (Новый продукт). Следом появится меню, запрашива- ющее объем инсталляции (полная или частичная). Для полной инсталляции укажите "Entire Product". (Если выполняется повторная инсталляция, выбирается соответствующая опция.) 5. Комплект дистрибутивов состоит из двух наборов дискет. Один набор содержит динамическую систему NFS (Runtime System), другой - Систему разработки (Development System). Каждый набор инсталлируется отдельно. Убедительно рекомен- дуется SCO NFS Runtime System инсталлировать первой. 6. Вам предлагается вставить в дисковод дистрибутивную диске- ту с томом 1. Вставьте ее в дисковод с номером 0 и нажмите клавишу . Появится сообщение о начале инсталляции информационных файлов. 7. Вам снова предлагается вставить в дисковод дистрибутивную дискету с томом 1. Если дискета уже в дисководе, просто нажмите клавишу . 8. Появляется сообщение "Extracting files..." (Извлекаются файлы...). На извлечение файлов с тома 1 требуется нес- колько минут. 9. После этого вам предлагается вставить в дисковод один за другим все необходимые вам тома. Если вы выполняете полную инсталляцию, программа проследит за тем, чтобы вы загрузи- ли все тома. Если инсталлируется некоторое подмножество дистрибутивного комплекта, вам будет предложено загрузить те тома, которые содержат соответствующее программное обеспечение. Процедура custom следит за тем, чтобы соот- ветствующие тома загружались каждый в свое время. Вставьте указанный том и нажмите клавишу . На экране поя- вятся сообщения "Extracting files..." и "Executing SCO NFS Runtime Initialization Script" (Выполнение процедуры дина- мической инициализации SCO NFS). 10. После этого появляется запрос следующего порядкового номе- ра: Enter your serial number: (Введите ваш порядковый номер:) Введите номер с карты и нажмите клавишу . ---------------------------------------------------------- Замечание. Различают два состояния активации SCO NFS. Первое сос- тояние - состояние "только клиент" - позволяет машине ра- ботать только в качестве клиента NFS. Другое состояние связано с возможностью работы как в качестве клиента, так и в качестве сервера. Состояние машины полностью зависит от значения пары ключей "порядковый_номер-активация". ---------------------------------------------------------- 11. Запрос ключа активации имеет следующую форму: Enter your activation key: Введите значение ключа с карты и нажмите клавишу . 12. Выводятся имена файлов, сохраняемых в данной точке. (Сох- ранение производится в /usr/lib/custom/nfsrt.) 13. Вам предлагается ответить на вопрос, хотите ли вы сохра- нить файл /etc/exports: "Create an /etc/exports file? [y/n]". Если машина работает как сервер NFS и если вы хо- тите экспортировать локальные файловые системы клиентам NFS, ответьте "y" (да). Если же машина является только клиентом NFS или если вы не хотите, чтобы клиенты NFS об- ращались к вашим локальным файловым системам, ответьте "n" (нет). Если вы ответили "y", вам будет предложено ввести имена файловых систем, которые предполагается экс- портировать клиентам NFS. 14. Если комплект средств связи (Link Kit) не инсталлирован, появится сообщение: "The Link Kit is only partially installed. Do you wish to install it now?" (Link Kit инс- таллирован только частично. Не хотите ли инсталлировать его сейчас?) Чтобы продолжить инсталляцию Link Kit, от- ветьте "y" (да). Если вы ответите "n" (нет), завершить ин- сталляцию SCO NFS вам не удастся. 15. Если потоки (Streams) не включены в конфигурацию текущего ядра, появится следующее сообщение: "NFS cannot be installed without driver" (Сетевая файловая система не ин- сталлируется без драйвера), где в качестве драйвера (driver) указывается одна из следующих программ: str, clone, log, ptem, timod, tirdwr или sp. Появится также со- общение: "Use mkdev streams to add streams drivers" (Для добавления потоковых введите команду streams). Инсталляция SCO NFS завершится аварийно. Введите команду mkdev streams, чтобы включить потоковые драйверы в ядро вашей системы. После этого вы можете переинсталлировать SCO NFS. 16. Появляется сообщение "Updating system configuration..." (Корректируется конфигурация системы...). Этот процесс продлится несколько минут. Вам предложат ответить на воп- рос, хотите ли вы скорректировать специальные параметры ядра. Если новое значение параметра ядра превышает старое, ответьте "y" (да). Вы также увидите сообщение "Updating /etc/conf/cf.d/mtune..." (Корректируется /etc/conf/cf.d/ mtune...). 17. Вам предлагается ответить на вопрос о необходимости выпол- нения повторной компоновки ядра. Если вы ответите утверди- тельно, появится сообщение "Re-linking the kernel..." (Пе- рекомпоновка ядра...). После паузы появится сообщение "The UNIX kernel has been rebuilt" (Ядро UNIX перестроено). 18. Если вы перекомпоновали ядро, вам придется ответить на вопрос "Do you want this kernel to boot by default?" (Хо- тите ли вы, чтобы ядро системы загружалось по умолчанию?). Если вы ответите утвердительно ("y"), старое ядро будет скопировано в /unix.old, а новое ядро запишется в /unix. Появятся сообщения "Backing up /unix to /unix.old" (Старый /unix сохраняется в /unix.old) и "Installing new /unix" (Инсталляция нового /unix). Затем вам нужно будет ответить на вопрос "Do you want the kernel environment rebuilt?" (Хотите ли вы перестроить среду ядра?). Если вы ответите отрицательно ("n"), появится сообщение: Device node or inittab changes associated with this new kernel have not been made. These changes should be made by running touch /etc/.new_unix; /etc/conf/bin/idmkenv. (Не сделаны изменения в файле устройства и в таблице инициализации, связанных с новым ядром. Эти изменения выполняются при запуске touch /etc/.new_unix; /etc/conf/bin/idmkenv.) Если вы выбрали положительный ответ ("y"), то после паузы появится следующее сообщение: "The kernel has been successfully linked and installed. To activate it, reboot your system" (Ядро успешно перекомпоновано и переинсталли- ровано. Для его активизации перезагрузите систему). Поя- вится также сообщение "Installation of SCO NFS complete" (Инсталляция SCO NFS закончена). Для того, чтобы вернуться в утилиту custom, нажмите клавишу . Следующая пау- за откроется сообщением "Checking file permissions..." (Проверка прав доступа к файлам...). Если ответ - отрицательный и ядро не перекомпоновано, на экране появится сообщение "NFS will not work until the kernel is relinked" (Сетевая файловая система не будет ра- ботать до тех пор, пока ядро не будет скомпоновано повтор- но). По завершении перекомпоновки появится сообщение "Installation of SCO NFS complete". Для того, чтобы вер- нуться в утилиту custom, нажмите клавишу . Следую- щая пауза откроется сообщением "Checking file permissions..." (Проверка прав доступа к файлам...). 19. Теперь вернемся в пакетное меню (Package menu) утилиты custom. Выберите опцию инсталляции нового продукта (Install a New Product) и проинсталлируйте систему разра- ботки (Development System) SCO NFS по вышеописанной схеме. Вам будет предложено ввести порядковый номер и ключ акти- вации продукта. 20. По завершении инсталляции системы разработки управление возвращается в пакетное меню утилиты custom. Для выхода из утилиты выберите опцию Quit и введите "y" (да). Управление возвращается к командному процессору. 5.2 Тестирование SCO NFS 1. Перезагрузите систему следующей командой: /etc/shutdown 2. Проверьте, чтобы при загрузке появилось сообщение "SCO NFS Release 3.2.4 Copyright 1987, 1988, 1989 Lachman Associates, Inc. All Rights Reserved". Если это сообщение не появится, NFS не включена в ядро. 3. После перехода ко второй стадии инициации (init state 2) проверьте запуск SCO TCP/IP. Если запуск произошел, должно появиться сообщение "Starting TCP: cpd slink ldsocket sterr inetd routed", за которым следует серия сообщений SCO NFS: NFS Startup... ONC Daemons: portmap NFS Daemons: nfsclnt biod NFS Startup complete. По умолчанию при инсталляции SCO NFS текст запуска помеща- ется в /etc/rc2.d/S89nfs, а текст останова - в /etc/rc0.d/ K79nfs. В результате SCO NFS запускается автоматически при переходе ко второй стадии инициации (init state 2) и после запуска SCO TCP/IP. SCO NFS останавливается при переходе к нулевой стадии инициации (init state 0) и перед останов- кой SCO TCP/IP. Если вы хотите внести изменения в этот по- рядок, перед перезагрузкой системы удалите файлы /etc/rc2. d/S89nfs и /etc/rc0.d/K79nfs. 4. После перезагрузки системы с новым ядром запустите прог- раммное обеспечение SCO NFS следующей командой: /etc/nfs start ---------------------------------------------------------- Замечание. Если вы предполагаете автоматически запускать SCO NFS для многопользовательских систем, этот шаг необязателен. ---------------------------------------------------------- При запуске SCO NFS начальные операции монтирования могут продлиться дольше обычного как следствие связанных с за- пуском системных издержек. 5. Не подключаясь к сети, проверьте настройку SCO NFS самой по себе. Это можно сделать с помощью команды rpcinfo. Вве- дите: rpcinfo -p На экране должно появиться нечто подобное следующему: program vers proto port 100000 2 tcp 111 portmapper 100000 2 udp 111 portmapper 100005 1 udp 1236 mountd 100003 2 udp 2049 nfs Если rpcinfo завершится неудачно, это означает, что SCO NFS инсталлирована неправильно. 5.3 Динамическая настройка SCO NFS Если принятые по умолчанию параметры конфигурации системы не совсем удовлетворяют вашим требованиям, вы можете произвести до- полнительную динамическую настройку системы. Единственным настра- иваемым параметром ядра является NRNODES. Значение этого парамет- ра не должно превышать значение NINODE в конфигурации ядра. Имеется также возможность настраивать число управляющих процессов nfscint (NFSADM), nfsd (NFSADM) и biod (NFSADM), выполняющих функции сетевой файловой системы для клиентов, серверов и обслу- живающих буферный кеш, соответственно. Для этого обратитесь к файлу /etc/nfs и отредактируйте командную строку запуска этих процессов, заменяя старое число (четыре по умолчанию) на новое число запускаемых процессов. Более подробную информацию, касающуюся отладки NFS, см. в главе 2 руководства "The SCO NFS System Administrator's Guide". Обратите внимание на то, что неадекватный размер потокового буфе- ра может стать причиной возникновения следующей проблемы: наруше- ние связей, зависание общающихся через сеть процессов и внезапный отказ взаимодействующих в сети программ. Чтобы это не произошло, расширьте потоковые ресурсы, используя входящую в UNIX Link Kit команду configure. 6. Удаление SCO NFS Для удаления SCO NFS проделайте следующие шаги: 1. Зарегистрируйтесь в системе как пользователь root. 2. Введите "custom" и нажмите клавишу . 3. На экране появится начальное меню утилиты. Выберите опцию удаления (Remove). 4. На экране появится меню имен продуктов. Выберите опцию SCO Network File System. 5. Появляется меню имен пакетов, входящих в состав сетевой файловой системы SCO NFS. Выберите опцию, соответствующую SCO NFS Runtime или Development System, и нажмите клавишу . 6. Появится следующее меню. Сначала вы должны ответить, уда- лять ли выбранный продукт полностью или частично. Если частично, необходимо также указать, какие именно пакеты следует удалять. Затем вам необходимо подтвердить правиль- ность выбранных вами действий. Выберите ответ Confirm и процесс продолжится. 7. Появляются сообщения "NFS Shutdown" (Прекращение работы NFS) и "[NFS Shutdown Complete]" (Операция прекращения за- вершена). После этого появится сообщение "Updating system configuration..." (Корректируется конфигурация систе- мы...). Процесс корректировки занимает несколько минут. 8. Если удаляется пакет Runtime system (Динамическая систе- ма), появится сообщение "Removing SCO NFS Runtime...". 9. В этом же случае возникает вопрос о необходимости переком- поновки ядра. Если вы ответите утвердительно, появится сообщение "Re-linking the kernel...". После паузы последу- ет еще одно сообщение: "The UNIX kernel has been rebuilt" (Ядро UNIX перестроено). 10. Если вы перекомпоновали ядро, вам придется ответить на вопрос "Do you want this kernel to boot by default?" (Хо- тите ли вы, чтобы ядро системы загружалось по умолчанию?). Если вы ответите утвердительно ("y"), старое ядро будет скопировано в /unix.old, а новое ядро запишется в /unix. Появятся сообщения "Backing up /unix to /unix.old" (Старый /unix сохраняется в /unix.old) и "Installing new /unix" (Инсталляция нового /unix). Затем вам нужно будет ответить на вопрос "Do you want the kernel environment rebuilt?" (Хотите ли вы перестроить среду ядра?). Если вы ответите отрицательно ("n"), появится сообщение: Device node or inittab changes associated with this new kernel have not been made. These changes should be made by running touch /etc/.new_unix; /etc/conf/bin/idmkenv. (Не сделаны изменения в файле устройства и в таблице инициализации, связанных с новым ядром. Эти изменения выполняются при запуске touch /etc/.new_unix; /etc/conf/bin/idmkenv.) Если вы выбрали положительный ответ ("y"), то после паузы появится следующее сообщение: "The kernel has been successfully linked and installed. To activate it, reboot your system" (Ядро успешно перекомпоновано и переинсталли- ровано. Для его активизации перезагрузите систему). Для того, чтобы вернуться в утилиту custom, нажмите клавишу . 11. Вы попадаете в Пакетное меню утилиты custom. Выберите оп- цию Quit (Выход). 12. Подтвердите выход. 13. Удалите файл /etc/perms/nfsrt. 14. Перезагрузите систему следующей командой: /etc/shutdown 15. Для того, чтобы удалить продукт SCO NFS Development System, повторите процедуру сначала. При этом перекомпо- новку ядра и повторную загрузку системы производить уже не нужно. 7. Вопросы применения данной версии Ниже приводится перечень наиболее важных вопросов, касающихся применения данной версии динамической системы SCO NFS Runtime. 7.1 Удаление SCO NFS Если у вас имеется предыдущая версия SCO NFS, то перед инс- талляцией новой версии старую нужно удалить с помощью процедуры custom. Кроме того, необходимо удалить файл /etc/perms/nfsrt. 7.2 Превышение размеров передаваемой порции По умолчанию сетевая файловая система SCO NFS передает данные блоками по 8 Кбайт каждый. Блок этого размера разбивается на нес- колько пакетов для передачи под Ethernet'ом с помощью машин- но-ориентированных средств. На некоторых из поддерживаемых Ethernet'ом плат при скоростной передаче многопакетных порций данных возникают ошибки. Таким образом, сохранение размера блока NFS по умолчанию (8 Кбайт) приводит к ошибкам в передаче данных и к превышению размеров передаваемых порций. Проблема решается уве- личением размера передаваемой порции: /etc/mount -fNFS,rsize=1024,wsize=1024,intr foo://mnt 7.2.1 Плата 3COM 3C501 Ethernet Для данной платы размеры блоков чтения и записи имеют особое значение. Поэтому если в одной из главных машин используется пла- та такого типа, указанным параметрам следует дать следующее зна- чение: rsize=1024, wsize=1024 Это проектная характеристика данной платы, не настраиваемая автоматически. 7.3 passmgmt(NADM) В разделе passmgmt(NADM) упоминается файл /etc/shadow. Обра- тите внимание на то, что в SCO UNIX такого файла нет. В последнем случае добавление новых пользователей следует производить с помощью утилиты sysadmsh(ADM). 7.4 pcnfsd(NADM) В настоящее время утилита pcnfsd(NADM) не поставляется и со- ответствующий ей раздел руководства можно опустить. 7.5 on(NC) В разделе on(NC) следует указать, что использование утилиты on требуется для включения пользовательской эквивалентности. Пользователь, которому дозволено обращение к этой утилите по от- ношению к той или иной удаленной машине, откроет на последней свой регистрационный счет. В этом разделе внимание администраторов систем следует также привлечь к главе 2 руководства администратора системы SCO NFS, в частности к разделу, именуемому "Добавление нового пользователя". 7.6 df(C) Команда df(C) в удаленных файловых системах возвращает 0 ин- дексных файлов (инодов). 7.7 locking(S) Системная функция locking(S), использующая обязательную бло- кировку файлов, не срабатывает, если подлежащие блокированию фай- лы находятся в удаленных файловых системах. В настоящее время SCO NFS поддерживает блокировку в сети только по запросу. Любые прог- раммы, требующие обязательной блокировки удаленных файлов, в сети работать не будут. 7.7.1 SCO Integra Поскольку SCO Integra использует обязательную блокировку фай- лов, попытки ее применения в отношении удаленных файлов успеха иметь не будут. 7.8 Системная функция fcntl(2) По умолчанию в версии 2.3.1 SCO XENIX Development System и более поздних версиях использование системной функции fcntl(2) для компилирования двоичных файлов x.out предполагает обязатель- ную блокировку файлов, которая в сетевой распределенной файловой системе не действует. Для установки блокировки по требованию в вызове компилятора cc используется опция -La. Опции компилятора cc, используемые для установки блокировок в различных версиях Development System, приведены в таблице: ┌────────────────────────────────────────────────────────────┐ │ SCO XENIX Development System │ ╞═════════╦════════════════════════╤═════════════════════════╡ │ Опция ║ Версия 2.3.0 │Начиная с версии 2.3.1 │ │ cc(1) ║ (блокировка по запросу)│(обязательная блокировка)│ ├─────────╫────────────────────────┼─────────────────────────┤ │ -Lm ║ использование блокиров-│использование обяза- │ │ ║ ки по запросу │тельной блокировки │ │ -La ║ использование обяза- │использование блокиров- │ │ ║ тельной блокировки │ки по запросу │ └─────────╨────────────────────────┴─────────────────────────┘ ------------------------------------------------------------- Замечание. Обязательная блокировка файлов не поддерживается. ------------------------------------------------------------- Проверка типа блокировки двоичного файла выполняется командой hdr. В случае использования блокировки по запросу выдается соот- ветствующая информация, в противном случае - тип блокировки не отражается совсем. 7.9 ls(1), lc(1) и l(1) В BSD UNIX 4.2 команды ls(1), lc(1) и l(1) не выводят инфор- мацию о файлах, имеющих символические связи с другими файлами или имя длиной свыше 14 символов. 7.10 Демонтирование неоперативной удаленной файловой системы Попытка демонтирования неоперативной удаленной файловой сис- темы во время закрытия сетевой системы может иногда привести к зависанию локального узла. Так, например, если во время импорти- рования файловой системы экспортирующая машина остановит выполне- ние операции, машина-клиент, препятствуя демонтированию, попыта- ется после рестарта главной машины подключить файловую систему заново. Если же вы попытаетесь при этом остановить работу локаль- ной системы, попытка демонтирования неоперативной файловой систе- мы приведет к зависанию узла. 7.11 Системная функция chsize(2) В SCO NFS системная функция chsize(2) не поддерживается. Программы, использующие ее, выдают сообщение типа "неверный аргу- мент". Решение данной проблемы - дело будущего. 7.11.1 SCO FoxBASE+ Как использующий вызов системной функции chsize(2), пакет SCO FoxBASE+ в NFS работать не будет. При этом выдается сообщение об ошибке: Illegal seek offset 7.12 Смена маски защиты по умолчанию По умолчанию в SCO NFS маска защиты устанавливается равной 077, и эта установка более приоритетна по сравнению с установками клиентов. Таким образом, при создании файла в удаленной файловой системе SCO NFS клиент не может задавать значение маски, большее 700. Для того, чтобы изменить значение по умолчанию, необходимо отредактировать файл /etc/nfs. Добавьте во вторую строку файла следующую команду: umask 000 В результате и управляющие процессы, и клиенты получат воз- можность использовать значения масок до 777. 7.13 Системный параметр NOFILE Изменение системного параметра NOFILE (число открытых файло- вых дескрипторов на один пользовательский процесс) не допускает- ся. Все системное программное обеспечение, включая SCO NFS, базируется на значении параметра NOFILE, равном 60. Увеличение этого значения опасно возникновением серьезных системных проблем, таких, как отказ при загрузке SCO NFS. Надеемся, что этот вопрос будет решен в последующих разработках. Если при загрузке SCO NFS появятся следующие сообщения: Cannot register service: RPC: Unable to receive; errno = Bad file number Cannot register service: RPC: Unable to receive; errno = Bad file number Cannot register service: RPC: Unable to receive; errno = Bad file number statd: unable to register udp service, exit. lockd: main(): unable to register (KLM_PROG, KLM_VERS, udp). rexd: service rpc register: error установите значение системного параметра NOFILE равным 60. 7.14 Использование библиотек удаленных процедурных вызовов Для протоколов типа RPC/XDR в составе SCO NFS поставляются следующие библиотеки: /usr/lib/librpc.a /usr/lib/librpcsvc.a Эти библиотеки включены в поставку для полноты, но на самом деле не поддерживаются. Тем не менее, поддерживаются все файлы системы SCO NFS Runtime, использующие указанные протоколы.