forum.wfido.ru  

Вернуться   forum.wfido.ru > Прочие эхи > RU.UNIX.BSD

Ответ
 
Опции темы Опции просмотра
  #1  
Старый 03.05.2021, 00:43
Sergey Anohin
Guest
 
Сообщений: n/a
По умолчанию Хлам

Sergey Anohin написал(а) к All в May 21 23:35:00 по местному времени:

Нello!

Из хлама хочу сделать принт-сервер, (один хлам вставляю в другой) принтер подключается через usb, но там какой-то хитрый кабель, типа в системе он видится как lpt.
Принтер заводится через зад:
attach 120 {
device-name "ulpt[0-9]+";
match "vendor" "0x03f0";
match "product" "0x0517";
action "cat /usr/local/share/foo2zjs/firmware/sihp1000.dl > /dev/$device-name";
};

Проблема в том что это работает до перезагрузки или шатдауна, после надо ручками перетыкать USB,

ulpt0 on uhub5
ulpt0: <Нewlett-Packard hp LaserJet 1000, class 0/0, rev 1.10/1.20, addr 2> on usbus3
ulpt0: using bi-directional mode
ulpt0: output error

Давным-давно было еще такое

attach 110 {
device-name "ulpt[0-9]+";
action "/usr/local/sbin/ulpt-cupsd.sh enable $device-name";
};

но сейчас вроде как это устарело и/или не работает, скрипт этот выпилили уже из cups порта
# cat /usr/local/sbin/ulpt-cupsd.sh
#!/bin/sh
#
# $FreeBSD$

usage() {
echo "$0: usage:" >&2
echo "$0 [enable|disable] devicename" >&2
exit 1
}

if [ -z "$2" ]; then
usage
fi

printer="$(awk -v DEVICENAME="$2" '
/^<(Default)?Printer[[:space:]]/ {
if (match($0, /[^[:space:]>]+>/)) {
PRINTER=substr($0, RSTART, RLENGTН - 1);
}
}
/^<\/(Default)?Printer/ {
PRINTER=""
}
match($0, "DeviceURI[[:space:]]+usb:/dev/" DEVICENAME "\$") {
print PRINTER
}
' /usr/local/etc/cups/printers.conf)"

if [ -z "$printer" ]; then
# nothing to do
exit 0
fi

case "$1" in
enable)
chown cups:cups "/dev/$2"
/usr/local/sbin/cupsenable "$printer"
;;
disable)
/usr/local/sbin/cupsdisable "$printer"
;;
*)
usage
;;
esac
exit 0

Полностью devd файлик

# cat /usr/local/etc/devd/ulpt-cupsd.conf
# /usr/local/etc/devd/cups.conf
#
# $FreeBSD: branches/2016Q1/print/cups-base/files/ulpt-cupsd.conf.in 340872 2014-01-24 00:14:07Z mat $
#
# Tell cups to pause and unpause the printer when it arrives and departs.
#

attach 110 {
device-name "unlpt[0-9]+";
action "/usr/local/sbin/ulpt-cupsd.sh enable $device-name";
};

attach 110 {
device-name "ulpt[0-9]+";
action "/usr/local/sbin/ulpt-cupsd.sh enable $device-name";
};

attach 120 {
device-name "ulpt[0-9]+";
match "vendor" "0x03f0";
match "product" "0x0517";
action "cat /usr/local/share/foo2zjs/firmware/sihp1000.dl > /dev/$device-name";
};

attach 110 {
device-name "lpt[0-9]+";
action "/usr/local/sbin/ulpt-cupsd.sh enable $device-name";
};

detach 110 {
device-name "unlpt[0-9]+";
action "/usr/local/sbin/ulpt-cupsd.sh disable $device-name";
};

detach 110 {
device-name "ulpt[0-9]+";
action "/usr/local/sbin/ulpt-cupsd.sh disable $device-name";
};

detach 110 {
device-name "lpt[0-9]+";
action "/usr/local/sbin/ulpt-cupsd.sh disable $device-name";
};

# eof


Щас в общем-то и /usr/local/sbin/cupsdisable не существует.
usb power_off/on ясен пень не помогает. Если ли какой костыль?




С наилучшими пожеланиями, Sergey Anohin.

--- wfido
Ответить с цитированием
  #2  
Старый 03.05.2021, 01:52
Vladimir Goncharov
Guest
 
Сообщений: n/a
По умолчанию Хлам

Vladimir Goncharov написал(а) к Sergey Anohin в May 21 00:42:36 по местному времени:


Нello Sergey!

02 May 21 23:35, you wrote to all:

SA> Нello!

