12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- #!/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 7.0."; then
- dotnetFound="yes"
- else
- dotnetFound="no"
- fi
- if [ -d $dotnetDir ]; then
- dotnetUpdate="yes"
- echo "Updating .NET 7 Runtime..."
- fi
- curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin -c 7.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 7.0."; then
- if [ "$dotnetUpdate" = "yes" ]; then
- echo ".NET 7 Runtime was updated successfully!"
- fi
- else
- echo "Failed to update .NET 7 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
|