Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- apt install -y fio ioping
- sleep 2
- sync
- cd /root
- iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 >/tmp/storage-details.txt
- sleep 2
- sync
- echo -e "\n" >>/tmp/storage-details.txt
- ioping -c 10 . >>/tmp/storage-details.txt
- sleep 2
- sync
- echo -e "\n" >>/tmp/storage-details.txt
- fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=test --bs=4k --iodepth=64 --size=100M --readwrite=randrw --rwmixread=75 >>/tmp/storage-details.txt
- sleep 2
- sync
- StartTime=$(date "+%s")
- echo ${StartTime} >/tmp/omv-installation-start-time.txt
- cp -p /etc/default/cpufrequtils /etc/default/cpufrequtils.bak
- locale-gen "en_US.UTF-8"
- locale-gen "C"
- export LANG=C LC_ALL="en_US.UTF-8"
- #Add OMV source.list and Update System
- cat > /etc/apt/sources.list.d/openmediavault.list <<- EOF
- # deb http://packages.openmediavault.org/public erasmus main
- deb https://openmediavault.github.io/packages/ erasmus main
- ## Uncomment the following line to add software from the proposed repository.
- # deb http://packages.openmediavault.org/public erasmus-proposed main
- deb https://openmediavault.github.io/packages/ erasmus-proposed main
- ## This software is not part of OpenMediaVault, but is offered by third-party
- ## developers as a service to OpenMediaVault users.
- # deb http://packages.openmediavault.org/public erasmus partner
- EOF
- # Add OMV and OMV Plugin developer keys
- debconf-apt-progress -- apt-get update
- apt-get --yes --force-yes --allow-unauthenticated install openmediavault-keyring
- apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 7AA630A1EDEE7D73
- # install debconf-utils, postfix and OMV
- debconf-set-selections <<< "postfix postfix/mailname string openmediavault"
- debconf-set-selections <<< "postfix postfix/main_mailer_type string 'No configuration'"
- apt-get --yes --force-yes --allow-unauthenticated --fix-missing --no-install-recommends \
- -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" install \
- debconf-utils postfix
- read HOSTNAME </etc/hostname
- sed -i -e "s/^::1 localhost.*/::1 ${HOSTNAME} localhost ip6-localhost ip6-loopback/" \
- -e "s/^127.0.0.1 localhost.*/127.0.0.1 ${HOSTNAME} localhost/" /etc/hosts
- sed -i -e "s/^mydestination =.*/mydestination = ${HOSTNAME}, localhost.localdomain, localhost/" \
- -e "s/^myhostname =.*/myhostname = ${HOSTNAME}/" /etc/postfix/main.cf
- export DEBIAN_FRONTEND=noninteractive
- apt-get --yes --force-yes --allow-unauthenticated --fix-missing --no-install-recommends \
- -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" install \
- openmediavault
- # install OMV extras, enable folder2ram, tweak some settings
- FILE=$(mktemp)
- wget http://omv-extras.org/openmediavault-omvextrasorg_latest_all3.deb -qO $FILE && dpkg -i $FILE && rm $FILE
- /usr/sbin/omv-update
- # Netatalk performance fix
- mkdir -p /var/lib/netatalk/CNID
- # use folder2ram instead of log2ram with OMV
- apt-get -y install openmediavault-flashmemory
- sed -i -e '/<flashmemory>/,/<\/flashmemory>/ s/<enable>0/<enable>1/' \
- -e '/<ssh>/,/<\/ssh>/ s/<enable>0/<enable>1/' /etc/openmediavault/config.xml
- sed -i '/^EOF$/itmpfs\t\t/var/lib/netatalk/CNID' /usr/share/openmediavault/mkconf/flashmemory
- /usr/sbin/omv-mkconf flashmemory
- systemctl disable log2ram
- /sbin/folder2ram -enablesystemd
- sed -i 's|-j /var/lib/rrdcached/journal/ ||' /etc/init.d/rrdcached
- # some performance tuning: Samba, cpufreq behaviour, IO scheduling/priority
- . /usr/share/openmediavault/scripts/helper-functions
- SMB_Options="min receivefile size = 16384\nwrite cache size = 524288\ngetwd cache = yes\nsocket options = TCP_NODELAY IPTOS_LOWDELAY"
- xmlstarlet ed -L -u "/config/services/smb/extraoptions" -v "$(echo -e "${SMB_Options}")" ${OMV_CONFIG_FILE}
- mv /etc/default/cpufrequtils.bak /etc/default/cpufrequtils
- grep -q ondemand /etc/default/cpufrequtils && sed -i '/^exit\ 0/i \
- echo ondemand >/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor \
- sleep 0.1 \
- cd /sys/devices/system/cpu \
- for i in cpufreq/ondemand cpu0/cpufreq/ondemand cpu4/cpufreq/ondemand ; do \
- if [ -d $i ]; then \
- echo 1 >${i}/io_is_busy \
- echo 25 >${i}/up_threshold \
- echo 10 >${i}/sampling_down_factor \
- fi \
- done \
- ' /etc/rc.local
- StopTime=$(date "+%s")
- echo ${StopTime} >/tmp/omv-installation-stop-time.txt
- Duration=$(( ${StopTime} - ${StartTime} ))
- echo -e "\n\n\nInstallation took ${Duration} seconds"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement