Я установил Samba на свой сервер CentOS 5.5, и он невероятно медленный даже для записи текстового файла, говоря, как 5-10 секунд, просто чтобы написать файл 8k. Я лично думаю, что это неудачная конфигурация, но не уверен на 100%. Я запускаю Apache, MySQL, tomcat и postfix с сервера, и все они работают очень быстро. (Это просто личный сервер, почти без трафика)
Вот мой конфиг:
[global]
workgroup = NONE
server string = Laptop server
preferred master = no
local master = no
domain master = no
security = user
passdb backend = tdbsam
show add printer wizard = no
load printers = no
smb ports = 445
hosts deny = ALL
hosts allow = 10.0.
log file = /var/log/samba/smbd.log
log level = 2
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
preserve case = yes
short preserve case = yes
unix extensions = no
Я понимаю, что уровень журнала высокий, но он был поднят только для попытки диагностики, не имело значения, когда он был выключен.
Я заметил в журналах, что когда я сохранял, он открыл много файлов (около 50), я подключаюсь к нему с Mac, но я также подключаюсь к аналогичной конфигурации на работе, и это довольно быстро.
Войти тоже очень быстро. Какие-либо предложения?
Может быть, сетевой адаптер сервера - это Realtek (особенно RTL8111 / 8168B)? Я обнаружил, что карты Realtek в Linux могут быть очень медленными при использовании с Samba. В исходном коде драйвера ядра были комментарии о качестве Realtek, которые неожиданно вызывали смех из комментариев ядра.
Судя по строке сервера, это портативный компьютер. Это затрудняет замену сетевой карты, но вы можете попробовать проверить ее с помощью беспроводного или сетевого адаптера USB. Беспроводная связь, конечно, не идеальна для обслуживания файлов с высокой производительностью, но при тестировании я уверен, что она будет лучше 10 секунд для файла 8k.