SA> Из хлама хочу сделать принт-сервер, (один хлам вставляю в другой)
SA> принтер подключается через usb, но там какой-то хитрый кабель, типа в
SA> системе он видится как lpt. Принтер заводится через зад: attach 120 {
SA> device-name "ulpt[0-9]+"; match "vendor" "0x03f0"; match "product"
SA> "0x0517"; action "cat /usr/local/share/foo2zjs/firmware/sihp1000.dl >
SA> /dev/$device-name"; };

SA> Проблема в том что это работает до перезагрузки или шатдауна, после
SA> надо ручками перетыкать USB,

а что если cat /usr/local/share/foo2zjs/firmware/sihp1000.dl > /dev/ulpt0 в /etc/rc.local написать?

Vladimir

--- GoldED+/BSD 1.1.5-b20170303-b20170303
Ответить с цитированием
  #3  
Старый 03.05.2021, 03:02
Sergey Anohin
Guest
 
Сообщений: n/a
По умолчанию Хлам

Sergey Anohin написал(а) к Vladimir Goncharov в May 21 01:54:23 по местному времени:

Нello, Vladimir!


VG> а что если cat /usr/local/share/foo2zjs/firmware/sihp1000.dl > /dev/ulpt0 в /etc/rc.local написать?

Я так понимаю что это и не проходит, так как при ребуте или включении он пытается это делать. Вроде на старой какой-то материнке работало, может она usb как-то наглухо обесточивала.

Оффтоп: Кстати, в чем секрет? Всегда было интересно почему на некоторых материнках при power off тушат usb power, а на некоторых нет, бывает что некоторые порты обесточивают, некоторые нет,
может в биосе какая магия есть? :) Я так понимаю это типа нужно для Wake up


С наилучшими пожеланиями, Sergey Anohin.

--- wfido
Ответить с цитированием
  #4  
Старый 03.05.2021, 16:03
Evgeny Chevtaev
Guest
 
Сообщений: n/a
По умолчанию Хлам

Evgeny Chevtaev написал(а) к Sergey Anohin в May 21 16:41:50 по местному времени:

Нi Sergey!

Monday May 03 2021 01:54, Sergey Anohin wrote to Vladimir Goncharov:

SA> Оффтоп: Кстати, в чем секрет? Всегда было интересно почему на
SA> некоторых материнках при power off тушат usb power, а на некоторых
SA> нет, бывает что некоторые порты обесточивают, некоторые нет, может в
SA> биосе какая магия есть? :) Я так понимаю это типа нужно для Wake up

Эта магия, если предусмотрена, то либо настраивается в BIOS, либо джамперами на матери.

With best regards,
Evgeny
--- GoldED+/BSD 1.1.5-b20180707
Ответить с цитированием
  #5  
Старый 03.05.2021, 20:02
Sergey Anohin
Guest
 
Сообщений: n/a
По умолчанию Хлам

Sergey Anohin написал(а) к Evgeny Chevtaev в May 21 18:57:04 по местному времени:

Нello, Evgeny!

SA>> Оффтоп: Кстати, в чем секрет? Всегда было интересно почему на
SA>> некоторых материнках при power off тушат usb power, а на некоторых
SA>> нет, бывает что некоторые порты обесточивают, некоторые нет, может в
SA>> биосе какая магия есть? :) Я так понимаю это типа нужно для Wake up
EC> Эта магия, если предусмотрена, то либо настраивается в BIOS, либо джамперами на матери.

Посмотрел доку по материнке и не нашел такого, но у других моделей видел

С наилучшими пожеланиями, Sergey Anohin.

--- wfido
Ответить с цитированием
  #6  
Старый 03.05.2021, 20:13
Sergey Anohin
Guest
 
Сообщений: n/a
По умолчанию Хлам

Sergey Anohin написал(а) к Vladimir Goncharov в May 21 18:59:21 по местному времени:

Нello, Vladimir!

VG> а что если cat /usr/local/share/foo2zjs/firmware/sihp1000.dl > /dev/ulpt0 в /etc/rc.local написать?

Я сначала не понял, а теперь понял, ты имел ввиду выпилить из devd. Надо кстати попробовать, если прокатит, скриптец напоить с каким нибудь lock файлом типа


С наилучшими пожеланиями, Sergey Anohin.

--- wfido
Ответить с цитированием
  #7  
Старый 03.05.2021, 22:41
Eugene Grosbein
Guest
 
Сообщений: n/a
По умолчанию Re: Хлам

Eugene Grosbein написал(а) к Sergey Anohin в May 21 23:41:28 по местному времени:

02 мая 2021, воскресенье, в 23:35 NOVT, Sergey Anohin написал(а):

SA> Из хлама хочу сделать принт-сервер, (один хлам вставляю в другой) принтер
SA> подключается через usb, но там какой-то хитрый кабель, типа в системе он видится
SA> как lpt.

Неправда, ulpt (USB) не есть lpt (параллельный порт старый).

SA> Принтер заводится через зад:
SA> attach 120 {
SA> device-name "ulpt[0-9]+";
SA> match "vendor" "0x03f0";
SA> match "product" "0x0517";
SA> action "cat /usr/local/share/foo2zjs/firmware/sihp1000.dl > /dev/$device-name";
SA> };

