Linux > DirectAdmin

How to use perl to do a mass dns update through direct admin

(1/1)

Aby:
If you need to change all of your dns servers through DirectAdmin one by one, it's easier to use perl to do a regex (regular expression) to do the replace for us with one command.  To do this, you can run the following.  (replace the bold items with your own)


--- Code: ---cd /usr/local/directadmin/data/users
perl -pi -e 's/ns1.old.com/ns1.new.com/' */user.conf
perl -pi -e 's/ns2.old.com/ns2.new.com/' */user.conf
perl -pi -e 's/ns1.old.com/ns1.new.com/' */reseller.conf
perl -pi -e 's/ns2.old.com/ns2.new.com/' */reseller.conf

cd /var/named   #(or whatever the path to your *.db files is, eg: /etc/bind, /etc/named)
perl -pi -e 's/ns1.old.com/ns1.new.com/' *.db
perl -pi -e 's/ns2.old.com/ns2.new.com/' *.db
--- End code ---

once your changes are done, it's a good idea to rewrite all .db files to update your serials, and also to trigger any syncs to remote dns systems:


--- Code: ---echo "action=rewrite&value=named" >> /usr/local/directadmin/data/task.queue
--- End code ---

Navigation

[0] Message Index

Go to full version