#!/bin/bash # # This file is part of util-linux. # # Copyright (C) 2023 Thomas Weißschuh # # This file 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 2 of the License, or # (at your option) any later version. # # This file 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. # # TS_TOPDIR="${0%/*}/../.." TS_DESC="resize" . "$TS_TOPDIR"/functions.sh ts_init "$*" ts_check_test_command "$TS_CMD_FDISK" TEST_IMAGE_NAME=$(ts_image_init 10) function print_layout { echo -ne "\n---layout----------\n" >> "$TS_OUTPUT" "$TS_CMD_FDISK" -l "${TEST_IMAGE_NAME}" >> "$TS_OUTPUT" 2>> "$TS_ERRLOG" echo -ne "-------------------\n\n" >> "$TS_OUTPUT" ts_fdisk_clean "${TEST_IMAGE_NAME}" } function test_fdisk() { "$TS_CMD_FDISK" --noauto-pt "${TEST_IMAGE_NAME}" &> /dev/null } ts_log "Create initial partitions" echo -e "g\nn\n\n\n+1M\nn\n\n8192\n+1M\nw\n" | test_fdisk print_layout ts_log "Grow first to max" echo -e "e\n1\n\nw\n" | test_fdisk print_layout ts_log "Grow second to max" echo -e "e\n2\n\nw\n" | test_fdisk print_layout ts_log "Resize first to 4096 bytes" echo -e "e\n1\n4K\nw\n" | test_fdisk print_layout ts_log "Resize second to 8 sectors" echo -e "e\n2\n8S\nw\n" | test_fdisk print_layout ts_finalize