• Recent
    • Unsolved
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login
    1. Home
    2. Joe Schmitt
    3. Posts
    J
    • Profile
    • Following 8
    • Followers 18
    • Topics 9
    • Posts 1,125
    • Best 406
    • Controversial 0
    • Groups 3

    Posts made by Joe Schmitt

    • Host Registration Broken

      When performing a full host registration you cannot get past the product key prompt. It continuously asks for it when hitting enter. The problem lies in fog.man.reg

      line # 226
      [CODE]
      while [ “$key” == “” ]; do
      echo
      echo -n " Enter the product key for this computer: ";
      read productKey;
      echo
      done
      [/CODE]

      should be

      [CODE]
      while [ “$productKey” == “” ]; do
      echo
      echo -n " Enter the product key for this computer: ";
      read productKey;
      echo
      done
      [/CODE]

      posted in Bug Reports
      J
      Joe Schmitt
    • RE: Windows 7 Activation Proposal

      @Tom Elliott, that is great, it is one less thing I have to implement each time I upgrade!

      posted in Feature Request
      J
      Joe Schmitt
    • RE: Windows 7 Activation Proposal

      @Ivanov Alexandru I believe it should work with no changes but currently where I work we are still running 1.1.0. My guess is that some of the line numbers may be off. However, if you would like help implementing it into 1.1.2 I would be more than willing to assist you. You can PM me if you wish me to help.

      posted in Feature Request
      J
      Joe Schmitt
    • RE: Windows 7 Activation Proposal

      @axel12: I may not be understanding you, but at the institution I work at we do not have the luxury of volume licensing, each computer has its own unique product key.

      @jayphizzle We just upgraded to 1.1 and implemented it, but we were using this modification on 0.32 and 1.0.1. There are additional changes I have implemented. However, I am going to re-code them to be cleaner. Once I do that I’ll post all of my changes.

      [B]Edit[/B] All changes I have made for v1.1 are now in the original post in case this feature is not put into FOG but people, like jayphizzle wish to implement it.

      posted in Feature Request
      J
      Joe Schmitt
    • Windows 7 Activation Proposal

      I’d like to suggest that FOG auto-activate computers after imaging. In my current environment there are many different models each with a unique product key, meaning each computer must be activated manually. This automation would be accomplished with the hostname changer used in the FOG Client. Below is the current code that I have been using.

      [B]Edit 1[/B] – List all changes made and switch to hosts table instead of inventory
      – Made this proposal similair to a guide, but it is still a feature request

      [SIZE=4][B]Client[/B][/SIZE]

      [B]…\FOG Service\src\FOG_HostNameChanger\MOD_HostNameChanger.cs[/B] (if you have not made any other changes to this file, you may download a compiled version of it in the attachments)

      Once this change is completed you must compile the dll (or use the attached one) and give it to every instance of the client, or use the Client updater in FOG.

      ~line 362
      [CODE]
      if (arData.Length == 7)
      {
      strHostName = strHostResults.Remove(0, 5);
      String strUseAD = arData[1];
      String strD = arData[2];
      String strOU = arData[3];
      String strU = arData[4];
      String strP = arData[5];
      String strKey = arData[6];

                                      if (strKey != null)
                                          {
                                              strKey = strKey.Trim();
                                              if (strKey.StartsWith("#Key=")) {
                                              strKey = strKey.Replace("#Key=", "");
                                              Process scriptProc = new Process();
                                              scriptProc.StartInfo.FileName = @"cscript";
                                              scriptProc.StartInfo.Arguments =@"//B //Nologo c:\windows\system32\slmgr.vbs /ipk " + strKey;
                                              scriptProc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
                                              scriptProc.Start();
                                              scriptProc.WaitForExit();
                                              scriptProc.Close();
      
      
                                              scriptProc.StartInfo.Arguments =@"//B //Nologo c:\windows\system32\slmgr.vbs /ato";
                                              scriptProc.Start();
                                              scriptProc.WaitForExit();
                                              scriptProc.Close();
      
                                              }
                                   
                                          }
      

      [/CODE]

      [SIZE=4][B]SQL Database[/B][/SIZE]
      Using phpmyadmin or the terminal, add a column to the hosts table with the following attributes:
      [CODE]
      Column: hostProductKey
      Type: varchar(50)
      Collation: latin1_swedish_ci
      Null: No
      Default: None
      [/CODE]

      [SIZE=4][B]FOG Web Server[/B][/SIZE]

      [B]/var/www/fog/service/hostname.php[/B]
      [PHP]
      print ‘#ADPass=’.$Host->get(‘ADPass’).“\n”;
      print ‘#Key=’.$Host->get(‘productKey’);
      [/PHP]

      [B]/var/www/fog/lib/fog/Host.class.php[/B]

      line ~#9
      [PHP]
      public $databaseFields = array(
      ‘id’=> ‘hostID’,
      ‘name’=> ‘hostName’,
      'productKey => ‘hostProductKey’,
      [/PHP]

      [B]/var/www/fog/lib/pages/HostManagementPage.class.php[/B]

      line ~#177 AND ~#373
      [PHP]
      _(‘Host Description’) => ‘<textarea name=“description” rows=“5” cols=“40”>${host_desc}</textarea>’,
      _(‘Product Key’) => ‘<input type=“text” name=“key” value=“${host_key}” />’,
      [/PHP]

      line ~#206
      [PHP]
      ‘host_devs’ => $_REQUEST[‘dev’],
      ‘host_key’ => $_REQUEST[‘key’],
      [/PHP]

      line ~#277
      [PHP]
      ‘host_devs’ => $_REQUEST[‘dev’],
      ‘host_key’ => $_REQUEST[‘key’],
      [/PHP]

      line ~#401
      [PHP]
      ‘host_devs’ => $Host->get(‘kernelDevice’),
      ‘host_key’ => $Host->get(‘productKey’),
      [/PHP]

      /[B]var/www/fog/service/key.register.php[/B] (Optional if you want to be able to update a host’s product key at boot after being registered)
      –See Attachments

      [SIZE=4][B]Host Registration[/B][/SIZE]

      See [url]http://www.fogproject.org/wiki/index.php/Create_Custom_Fog_Registration_menu[/url]
      Note that the wiki’s instructions are not up to date below are the changes, in the format old_command => new_command
      You may also have authentication issues if you try and unzip the init.xz file where it resides, if so move it to another folder and move it back when finished)
      [CODE]
      gunzip init.gz => xz --decompress init.xz
      gzip init => xz -z -9 -C crc32 init
      [/CODE]

      [B]…/bin/fog.key.reg[/B] (Optional if you want to be able to update a host’s product key at boot after being registered)
      –See Attachments, remove the .txt ending on it. I am unable to upload files that end in .reg

      [B]…/bin/fog.man.reg[/B]

      line ~#76
      [CODE]
      ip=“”;
      productKey=“”;
      [/CODE]

      line ~#231
      [CODE]
      esac
      fi
      echo
      echo -n " Enter the product key for this computer: ";
      read productKey;
      productKey=echo $productKey | base64;
      echo
      [/CODE]

      line ~#302
      [CODE]
      res=“”;
      while [ “${res}” = “” ]
      do
      res=wget -O - --post-data="mac=$mac&advanced=1&host=$host&imageid=$imageid&productKey=$productKey&primaryuser=$primaryuser&other1=$other1&other2=$other2&doimage=$realdoimage&doad=$blDoAD&location=$locationid&username=$user64&groupid=$group64" "http://${web}service/auto.register.php" 2>/dev/null
      echo “${res}”;
      sleep 2;
      done;
      [/CODE]

      [B]…/etc/init.d/S99fog[/B] (Optional if you want to be able to update a host’s product key at boot after being registered)

      line ~#56
      [CODE]
      elif [ “$mode” == “manreg” ]; then
      run=“/bin/fog.man.reg”;
      after=$afterActionTerm;
      elif [ “$mode” == “keyreg” ]; then
      run=“/bin/fog.key.reg”;
      after=$afterActionTerm;
      [/CODE]

      [SIZE=4][B]Boot Menu[/B][/SIZE] (Optional if you want to be able to update a host’s product key at boot after being registered)

      [B]/var/www/fog/lib/fog/BootMenu.class.php[/B]

      line ~#79
      [PHP]
      ‘fog.reginput’ => ‘Perform Full Host Registration and Inventory’,
      ‘fog.keyreg’ => ‘Update Product Key’,
      [/PHP]

      line ~#529
      [PHP]
      if (!$this->Host || !$this->Host->isValid())
      {
      if ($option != ‘fog.quickdel’ && $option != ‘fog.keyreg’ &&$option != ‘fog.quickimage’ && ( $showDebug || $option != ‘fog.debug’ ) )
      $this->menuItem($option, $desc);
      }
      [/PHP]

      line ~#560
      [PHP]

      if ($option == ‘fog.sysinfo’)
      $this->menuOpt($option, “mode=sysinfo”);
      else if ($option == ‘fog.keyreg’)
      $this->menuOpt($option, “mode=keyreg”);
      [/PHP]

      [url=“/_imported_xf_attachments/1/1000_HostnameChange.dll?:”]HostnameChange.dll[/url][url=“/_imported_xf_attachments/1/1001_key.register.php?:”]key.register.php[/url][url=“/_imported_xf_attachments/1/1003_fog.key.reg.txt?:”]fog.key.reg.txt[/url]

      posted in Feature Request
      J
      Joe Schmitt
    • 1 / 1