Private
Server IP : 195.201.23.43  /  Your IP : 18.226.28.197
Web Server : Apache
System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64
User : kdecoratie ( 1041)
PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/initramfs-tools/scripts/init-bottom/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /usr/share/initramfs-tools/scripts/init-bottom/copymods
#!/bin/sh
#  Copyright, 2014 Scott Moser <smoser@ubuntu.com>
#
#  This program is free software: you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation, either version 3 of the License, or
#  (at your option) any later version.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#    You should have received a copy of the GNU General Public License
#    along with this program.  If not, see
#    <http://www.gnu.org/licenses/>.

prereqs() {
	local o="/scripts/init-bottom/overlayroot"  p=""
	# basically we run after overlayroot but do not depend on it
	for p in "$DESTDIR/" ""; do
		[ -e "$p$o" ] && echo "overlayroot" && return 0
	done
}

[ "$1" != "prereqs" ] || { prereqs; exit; }

. /scripts/functions

set -f
PATH=/usr/sbin:/usr/bin:/sbin:/bin

cmdline=""
myopts=""
if [ -f /proc/cmdline ]; then
	read cmdline < /proc/cmdline
	for tok in $cmdline; do
		[ "${tok#copymods=}" != "$tok" ] || continue
		myopts="${tok#copymods=}"
	done
fi
myver=$(uname -r)

if [ ! -d "/lib/modules/$myver" ]; then
	log_warning_msg "Something odd, no /lib/modules/$myver in initramfs."
	exit 0
fi

[ -d "$rootmnt/lib/modules" ] || mkdir -p "$rootmnt/lib/modules" ||
	{ log_warning_msg "No /lib/modules in target. cannot help."; exit 0; }

if [ -d "$rootmnt/lib/modules/$myver" ]; then
	if [ "${myopts#*force}" = "$myopts" ]; then
		exit 0
	else
		log_warning_msg "copying over existing modules! due to copymods=force"
	fi
fi

mount -t tmpfs copymods "$rootmnt/lib/modules" ||
	{ log_failure_msg "failed mount of tmpfs"; exit 0; }

mv "/lib/modules/$myver" "$rootmnt/lib/modules" ||
	{ log_failure_msg "failed to copy modules to target root"; exit 0; }

ln -s "$rootmnt/lib/modules/$myver" "/lib/modules/$myver" ||
	{ log_failure_msg "failed to link to modules"; exit 0; }

# vi: ts=4 noexpandtab
Private