blob: 91a1dd3cdabc27d4253938a49851cb5222cada81 [file] [log] [blame]
#!/bin/bash
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
set -e
set -x
# Perform fsck check on every 3rd boot
function fix_tune2fs() {
for partition in $(blkid -o list | grep ext | awk '{print $1}')
do
tune2fs -m 0 $partition
tune2fs -c 4 $partition
done
fdisk -l
df -h
uname -a
}
function add_backports() {
sed -i '/cdrom/d' /etc/apt/sources.list
sed -i '/deb-src/d' /etc/apt/sources.list
sed -i '/backports/d' /etc/apt/sources.list
sed -i '/security/d' /etc/apt/sources.list
echo 'deb http://http.debian.net/debian bookworm-backports main' >> /etc/apt/sources.list
echo 'deb http://security.debian.org/debian-security bookworm-security main' >> /etc/apt/sources.list
}
function apt_upgrade() {
DEBIAN_FRONTEND=noninteractive
DEBIAN_PRIORITY=critical
fix_tune2fs
# Setup sudo
echo 'cloud ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/cloud
add_backports
rm -fv /root/*.iso
apt-get -q -y update
apt-get -q -y upgrade
apt-get -q -y dist-upgrade
apt-get -y autoremove --purge
apt-get autoclean
apt-get clean
}
return 2>/dev/null || apt_upgrade