Deploying Printers Using Active Directory
I have had a few days to try to make deploying printers easier for my works remote site setup. We use to go to every machine and install the printers on each of the machines. I knew that it could be done through Active Directory but I just had not done this before. So today I set it up and it worked like a charm. There are a few other guides to do this out there but I wanted to share my take on the mater. To start out you can deploy the printer on a Per User or Per Machine basis. We set up computers in certain areas and the users change so having a per machine deployment would work best for our situation. We also want to install the minimum amount of printers to each area to avoid the users printing to printers all the way across the building.
First thing I had to do is setup the AD structure, which I am not going to show here. So here is a basic way I setup the AD tree to work with the way I want our printers to work. Our remote networks are small and temporary so we don’t put a great deal of time into the type of configuration you would do for a fixed site. Anyhow, I setup an OU for each of the work areas and assigned a group policy to it that is only used for the computer accounts and deploying the printers.
This all assumes that you have print services installed and the printers that you are going to deploy are all installed on the server. We run the print server on the DC because the remote site is only a few hundred machines and we run a mix of Windows and Linux servers. Using AD to deploy printers is great, it puts the printer on the machines and you don’t have to install drivers on each individual host.
I used CompGroup_1 and 2 for test OUs for the computer accounts. Once these were setup I created GPOs for the OUs that only deploy the printers. The rest of group policy is applied to the User accounts.
With the OUs created you need to make the GPOs for the printers. Like I said earlier we only want a few printers in each work area and we don’t want everyone to have access. This will help to relieve some of the PEBKAC!! Anyhow with the GPOs created you simply edit them to add the Pushprinterconnection.exe to the startup scripts for the per machine deployment. If you want per user you would do the same thing but do it in the Logon scripts. I found my Pushprinterconnection.exe in c:\Windows\Servicepackfiles\i386.
In the properties of Startup scripts you need to add the PPC to it. You click show files that will open a window that you will copy the PPC to. Close it and select add, you need to repeat this for each OU that you are going to use to deploy printers. Also when you add the PPC you can enter parameters, enter –log to allow logging of the events. Here are some screen shots of these menus.
This is just the order I went in you should be able to change things around to work for you better. I have to wait for all of the printers to be put in before I can add them to the server so I setup the AD part first and then the printer connections. So now we will deploy the printers using the Printer Manager. It is pretty straight forward and you simply select the printer you want to work with and right click. Then select deploy with group policy. This will being up a new menu where you browse for the GPO attached to the OU that you want to deploy the selected print in. Now that it is selected you can select the method of deployment, per machine or user. You will repeat this for every GPO and you can add multiple printers to the same GPO. Here are some screen shots of the menus. These screen shots show per user being selected, I used these because of time and not have per machine shots.
Once this is complete the printers show up in the Deployed Printers menu in Printer Management. Finally after everything was completed I enforced the GPOs on the OUs. Then I ran a script the executed a gpupdate /force on all of the workstations and rebooted. After everything came up I logged in the machines and every printer was present and worked. I did have some issues when I was complete and renaming, and I also had a typo with one of the IPs. So make sure you have everything planned out and check your work and you should be golden. This really makes it easy to deploy printers on remote nodes, mass numbers of nodes, or just because you want to be lazy. I know this isn’t nothing new but maybe I can I help one person and then I am happy. However I did have to find some screen shots that weren’t from my server just to allow me to finish this post, I hope no one get confused by the different AD layouts.