Включить/выключить принтер можно командой cupsenable/cupsdisable соответственно. Смотрим название принтера командой lpq (показывает только один принтер в системе), или lpstat -a (если в системе несколько принтеров) и выполняем команду:
lexus@lexus:~$ lpq
Kyocera-Mita-FS-1030D готов
нет записей
lexus@lexus:~$ cupsdisable Kyocera-Mita-FS-1030D
lexus@lexus:~$ lpq
Kyocera-Mita-FS-1030D не готов
нет записей
lexus@lexus:~$
Результат наших действий можно увидеть и через графический интерфейс (принтер Kyocera-Mita-FS-1030D теперь выключен):
На практике пришлось применить в ситуации, когда принтер HP LaserJet Professional P1102 “засыпал” через какое-то время (причем отключение в нём самом этой функции родным ПО из-под Windows не спасло), и работа вставала. :)
Добавили запись в crontab пользователя (cupsenable и cupsdisable прекрасно работает без sudo) и сказали ей выполняться каждые 5 минут:
# Enabling HP-LaserJet-Professional-P1102 printer each 5 minutes
*/5 * * * * /usr/sbin/cupsenable HP-LaserJet-Professional-P1102
Повторное выполнение ‘cupsenable’ негативно на работе принтера не сказывается, т.е. предупреждений вида “этот принтер уже итак выключен” не выскакиевает.