The Slimdown

DISCLAIMER: This walkthrough is solely for my reference. If you fuck-up anything doing it, you are on your own ! Love, peace and best wishes.

Back to revival
Now first what is running on the syno can be seen by running the ps command. The output is like this:

Poseidon> ps
  PID  Uid     VmSize Stat Command
    1 root         16 S   init
    2 root            SW  [keventd]
    3 root            SWN [ksoftirqd_CPU0]
    4 root            SW  [kswapd]
    5 root            SW  [bdflush]
    6 root            SW  [kupdated]
    7 root            SW  [kinoded]
    8 root            SW  [mtdblockd]
  121 root            SW  [kjournald]
  196 root            SW  [khubd]
  349 root        148 S   /sbin/syslogd -S
  351 root          4 S   /sbin/klogd
  380 root         28 S < /usr/syno/bin/findhostd
  407 root            SW  [kjournald]
  459 root         56 S   /usr/syno/sbin/hotplugd
  485 root         76 S   /usr/sbin/inetd
  538 admin       228 S   /usr/syno/pgsql/bin/postgres -D /volume1/@database/pg
  539 root        788 S   /usr/syno/bin/scemd
  582 nobody      188 S   /opt/sbin/mt-daapd -c /opt/etc/mt-daapd/mt-daapd.conf
  583 nobody     3800 S   /opt/sbin/mt-daapd -c /opt/etc/mt-daapd/mt-daapd.conf
  597 nobody     3800 S   /opt/sbin/mt-daapd -c /opt/etc/mt-daapd/mt-daapd.conf
  624 root          4 S   /sbin/getty 115200 console
  626 admin       208 S   postgres: writer process
  627 admin        72 S   postgres: wal writer process
  828 root         64 S N /usr/syno/sbin/synoindexd
  835 root         64 S N /usr/syno/bin/synomkthumbd
  895 nobody     3800 S   /opt/sbin/mt-daapd -c /opt/etc/mt-daapd/mt-daapd.conf
  896 root        656 S   /usr/syno/sbin/nmbd -D
  946 admin        24 S   postgres: admin photo [local] idle
  982 root        504 S   /usr/syno/sbin/smbd -D
  985 root         20 S   /usr/syno/sbin/smbd -D
 1050 root         84 S   /usr/syno/sbin/atalkd
 1062 root         80 S N /usr/syno/sbin/synomkflvd
 1128 root         96 S   /usr/syno/apache/bin/httpd -f /usr/syno/apache/conf/h
 1188 root        328 S   /usr/syno/apache/bin/httpd
 1253 root        460 S   /usr/syno/sbin/mDNSResponder -f /tmp/mDNSResponder.co
 1256 root        460 S   /usr/syno/sbin/mDNSResponder -f /tmp/mDNSResponder.co
 1258 root        460 S   /usr/syno/sbin/mDNSResponder -f /tmp/mDNSResponder.co
 1264 root        336 S   /usr/syno/sbin/ftpd -D
 1269 root         68 S   /usr/syno/apache/bin/httpd -f /usr/syno/apache/conf/h
 1270 root         68 S   /usr/syno/apache/bin/httpd -f /usr/syno/apache/conf/h
 1271 nobody      308 S   /usr/syno/apache/bin/httpd
 1272 nobody      312 S   /usr/syno/apache/bin/httpd
 1273 nobody      312 S   /usr/syno/apache/bin/httpd
 1280 root         44 S   /usr/syno/sbin/afpd -c 256 -g guest -n Poseidon:AFPSe
 3257 nobody      316 S   /usr/syno/apache/bin/httpd
 3259 root         68 S   /usr/syno/apache/bin/httpd -f /usr/syno/apache/conf/h
 3260 root         68 S   /usr/syno/apache/bin/httpd -f /usr/syno/apache/conf/h
 3261 root         68 S   /usr/syno/apache/bin/httpd -f /usr/syno/apache/conf/h
 3668 root        232 S   crond -S -b
 3756 nobody      320 S   /usr/syno/apache/bin/httpd
 4618 root       1988 S   sshd: root@ttyp0
 4622 root        376 S   -ash
 4630 root        764 R   ps

syno scripts
The syno start/stop scripts are located in the directory "/usr/syno/etc/rc.d". When dissecting these scripts you can see that there is a central configuration file called /etc.defaults/synoinfo.conf which stores the supported features and the configuration file which enables/disables these features at /etc/synoinfo.conf aka "config file". Easier it is to disable the rc scripts if you want to get rid of these features. Create a directory /usr/syno/etc.defaults/rc.off and move all the unwanted S[0-9]{2}[A-Za-z-]*.sh scripts there.

mDNSResponder
Something that is realted with bonjour/apple: "The open source mDNSResponder project contains the Bonjour service discovery implemenation that's built into Mac OS X and Bonjour for Windows." Since no apples here, there is no use for it.
The process: mDNSResponder
The script: S99mDNS.sh
The parameter: runitunes, runafp, runaudiostation (If any of these is set to yes in config it will start)
The stop: /usr/syno/etc/rc.d/S99mDNS.sh stop
The safest way of getting rid of this daemon it is to set all these parameters to "no" in the config file.

