mirror of
				https://github.com/tteck/Proxmox.git
				synced 2025-10-31 19:12:02 +00:00 
			
		
		
		
	Create technitiumdns-update.sh
This commit is contained in:
		
							parent
							
								
									bda90eaf9c
								
							
						
					
					
						commit
						0137e70d1b
					
				
							
								
								
									
										76
									
								
								misc/technitiumdns-update.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										76
									
								
								misc/technitiumdns-update.sh
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,76 @@ | |||||||
|  | #!/bin/sh | ||||||
|  | set -e | ||||||
|  | dotnetDir="/opt/dotnet" | ||||||
|  | dnsDir="/etc/dns" | ||||||
|  | dnsTar="/etc/dns/DnsServerPortable.tar.gz" | ||||||
|  | dnsUrl="https://download.technitium.com/dns/DnsServerPortable.tar.gz" | ||||||
|  | 
 | ||||||
|  | mkdir -p $dnsDir | ||||||
|  | installLog="$dnsDir/install.log" | ||||||
|  | echo "" > $installLog | ||||||
|  | 
 | ||||||
|  | echo "" | ||||||
|  | echo "===============================" | ||||||
|  | echo "Technitium DNS Server Update" | ||||||
|  | echo "===============================" | ||||||
|  | 
 | ||||||
|  | if dotnet --list-runtimes 2> /dev/null | grep -q "Microsoft.NETCore.App 5.0.";  | ||||||
|  | then | ||||||
|  | 	dotnetFound="yes" | ||||||
|  | else | ||||||
|  | 	dotnetFound="no" | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | 	if [ -d $dotnetDir ] | ||||||
|  | 	then | ||||||
|  | 	    dotnetUpdate="yes" | ||||||
|  | 		echo "Updating .NET 5 Runtime..." | ||||||
|  | 	fi | ||||||
|  | 
 | ||||||
|  | 	curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin -c 5.0 --runtime dotnet --no-path --install-dir $dotnetDir --verbose >> $installLog 2>&1 | ||||||
|  | 
 | ||||||
|  | 	if [ ! -f "/usr/bin/dotnet" ] | ||||||
|  | 	then | ||||||
|  | 		ln -s $dotnetDir/dotnet /usr/bin >> $installLog 2>&1 | ||||||
|  | 	fi | ||||||
|  | 
 | ||||||
|  | 	if dotnet --list-runtimes 2> /dev/null | grep -q "Microsoft.NETCore.App 5.0.";  | ||||||
|  | 	then | ||||||
|  | 		if [ "$dotnetUpdate" = "yes" ] | ||||||
|  | 		then | ||||||
|  | 			echo ".NET 5 Runtime was updated successfully!" | ||||||
|  | 		fi | ||||||
|  | 	else | ||||||
|  | 		echo "Failed to update .NET 5 Runtime. Please try again." | ||||||
|  | 		exit 1 | ||||||
|  | 	fi | ||||||
|  | 
 | ||||||
|  | if curl -o $dnsTar --fail $dnsUrl >> $installLog 2>&1 | ||||||
|  | then | ||||||
|  | 	if [ -d $dnsDir ] | ||||||
|  | 	then | ||||||
|  | 		echo "Updating Technitium DNS Server..." | ||||||
|  | 	fi | ||||||
|  | 	 | ||||||
|  | 	tar -zxf $dnsTar -C $dnsDir >> $installLog 2>&1 | ||||||
|  | 	 | ||||||
|  | 	if [ "$(ps --no-headers -o comm 1 | tr -d '\n')" = "systemd" ]  | ||||||
|  | 	then | ||||||
|  | 		if [ -f "/etc/systemd/system/dns.service" ] | ||||||
|  | 		then | ||||||
|  | 			echo "Restarting systemd service..." | ||||||
|  | 			systemctl restart dns.service >> $installLog 2>&1 | ||||||
|  | 		fi | ||||||
|  | 	 | ||||||
|  | 		echo "" | ||||||
|  | 		echo "Technitium DNS Server was updated successfully!" | ||||||
|  | 	else | ||||||
|  | 		echo "" | ||||||
|  | 		echo "Failed to update Technitium DNS Server: systemd was not detected." | ||||||
|  | 		exit 1 | ||||||
|  | 	fi | ||||||
|  | else | ||||||
|  | 	echo "" | ||||||
|  | 	echo "Failed to download Technitium DNS Server from: $dnsUrl" | ||||||
|  | 	exit 1 | ||||||
|  | fi | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user