#!/bin/bash : ${INSTALL_ROOT="/mnt/magellan"} KNOWN_DISKS="ROOT BOOT SWAP HOME TMP USER VAR SVR OPT" # root device sed -i "s:^/dev/ROOT.*:${PARTITION_DISK_ROOT} / ${PARTITION_FS_ROOT} defaults,noatime 0 0:" ${INSTALL_ROOT}/etc/fstab # swap device sed -i "s:^/dev/SWAP.*:${PARTITION_DISK_SWAP} swap swap pri=1 0 0:" ${INSTALL_ROOT}/etc/fstab # boot if [[ -z ${PARTITION_DISK_BOOT} ]] then # delete the entry sed -i 's/\/dev\/ROOT.*/d' ${INSTALL_ROOT}/etc/fstab else sed -i "s:^/dev/BOOT.*:${PARTITION_DISK_BOOT} /boot ${PARTITION_FS_BOOT} noauto,noatime 1 1:" ${INSTALL_ROOT}/etc/fstab fi # then all other for disk in ${KNOWN_DISKS} do case ${disk} in HOME) dest=/home ;; TMP) dest=/tmp ;; USER) dest=/usr ;; VAR) dest=/var ;; SVR) dest=/svr ;; OPT) dest=/opt ;; *) continue ;; esac disk_part=$(eval echo \$PARTITION_DISK_${disk}) disk_fs=$(eval echo \$PARTITION_FS_${disk}) if [[ ! -z ${disk_part} ]] then if [[ -z $(grep ^${disk_part} ${INSTALL_ROOT}/etc/fstab) ]] then echo "${disk_part} ${dest} ${disk_fs} defaults,noatime 0 0" >> ${INSTALL_ROOT}/etc/fstab else sed -i "s:^${disk_part}.*:${disk_part} ${dest} ${disk_fs} defaults,noatime 0 0:" ${INSTALL_ROOT}/etc/fstab fi fi done