How to add all users to Print Administrator group but not full administrator

command lineprintingsnow leopard

Gordon Davisson offered a solution to a "standalone user" in another question

I'm facing the same issue in an office environment.

Printer paused and System Administrator needs to be called to enter admin password to release the printer.

Is there a terminal script that would allow me to effectively give ALL our users these Printer Admin privileges AND would follow them to other desktops as they move around from office to office, site to site.

(Although using various desktop macs, they are ALL on mobile accounts to allow them to work locally should server go offline for any time.)

Best Answer

I don't think there's a way to do this on a per-user-account basis, but you can do it per-computer. The reason for this is that printer admin rights are controlled by membership in the _lpadmin group, which is a local group on each computer. Since it's a local group, membership is controlled locally.

I can give you two ways to do it: first, change the _lpadmin group on all the computers to make everyone with an account (local or network) a member:

sudo dseditgroup -o edit -n /Local/Default -a staff -t group _lpadmin

Second, you could create a network group (I assume you're using Open Directory network/mobile accounts?) and make everyone in that group a member of _lpadmin:

sudo dseditgroup -o edit -n /Local/Default -a netprinteradmin -t group _lpadmin

Unfortunately, either of these would have to be run on each Mac individually. If you have Apple Remote Desktop set up to admin the Macs, you could use its Sent Unix Command feature to push either command to all computers with a single operation...