mirror of
https://github.com/pi-hole/pi-hole.git
synced 2024-11-15 02:42:58 +00:00
Fix logic in versionCheckDNSmasq, as dnsmasq.conf was being overwritten every time install was run. Fixes @kmr2319 's concern in #98
This commit is contained in:
parent
70e4104c17
commit
aa1d3a4c2e
1 changed files with 33 additions and 29 deletions
|
@ -303,35 +303,39 @@ setDNS(){
|
||||||
}
|
}
|
||||||
|
|
||||||
versionCheckDNSmasq(){
|
versionCheckDNSmasq(){
|
||||||
# Check if /etc/dnsmasq.conf is from pihole. If so replace with an original and install new in .d directory
|
# Check if /etc/dnsmasq.conf is from pihole. If so replace with an original and install new in .d directory
|
||||||
dnsFile1="/etc/dnsmasq.conf"
|
dnsFile1="/etc/dnsmasq.conf"
|
||||||
dnsFile2="/etc/dnsmasq.conf.orig"
|
dnsFile2="/etc/dnsmasq.conf.orig"
|
||||||
dnsSearch="addn-hosts=/etc/pihole/gravity.list"
|
dnsSearch="addn-hosts=/etc/pihole/gravity.list"
|
||||||
|
|
||||||
# Check if /etc/dnsmasq.conf exists
|
defaultFile="/etc/.pihole/advanced/dnsmasq.conf.original"
|
||||||
if [ -d "/etc/dnsmasq.conf" ]; then
|
newFileToInstall="/etc/.pihole/advanced/01-pihole.conf"
|
||||||
# If true, Check dnsmasq.conf for pihole magic
|
newFileFinalLocation="/etc/dnsmasq.d/01-pihole.conf"
|
||||||
if grep -q $dnsSearch $dnsFile1; then
|
|
||||||
# If true, Check dnsmasq.conf.orig for pihole magic
|
|
||||||
if grep -q $dnsSearch $dnsFile2; then
|
|
||||||
# If true, use advanced/dnsmasq.conf.original
|
|
||||||
$SUDO mv -f /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
|
|
||||||
$SUDO cp /etc/.pihole/advanced/dnsmasq.conf.original /etc/dnsmasq.conf
|
|
||||||
else
|
|
||||||
# If false, mv original file back
|
|
||||||
$SUDO mv -f /etc/dnsmasq.conf.orig /etc/dnsmasq.conf
|
|
||||||
fi
|
|
||||||
# If false, This is a fresh install
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# If false, use advanced/dnsmasq.conf.original
|
|
||||||
$SUDO cp /etc/.pihole/advanced/dnsmasq.conf.original /etc/dnsmasq.conf
|
|
||||||
fi
|
|
||||||
|
|
||||||
$SUDO cp /etc/.pihole/advanced/01-pihole.conf /etc/dnsmasq.d/01-pihole.conf
|
if [ -f $dnsFile1 ]; then
|
||||||
$SUDO sed -i "s/@INT@/$piholeInterface/" /etc/dnsmasq.d/01-pihole.conf
|
echo -n "::: Existing dnsmasq.conf found..."
|
||||||
$SUDO sed -i "s/@DNS1@/$piholeDNS1/" /etc/dnsmasq.d/01-pihole.conf
|
if grep -q $dnsSearch $dnsFile1; then
|
||||||
$SUDO sed -i "s/@DNS2@/$piholeDNS2/" /etc/dnsmasq.d/01-pihole.conf
|
echo " it is from a previous pi-hole install."
|
||||||
|
echo -n "::: Backing up dnsmasq.conf to dnsmasq.conf.orig..."
|
||||||
|
$SUDO mv -f $dnsFile1 $dnsFile2
|
||||||
|
echo " done."
|
||||||
|
echo -n "::: Restoring default dnsmasq.conf..."
|
||||||
|
$SUDO cp $defaultFile $dnsFile1
|
||||||
|
echo " done."
|
||||||
|
else
|
||||||
|
echo " it is not a pi-hole file, leaving alone!"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo -n "::: No dnsmasq.conf found.. restoring default dnsmasq.conf..."
|
||||||
|
$SUDO cp $defaultFile $dnsFile1
|
||||||
|
echo " done."
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "::: copying 01-pihole.conf to /etc/dnsmasq.d/01-pihole.conf"
|
||||||
|
$SUDO cp $newFileToInstall $newFileFinalLocation
|
||||||
|
$SUDO sed -i "s/@INT@/$piholeInterface/" $newFileFinalLocation
|
||||||
|
$SUDO sed -i "s/@DNS1@/$piholeDNS1/" $newFileFinalLocation
|
||||||
|
$SUDO sed -i "s/@DNS2@/$piholeDNS2/" $newFileFinalLocation
|
||||||
}
|
}
|
||||||
|
|
||||||
installScripts() {
|
installScripts() {
|
||||||
|
|
Loading…
Reference in a new issue