Какой использовать NFS или Samba?


75

Я устанавливаю коробку, чтобы быть файловым сервером в доме. Он будет в основном использоваться для обмена музыкой, фотографиями, фильмами с другими Linux-сетями в сети и одним компьютером с OS X. Из того, что я прочитал, NFS и Samba будет работать в моей ситуации, и поэтому я не уверен, какой выбрать. Для меня важна скорость передачи между коробками и сложность настройки.

Что бы вы порекомендовали и почему?

Ответы:


71

В закрытой сети (где вы знаете каждое устройство) NFS - прекрасный выбор. При хорошей сети пропускная способность отвратительно быстрая и в то же время менее ресурсоемкая на сервере. Это очень просто настроить, и вы можете переключаться readonlyна общие ресурсы, которые вам не нужны для записи.

Я не согласен с Андерсом. v4 может быть таким же простым, как v3. Это только усложняется, если вы хотите начать многоуровневую защиту через LDAP / gssd. Он способен на очень сложные и законченные механизмы безопасности ... Но они вам не нужны. Они фактически отключены по умолчанию.

sudo apt-get install nfs-kernel-server

Затем отредактируйте, /etc/exportsчтобы настроить ваши акции. Вот строка из моей живой версии, которая делится моей музыкой:

/media/ned/music        192.168.0.0/255.255.255.0(ro,sync,no_subtree_check)

Это разделяет этот путь с кем-либо на 192.168.0. * readonly(Обратите внимание ro).

Когда вы закончите редактирование, перезапустите NFS:

sudo /etc/init.d/nfs-kernel-server restart

Для подключения клиента вам понадобятся NFS gubbins (по умолчанию не установлено):

sudo apt-get install nfs-common

А затем добавить строку в /etc/fstab

192.168.0.4:/media/ned/music  /media/music  nfs ro,hard,intr 0 0

На самом деле это клиент NVSv3, потому что я ленивый, но он совместим в этом сценарии. 192.168.0.4это сервер NFS (мой рабочий стол в данном случае). И вам нужно убедиться, что путь монтирования ( /media/musicздесь) существует.


Для Mac следуйте этому: http://www.techrepublic.com/blog/apple-in-the-enterprise/mounting-nfs-volumes-in-os-x/

Это гораздо проще, чем некоторые старые уроки могли бы заставить вас поверить.


Это может выглядеть сложнее, чем на самом деле, но оно надежное, предсказуемое и быстрое. То, что вы не можете сравниться с Самбой ... По крайней мере, по моему опыту.


Спасибо за все детали. Я думаю, что я готов дать этому шанс в эти выходные сейчас.
Джейкоб Шоен

Как вы получаете это быть постоянным (для клиента) при перезагрузке сервера? У меня подобная настройка работает нормально ( /etc/fstabв моем случае, для монтирования папки NAS), но когда сервер перезагружается, я несколько раз просматриваю umountи mount -aвращаюсь в терминале, чтобы вернуть мое монтирование. В основном для меня (кроме неприятностей, таких как Picasa, стирающая локальную БД, когда папка с сетевыми фотографиями внезапно отсутствует :(), но это заставляет мою жену подниматься по стене ...
Расс

@Russ Похоже, ваше сетевое соединение занимает много времени, чтобы начать. Рассмотрите возможность добавления auto,_netdevк фрагменту параметров, чтобы он выглядел примерно так: auto,_netdev,ro,hard,intrЭто должно заставить файловую систему ждать сетевого подключения.
Оли

1
Спасибо за ваши объяснения! Еще несколько вопросов: почему бы не использовать FTP? Я слышал, что UID должны быть уникальными ... Это звучит очень сложно для меня. Как NFS работает с правами доступа к файлам?
поясничный

@lumbric Супер поздний ответ, извините. FTP является транзакционным и, как следствие, действительно неуклюжим и медленным. Он имеет довольно хорошую пропускную способность, но все, что имеет значение в файловой системе для реального использования (статистика, распечатка и т. Д.), Утомительно. Разрешения могут быть адаптированы, и пользователи сопоставляются с различными конфигурациями LDAP / gssd, но они выходят за рамки моих потребностей (и в настоящее время не известны мне).
Оли

11

Недавно я проверил подключение через SMB и NFS к моей станции Synology NAS. Для меня соединение NFS работает в два раза быстрее, чем соединение SMB. Особенно, если вам приходится иметь дело со 100 ГБ фотографий и музыкальных файлов в 1000 каталогах, вам понравится скорость NFS.


6

NFS (версия 3) даст более высокую производительность и довольно прост в настройке. Основная проблема - полное отсутствие достойной безопасности.

NFS (версия 4) обеспечивает безопасность, но установить ее практически невозможно.

Samba, вероятно, будет немного медленнее, но прост в использовании и будет работать с клиентами Windows.


10
но это почти невозможно настроить : можете ли вы подтвердить это некоторыми доказательствами или это просто на основе ваших субъективных ощущений?
Lanoxx

2
У меня никогда не было проблем с v4, так в чем же проблема?
KingCrunch

Я не нашел NFSv4 сложнее, чем NFSv3. Конечно, это без Kerberos.
MountainX

4

Я недавно настроил локальный сервер NFS на сервере Ubuntu 10.04, но мой MacBook Pro (OS X 10.6.X) не смог подключиться. Чтобы Mac мог подключиться, я должен был добавить небезопасный /etc/exports.

Мой / etc / exports:

/mnt/sdcard *(rw,sync,no_subtree_check,insecure,all_squash)

4

Запустите реальные тесты, прежде чем посвятить следующие X лет и Y TB определенному протоколу, никогда не понимая, что есть лучший вариант.

Вы найдете мнения о том, какое из них быстрее, когда люди Samba утверждают, что они на одном уровне с NFS. В зависимости от ваших потребностей лучше всего настроить общий ресурс Samba и NFS и выполнить различные реальные тесты чтения / записи / ЦП по сети. Если у вас есть такие же потребности, как и у меня (Windows-машины), вы можете быть удивлены, обнаружив, что Samba работает на 20% быстрее, чем NFS.

Выберите тот, который дает наилучшие результаты в вашей настройке, и игнорируйте то, что люди считают самым быстрым.


+1 за одно очко "X лет и Y TB"! :-)
ккм
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.