Samba. При копировании данных на др. сервер(Win2k3) - на первом(gentoo) - съедается вся память(ОЗУ). [НЕ РЕШЕНО / NOT SOLVED]
Всем привет!
Есть два сервера:
- Lin: Gentoo(xfs, mem - 1GB) - (srv-1)
- Win: Win2k3(ntfs, mem - 1GB) - (srv-2)
Необходимо копировать информацию с srv-1 на srv-2. Все работы ведутся с srv-1.
Монтирую расшаренную папку на srv-2:
mount.cifs -o iocharset=utf8,username=:),password=:( //192.168.0.1/testshare /media/srv2
Папка примонтировалась, начинаю копирование(общий объём ~ 72GB) и наблюдаю, что свободной памяти на srv-1 через 10-12мин. становится в пределах 50Мб:
free total used free shared buffers cached Mem: 1017176 976880 40296 0 0 712904 -/+ buffers/cache: 263976 753200 Swap: 3068924 0 3068924
Затем падает до 15-16Мб свободной ОЗУ и даже после копирования - память не увеличивается. Сам процесс копирования начинает подвисать при этом.
В чём может быть дело?
p.s. Прилагаю информацию по серверу:
#cat /proc/cpuinfo
processor : 0 vendor_id : GenuineIntel cpu family : 15 model : 2 model name : Intel(R) Pentium(R) 4 CPU 2.40GHz stepping : 7 cpu MHz : 2411.805 cache size : 512 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe up pebs bts cid bogomips : 4823.61 clflush size : 64 cache_alignment : 128 address sizes : 36 bits physical, 32 bits virtual power management:
#cat /proc/meminfo:
MemTotal: 1017176 kB MemFree: 59580 kB Buffers: 224 kB Cached: 680792 kB SwapCached: 0 kB Active: 415628 kB Inactive: 398212 kB Active(anon): 73248 kB Inactive(anon): 64404 kB Active(file): 342380 kB Inactive(file): 333808 kB Unevictable: 0 kB Mlocked: 0 kB HighTotal: 126920 kB HighFree: 780 kB LowTotal: 890256 kB LowFree: 58800 kB SwapTotal: 3068924 kB SwapFree: 3068924 kB Dirty: 0 kB Writeback: 0 kB AnonPages: 132840 kB Mapped: 13940 kB Shmem: 4828 kB Slab: 127456 kB SReclaimable: 117968 kB SUnreclaim: 9488 kB KernelStack: 768 kB PageTables: 2020 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 3577512 kB Committed_AS: 210644 kB VmallocTotal: 122880 kB VmallocUsed: 8748 kB VmallocChunk: 109780 kB HardwareCorrupted: 0 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 10232 kB DirectMap2M: 903168 kB
#hdparm /dev/sda:
# hdparm -t /dev/sda /dev/sda: Timing buffered disk reads: 124 MB in 3.02 seconds = 41.10 MB/sec root@earth:~# hdparm -T /dev/sda /dev/sda: Timing cached reads: 894 MB in 2.00 seconds = 446.69 MB/sec
Разделы:
~# mount /dev/sda1 on / type xfs (rw) proc on /proc type proc (rw,noexec,nosuid,nodev) none on /sys type sysfs (rw,noexec,nosuid,nodev) fusectl on /sys/fs/fuse/connections type fusectl (rw) none on /sys/kernel/debug type debugfs (rw) none on /sys/kernel/security type securityfs (rw) none on /dev type devtmpfs (rw,mode=0755) none on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620) none on /dev/shm type tmpfs (rw,nosuid,nodev) none on /var/run type tmpfs (rw,nosuid,mode=0755) none on /var/lock type tmpfs (rw,noexec,nosuid,nodev) none on /var/lib/ureadahead/debugfs type debugfs (rw,relatime) /dev/sdb1 on /org type xfs (rw)
Вывод htop с сортировкой по ОЗУ:
CPU[| 0.7%] Tasks: 47 total, 1 running Mem[|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||255/993MB] Load average: 0.00 0.01 0.05 Swp[ 0/2996MB] Uptime: 2 days, 20:39:15 PID USER PRI NI VIRT RES SHR S CPU% MEM% TIME+ Command 769 proxy 20 0 109M 107M 1872 S 0.0 10.8 1:00.66 (squid) 891 root 20 0 29840 5620 2148 S 0.0 0.6 0:00.59 /usr/bin/python /usr/bin/fail2ban-server -b -s /var/run/fail2ban/fail2ban.sock 892 root 20 0 29840 5620 2148 S 0.0 0.6 0:20.23 /usr/bin/python /usr/bin/fail2ban-server -b -s /var/run/fail2ban/fail2ban.sock 893 root 20 0 29840 5620 2148 S 0.0 0.6 0:20.55 /usr/bin/python /usr/bin/fail2ban-server -b -s /var/run/fail2ban/fail2ban.sock 920 fetchmai 20 0 8740 5588 1884 S 0.0 0.5 5:27.02 /usr/bin/fetchmail -f /etc/fetchmailrc --pidfile /var/run/fetchmail/fetchmail.pid 4869 aa 20 0 8620 5188 1428 S 0.0 0.5 0:00.59 -bash 1961 root 20 0 17252 4604 3644 S 0.0 0.5 0:01.96 smbd -F 1947 root 20 0 16748 4156 3372 S 0.0 0.4 0:00.09 smbd -F 3807 root 20 0 17544 4036 3048 S 0.0 0.4 0:00.98 smbd -F 4897 root 20 0 6500 3236 1580 S 0.0 0.3 0:00.72 bash 5237 root 20 0 16832 2984 2176 S 0.0 0.3 0:00.00 smbd -F 4850 root 20 0 8432 2772 2204 S 0.0 0.3 0:00.17 sshd: aa [priv] 4147 root 20 0 10324 2612 1904 S 0.0 0.3 0:00.47 dovecot-auth -w 948 root 20 0 10264 2540 1844 S 0.0 0.2 0:02.09 dovecot-auth 1523 postfix 20 0 6320 2500 1764 S 0.0 0.2 0:00.14 tlsmgr -l -t unix -u -c 602 root 20 0 5632 2208 1792 S 0.0 0.2 0:00.02 /usr/sbin/sshd -D 4230 dovecot 20 0 6672 2112 1672 S 0.0 0.2 0:00.00 imap-login 4227 dovecot 20 0 6672 2108 1672 S 0.0 0.2 0:00.00 imap-login 4286 dovecot 20 0 6672 2108 1672 S 0.0 0.2 0:00.00 imap-login 859 postfix 20 0 6032 1872 1480 S 0.0 0.2 0:00.25 qmgr -l -t fifo -u 840 root 20 0 5880 1788 1420 S 0.0 0.2 0:00.97 /usr/lib/postfix/master 725 root 20 0 9368 1752 1164 S 0.0 0.2 0:21.13 nmbd -D 5071 postfix 20 0 5896 1660 1324 S 0.0 0.2 0:00.00 pickup -l -t fifo -u -c 605 root 20 0 5252 1644 1244 S 0.0 0.2 0:06.42 /usr/sbin/dovecot -F -c /etc/dovecot/dovecot.conf 1 root 20 0 2848 1612 1180 S 0.0 0.2 0:00.42 /sbin/init 4868 aa 20 0 8564 1440 864 S 0.0 0.1 0:00.13 sshd: aa@pts/0 611 syslog 20 0 33568 1324 968 S 0.0 0.1 0:00.52 rsyslogd -c4 652 syslog 20 0 33568 1324 968 S 0.0 0.1 0:00.09 rsyslogd -c4 653 syslog 20 0 33568 1324 968 S 0.0 0.1 0:00.00 rsyslogd -c4 686 ntp 20 0 4456 1316 980 S 0.0 0.1 0:09.35 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 107:114 5238 root 20 0 2676 1292 980 R 0.0 0.1 0:00.03 htop 1948 root 20 0 16736 1136 356 S 0.0 0.1 0:00.00 smbd -F 3964 dnsmasq 20 0 4856 832 648 S 0.0 0.1 0:01.96 /usr/sbin/dnsmasq -x /var/run/dnsmasq/dnsmasq.pid -u dnsmasq -7 /etc/dnsmasq.d,.dpkg-dist,.dpkg-old,.dpkg- 699 root 20 0 2456 796 624 S 0.0 0.1 0:00.25 cron 271 root 16 -4 2464 792 344 S 0.0 0.1 0:00.07 udevd --daemon 5028 root 18 -2 2460 764 320 S 0.0 0.1 0:00.00 udevd --daemon 385 root 18 -2 2460 736 320 S 0.0 0.1 0:00.00 udevd --daemon 248 root 20 0 2392 608 460 S 0.0 0.1 0:00.07 upstart-udev-bridge --daemon
/etc/samba/smb.conf:
[global] log file = /var/log/samba/log.%m workgroup = universe netbios name = srv.loc server string = exchange security = user max log size = 50 kernel change notify = yes #С этими параметрами скорость копирования возросла до 7-9Мбайт/сек по сети. socket options = TCP_NODELAY SO_RCVBUF=16384 SO_SNDBUF=16384 #Эти опции убирают ошибки в логах насчёт попыток обнаружения принтеров load printers = no show add printer wizard = no printing = BSD printcap name = /dev/null disable spoolss = yes [profile] comment = Myfiles path = /org/shares/profiles/%U read only = No [pub] browseable = Yes comment = public path = /org/shares/public/ create mask = 0777 directory mask = 0777 force user = director force group = workers valid users = @workers read only = No #guest ok = Yes
На srv-1 крутятся:
samba (v 3.5.4) squid+rejik dnsmasq(dns+dhcp) postfix+dovecot-imapd+fetchmai+procmail fail2ban
upd. Сегодня добавил планку ОЗУ в 1Гб, т.е. сейчас на srv-1 2ГБ ОЗУ. Ситуация не изменилась - свободной памяти остается около 15-16Мб.
upd.upd.
Попробовал смонтировать ресурс на srv-2 командой:
smbclient -U pp \\\\192.168.0.2\\testshare mypass
и передать файл(запаковал архив в 9Гб) - память также съедается.
Пробовал отключать squid+rejik & fail2ban & iptables(разрешено всё: INPUT,OUTPUT,FORWARD) - всё равно ОЗУ съедается.
- Для комментирования войдите или зарегистрируйтесь
у тебя свободно 753200 кб
у тебя свободно 753200 кб памяти, вся память занята дисковым кэшем - и это нормально
в htop память использованная приложениями показывается зеленым, синим буфер, кэш - желтый
кэши сами очищаются когда
кэши сами очищаются когда приложениям нужна память
Лучше покажи ifconfig <твоя
Лучше покажи
до и после копирования.
А то, что *НИКСы всю свободную память отдают буферам, так это нормально.
Понадобится - вернут! :)
+1 Это в виндах странная
+1
Это в виндах странная стратегия не использовать часть оперативки.
SysA написал(а):Лучше покажи
Это ДО копирования:
Это - ПОСЛЕ:
Оно не съедается, а
Оно не съедается, а используется. А винт довольно слабый, 40 Мб/сек. довольно мало, для современного винта.
prof-alex написал(а): Оно не
Так до генты на этом сервере стоял Win2k3 и никаких проседаний со скоростью копирования, подтормаживаний не было совсем. Поэтому я на винт думал в последнюю очередь.
Давайте подытожим: Вся
Давайте подытожим:
Вся проблема в низкой скорости копирования заключается в медленном HDD?
Не думаю... :) у тебя ведь
Не думаю... у тебя ведь скорость передачи далека от 40Мб/с? :)
Скорее всего проблема в рассогласовании сетевых параметров между Лин и Вин.
Как можно решить проблему
Как можно решить проблему тогда?
Скорость передачи около 7-8Мбайт/сек (не Мбит).
Спустя 10-15мин копирования исчерпывается дисковой кеш и скорость падает до 200Кбайт/сек и копирование подвисает.
оплоки , сетвые буфера ?
оплоки , сетвые буфера ?
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
Что есть оплоки, сетевые
Что есть оплоки, сетевые буфера?
По оплокам - http://smb-conf.ru/write-cache-size-s.html
write cache size = 0 для решения проблемы?
по сетевым буферам:
socket options = TCP_NODELAY SO_RCVBUF=16384 SO_SNDBUF=16384
оно?
http://en.wikipedia.org/wiki/
http://en.wikipedia.org/wiki/Oplock
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
Kстати, а что творится со
Kстати, а что творится со стороны Винды (журналы системы, приложений)?
Есть ли ошибки на сетевом интерфейсе?
Какая загрузка системы/памяти?
Со стороны Винды ошибок в
Со стороны Винды ошибок в журналах нет, памяти(1Гб) свободной - 413Мб остается. Нагрузка на проц(Core2Duo) - колеблется между 5-13%.
Эти измерения проводил в начале копирования и в конце, когда на убунту-сервере копирование практически останавливается.
Было ещё подозрение со
Было ещё подозрение со стороны iptables, но политика цепочек по-умолчанию:
INPUT,OUTPUT - ACCEPT
FORWARD - DROP+набор разрешающих правил для выхода в мир юзеров.
Сделал и FORWARD - ACCEPT, ситуация не изменилась. Дисковой кеш также съедается.
Есть ли ещё мысли, как найти проблему?
Со стороны Винды ошибок в
а что конкретно включено ? пошуруй в аудите доступа к системным объектам.
и таки по пришеденной ссылке я не вижу, что жрется рама
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
Еще надо бы взглянуть на логи
Еще надо бы взглянуть на логи Самбы...
По логам в /var/log/samba -
По логам в /var/log/samba - перед копированием обнулил файлы логов. После копирования глянул - логфайл, в котором должен складывать лог работы с сервером - пустой. Т.е. никаких событий не записалось.
поставьте уровень логирование
поставьте уровень логирования не ниже 3!
Кстати, покажите список всех логов и что из них вы смотрите.
Логирование поставлю только
Логирование поставлю только на выходных. Сейчас работа кипит - на серверу вообще не лезу с экспериментами.
По списку логов:
Убил вин-систему, поставил
Убил вин-систему, поставил второй генту-сервер(srv-2). Настроил на нём также самбу, как и на первом.
Поставил в самбе log level=3, вот результат:
/var/log/samba/log.srv-2
(Показываю последнюю часть лога, т.к. мессаги повторяются в нём)
Кстати, srv-1 & srv-2
Кстати, srv-1 & srv-2 соединены между собой через гигабитный свитч.