[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3master/usr/share/se3/sbin/ -> correspondances_nom_ip_mac.sh (source)

   1  #!/bin/bash
   2  #
   3  ##### Script de génération du fichier de correspondance NOM;IP;MAC #####
   4  #
   5  # Auteur : Stephane Boireau (Bernay/Pont-Audemer (27))
   6  #
   7  ## $Id ##
   8  #
   9  # Dernière modif: 25/03/2007
  10  
  11  if [ "$1" = "--help" -o "$1" = "-h" ]; then
  12      echo "Script permettant de générer un fichier de correspondances NOM;IP;MAC pour"
  13      echo "l'outil de post-clonage."
  14      echo ""
  15      echo "Usage : Pas d'option."
  16      exit
  17  fi
  18  
  19  
  20  ladate=$(date '+%Y%m%d-%H%M%S')
  21  
  22  if [ -e "/var/se3/Progs/install/installdll" ]; then
  23      dest="/var/se3/Progs/install/installdll"
  24  else
  25      dest="/root/tmp/correspondances_nom_ip_mac_$ladate}"
  26  fi
  27  mkdir -p $dest}
  28  
  29  fich_nom_ip_mac="$dest/correspondances_nom_ip_mac_$ladate}.txt"
  30  fich_clients_ini="$dest/clients_ini_$ladate}.txt"
  31  
  32  BASE=$(grep "^BASE" /etc/ldap/ldap.conf | cut -d" " -f2 )
  33  ldapsearch -xLLL -b ou=computers,$BASE cn | grep ^cn | cut -d" " -f2 | while read nom
  34  do
  35      if [ ! -z $(echo $nom:0:1} | sed -e "s/[0-9]//g") ]; then
  36          # PB: on récupère les cn des entrées machines aussi (xpbof et xpbof$)
  37          ip=$(ldapsearch -xLLL -b ou=computers,$BASE cn=$nom ipHostNumber | grep ipHostNumber | cut -d" " -f2)
  38          mac=$(ldapsearch -xLLL -b ou=computers,$BASE cn=$nom macAddress | grep macAddress | cut -d" " -f2)
  39  
  40          if [ ! -z "$ip" -a ! -z "$mac" ]; then
  41              echo "$nom;$mac;$ip;" >> $fich_nom_ip_mac
  42              echo "$nom=$mac" >> $fich_clients_ini
  43          fi
  44      fi
  45  done
  46  
  47  # Conversion en fichier DOS.
  48  #cat /home/templates/$1/logon_Win2K.bat | perl -pe 's/\n/\r\n/' > /home/templates/$1/logon_Win2K.bat
  49  sort $fich_nom_ip_mac} > $fich_nom_ip_mac}.tmp
  50  cat $fich_nom_ip_mac}.tmp | perl -pe 's/\n/\r\n/' > $fich_nom_ip_mac
  51  rm -f $fich_nom_ip_mac}.tmp
  52  
  53  sort $fich_clients_ini} > $fich_clients_ini}.tmp
  54  cat $fich_clients_ini}.tmp | perl -pe 's/\n/\r\n/' > $fich_clients_ini
  55  rm -f $fich_clients_ini}.tmp
  56  
  57  echo "Les fichiers ont été générés dans $dest"
  58  echo "Terminé."


Generated: Tue Mar 17 22:47:18 2015 Cross-referenced by PHPXref 0.7.1