#!/usr/bin/env bash # # Initial script for Live operating system # This script are launching before starting init from linux-live script. # Current dir allways must be set to root (/) # All system path must be relative, except initrd dirs ENABLED=yes [ "$ENABLED" != "yes" ] && exit 0 PATH=.:/:/usr/bin:/usr/local/bin:/usr/local/sbin DEBUGMODE=no . usr/lib/ublinux/functions . usr/lib/ublinux/os-config debug_mode "$0" "$@" echo $SYSCONF | grep -q ^/ && SYSCONF=.$SYSCONF SOURCE=${SYSCONF}/config; [ -f "${SOURCE}" ] && . ${SOURCE} 2>/dev/null [ -z "$(cmdline_value servicesstart)" ] || SERVICESSTART=$(cmdline_value servicesstart) [ -z "$(cmdline_value servicesnostart)" ] || SERVICESNOSTART=$(cmdline_value servicesnostart) if [ ! -z "$SERVICESSTART$SERVICESNOSTART$SERVICESMASK$SERVICESUNMASK" ] ;then mkdir -p proc mount -o rbind /proc proc ISSYSTEMD=$(readlink -fq usr/bin/init | grep "lib/systemd/systemd$") for a in $(echo $SERVICESUNMASK,$SERVICESSTART | tr , " ") ;do [ $ISSYSTEMD ] && chroot . systemctl unmask $a done for a in $(echo $SERVICESSTART | tr , " ") ;do if [ $ISSYSTEMD ] ;then chroot . systemctl enable $a || true else true fi done for a in $(echo $SERVICESNOSTART | tr , " ") ;do if [ $ISSYSTEMD ] ;then chroot . systemctl disable $a || true else true fi done for a in $(echo $SERVICESMASK | tr , " ") ;do [ $ISSYSTEMD ] && chroot . systemctl disable $a [ $ISSYSTEMD ] && chroot . systemctl mask $a done umount proc fi