I have an ebox 3350mx that acts as a headless home server offering various local services like dnsmasq, atalkd, time machine backups, http, ssh, etc.
I have installed FreeBSD 9.0. The main hd (ada0) is an external SD card. The specs are 512 MB RAM and PMX-1000/Vortex86MX processor at 1Ghz.
The problem is that it's slow when operating with it. I came through a couple of modifications to make it 'run' faster but the huge pain is the lack a smooth shell prompt.
Tasks like listing directories, editing files with vim, reading files with cat, etc. Have become outrageously annoying.
I'm trying to figure out what is happening. To make things worst, I'm currently online because of ISP's cable problems, they will fix this apparently tomorrow.
I managed to get some speed by, stopping 'sendmail': I've reached 480 MB of Free Memory from merely 12 MB. Apparently sendmail was acting strange which kept the machine slow.
I switched off PAM and useDNS from
sshd_config and stopped almost every service. Even pflogd and pf. Most of them, apart from sendmail and sshd_config, did a small but perceptible difference. However, my login prompt still runs like a broken-car. First time I issue 'uptime' I get normal responsiveness second time I issue the command - like 1 second later - I need to wait 15 seconds or hit 'enter' before I get anything on the screen. Some times hitting 'enter' works, as if the tty did not deliver, some times even that doesn't work it's like if i/o doesn't work ... but I get no i/o errors at all.
I'm kinda desperate because I don't know from where to start looking... The post on the FreeBSD forums offers some cmd results if you care to look.
Any thoughts on how to turn the shell's responsiveness to 'normal' is welcomed.
Here is the disk info:
[user@comodino ~]$ dmesg |grep -i ada ada0 at ata2 bus 0 scbus0 target 0 lun 0 ada0: <SD RDC SD-IDE HOST CONTROLLER 01000000> ATA-6 device ada0: 33.300MB/s transfers (UDMA2, PIO 512bytes) ada0: 15399MB (31537152 512 byte sectors: 16H 63S/T 31286C) ada0: Previously was known as ad4 Trying to mount root from ufs:/dev/ada0p2 [rw]...
I thought so too that might be an I/O. My card is 16 GB ADATA class 10.
Here is my iostat:
[user@comodino ~]$ iostat tty ada0 pass0 cpu tin tout KB/t tps MB/s KB/t tps MB/s us ni sy in id 0 1 24.03 0 0.00 0.00 0 0.00 0 0 0 0 100
I'm doing some test with bonnie++ (http://www.coker.com.au/bonnie++/) now. I'll report the result asap. Thanks for the reply Manoli :-)
update: Here are the results from
[atma@comodino ~]$ bonnie++ Writing with putc()...done Writing intelligently...done Rewriting...done Reading with getc()...done Reading intelligently...done start 'em...done...done...done... Create files in sequential order...done. Stat files in sequential order...done. Delete files in sequential order...done. Create files in random order...done. Stat files in random order...done. Delete files in random order...done. Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP comodino 1G 4156 24 4591 8 2993 7 14869 88 21277 27 100.8 2 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 16 2804 58 10449 98 6559 88 2997 61 10711 99 4418 58 comodino,1G,4156,24,4591,8,2993,7,14869,88,21277,27,100.8,2,16,2804,58,10449,98,6559,88,2997,61,10711,99,4418,58
Now I must decode the results :-P