Есть проблема, что в конфиге принтерам назначены /dev/usb/lp0 и /dev/usb/lp1, но они вдруг меняют порты.
Происходит это из-за того, что в Thinstation принтеры подключаются по принципу «кто первым встанет, тот и загрузится», т.е.
что загрузилось первым, так это /dev/usb/lp0. Короче говоря, исправим.
Вот часть конфигурации Thinstation, отвечающая за принтеры :
Мы не можем связать принтер с узлом (/dev/usb/lp*), но можем создать фиксированную символическую ссылку, она нам в этом поможет. удев , но сначала выясним, как определяются наши принтеры.PRINTER_0_DEVICE=/dev/usb/lp0 PRINTER_0_NAME=HP2055 PRINTER_0_TYPE=U PRINTER_1_DEVICE=/dev/usb/lp1 PRINTER_1_NAME=HP2015 PRINTER_1_TYPE=U
Подключив принтеры к клиенту, выполните на нем команды одну за другой: udevadm info -a -n /dev/usb/lp0 | grep ATTRS{product}
udevadm info -a -n /dev/usb/lp1 | grep ATTRS{product}
И ищем в выхлопе подходящий идентификатор, в нашем случае ATTRS{продукт} .
Мы создаем в пакеты/база/etc/udev/rules.d файл 12-принтер-local.rules и в нем прописываем правила, создающие симлинк на ноду по модели принтера: KERNEL=="lp*", ATTRS{product}=="HP LaserJet 2055", SYMLINK+="usb/hp2055"
KERNEL=="lp*", ATTRS{product}=="HP LaserJet 2015", SYMLINK+="usb/hp2015"
Конфиг придется переделать, установив символическую ссылку на устройство: PRINTER_0_DEVICE=/dev/usb/hp2055
PRINTER_0_NAME=HP2055
PRINTER_0_TYPE=U
PRINTER_1_DEVICE=/dev/usb/hp2015
PRINTER_1_NAME=HP2015
PRINTER_1_TYPE=U
Перестраиваем образ и теперь печать, вне зависимости от того, какой узел получило устройство, будет идти на нужный принтер.
Количество правил зависит от зоопарка принтеров.
Еще пара примеров использования:
1) если у вас несколько типов принтеров: связка HP LaserJet***, Canon*** и какой-то фискальный FPrint***, то можно обойтись несколькими правилами: KERNEL=="lp*", ATTRS{product}=="*HP LaserJet*", SYMLINK+="usb/hp"
KERNEL=="lp*", ATTRS{product}=="*Canon*", SYMLINK+="usb/cnn"
KERNEL=="lp*", ATTRS{product}=="*FPrint*", SYMLINK+="usb/fp"
2) у вас куча разных принтеров, и везде второй принтер какой-то фискальный FPrint***, т.е.
если атрибут содержит FPrint, то симлинк - fprint, все остальные получают симлинк print.: KERNEL=="lp*", ATTRS{product}!="*FPrint*", SYMLINK+="usb/print"
KERNEL=="lp*", ATTRS{product}=="*FPrint*", SYMLINK+="usb/fprint"
Теги: #*nix #Системное администрирование #thinstation #Thinstation #Thinstation #thinstation #Thinstation #Thinstation #Thinstation #Thinstation
-
The Wall Farm – Домашняя Вертикальная Ферма
19 Oct, 24 -
Собеседование На Пенсию Программиста
19 Oct, 24 -
На Сайте Google Books Нашли Розовые Пальцы
19 Oct, 24 -
Мысли О Процессе Разработки Игры Reflect
19 Oct, 24