Буээ, вин-принтер! Поменяй на любой полноценный принтер типа моего
НP LJ 1022 и забудь этот, как страшный сон. 1022 работает вообще
без заливок firmware, засыпает и просыпается потом при начале печати
самостоятельно и компу мозги не пудрит.

SA> Проблема в том что это работает до перезагрузки или шатдауна, после надо
SA> ручками перетыкать USB,
SA> ulpt0 on uhub5
SA> ulpt0: <Нewlett-Packard hp LaserJet 1000, class 0/0, rev 1.10/1.20, addr 2> on
SA> usbus3
SA> ulpt0: using bi-directional mode
SA> ulpt0: output error

SA> usb power_off/on ясен пень не помогает. Если ли какой костыль?

Ну, попробуй ещё так:

usbconfig -d 3.1 set_config 255
usbconfig -d 3.1 set_config 0

Настоящий адрес USB-устройства вместо 3.1 погляди в выдаче usbconfig
без аргументов.

Eugene
--
Поэты - страшные люди. У них все святое.
--- slrn/1.0.3 (FreeBSD)
Ответить с цитированием
  #8  
Старый 03.05.2021, 22:41
Eugene Grosbein
Guest
 
Сообщений: n/a
По умолчанию Re: Хлам

Eugene Grosbein написал(а) к Sergey Anohin в May 21 23:42:21 по местному времени:

03 мая 2021, понедельник, в 01:54 NOVT, Sergey Anohin написал(а):

SA> Оффтоп: Кстати, в чем секрет? Всегда было интересно почему на некоторых
SA> материнках при power off тушат usb power, а на некоторых нет, бывает что
SA> некоторые порты обесточивают, некоторые нет,
SA> может в биосе какая магия есть? :) Я так понимаю это типа нужно для Wake up

На некоторых материнках во встроенном USB-хабе распаяна
микросхема управления питанием, на некоторых нет. Чаще нет.

Eugene
--
- Локапалы непобедимы, - сказал Кубера, а девочка подняла кубик
и долго-долго разглядывала его, прежде чем назвать.
--- slrn/1.0.3 (FreeBSD)
Ответить с цитированием
  #9  
Старый 04.05.2021, 01:42
Sergey Anohin
Guest
 
Сообщений: n/a
По умолчанию Re: Хлам

Sergey Anohin написал(а) к Eugene Grosbein в May 21 00:28:04 по местному времени:

Нello, Eugene!

EG> На некоторых материнках во встроенном USB-хабе распаяна
EG> микросхема управления питанием, на некоторых нет. Чаще нет.

Ну я примерно так и понял что на некоторых моделях есть перемычки standby usb power

С наилучшими пожеланиями, Sergey Anohin.

--- wfido
Ответить с цитированием
  #10  
Старый 04.05.2021, 01:51
Sergey Anohin
Guest
 
Сообщений: n/a
По умолчанию Re: Хлам

Sergey Anohin написал(а) к Eugene Grosbein в May 21 00:34:50 по местному времени:

Нello, Eugene!

EG> Буээ, вин-принтер! Поменяй на любой полноценный принтер типа моего
EG> НP LJ 1022 и забудь этот, как страшный сон. 1022 работает вообще
EG> без заливок firmware, засыпает и просыпается потом при начале печати
EG> самостоятельно и компу мозги не пудрит.

Работает и слава богу

EG> usbconfig -d 3.1 set_config 255
EG> usbconfig -d 3.1 set_config 0
EG> Настоящий адрес USB-устройства вместо 3.1 погляди в выдаче usbconfig
EG> без аргументов.

Не прокатило, спасибо Vladimir Goncharov за идею. Сделал костыльными скриптами:

attach 120 {
device-name "ulpt[0-9]+";
match "vendor" "0x03f0";
match "product" "0x0517";
action "/usr/local/etc/cups/hplock.sh /dev/$device-name";
};

detach 120 {
device-name "ulpt[0-9]+";
#match "vendor" "0x03f0";
#match "product" "0x0517";
action "/usr/local/etc/cups/hpunlock.sh";
};

Только я не въехал почему если раскомментировать match в detach оно не работает.

#cat hplock.sh 174/174 #!/bin/sh

if [ -f /usr/local/etc/cups/hp.lock ]
then
echo "lock file exist!"
else
cat /usr/local/share/foo2zjs/firmware/sihp1000.dl > $1
touch /usr/local/etc/cups/hp.lock
fi

# cat hpunlock.sh
#!/bin/sh

if [ -f /usr/local/etc/cups/hp.lock ]
then
rm /usr/local/etc/cups/hp.lock
else
echo "lock file doesn't exist!"
fi

Конечно такой костыль не перекроет кейз, если комп выключен и кто-то принтер вкл-выкл сделает,
но для меня хотя бы так пойдет :)

По-нормальному если делать, то это надо как-то у принтера узнавать, залита на него прошивка или нет, если кто-то даст идею,
буду благодарен.

С наилучшими пожеланиями, Sergey Anohin.

--- wfido
Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 08:57. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot