I have never really dove into print management for Mac with Jamf. I can add printers to Jamf Admin, that's easy enough, create policies, etc.....
What is the best way to import a lot of printers? When I add a printer in Jamf Admin, it seems to only see printers on the subnet I am on. We have a few hundred network printers, while I don't want to add them all, I would like to add heavily used ones to Self Service for install.
How would I go about adding printers without having to manually add them to the JSS? I can't really go building to building to get on a different subnet so I can discover printers.
If the Jamf solution is your tool, your challenge would be:
Determine what drivers you need and capture the packages for them and upload to Jamf Admin. Install each of them once on a test mac.
Use a command in this form to to add them to your test machine.
lpadmin -p $printername -L $printerlocation -E -v ipp://”$printeripaddress” -P $installedppdlocation
I wrote the command this way as you could populate these variables using a csv file. You could also formulate a “for loop” to run that command multiple times based on a cab file https://www.google.com/amp/s/www.cyberciti.biz/faq/bash-for-loop/amp/
That would get your printers installed on the test machine. Assuming no typos in the csv, all should print properly from the test machine. Before trying to go nuts, test the command using a single printer.
Open Jamf Admin and add them all. Once they are in, you could write policies that put the correct printers on for the correct group of people.
I haven’t tested this obviously or I would have posted a working script, but the concept should work. I challenge my colleagues who are more skilled at script writing to formulate the syntax. It becomes a lot easier if your printer fleet is semi-standardized.
I also second folks ideas above. We use Papercut to manage ours. That costs money though.
I wrote a tool to help with generating printer configurations as payload-free installer packages. It's available via the link below:
Blog post describing how it works is available here: