Руководство FreeBSD

         

Ограничение количества копий


Система LPD позволяет пользователям легко печатать несколько копий файла. Пользователи могут печатать задания с помощью команды lpr -#5 (например) и получать пять копий каждого файла в задании. Хорошо это или нет - решать вам.

Если вы считаете, что многочисленные копии только изнашивают ваши принтеры, можете отключить опцию -# команды lpr(1), добавив характеристику sc в файл /etc/printcap. Когда пользователи пошлют задания с опцией -#, они увидят:

lpr: multiple copies are not allowed

Учтите, что если вы настроили удаленный доступ к принтеру (см. раздел Принтеры, установленные на удаленных хостах), необходимо задать характеристику sc

также и в файлах /etc/printcap удаленных хостов, иначе пользователи все равно смогут посылать задания с несколькими копиями с других хостов.

Рассмотрим пример. Вот файл /etc/printcap для хоста rose. Принтер rattan вполне надежен, поэтому мы разрешим печатать на него несколько копий, но лазерный принтер bamboo несколько более изношен, поэтому мы отключим для него печать нескольких копий, добавив характеристику sc:

# # /etc/printcap для хоста rose - запрещает печать нескольких копий на bamboo # rattan|line|diablo|lp|Diablo 630 Line Printer:\ :sh:sd=/var/spool/lpd/rattan:\ :lp=/dev/lpt0:\ :if=/usr/local/libexec/if-simple:

bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\ :sh:sd=/var/spool/lpd/bamboo:sc:\ :lp=/dev/ttyd5:ms#-parenb cs8 clocal crtscts:rw:\ :if=/usr/local/libexec/psif:\ :df=/usr/local/libexec/psdf:

Теперь нам также нужно добавить характеристику sc в файле /etc/printcap на хосте orchid (и раз уж мы его меняем, давайте отключим печать нескольких копий для принтера teak):

# # /etc/printcap для хоста orchid - отключена печать нескольких копий на # локальном принтере teak и на удаленном принтере bamboo teak|hp|laserjet|Hewlett Packard LaserJet 3Si:\ :lp=/dev/lpt0:sd=/var/spool/lpd/teak:mx#0:sc:\ :if=/usr/local/libexec/ifhp:\ :vf=/usr/local/libexec/vfhp:\ :of=/usr/local/libexec/ofhp:

rattan|line|diablo|lp|Diablo 630 Line Printer:\ :lp=:rm=rose:rp=rattan:sd=/var/spool/lpd/rattan:

bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\ :lp=:rm=rose:rp=bamboo:sd=/var/spool/lpd/bamboo:sc:

С помощью характеристики sc мы предотвращаем использование команды lpr -#, но это не мешает пользователям просто выполнить команду несколько раз или просто послать один и тот же файл несколько раз в одном задании следующим образом:

% lpr forsale.sign forsale.sign forsale.sign forsale.sign forsale.sign

Есть много способов предотвратить такое некорректное использование (включая его игнорирование), которые вы можете разработать самостоятельно.



Содержание раздела