#!/bin/bash # $Id$ source /etc/installer.conf source ${INSTALLER_DIR}/include/hwdetection.sh : ${INSTALL_ROOT="/mnt/magellan"} KNOWN_DISKS="ROOT BOOT SWAP HOME TMP USER VAR SVR OPT" # root device sed -i "s:^/dev/ROOT.*:UUID=$(get_uuid ${PARTITION_DISK_ROOT})\t/\t\t${PARTITION_FS_ROOT}\t\tdefaults,noatime\t0 0:" ${INSTALL_ROOT}/etc/fstab # swap device sed -i "s:^/dev/SWAP.*:UUID=$(get_uuid ${PARTITION_DISK_SWAP})\tswap\t\tswap\t\tpri=1\t\t\t0 0:" ${INSTALL_ROOT}/etc/fstab # boot if [[ -z ${PARTITION_DISK_BOOT} ]] then # delete the entry sed -i '/^\/dev\/BOOT.*/d' ${INSTALL_ROOT}/etc/fstab else sed -i "s:^/dev/BOOT.*:UUID=$(get_uuid ${PARTITION_DISK_BOOT})\t/boot\t\t${PARTITION_FS_BOOT}\t\tnoauto,noatime\t1 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_uuid=$(get_uuid ${disk_part}) disk_fs=$(eval echo \$PARTITION_FS_${disk}) if [[ ! -z ${disk_part} ]] then if [[ -z $(grep [[:space:]]${dest}[[:space:]] ${INSTALL_ROOT}/etc/fstab) ]] then echo "UUID=${disk_uuid}\t${dest}\t\t${disk_fs}\t\tdefaults,noatime\t0 0" >> ${INSTALL_ROOT}/etc/fstab else sed -i "s:.*[[:space:]]${dest}[[:space:]].*:UUID=${disk_uuid}\t${dest}\t\t${disk_fs}\t\tdefaults,noatime\t0 0:" ${INSTALL_ROOT}/etc/fstab fi fi done