File: //var/packages/FileStation/scripts/postinst
#!/bin/sh
# Copyright (c) 2000-2016 Synology Inc. All rights reserved.
. "$(dirname $0)"/common
prepare_folder()
{
[ -d $SYNOPKG_CONF_DIR ] || mkdir -p $SYNOPKG_CONF_DIR
}
install_etc_file()
{
#register volume hook prevent stop FileStation when volume action occur
mv $TARGET_DIR/etc/reg_volume $SYNOPKG_CONF_DIR/
}
upgrade_sharing_db()
{
$TARGET_DIR/sbin/webfm_migrate -t sharing_db
}
limit_thumbd_worker()
{
SPECIAL_PLATFORM_LIST=("synology_armada370_ds115j synology_armada370_214se synology_armada370_216se synology_armada370_ds119j")
UNIQUE=`$SYNOGETKEYVALUE $SYNOINFO unique`
if [[ " ${SPECIAL_PLATFORM_LIST[@]} " =~ " ${UNIQUE} " ]]; then
sed -i 's/\"max_worker\": 8/\"max_worker\": 1/g' ${TARGET_DIR}/etc/conf/thumbd.conf
else
CORE=`nproc`
MEMTOTAL=`free | grep Mem | awk '{print $2}'`
WLIMIT=$((${MEMTOTAL} / 1024 * 6 / 1000))
MAXWORKER=8
if [ $CORE -le $WLIMIT ]; then
MAXWORKER=$CORE
else
MAXWORKER=$WLIMIT
fi
if [ $MAXWORKER -le 1 ]; then
MAXWORKER=1
fi
sed -i 's/\"max_worker\": 8/\"max_worker\": '"${MAXWORKER}"'/g' ${TARGET_DIR}/etc/conf/thumbd.conf
fi
}
prepare_folder
install_etc_file
upgrade_sharing_db
limit_thumbd_worker
exit 0