Fernando: You don’t run into issues with Dell Optiplex pulling the wrong audio driver?
Posts made by Andrew Single
-
RE: How to use FOG to supply machine specific drivers for Windows 7 Sysprepped machines
-
RE: How to use FOG to supply machine specific drivers for Windows 7 Sysprepped machines
Added function copyDrivers() to funcs.sh:
copyDrivers()
{
machine=dmidecode -s system-product-name
;
machine2=${machine// /};
echo " “;
echo " * FOG Driver copy for $machine”;
echo " ";mkdir /ntfs 2>/dev/null
echo -n " * Mounting Windows File System…“;
mount.ntfs-3g $win7sys /ntfs 2>/tmp/mntfail
mntRet=”$?";
if [ ! “$mntRet” = “0” ]
then
echo “Failed to mount C:”;
echo " ";
echo -n " * ";
cat /tmp/mntfail
echo “”;
sleep 5;
else #Mount successful
echo “Done.”;mkdir /ntfs/Drivers 2>/dev/null
echo " “;
echo -n " * Copying Common Drivers…”;
cp -r /images/drivers/Common /ntfs/Drivers
echo “Done.”;
echo -n " * Copying $machine Drivers…";
cp -r /images/drivers/${machine// /} /ntfs/Drivers
echo “Done.”;
echo " “;
echo " * Driver copy completed.”;
sleep 2;
fi
}(Sorry about the formatting, the tabs got eaten)
I have FOG triggering this function after the Disk Cleanup stage, where it does the NTFS extend. It’s then copying drivers from /images/drivers/Common, and then /images/drivers/Optiplex745 (Or whatever model it pulls)
The real reason for doing it this way, is that you can include the network driver for a new model that’s not in Win 7 in the driver folder for that model, and just go image it without having to worry about building a new base image. There’s also no scripts running post sysprep, it’s all done via the windows sysprep process. With a GUI for driver management, and the community sharing model specific driver packs, I think this would really add to the complete usefulness of FOG.
We’re going to setup a core FOG server with the drivers folder, then rsync to each of our 42 schools. A big benefit for us, is that because we won’t be building a new base image very often now, it’s easier to keep all our school images up to date. New drivers popping in from rsync will happen automatically & quickly, even on some of our slow links. We’d only rarely have to pull down a new 10-15 gig image
-
RE: How to use FOG to supply machine specific drivers for Windows 7 Sysprepped machines
Hey SSX, long time no chat. I wanted to avoid this approach. The problems are this:
-You must include the NIC drivers for any systems that Win 7 doesn’t natively have. That means when a new model of computer comes in, if it doesn’t have the NIC driver, you need to build a new image.
-If you include the driverpacks on the image itself, you’re increasing image size, and you have to update your image to update drivers.I’ve done up a proof of concept script, and it’s working. I’ve cleaned it up, and added it as a function on funcs.sh. I’m doing some more testing, then I’ll post it here. My goal is to build a mechanism in FOG to simply create a giant driver repository, with a GUI to manage it, maybe even tie it in to driverpacks now that I’ve seen that. Then, as part of the post imaging process, after it extends the NTFS partition, it copies over the machine specific drivers before first boot.
-
How to use FOG to supply machine specific drivers for Windows 7 Sysprepped machines
Scenario:
-We want to build a universal Windows 7 Image that can be used on all systems we service in our School Division. (Dell Optiplex, Latitude, and some Vostro systems.)Challenges:
-Machines must be sysprepped to obtain unique UUID’s to prevent issues with KMS.
-Using a gigantic driver store on the image from audit mode increases image size, and some drivers are incompatible between models (Ie: The touch screen driver for the 2100/2110 is not compatible with the 2120, yet the 2120 detects the 2100 driver as the correct one. This also happens with some audio drivers.)
-To update drivers, or add another model to the Image, you need to rebuild the image.
-If you create a network driver store, it’s difficult to integrate into the sysprep process, and if the NIC drivers are missing, the network store can’t be accessed.Solution:
-Have FOG identify the model based on the WIM information, and copy a Model specific driver folder to C:\drivers.
-Build the sysprepped image specifying C:\drivers as an additional driver search path.I’m going to add content to the fog script in the init.gz to, if it’s a Windows 7 image, grab the Machine model, look for a matching folder on /images/drivers/MachineType, and if it exists, mount the NTFS partition, and copy that folder to C:\drivers. Then, when the sysprep drivers stage runs, it will pull the correct drivers.
I looked through the scripts, and I couldn’t find anything like this that had been done. I want to do this in a way that will be easily brought into FOG for everyone. Does anyone see any problems with what I’m proposing?