Calling server-command from a remote system
PaperCut NG/MF has a powerful built-in scripting utility called
server-command that provides access to dozens of scripting server operations ranging from:
- allocated extra print quota to user accounts
- changing user settings
- scheduling/starting backups
- creating new accounts on demand
It’s often used by System Administrators in simple scripts such as batch files, shell scripts, or via languages such as VBScript, Python, Perl or Ruby. You can read more about this here
server-command is a local program which must be run directly from the PaperCut NG/MF server as a privileged user (for security reasons). The server command may however be called remotely (from another device) using standard remote command tools. Options include:
Thanks to “Arnold Rimmer” who provided this example
Use SSH - a secure remote command/shell program. SSH can be run non-interactively in scripts with the use of an authorized public key added under the papercut account’s
~/.ssh/authorized_keys list. Example use:
ssh papercut@papercutserver "~/server/bin/linux-x64/server-command disable-printer printsrv1 labprinter -1"
NOTE: The following Windows specific alternatives are only provided as possible alternatives in case the
Invoke-Command cmdlet is not supported in your environment.
Use psexec.exe - a remote command program provided by the Sysinternals team at Microsoft. Example use:
psexec.exe \\papercutserver "c:\Program Files\PaperCut NG\server\bin\win\server-command.exe" disable-printer printsrv1 labprinter -1
Windows 2008 R2:
Use Windows Remote Management Services. An example:
winrs -r:[servername] -nop -d:"C:\Program Files (x86)\PaperCut NG\server\bin\win\" server-command.exe rename-user "<old_username>" "<new_username>"