3 # Copyright (C) SUSE LINUX GmbH 2016, all rights reserved.
5 # This library is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU Lesser General Public License as published
7 # by the Free Software Foundation; either version 2.1 of the License, or
8 # (at your option) version 3.
10 # This library is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
12 # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
13 # License for more details.
15 if [ ! -f /vm_autorun.env ]; then
16 echo "Error: autorun scripts must be run from within an initramfs VM"
22 # block ssh client shells from triggering the dracut autorun script
23 if [ -n "$SSH_CLIENT" ]; then
24 export PS1="dropbear:\${PWD}# "
30 cat /proc/mounts | grep debugfs &> /dev/null
32 mount -t debugfs debugfs /sys/kernel/debug/
35 cat /proc/mounts | grep configfs &> /dev/null
37 mount -t configfs configfs /sys/kernel/config/
40 for i in $DYN_DEBUG_MODULES; do
41 echo "module $i +pf" > /sys/kernel/debug/dynamic_debug/control || _fatal
43 for i in $DYN_DEBUG_FILES; do
44 echo "file $i +pf" > /sys/kernel/debug/dynamic_debug/control || _fatal
47 mkdir --mode=0700 -p /etc/dropbear/ || _fatal
48 if [ -n "$SSH_AUTHORIZED_KEY" ]; then
49 auth_keys_dir="/root/.ssh"
50 mkdir --mode=0700 -p $auth_keys_dir || _fatal
51 echo "$SSH_AUTHORIZED_KEY" >> ${auth_keys_dir}/authorized_keys
52 chmod 0600 ${auth_keys_dir}/authorized_keys || _fatal