##// END OF EJS Templates

Fichier de la dernière révision:

r743:55670e666952 Fusion
r775:6cd6af4bd9a0 Fusion master
Show More
50-firstboot.sh
63 lines | 1.9 KiB | application/x-sh | BashLexer
#
# First boot actions
#
# Load utility functions
. ./functions.sh
# Prepare rc.firstboot script
cat files/firstboot/10-begin.sh > "${ETC_DIR}/rc.firstboot"
# Prepare filesystem auto expand
if [ "$EXPANDROOT" = true ] ; then
if [ "$ENABLE_CRYPTFS" = false ] ; then
cat files/firstboot/20-expandroot.sh >> "${ETC_DIR}/rc.firstboot"
else
# Regenerate initramfs to remove encrypted root partition auto expand
cat files/firstboot/21-regenerate-initramfs.sh >> "${ETC_DIR}/rc.firstboot"
fi
# Restart dphys-swapfile so the size of the swap file is relative to the resized root partition
if [ "$ENABLE_DPHYSSWAP" = true ] ; then
cat files/firstboot/23-restart-dphys-swapfile.sh >> "${ETC_DIR}/rc.firstboot"
fi
fi
# Ensure openssh server host keys are regenerated on first boot
if [ "$SSH_ENABLE" = true ] ; then
cat files/firstboot/30-generate-ssh-keys.sh >> "${ETC_DIR}/rc.firstboot"
fi
if [ "$ENABLE_DBUS" = true ] ; then
# Ensure that dbus machine-id exists
cat files/firstboot/40-generate-machineid.sh >> "${ETC_DIR}/rc.firstboot"
fi
# Create /etc/resolv.conf symlink
cat files/firstboot/41-create-resolv-symlink.sh >> "${ETC_DIR}/rc.firstboot"
# Configure automatic network interface names
if [ "$ENABLE_IFNAMES" = true ] ; then
cat files/firstboot/42-config-ifnames.sh >> "${ETC_DIR}/rc.firstboot"
fi
# Execute custom firstboot scripts
if [ -d "custom.d/firstboot" ] ; then
for SCRIPT in custom.d/firstboot/*.sh; do
. "$SCRIPT"
done
fi
# Finalize rc.firstboot script
cat files/firstboot/99-finish.sh >> "${ETC_DIR}/rc.firstboot"
chmod +x "${ETC_DIR}/rc.firstboot"
# Install default rc.local if it does not exist
if [ ! -f "${ETC_DIR}/rc.local" ] ; then
install_exec files/etc/rc.local "${ETC_DIR}/rc.local"
fi
# Add rc.firstboot script to rc.local
sed -i '/exit 0/d' "${ETC_DIR}/rc.local"
echo /etc/rc.firstboot >> "${ETC_DIR}/rc.local"
echo exit 0 >> "${ETC_DIR}/rc.local"