Kod Adı: Ubuntu Kurulum Kod Yüklenecek Konum: /home/setup.sh Çalıştırılıcak Program: /bin/bash Çalıştırılıcak Komut: -c 'cd /home;chmod 777 setup.sh;./setup.sh' Kod Türü: Kurulum Kod: #!/bin/bash # Değişkenler name=$(ls /sys/class/net | head -n 1) ip="{ipaddress}"; iplist="{iplist}"; gateway="{gateway}"; netmask="{netmask}"; password="{password}"; hostname="{hostname}"; # Netmask CIDR çevirici cidr_from_netmask() { local IFS=.; local n i=0 for n in $1; do i=$(( i + $(echo "obase=2; $n" | bc | tr -cd '1' | wc -c) )) done echo $i } # Netplan IP yapılandırması echo "network: version: 2 renderer: networkd ethernets: $name: addresses: [$(for ipinfo in ${iplist//-/ }; do ipdata=(${ipinfo//x/ }) echo -n "${ipdata[0]}/$(cidr_from_netmask ${ipdata[2]})," done | sed 's/,$//')] gateway4: $gateway nameservers: addresses: [8.8.8.8, 8.8.4.4] dhcp4: no" > /etc/netplan/01-netcfg.yaml netplan apply # LVM disk genişletme devices=($(lsblk -nlp -o NAME,TYPE | awk '$2 == "disk" {print $1}')) main_disk=${devices[0]} part_num=3 # /dev/sda3 (LVM olan partition) lv_path=$(lsblk -nlp -o NAME,TYPE | awk '$2 == "lvm" {print $1}') # Partition genişletme growpart $main_disk $part_num pvresize ${main_disk}${part_num} lvextend -l +100%FREE $lv_path resize2fs $lv_path # Root şifresi güncelleme echo -e "$password\n$password" | passwd root # Hostname ayarlama hostnamectl set-hostname $hostname # Yeniden başlatma rm -f /home/setup.sh reboot