Update vmcreate1.sh

This commit is contained in:
2025-10-26 18:21:16 +00:00
parent 79bbfb3feb
commit 72125361ce

View File

@@ -66,7 +66,7 @@ ipcheck() {
} }
# Функция для проверки hostname на валидные символы (буквы, цифры, дефис) # Функция для проверки hostname на валидные символы (буквы, цифры, дефис)
hostcheck (){ hostcheck(){
local hostname=$1 local hostname=$1
local pattern="^[a-zA-Z0-9-]+$" local pattern="^[a-zA-Z0-9-]+$"
if [[ "$hostname" =~ $pattern ]]; then if [[ "$hostname" =~ $pattern ]]; then
@@ -76,13 +76,13 @@ hostcheck (){
fi fi
} }
keypair_generate (){ keypair_generate(){
ssh-keygen -t rsa -N "" -f $privkey ssh-keygen -t rsa -N "" -f $privkey
pubkey="$privkey".pub pubkey="$privkey".pub
echo "Keypair generated." echo "Keypair generated."
} }
mksnippet (){ mksnippet(){
snippet="${path}${vmid}_user.yaml" snippet="${path}${vmid}_user.yaml"
cp ./user.yaml "$snippet" cp ./user.yaml "$snippet"
sed -i "s/HOSTNAME/$hostname/g" "$snippet" sed -i "s/HOSTNAME/$hostname/g" "$snippet"
@@ -93,7 +93,7 @@ mksnippet (){
phash=$(cat $password | mkpasswd -m sha-256 -s) phash=$(cat $password | mkpasswd -m sha-256 -s)
sed -i "s|.*password.*| - ${phash}|" "$snippet" sed -i "s|.*password.*| - ${phash}|" "$snippet"
fi fi
if [[ -v $pubkey]]; then if [[ -v $pubkey ]]; then
sed -i "s|.*ssh-rsa.*| - (cat ${pubkey})|" "$snippet" sed -i "s|.*ssh-rsa.*| - (cat ${pubkey})|" "$snippet"
fi fi
echo "Snippet $snippet created" echo "Snippet $snippet created"
@@ -113,6 +113,7 @@ while getopts "a:f:hk:u:p:d:t" opt; do
*) echo "Invalid option. Use '-h' for help."; exit 1;; *) echo "Invalid option. Use '-h' for help."; exit 1;;
esac esac
done done
# Удаляем обработанные опции, оставляя только аргументы скрипта # Удаляем обработанные опции, оставляя только аргументы скрипта
shift "$((OPTIND - 1))" shift "$((OPTIND - 1))"
echo "DEBUG options amount: $#" echo "DEBUG options amount: $#"