#!/bin/bash

ZFS_CONFIG_FILE=/etc/modprobe.d/zfs.conf
RAM_KB=$(cat /proc/meminfo | grep -i memtotal | awk '{print $2}')
RAM_B=$(( RAM_KB * 1024 ))

ARC_MAX=$(( 9 * $RAM_B / 10 ))
ARC_MIN=$(( $RAM_B / 3 ))

echo "options zfs zfs_arc_max=$ARC_MAX" >> $ZFS_CONFIG_FILE
echo "zfs_arc_max is set to $ARC_MAX"
echo "options zfs zfs_arc_min=$ARC_MIN" >> $ZFS_CONFIG_FILE
echo "zfs_arc_min is set to $ARC_MIN"
echo "reboot to take affect"
