diff -ru gosc-scripts/imc-shell/imgcust-scripts/ConfigFile.sh gosc-scripts-modify/imc-shell/imgcust-scripts/ConfigFile.sh
--- gosc-scripts/imc-shell/imgcust-scripts/ConfigFile.sh	2015-08-25 16:20:00.119932000 -0700
+++ gosc-scripts-modify/imc-shell/imgcust-scripts/ConfigFile.sh	2015-08-27 16:32:32.394309086 -0700
@@ -533,6 +533,66 @@
   echo "$val"
 }
 
+# Retrieves NFS count.
+#
+# Args:
+#   None
+# Results:
+#   integer: count
+# Throws:
+#   Dies in case setting is not present.
+ConfigFile_GetNFSCnt()
+{
+  local val='' # has to be declared before assigned
+
+  val=$(ConfigFile_GetOptionalNonEmptyString "NFS-CONFIG|NFS") || exit 1
+
+  local myresult=0
+
+  if [[ -n "$val" ]]; then
+    local spl=(${val//,/ })
+    myresult="${#spl[@]}"
+  fi
+
+  echo "$myresult"
+}
+
+# Retrieves NFS device name to be mounted.
+#
+# Args:
+#   NFS number
+# Results:
+#   string: NFS device name
+# Throws:
+#   Dies in case NFS device entry is present but empty.
+ConfigFile_GetNFSDevice()
+{
+  local nfs_no=$1
+  local query="${nfs_no}|DEVICE"
+  local val=''  # has to be declared before assigned
+
+  val=$(ConfigFile_GetOptionalString $query)
+  echo "$val"
+}
+
+# Retrieves NFS directory where the given device is required to be mounted.
+#
+# Args:
+#   NFS number
+# Results:
+#   string: mount directory name and path
+# Throws:
+#   Dies in case directoy entry is present but empty.
+ConfigFile_GetNFSMountDirectory()
+{
+  local nfs_no=$1
+  local query="${nfs_no}|DIRECTORY"
+  local val='' # has to be declared before assigned
+
+  val=$(ConfigFile_GetOptionalString $query) || exit 1
+  echo "$val"
+}
+
 # Retrieves timezone.
 #
 # Args:
diff -ru gosc-scripts/imc-shell/imgcust-scripts/CustomizationUtils.sh gosc-scripts-modify/imc-shell/imgcust-scripts/CustomizationUtils.sh
--- gosc-scripts/imc-shell/imgcust-scripts/CustomizationUtils.sh	2015-08-25 16:20:00.119932000 -0700
+++ gosc-scripts-modify/imc-shell/imgcust-scripts/CustomizationUtils.sh	2015-08-27 16:12:39.593584804 -0700
@@ -738,6 +738,45 @@
   
 }
 
+# Mount NFS device to given directory if such entry is present in configuration.
+# 
+# Args:
+#   None
+# Results:
+#   None
+# Throws:
+#   Nothing
+#
+MountNFSDevice()
+{
+  local nfs_cnt=$(ConfigFile_GetNFSCnt)
+  if [ "$nfs_cnt" -gt 0 ]; then
+    for j in $(seq 1 $nfs_cnt); do
+       Debug "Going to mount NFS'$j'"
+       local nfs="NFS"
+       local nfs_no=$nfs$j
+       local nfs_device=$(ConfigFile_GetNFSDevice $nfs_no)
+       local nfs_directory=$(ConfigFile_GetNFSMountDirectory $nfs_no)
+
+       if [[ -n "$nfs_device" ]] && [[ -n "$nfs_directory" ]]; then
+         local create_dir='mkdir -p'
+         create_dir="$create_dir $nfs_directory"
+         Exec "$create_dir"
+
+         local mount_cmd='mount -t nfs'
+         mount_cmd="$mount_cmd $nfs_device $nfs_directory"
+         Debug " NFS mount Command: $mount_cmd"
+         Exec "$mount_cmd"
+         Debug "NFS mount completed"
+       else
+         Debug "No NFS config or wrong data found for NFS$j, nothing to mount"
+       fi
+    done
+  fi  
+}
+
+
+
 
 # Execute all blob service file commands if present in the configuration file.
 # 
diff -ru gosc-scripts/imc-shell/imgcust-scripts/PhotonCustomization.sh gosc-scripts-modify/imc-shell/imgcust-scripts/PhotonCustomization.sh
--- gosc-scripts/imc-shell/imgcust-scripts/PhotonCustomization.sh	2015-08-25 16:20:00.119932000 -0700
+++ gosc-scripts-modify/imc-shell/imgcust-scripts/PhotonCustomization.sh	2015-08-25 17:20:05.184756030 -0700
@@ -75,6 +75,9 @@
   # Call lightwave domain join
   LightWaveDomainJoin
 
+  # Mount NFS if specified in config
+  MountNFSDevice
+
   machineId=$(GetBiosUuid "")
 
 }