September 26

how to make a bulk nameservers update in cPanel

Bulk Nameservers update in cPanel:

Step 1, do backup:

cp -rf /var/named{,.backup}

Step 2, update NS:

oldns="ns1.old.domain"; newns="ns1.new.domain" ; find /var/named/*.db -exec perl -pi -e "s/(?<=IN\s\NS\s)$oldns/$newns/g" '{}' \;
oldns="ns2.old.domain"; newns="ns2.new.domain" ; find /var/named/*.db -exec perl -pi -e "s/(?<=IN\s\NS\s)$oldns/$newns/g" '{}' \;

Step 3, new serial records:

find /var/named/*.db -mtime -1 -exec perl -pi -e 'if (/^\s+(\d{10})\s+;\s?(?i)serial/i) { my $i = $1+1; s/$1/$i/;}' '{}' \;

Step 4, restart DNS service:

/scripts/restartsrv_named

Original post is here