atalkd
Something for the Mac's Since no apples here, there is no use for it.
The process: afpd atalkd papd
The script: S81atalk.sh
The parameter: runafp
The stop: /usr/syno/etc/rc.d/S81atalk.sh stop
Again to be on the safe side, set runafp to "no" in the config file.

apache
All the apache web servers. For the user. For the admin. I'll be using nginx with php. And configuring this beast through ssh and config files is enough for me.
The process: httpd
The script: S97apache-sys.sh, S97apache-user.sh
The parameter: runweb
The stop: /usr/syno/etc/rc.d/S97apache-user.sh stop; /usr/syno/etc/rc.d/S97apache-sys.sh stop
Seems like the system web server must be stopped manually. Might get handy when it's up after restart.

synomkthumbd
Thumbnails. You can't even configure if it will run. In the script it simply checks if the binary exists and when yes, then run's it.
The process: synomkthumbd
The script: S77synomkthumbd.sh
The parameter: NONE
The stop: /usr/syno/etc/rc.d/S77synomkthumbd.sh stop

synoindexd
Indexing. Something. Whatever. If you don't know what it is you probably don't need it :-)
The process: synoindexd
The script: S66synoindexd.sh
The parameter: supportmediaservice, supportphoto, supportitunes, support_audio in /etc.defaults/synoinfo.conf (If any of these is set to yes in config it will start)
The stop: /usr/syno/etc/rc.d/S66synoindexd.sh stop

synomkflvd
Videostation. flv is a container format for adobe flash player.
The process: synomkflvd
The script: S88synomkflvd.sh
The parameter: supportvideostation in /etc.defaults/synoinfo.conf
The stop: /usr/syno/etc/rc.d/S88synomkflvd.sh stop

postgres
SQL database. If this command '/usr/syno/bin/servicetool —get-service-path pgsql' returns a path '/volume1/@database' (e.g. something that is not equal to zero' the database will start.
The process: postgres
The script: S20pgsql.sh
The parameter: NONE
The stop: /usr/syno/etc/rc.d/S20pgsql.sh stop

findhostd
Find something. Probably other syno boxes ? You can't even configure if it will run. In the script it simply checks if the binary exists and when yes, then run's it.
The process: findhostd
The script: S98findhostd.sh
The parameter: NONE
The stop: /usr/syno/etc/rc.d/S98findhostd.sh stop

ftpd
file transfer protocol. Nice thing. You might keep it. I share everything through samba in my home networks. And there is always sftp anyway (think winscp)
The process: ftpd
The script: S99ftpd.sh
The parameter: runftpd
The stop: /usr/syno/etc/rc.d/S99ftpd.sh stop

Ok, we are now down to this list of processes:

Poseidon> ps
  PID  Uid     VmSize Stat Command
    1 root         44 S   init
    2 root            SW  [keventd]
    3 root            SWN [ksoftirqd_CPU0]
    4 root            SW  [kswapd]
    5 root            SW  [bdflush]
    6 root            SW  [kupdated]
    7 root            SW  [kinoded]
    8 root            SW  [mtdblockd]
  121 root            SW  [kjournald]
  196 root            SW  [khubd]
  349 root        172 S   /sbin/syslogd -S
  351 root          4 S   /sbin/klogd
  407 root            SW  [kjournald]
  459 root         56 S   /usr/syno/sbin/hotplugd
  485 root         76 S   /usr/sbin/inetd
  539 root        788 S   /usr/syno/bin/scemd
  582 nobody      188 S   /opt/sbin/mt-daapd -c /opt/etc/mt-daapd/mt-daapd.conf
  583 nobody     3800 S   /opt/sbin/mt-daapd -c /opt/etc/mt-daapd/mt-daapd.conf
  597 nobody     3800 S   /opt/sbin/mt-daapd -c /opt/etc/mt-daapd/mt-daapd.conf
  624 root          4 S   /sbin/getty 115200 console
  895 nobody     3800 S   /opt/sbin/mt-daapd -c /opt/etc/mt-daapd/mt-daapd.conf
  896 root        660 S   /usr/syno/sbin/nmbd -D
  982 root        504 S   /usr/syno/sbin/smbd -D
  985 root         20 S   /usr/syno/sbin/smbd -D
 3668 root        232 S   crond -S -b
 4618 root       2028 S   sshd: root@ttyp0
 4622 root        424 S   -ash
 4870 root        764 R   ps

samba will probably get replaced by a optware samba in the future (nmbd, smbd).
maybe scemd will be removed ?
xinetd instead of inetd ? Anyway inetd won't run that much of processes so disabling it all-together might be an idea (and run all the other daemons instead).

READ
This is a good writeup on the matter, go read it.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-Share Alike 2.5 License.