#!
/bin/bash
# Define variables
SAPSID="DEV" # Change to your system ID
INSTANCE_NO="00" # Change to your instance number
KERNEL_DIR="/usr/sap/$SAPSID/exe" # Target kernel directory
SOURCE_KERNEL="/sapmedia/new_kernel" # Path to new kernel files
USER="sapadm" # SAP admin user
DATESTAMP=$(date +%Y%m%d_%H%M%S)
echo "Starting kernel upgrade for $SAPSID at $DATESTAMP"
# Step 1: Stop SAP system
echo "Stopping SAP system..."
su - $USER -c "stopsap $SAPSID"
# Step 2: Backup existing kernel
echo "Backing up existing kernel..."
mkdir -p "${KERNEL_DIR}/backup_$DATESTAMP"
cp -pr ${KERNEL_DIR}/* "${KERNEL_DIR}/backup_$DATESTAMP/"
# Step 3: Copy new kernel files
echo "Copying new kernel files..."
cp -pr ${SOURCE_KERNEL}/* ${KERNEL_DIR}/
# Step 4: Set proper permissions
echo "Updating file permissions..."
chown -R ${USER}:sapsys ${KERNEL_DIR}
chmod -R 755 ${KERNEL_DIR}
# Step 5: Start SAP system
echo "Starting SAP system..."
su - $USER -c "startsap $SAPSID"
echo "Kernel upgrade completed successfully for $SAPSID.