Совместный доступ к файлам - совсем не то же самое, что передача файлов; это не просто способность систем обмениваться файлами. Корректно построенная система совместного доступа к файлам не требует копирования файлов по сети. Она организует доступ к файлам на уровне отдельных записей, позволяя клиенту прочитать запись из файла, хранимого на удаленном сервере, изменить эту запись и снова записать ее в файл - не копируя файл целиком с сервера на систему клиента и обратно.
Совместный доступ к файлам прозрачен для пользователя и прикладных программ, работающих в системе пользователя. Совместный доступ позволяет пользователям и программам обращаться к файлам так, как если бы они хранились локально. В идеальной среде совместного доступа к файлам пользователь вообще не знает и не стремится узнать, где на самом деле хранятся файлы.
Организация совместного доступа к файлам не существовала в изначальном варианте семейства протоколов TCP/IP. Она появилась для поддержки без- дисковых рабочих станций. Существует целый ряд протоколов TCP/IP для обеспечения совместного доступа к файлам, двум из которых досталась львиная доля этого рынка:
NetBIOS / блок серверных сообщений (NetBIOS/Server Message Block)
Авторство системы NetBIOS принадлежит IBM. Это базовая сетевая система ввода-вывода используется в ОС Microsoft Windows. Системы Unix способны действовать в качестве файловых серверов и серверов печати для клиентов Windows - при помощи программного пакета Samba, который реализует протоколы NetBIOS и SMB (Server Message Block, блок серверных сообщений).
Сетевая файловая система (Network File System)
Система NFS создана компанией Sun Microsystems в целях поддержки производимых ею бездисковых рабочих станций. NFS спроектирована для использования преимущественно в приложениях для локальной се- ти, а реализации NFS существуют для всех ОС Unix и многих других опе- рационных систем.
Для организации совместного доступа к файлам Unix-систем, как правило, используется NFS - наиболее широко применяемый Unix-протокол подобного назначения. Поддержка Windows-клиентов серверами, работающими под Unix, обычно осуществляется при помощи Samba. Подробный рассказ об этих инструментах содержится в главе 9.