SOLVED Windows 1903 or 1809 versions: do not copy drivers...?

  • Hello,
    Does this procedure still work for windows version 1903 or 1809?

    I tried many times to apply and follow this tutorial but the drivers are not installed on my windows…

    Thank you to tell me if this is the only way to manage the drivers with FOG? or is there is a new
    way to manage drivers…

  • i undestood why it did not work…in you tutorial, you say that we have to remove space inside the name of the folder for driver’s path.
    for example, we have to create a folder called “optiplex390” and not “optiplex 390”. But in my case, i need to put “space” in my folder…and now, it works like a charm!

  • Moderator

    @tigervince30 said in Windows 1903 or 1809 versions: do not copy drivers...?:

    driver package not found for VMware Virtual Platform/win10/x64 !

    This error indicates that you don’t have the driver path on your fog server in the /images/drivers path.

  • Hi, i finally undertood how the drivers works with FOG…but i have a new error.
    The drivers are not found but still, there are at the right place on my fog server…
    Would you have an idea?
    here is my attached file to understand better.
    ![0_1587744724121_fog drivers not found.png](Uploading 100%)

    preparing drivers…failed
    driver package not found for VMware Virtual Platform/win10/x64 !

    ps: i also tried on my optilplex3020

  • Moderator

    @tigervince30 Well as I see it you have 2 problems. The first one is the files are not being copied over to the target computer the second is that the pnputil is not setup to run.

    I would use the
    . ${postdownpath}/fog.custominstall
    over the
    Just to keep the postdownload script portable between fog installs. Not all imaging directories are /images path. There is nothing wrong with calling out the full path, but the standard is to use the . ${postdownpath}

    (Oh!!) I just saw something, you enter /images/postdownloadscripts/fog.custominstall you missed the leading dot-space (. ) . /images/postdownloadscripts/fog.custominstall That would impact the execution of the install.

    So to debug the first problem, FOG has a specific debug mode that can be used to debug post install scripts. When you schedule a deployment you would tick the debug checkbox before you hit the Schedule Task button. Then pxe boot the target computer. That will place the target computer into debug mode. After a few screens of text that you need to clear with the enter key you will be dropped to a FOS Linux command prompt. At the command prompt key in fog and press enter to start the imaging. In debug mode the FOG install will stop at each breakpoint (debugPause) in the deployment process. This way you can watch and read error message that might happen during image deployment.

    Now you might want to add an echo statement at the beginning of the fog.custominstall script and modify it such as this.

    . /usr/share/fog/lib/
    echo "Starting post install scirpt"
    [[ -z $postdownpath ]] && postdownpath="/images/postdownloadscripts/"

    Also looking at the code, if the $postdownpath path variable is not set the entire postinstall script will abort. Its possible that the missing dot calling the script would do this (not populate that variable). That is some magic missing dot ( . ).

    During debugging you can exit out of the imaging script by pressing Ctrl-C. You can restart the imaging process without having to reboot by just keying in fog again. Your post install script should execute right after the last partition is imaged with PartClone.

  • @george1421 said in Windows 1903 or 1809 versions: do not copy drivers...?:


    Hello Georges,
    Yes i remember this part of the tutorial.
    Inside this file, i only have one line
    Here is my file “fog.postdownload”:

    ## This file serves as a starting point to call your custom postimaging scripts.
    ## <SCRIPTNAME> should be changed to the script you're planning to use.
    ## Syntax of post download scripts are
    #. ${postdownpath}<SCRIPTNAME>
    #. ${postdownpath}/fog.custominstall

    So if understand, i followed the last and right tutorial that works on Windows 10 1903…:)
    But I do not have “Identifying hardware”…Something is probably missing

    Besides, I did not add “pnp commands” because i don’t know where is the file “setupcomplete.cmd”?it is not written inside the article but It seems to be a file in windows used by sysprep OOBE?

    Thank you

  • Moderator

    @tigervince30 This is the most current tutorial on this:

    Did you remember this part to hook all of those scripts into the postdown process?


    The last bit of magic we need to do is update the FOG supplied script called fog.postdownload to call our custom script fog.custominstall

    1.Insert at the bottom of the fog.postdownload script this line.

    . ${postdownpath}/fog.custominstall

    2.Save and exit your text editor.

    If its hooked in correctly, after partclone finishes it should display “Identifying hardware” if the postinstall script is running.

    If it runs there should be other error message related to the hardware being found or not.

  • thank you for your quick answer george…:)

    It doesn’t copy but i forgot the most important…: it doesn’t install the drivers at all…Nothing happen after imaging windows…
    Maybe because i followed the bad tutorial…

    I only created those 4 files but not this file “setupcomplete.cmd”

    • fog.copydrivers

    and of course copy my drivers into this path.
    Here is an example:
    root@waptfog:/images/drivers/OptiPlex3020/win10/x64/audio/822R6_A00-00/Windows10 -x64# ls
    BlackJadeSkinImages64.dll MBAPO232.dll RTDVHD64.sys
    HDA64.CAT MBAPO264.dll RTHDASIO64.dll

    I probably forgot a few steps …

    So do you have a link of a newer tutorial?
    Thank you a lot for your help

  • Moderator

    Just to be clear, in the subject line of this post you have “do not copy drivers…” I can read this 2 different ways.

    1. The drivers are not being copied from the FOG server to the target computer during the FOG deploy phase.
    2. The drivers are copied to the hard drive of the target computer but not being copied into MS Windows during the WinSetup/OOBE phase.

    Which is it?

  • Moderator

    pnputil.exe /add-driver "C:\Drivers\*.inf" /subdirs /install

    This code should still inject the drivers. I’m using it with 1903 today. There is also a DISM similar command, but pnputil works for now. Its up to M$ to make or break stuff here. We can only try to find workaround for the stuff they do.

    So to debug this a bit. On a system where the drivers are not deployed correctly.

    1. Confirm that the drivers in their INF format is in the location that you defined.
    2. From an elevated command prompt key in the pnputil command as you have it defined in your setupcomplete.cmd file. Do they install when you run the command interactively?

    If it does, but doesn’t work during WinSetup/OOBE then are you sure the setupcomplete.cmd file is being called?