mirror of
https://github.com/kevinveenbirkenbach/linux-image-manager.git
synced 2024-11-21 22:51:05 +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
|
info "Optimal blocksize set to: $OPTIMAL_BLOCKSIZE" || error
|
||||||
}
|
}
|
||||||
|
|
||||||
overwritte_device_with_zeros(){
|
overwrite_device() {
|
||||||
question "Should $device_path be overwritten with zeros before copying?(y/N)" && read -r copy_zeros_to_device
|
question "Should $device_path be overwritten with zeros before copying? (y/N/block count)" && read -r copy_zeros_to_device
|
||||||
if [ "$copy_zeros_to_device" = "y" ]
|
case "$copy_zeros_to_device" in
|
||||||
then
|
y)
|
||||||
info "Overwritting..." &&
|
info "Overwriting entire device..." &&
|
||||||
dd if=/dev/zero of="$device_path" bs="$OPTIMAL_BLOCKSIZE" status=progress || error "Overwritting $device_path failed."
|
dd if=/dev/zero of="$device_path" bs="$OPTIMAL_BLOCKSIZE" status=progress || error "Overwriting $device_path failed."
|
||||||
else
|
;;
|
||||||
info "Skipping Overwritting..."
|
N)
|
||||||
fi
|
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
|
||||||
|
error "Invalid input. Block count must be a number."
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
get_packages(){
|
get_packages(){
|
||||||
|
@ -7,7 +7,7 @@ echo "Setups disk encryption"
|
|||||||
|
|
||||||
set_device_mount_partition_and_mapper_paths
|
set_device_mount_partition_and_mapper_paths
|
||||||
|
|
||||||
overwritte_device_with_zeros
|
overwrite_device
|
||||||
|
|
||||||
info "Creating new GPT partition table..."
|
info "Creating new GPT partition table..."
|
||||||
( echo "g" # create a new empty GPT partition table
|
( echo "g" # create a new empty GPT partition table
|
||||||
|
@ -69,14 +69,21 @@ case "$operation_system" in
|
|||||||
image_checksum="0E1BA7FFD14AAAE5F0462C8293D95B62C3BF1D9E726E26977BD04772C55680D3"
|
image_checksum="0E1BA7FFD14AAAE5F0462C8293D95B62C3BF1D9E726E26977BD04772C55680D3"
|
||||||
;;
|
;;
|
||||||
"arch")
|
"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/";
|
base_download_url="http://os.archlinuxarm.org/os/";
|
||||||
if [ "$version" == "1" ]
|
image_name="ArchLinuxARM-rpi-$version.tar.gz"
|
||||||
then
|
case "$version" in
|
||||||
|
"1")
|
||||||
image_name="ArchLinuxARM-rpi-latest.tar.gz"
|
image_name="ArchLinuxARM-rpi-latest.tar.gz"
|
||||||
else
|
;;
|
||||||
image_name="ArchLinuxARM-rpi-$version-latest.tar.gz"
|
"2" | "3")
|
||||||
fi
|
image_name="ArchLinuxARM-rpi-armv7-latest.tar.gz"
|
||||||
|
;;
|
||||||
|
|
||||||
|
"4")
|
||||||
|
image_name="ArchLinuxARM-rpi-aarch64-latest.tar.gz"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
;;
|
;;
|
||||||
"manjaro")
|
"manjaro")
|
||||||
question "Which version(e.g.:architect,gnome) should be used:" && read -r version
|
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..."
|
info "Skipping partition table deletion..."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
overwritte_device_with_zeros
|
overwrite_device
|
||||||
|
|
||||||
info "Starting image transfer..."
|
info "Starting image transfer..."
|
||||||
if [ "$distribution" = "arch" ]
|
if [ "$distribution" = "arch" ]
|
||||||
@ -402,41 +409,35 @@ if [ "$distribution" != "manjaro" ]
|
|||||||
|
|
||||||
copy_resolve_conf
|
copy_resolve_conf
|
||||||
|
|
||||||
question "Should the password of the standart user \"$target_username\" be changed?(y/N)" && read -r change_password
|
question "Type in new password (leave empty to skip): " && read -r password_1
|
||||||
if [ "$change_password" == "y" ]
|
|
||||||
then
|
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..."
|
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
|
echo "$password_1" | chroot "$root_mount_path" passwd --stdin "$target_username"
|
||||||
if [ "$password_1" = "$password_2" ]
|
echo "$password_1" | chroot "$root_mount_path" passwd --stdin
|
||||||
then
|
) || error "Failed to change password."
|
||||||
(
|
|
||||||
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
|
|
||||||
else
|
|
||||||
error "Passwords didn't match."
|
|
||||||
fi
|
|
||||||
else
|
else
|
||||||
info "Skipped password change..."
|
error "Passwords didn't match."
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
info "No password change requested, skipped password change..."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
hostname_path="$root_mount_path""etc/hostname"
|
|
||||||
question "Should the hostname be changed?(y/N)" && read -r change_hostname
|
hostname_path="$root_mount_path/etc/hostname"
|
||||||
if [ "$change_hostname" == "y" ]
|
|
||||||
then
|
question "Type in the hostname (leave empty to skip): " && read -r target_hostname
|
||||||
question "Type in the hostname:" && read -r target_hostname;
|
|
||||||
echo "$target_hostname" > "$hostname_path" || error
|
if [ -n "$target_hostname" ]; then
|
||||||
else
|
echo "$target_hostname" > "$hostname_path" || error "Failed to set hostname."
|
||||||
target_hostname=$(cat "$hostname_path")
|
else
|
||||||
info "Skipped hostname change..."
|
target_hostname=$(cat "$hostname_path")
|
||||||
|
info "No hostname change requested, skipped hostname change..."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
info "Used hostname is: $target_hostname"
|
info "Used hostname is: $target_hostname"
|
||||||
|
|
||||||
case "$distribution" in
|
case "$distribution" in
|
||||||
|
Loading…
Reference in New Issue
Block a user