Create technitiumdns-update.sh
This commit is contained in:
parent
bda90eaf9c
commit
0137e70d1b
1 changed files with 76 additions and 0 deletions
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…
Reference in a new issue