diff options
Diffstat (limited to 'mk/rootfs/openrc/etc/init.d/bootmisc')
-rw-r--r-- | mk/rootfs/openrc/etc/init.d/bootmisc | 216 |
1 files changed, 0 insertions, 216 deletions
diff --git a/mk/rootfs/openrc/etc/init.d/bootmisc b/mk/rootfs/openrc/etc/init.d/bootmisc deleted file mode 100644 index 8a1b008..0000000 --- a/mk/rootfs/openrc/etc/init.d/bootmisc +++ /dev/null @@ -1,216 +0,0 @@ -#!/sbin/openrc-run -# Copyright (c) 2007-2009 Roy Marples <roy@marples.name> -# Released under the 2-clause BSD license. - -depend() -{ - need localmount - after root sysctl - keyword -timeout -} - -: ${wipe_tmp:=${WIPE_TMP:-yes}} -: ${log_dmesg:=${LOG_DMESG:-yes}} - -cleanup_tmp_dir() -{ - local dir="$1" - - if ! [ -d "$dir" ]; then - mkdir -p "$dir" || return $? - fi - checkpath -W "$dir" || return 1 - chmod a+rwt "$dir" 2> /dev/null - cd "$dir" || return 1 - if yesno $wipe_tmp; then - ebegin "Wiping $dir directory" - - # Faster than raw find - if ! rm -rf -- [!ajlq\.]* 2>/dev/null ; then - # Blah, too many files - find . -maxdepth 1 -name '[!ajlq\.]*' -exec rm -rf -- {} + - fi - - # pam_mktemp creates a .private directory within which - # each user gets a private directory with immutable - # bit set; remove the immutable bit before trying to - # remove it. - [ -d /tmp/.private ] && chattr -R -a /tmp/.private 2> /dev/null - - # Prune the paths that are left - find . -maxdepth 1 \ - ! -name . \ - ! -name lost+found \ - ! -name quota.user \ - ! -name aquota.user \ - ! -name quota.group \ - ! -name aquota.group \ - ! -name journal \ - -exec rm -rf -- {} + - eend 0 - else - ebegin "Cleaning $dir directory" - rm -rf -- .X*-lock esrv* kio* \ - jpsock.* .fam* .esd* \ - orbit-* ssh-* ksocket-* \ - .*-unix - eend 0 - fi -} - -cleanup_var_run_dir() -{ - ebegin "Cleaning /var/run" - for x in $(find /var/run ! -type d ! -name utmp \ - ! -name random-seed ! -name dev.db \ - ! -name ld-elf.so.hints ! -name ld.so.hints); - do - # Clean stale sockets - if [ -S "$x" ]; then - if command -v fuser >/dev/null 2>&1; then - fuser "$x" >/dev/null 2>&1 || rm -- "$x" - else - rm -- "$x" - fi - fi - [ ! -f "$x" ] && continue - # Do not remove pidfiles of already running daemons - case "$x" in - *.pid) - start-stop-daemon --test --quiet \ - --stop --pidfile "$x" && continue - ;; - esac - rm -f -- "$x" - done - eend 0 -} - -mkutmp() -{ - : >"$1" - # Not all systems have the utmp group - chgrp utmp "$1" 2>/dev/null - chmod 0664 "$1" -} - -migrate_to_run() -{ - src="$1" - dst="$2" - if [ -L $src -a "$(readlink -f $src)" != $dst ]; then - ewarn "$src does not point to $dst." - ewarn "Setting $src to point to $dst." - rm $src - elif [ ! -L $src -a -d $src ]; then - ebegin "Migrating $src to $dst" - cp -a $src/* $dst/ - rm -rf $src - eend $? - fi - # If $src doesn't exist at all, just run this - if [ ! -e $src ]; then - ln -s $dst $src - fi -} - -clean_run() -{ - [ "$RC_SYS" = VSERVER ] && return 0 - local dir - dir=$(mktemp -d) - mount --bind / $dir - rm -rf $dir/run/* - umount $dir - rm -rf $dir -} - -start() -{ - # Remove any added console dirs - rm -rf "$RC_LIBEXECDIR"/console/* - - local logw=false runw=false extra= - # Ensure that our basic dirs exist - if [ "$RC_UNAME" = Linux ]; then - # Satisfy Linux FHS - extra=/var/lib/misc - if [ ! -d /run ]; then - extra="/var/run $extra" - fi - else - extra=/var/run - fi - for x in /var/log /tmp $extra; do - if ! [ -d $x ]; then - if ! mkdir -p $x; then - eend 1 "failed to create needed directory $x" - return 1 - fi - fi - done - - if [ "$RC_UNAME" = Linux -a -d /run ]; then - migrate_to_run /var/lock /run/lock - migrate_to_run /var/run /run - clean_run - fi - - if checkpath -W /var/run; then - ebegin "Creating user login records" - local xtra= - [ "$RC_UNAME" = NetBSD ] && xtra=x - for x in "" $xtra; do - mkutmp /var/run/utmp$x - done - [ -e /var/log/wtmp ] || mkutmp /var/log/wtmp - eend 0 - - mountinfo -q -f tmpfs /var/run || cleanup_var_run_dir - fi - - # Clean up /tmp directories - local tmp= - for tmp in ${clean_tmp_dirs:-${wipe_tmp_dirs-/tmp}}; do - mountinfo -q -f tmpfs "$tmp" || cleanup_tmp_dir "$tmp" - done - - if checkpath -W /tmp; then - # Make sure our X11 stuff have the correct permissions - # Omit the chown as bootmisc is run before network is up - # and users may be using lame LDAP auth #139411 - rm -rf /tmp/.ICE-unix /tmp/.X11-unix - mkdir -p /tmp/.ICE-unix /tmp/.X11-unix - chmod 1777 /tmp/.ICE-unix /tmp/.X11-unix - if [ -x /sbin/restorecon ]; then - restorecon /tmp/.ICE-unix /tmp/.X11-unix - fi - fi - - if yesno $log_dmesg; then - if $logw || checkpath -W /var/log; then - # Create an 'after-boot' dmesg log - if [ "$RC_SYS" != VSERVER -a "$RC_SYS" != OPENVZ -a "$RC_SYS" != LXC ]; then - dmesg > /var/log/dmesg - chmod 640 /var/log/dmesg - fi - fi - fi - - return 0 -} - -stop() -{ - # Write a halt record if we're shutting down - if [ "$RC_RUNLEVEL" = shutdown ]; then - [ "$RC_UNAME" = Linux ] && halt -w - if [ "$RC_SYS" = OPENVZ ]; then - yesno $RC_REBOOT && printf "" >/reboot - fi - fi - - return 0 -} - -# vim: ft=sh |