mirror of
https://github.com/kevinveenbirkenbach/linux-image-manager.git
synced 2024-11-21 14:41:04 +01:00
Compare commits
5 Commits
93beadb519
...
796028670f
Author | SHA1 | Date | |
---|---|---|---|
796028670f | |||
265e5c6f20 | |||
de0090b60c | |||
ab8b8b6e3a | |||
59f38c4089 |
@ -95,15 +95,28 @@ set_device_path(){
|
||||
info "Optimal blocksize set to: $OPTIMAL_BLOCKSIZE" || error
|
||||
}
|
||||
|
||||
overwritte_device_with_zeros(){
|
||||
question "Should $device_path be overwritten with zeros before copying?(y/N)" && read -r copy_zeros_to_device
|
||||
if [ "$copy_zeros_to_device" = "y" ]
|
||||
then
|
||||
info "Overwritting..." &&
|
||||
dd if=/dev/zero of="$device_path" bs="$OPTIMAL_BLOCKSIZE" status=progress || error "Overwritting $device_path failed."
|
||||
overwrite_device() {
|
||||
question "Should $device_path be overwritten with zeros before copying? (y/N/block count)" && read -r copy_zeros_to_device
|
||||
case "$copy_zeros_to_device" in
|
||||
y)
|
||||
info "Overwriting entire device..." &&
|
||||
dd if=/dev/zero of="$device_path" bs="$OPTIMAL_BLOCKSIZE" status=progress || error "Overwriting $device_path failed."
|
||||
;;
|
||||
N)
|
||||
info "Skipping Overwriting..."
|
||||
;;
|
||||
''|*[!0-9]*)
|
||||
error "Invalid input."
|
||||
;;
|
||||
*)
|
||||
if [[ "$copy_zeros_to_device" =~ ^[0-9]+$ ]]; then
|
||||
info "Overwriting $copy_zeros_to_device blocks..." &&
|
||||
dd if=/dev/zero of="$device_path" bs="$OPTIMAL_BLOCKSIZE" count="$copy_zeros_to_device" status=progress || error "Overwriting $device_path failed."
|
||||
else
|
||||
info "Skipping Overwritting..."
|
||||
error "Invalid input. Block count must be a number."
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
get_packages(){
|
||||
|
@ -7,7 +7,7 @@ echo "Setups disk encryption"
|
||||
|
||||
set_device_mount_partition_and_mapper_paths
|
||||
|
||||
overwritte_device_with_zeros
|
||||
overwrite_device
|
||||
|
||||
info "Creating new GPT partition table..."
|
||||
( echo "g" # create a new empty GPT partition table
|
||||
|
@ -69,14 +69,21 @@ case "$operation_system" in
|
||||
image_checksum="0E1BA7FFD14AAAE5F0462C8293D95B62C3BF1D9E726E26977BD04772C55680D3"
|
||||
;;
|
||||
"arch")
|
||||
question "Which Raspberry Pi will be used(e.g.:1,2,3,4,aarch64):" && read -r version
|
||||
question "Which Raspberry Pi will be used (e.g.: 1, 2, 3, 4...):" && read -r version
|
||||
base_download_url="http://os.archlinuxarm.org/os/";
|
||||
if [ "$version" == "1" ]
|
||||
then
|
||||
image_name="ArchLinuxARM-rpi-$version.tar.gz"
|
||||
case "$version" in
|
||||
"1")
|
||||
image_name="ArchLinuxARM-rpi-latest.tar.gz"
|
||||
else
|
||||
image_name="ArchLinuxARM-rpi-$version-latest.tar.gz"
|
||||
fi
|
||||
;;
|
||||
"2" | "3")
|
||||
image_name="ArchLinuxARM-rpi-armv7-latest.tar.gz"
|
||||
;;
|
||||
|
||||
"4")
|
||||
image_name="ArchLinuxARM-rpi-aarch64-latest.tar.gz"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
"manjaro")
|
||||
question "Which version(e.g.:architect,gnome) should be used:" && read -r version
|
||||
@ -256,7 +263,7 @@ if [ "$transfer_image" = "y" ]
|
||||
info "Skipping partition table deletion..."
|
||||
fi
|
||||
|
||||
overwritte_device_with_zeros
|
||||
overwrite_device
|
||||
|
||||
info "Starting image transfer..."
|
||||
if [ "$distribution" = "arch" ]
|
||||
@ -402,41 +409,35 @@ if [ "$distribution" != "manjaro" ]
|
||||
|
||||
copy_resolve_conf
|
||||
|
||||
question "Should the password of the standart user \"$target_username\" be changed?(y/N)" && read -r change_password
|
||||
if [ "$change_password" == "y" ]
|
||||
then
|
||||
question "Type in new password (leave empty to skip): " && read -r password_1
|
||||
|
||||
if [ -n "$password_1" ]; then
|
||||
question "Repeat new password for \"$target_username\": " && read -r password_2
|
||||
if [ "$password_1" = "$password_2" ]; then
|
||||
info "Changing passwords on target system..."
|
||||
question "Type in new password: " && read -r password_1
|
||||
question "Repeat new password\"$target_username\"" && read -r password_2
|
||||
if [ "$password_1" = "$password_2" ]
|
||||
then
|
||||
(
|
||||
echo "(
|
||||
echo '$password_1'
|
||||
echo '$password_1'
|
||||
) | passwd $target_username"
|
||||
echo "(
|
||||
echo '$password_1'
|
||||
echo '$password_1'
|
||||
) | passwd"
|
||||
) | chroot "$root_mount_path" /bin/bash || error
|
||||
echo "$password_1" | chroot "$root_mount_path" passwd --stdin "$target_username"
|
||||
echo "$password_1" | chroot "$root_mount_path" passwd --stdin
|
||||
) || error "Failed to change password."
|
||||
else
|
||||
error "Passwords didn't match."
|
||||
fi
|
||||
else
|
||||
info "Skipped password change..."
|
||||
info "No password change requested, skipped password change..."
|
||||
fi
|
||||
|
||||
hostname_path="$root_mount_path""etc/hostname"
|
||||
question "Should the hostname be changed?(y/N)" && read -r change_hostname
|
||||
if [ "$change_hostname" == "y" ]
|
||||
then
|
||||
question "Type in the hostname:" && read -r target_hostname;
|
||||
echo "$target_hostname" > "$hostname_path" || error
|
||||
|
||||
hostname_path="$root_mount_path/etc/hostname"
|
||||
|
||||
question "Type in the hostname (leave empty to skip): " && read -r target_hostname
|
||||
|
||||
if [ -n "$target_hostname" ]; then
|
||||
echo "$target_hostname" > "$hostname_path" || error "Failed to set hostname."
|
||||
else
|
||||
target_hostname=$(cat "$hostname_path")
|
||||
info "Skipped hostname change..."
|
||||
info "No hostname change requested, skipped hostname change..."
|
||||
fi
|
||||
|
||||
info "Used hostname is: $target_hostname"
|
||||
|
||||
case "$distribution" in
|
||||
|
Loading…
Reference in New Issue
Block a user