:::: MENU ::::

Monthly Archives / May 2017

  • May 30 / 2017
  • 0
Linux, Python

DNS queries from a file/list to CSV

It’s not easy to perform bulk DNS resolution when you have many DNS/IPs to control. Here is a simple script allowing you to perform DNS resolution over a list of DNS entries or IPs.

Here is a list of DNS (names and IPs) that we put in a file called listDNS.txt


Let’s copy that script that will do the job in a file called resolverDNS.sh

# Script file - resolverDNS.sh
# Checking existence of arg
if [ "$1" == "" ]
  # Display help if wrong usage
  echo "Usage: /bin/bash resolverDNS.sh /path/to/file"
  exit 35
  # Loop over dns and resolve
  while IFS='' read -r line || [[ -n "$line" ]]; do
    # Resolve reverse DNS
    if [[ $line =~ ^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$ ]]; then
      dns=`dig +noall +answer -x $line +short|tr 'n' ' '`
    # Resolve A record
      dns=`dig a $line +short|tr 'n' ' '`
    echo -e "$linetis resolving intot${dns}"
  done < "$1"

And now, execute it by passing file path as an arg, and see the output:

$ bash /home/user/resolverDNS.sh /home/user/listDNS.txt 
www.python.org	is resolving into	python.map.fastly.net. 
www.pyython.org	is resolving into	is resolving into	resolver2.opendns.com. 
www.bing.com	is resolving into	www-bing-com.a-0001.a-msedge.net. a-0001.a-msedge.net. 

Resolution are done for every line, depending on if it’s an IP or a name (and remain empty if it can’t resolve).
Feel free to adjust the script according to your needs!

  • May 15 / 2017
  • 0

Remove list of mail addresses from postfix queue

There is no easy way to remove a list of mails in queue with a same sender or domain in Postfix. But you can use some standard commands to get this working.

First check the list of mails you want to remove with something like

postqueue -p |grep -e '[email protected]|[email protected]|[email protected]' -B2 |grep "^[A-Z0-9]"

You’re getting the list of mails that you will remove with the sender

FC0177DF1A0     8373 Thu May  6 11:24:56  [email protected]
F179A2C68AB     9469 Sun May  7 03:21:41  [email protected]
EAE217FB850    11049 Sat May  8 04:20:32  [email protected]

And now you can remove those mails from the queue by using postsuper -d

postqueue -p |grep -e '[email protected]|[email protected]|[email protected]' -B2 |grep "^[A-Z0-9]{10}" |cut -d" " -f1 |postsuper -d -

You will see the mails being removed

postsuper: FC0177DF1A0: removed
postsuper: F179A2C68AB: removed
postsuper: EAE217FB850: removed
postsuper: Deleted: 3 messages
  • May 04 / 2017
  • 0

Reduce partition size on EXT filesystems on Linux

It is possible to modify a partition size on EXT filesystem thanks to some few commands.

We will take here a simple example:

  • We have a /dev/sda5 partition mounted on /home
  • Its size is currently 150G and we want to reduce it to 100G

Let’s check the current config (mounting point and size):

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        28G  3.3G   23G   8% /
/dev/sda2       477M  112M  341M  25% /boot
/dev/sda3       4.7G   12M  4.5G   1% /tmp
/dev/sda4        32G  470M   30G   2% /var
/dev/sda5       148G   87M  140G   1% /home

We need to first unmount the partition:

# umount /dev/sda5

If you can’t unmount it, double check what process is using it with the lsof command:

# lsof /home

Then proceed with a check with e2fsck command and resize the partition with resize2fs by defining the new size (M for Megabytes, G for Gigabytes, and so on…)

# e2fsck -f /dev/sda5
# resize2fs /dev/sda5 100G

Mount your partition back to your system:

# mount /home

And check again your partition sizes :

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        28G  3.3G   23G   8% /
/dev/sda2       477M  112M  341M  25% /boot
/dev/sda3       4.7G   12M  4.5G   1% /tmp
/dev/sda4        32G  470M   30G   2% /var
/dev/sda5        99G   87M   94G   1% /home

We can see that the partition /home has now a size of 100G as expected!

Question ? Contact