Bug 26433 - Не удается получить список драйверов принтера
Summary: Не удается получить список драйверов принтера
Status: CLOSED FIXED
Alias: None
Product: Branch p6
Classification: Distributions
Component: cups (show other bugs)
Version: не указана
Hardware: all Linux
: P3 major
Assignee: Andrey Cherepanov
QA Contact: QA p6
URL: http://forum.altlinux.org/index.php/t...
Keywords:
Depends on:
Blocks: 23155 26742 26944
  Show dependency tree
 
Reported: 2011-10-10 11:33 MSK by Motsyo Gennadi
Modified: 2014-02-16 15:59 MSK (History)
12 users (show)

See Also:


Attachments
Логи CUPS (14.23 KB, application/zip)
2011-11-30 17:47 MSK, Motsyo Gennadi
no flags Details
Вот с LogLevel debug (ошибка сохраняется) (63.86 KB, application/octet-stream)
2011-12-02 20:12 MSK, Andrey Cherepanov
no flags Details
Отладочный лог с ошибкой (версия из p6) (52.59 KB, application/octet-stream)
2011-12-02 20:48 MSK, Andrey Cherepanov
no flags Details
Логи CUPS с уровнем debug (3.65 KB, application/zip)
2011-12-06 17:54 MSK, Motsyo Gennadi
no flags Details
Логи CUPS (5.90 KB, application/zip)
2011-12-07 18:31 MSK, Motsyo Gennadi
no flags Details
Логи CUPS (88.41 KB, application/zip)
2011-12-08 10:37 MSK, Motsyo Gennadi
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Motsyo Gennadi 2011-10-10 11:33:30 MSK
09.10.2011 ставил знакомому на бук симпли-6, обновил до актуального состояния p6 на тот день. При попытке подключить принтер (если важно - Xerox Phazer 3117, рекомендуемый драйвер - SPLIX, если не ошибаюсь) напоролся на вот точно такую же проблему: http://forum.altlinux.org/index.php/topic,11880.0.html
По подсказке с форума выкрутился так - нажимал в интерфейсе купса на добавление принтера, и сразу же в терминале выставлял права 0777 на файл /var/cache/cups/ppds.dat, после этого список принтеров появлялся и уже была возможна дальнейшая настройка принтера. Понимаю, что 0777 не то, что нужно, но нужно было срочно принтер подключить, а не с правами разбираться.
Comment 1 Lenar Shakirov 2011-10-10 11:38:44 MSK
Смотрите #26415, похоже одна и та же проблема
Comment 2 Motsyo Gennadi 2011-10-10 12:08:06 MSK
(В ответ на комментарий №1)
> Смотрите #26415, похоже одна и та же проблема

Не похоже - тут с наличием драйверов/ppd все в порядке. Тут именно кривые права на файл /var/cache/cups/ppds.dat. Кроме того, по ссылке на форуме говорится, что такое поведение началось после обновления, а я именно обновил систему перед попыткой настроить принтер.
Comment 3 Michael Shigorin 2011-10-11 21:51:26 MSK
В бранче бэкпорт текущего сизифного cups, перевешиваю (Ген, можешь для чистоты эксперимента попробовать поставить именно сизифные бинарники).
Comment 4 Motsyo Gennadi 2011-10-11 23:09:07 MSK
(В ответ на комментарий №3)
> В бранче бэкпорт текущего сизифного cups, перевешиваю (Ген, можешь для чистоты
> эксперимента попробовать поставить именно сизифные бинарники).

К сожалению - пока не смогу, бук с p6 уже отдан, эксперименты на нем недопустимы (владелец - высоконагруженный адвокат). Но как только подвернется возможность - буду пробовать. Может кто из тех, что на форуме подняли эту тему, сможет быстрее проверить?
Comment 5 Anton V. Boyarshinov 2011-10-12 11:55:20 MSK
 cups.git=1.5.0-alt5
Comment 6 Motsyo Gennadi 2011-10-25 01:06:07 MSK
Сегодня (24.10.2011) довелось таки проверить - система симпли 6, обновленный до распоследнего p6. Грабля на том же месте, ничего не изменилось.
Что делать? Переоткрывать и перевешивать на cups из p6?
Comment 7 Motsyo Gennadi 2011-10-26 15:19:43 MSK
Переоткрыл и перевел на p6.
Comment 8 Motsyo Gennadi 2011-11-23 17:09:09 MSK
# rpm -q cups
cups-1.5.0-alt6

Не работает! Бага осталась и никуда не делась.
Comment 9 Andrey Cherepanov 2011-11-28 17:50:04 MSK
Проверьте с foomatic-db-4.0.20110911-alt2.
Там из-за кривого .htm в списке драйверов была ошибка Unknown. При удалении этого файла всё отлично показывается, ничего не дублируется.
Comment 10 Motsyo Gennadi 2011-11-30 17:46:36 MSK
(В ответ на комментарий №9)
> Проверьте с foomatic-db-4.0.20110911-alt2.
> Там из-за кривого .htm в списке драйверов была ошибка Unknown. При удалении
> этого файла всё отлично показывается, ничего не дублируется.

Андрей, мы точно говорим об одной и той же баге? В этой ничего и не дублировалось, вообще. Более того - ничего и не появлялось, наоборот - здесь ругается на невозможность получить список драйверов. Но я проверил с этой версией пакета:

rpm -qa | grep foomatic
foomatic-db-engine-4.0.6-alt1
foomatic-db-foo2zjs-20110525-alt2
foomatic-db-4.0.20110911-alt2
foomatic-3.0.1-alt2.20040828
foomatic-filters-4.0.6-alt1
gutenprint-foomatic-5.2.6-alt2
[drool@it ~]$ rpm -qa | grep cups
libgnomecups-0.2.3-alt4
cups-1.5.0-alt6
ghostscript-cups-9.04-alt2
python-module-cupshelpers-1.3.7-alt1
python-module-cups-1.9.55-alt1
libcups-1.5.0-alt6
Результат не изменился. Чтоб было понятнее - скриншот:
http://2.firepic.org/2/images/2011-11/30/m61hdsj053zk.png
Логи купса прилагаю.
Comment 11 Motsyo Gennadi 2011-11-30 17:47:34 MSK
Created attachment 5235 [details]
Логи CUPS

Логи CUPS
Comment 12 AEN 2011-11-30 18:18:39 MSK
(В ответ на комментарий №11)
> Created an attachment (id=5235) [details]
> Логи CUPS
> 
> Логи CUPS

Геннадий, попробуйте system-config-printer. Статус поддержки апстримом веб-интерфейса cups не вполне ясен.
Comment 13 Motsyo Gennadi 2011-12-01 14:44:42 MSK
(В ответ на комментарий №12)
> Геннадий, попробуйте system-config-printer. Статус поддержки апстримом
> веб-интерфейса cups не вполне ясен.

Без разницы, я пробовал и через эту приблуду. Она так же не может добавить принтер на стадии выбора модели, вернее, она не доходит до этой стадии, лечение аналогичное - лихорадочное многократное введение chmod 0777 на /var/cache/cups/ppds.dat после нажатия кнопки Далее для выбора модели принтера.
Более того, стало даже хуже (не знаю после чего именно) - раньше работал обзор сетевых принтеров, теперь же стабильный сегфолт. Видео процесса попытки добавить принтер прилагаю: http://multi-up.com/604357
Comment 14 Vitaly Kuznetsov 2011-12-02 18:52:10 MSK
Ошибка какая-то вероятностная. Я её видел, но она бесследно пропала после нескольких попыток.
Попробуйте поставить LogLevel debug в /etc/cups/cupsd.conf и, если ошибка будет воспроизводиться, выслать получившиеся логи
Comment 15 Andrey Cherepanov 2011-12-02 20:12:59 MSK
Created attachment 5240 [details]
Вот с LogLevel debug (ошибка сохраняется)
Comment 16 Andrey Cherepanov 2011-12-02 20:48:17 MSK
Created attachment 5241 [details]
Отладочный лог с ошибкой (версия из p6)
Comment 17 Andrey Cherepanov 2011-12-06 16:54:10 MSK
(В ответ на комментарий №13)
> аналогичное - лихорадочное многократное введение chmod 0777 на
> /var/cache/cups/ppds.dat после нажатия кнопки Далее для выбора модели принтера.
Присоединяюсь к Виталию: воспроизвести в чистых условиях не мог. Но вот что я заметил: в /var/cache/cups был создан файл Samsung-ML-2850D.data (наш сетевой принтер). У меня в любых версиях была ошибка, пока в каталоге находился этот файл. После его удаления всё заработало как и положено, без необходимости манипуляций ppds.dat. Приведи 

 ls -l /var/cache/cups

сделай 

 rm -f /var/cache/cups/*.data

и попробуй добавить принтер.
Comment 18 Motsyo Gennadi 2011-12-06 17:25:44 MSK
(В ответ на комментарий №17)
> Присоединяюсь к Виталию: воспроизвести в чистых условиях не мог. Но вот что я
> заметил: в /var/cache/cups был создан файл Samsung-ML-2850D.data (наш сетевой
> принтер). У меня в любых версиях была ошибка, пока в каталоге находился этот
> файл. После его удаления всё заработало как и положено, без необходимости
> манипуляций ppds.dat. Приведи 
> 
>  ls -l /var/cache/cups
> 
> сделай 
> 
>  rm -f /var/cache/cups/*.data
> 
> и попробуй добавить принтер.

Хм...

ls -l /var/cache/cups
итого 29884
-rw-r----- 1 root lp        971 Дек  6 15:11 job.cache
-rwxrwxrwx 1 root lp        971 Дек  6 13:42 job.cache.O
-rwxrwxrwx 1 root root     4972 Ноя 23 16:31 PE114.data
-rw------- 1 lp   lp   30565528 Дек  6 15:11 ppds.dat
-rwxrwxrwx 1 root lp         75 Ноя 24 10:28 remote.cache
-rwxrwxrwx 1 root lp         75 Ноя 23 16:32 remote.cache.O
drwxrwxr-x 2 root lp       4096 Ноя 23 15:54 rss
-rwxrwxrwx 1 root root     1662 Ноя 24 10:24 SCX-4824FN.data

Принтеры не добавляются...

rm -f /var/cache/cups/*.data
[root@it cache]# ls -l /var/cache/cups
итого 20
-rw-r----- 1 root lp  971 Дек  6 15:11 job.cache
-rwxrwxrwx 1 root lp  971 Дек  6 13:42 job.cache.O
-rwxrwxrwx 1 root lp   75 Ноя 24 10:28 remote.cache
-rwxrwxrwx 1 root lp   75 Ноя 23 16:32 remote.cache.O
drwxrwxr-x 2 root lp 4096 Ноя 23 15:54 rss

Принтеры не добавляются... Жесть, уже даже выставление 0777 не помогает. Час бьюсь - не могу принтер добавить.
Comment 19 Motsyo Gennadi 2011-12-06 17:28:33 MSK
Идем дальше:

rm -f /var/cache/cups/*
[root@it cache]# ls -l /var/cache/cups/
итого 0

Принтеры _не_ добавляются.
Comment 20 Motsyo Gennadi 2011-12-06 17:52:54 MSK
Идем дальше:

rm -f /var/cache/cups/*
[root@it cache]# ls -l /var/cache/cups/
итого 0

Принтеры _не_ добавляются.
Comment 21 Motsyo Gennadi 2011-12-06 17:54:03 MSK
Created attachment 5244 [details]
Логи CUPS с уровнем debug

Логи CUPS с уровнем debug
Comment 22 Lenar Shakirov 2011-12-06 18:04:05 MSK
А что выводит:
# lpinfo -v

конкретнее:
# /usr/lib/cups/backend/snmp

Просто в логе вижу:
[cups-deviced] PID 23556 (snmp) stopped with status 1!

попробуйте "отодвинуть" /usr/lib/cups/backend/snmp куда нибудь

[CGI] File "/usr/lib/cups/backend/mfp" has insecure permissions (0100777/uid=500/gid=500).

и его тоже "отодвинуть"

[cups-driverd] Bad driver information file "/usr/share/cups/model/foomatic-db-ppds/Kyocera/ReadMe.htm"!

и его тоже :)

SPLIX удалите на всякий
Comment 23 Motsyo Gennadi 2011-12-06 18:56:24 MSK
Без разницы. Результат - тот же.
Comment 24 Motsyo Gennadi 2011-12-06 18:57:20 MSK
(В ответ на комментарий №22)
> "/usr/share/cups/model/foomatic-db-ppds/Kyocera/ReadMe.htm"!
> 
> и его тоже :)

Забыл - это файла вообще нет.
Comment 25 Lenar Shakirov 2011-12-07 09:45:18 MSK
Эти команды нормально отрабатывают?:

# foomatic-ppdfile list
# /usr/lib/cups/daemon/cups-driverd dump
# /usr/lib/cups/daemon/cups-driverd list 1 0 ""
Comment 26 Motsyo Gennadi 2011-12-07 09:58:05 MSK
(В ответ на комментарий №25)
> Эти команды нормально отрабатывают?:
> 
> # foomatic-ppdfile list
> # /usr/lib/cups/daemon/cups-driverd dump
> # /usr/lib/cups/daemon/cups-driverd list 1 0 ""

Да, выдает список принтеров, ругани нет, после отработки нормально возвращается к командную строку.
Comment 27 Motsyo Gennadi 2011-12-07 10:00:28 MSK
Блин, провтыкал в запарке...
(В ответ на комментарий №22)
> А что выводит:
> # lpinfo -v

# lpinfo -v
network beh
network socket
network lpd
direct parallel:/dev/lp0
network http
network ipp
network ipps
network https
network smb

> конкретнее:
> # /usr/lib/cups/backend/snmp

# /usr/lib/cups/backend/snmp
[root@it ~]#
Comment 28 Lenar Shakirov 2011-12-07 10:31:26 MSK
А, например, вот это нормально отрабатывает?
# lpadmin -p HP -m 'foomatic:Xerox-Phaser_3110-gdi.ppd' -v 'parallel:/dev/lp0' -E

И потом через веб этот принтер виден?

Если все нормально, то тогда почистим логи:

# service cups stop
# for log in /var/log/cups/*;do > $log;done
# service cups start

и попробуем создать через веб интерфейс принтер
Приложите снова логи
Comment 29 Motsyo Gennadi 2011-12-07 18:28:38 MSK
(В ответ на комментарий №28)
> А, например, вот это нормально отрабатывает?
> # lpadmin -p HP -m 'foomatic:Xerox-Phaser_3110-gdi.ppd' -v 'parallel:/dev/lp0'
> -E

# lpadmin -p HP -m 'foomatic:Xerox-Phaser_3110-gdi.ppd' -v 'parallel:/dev/lp0' -E
[root@it ~]# 
 
> И потом через веб этот принтер виден?

В web-морде появился.
 
> Если все нормально, то тогда почистим логи:
> 
> # service cups stop
> # for log in /var/log/cups/*;do > $log;done
> # service cups start

[root@it cups]# service cups stop
Stopping CUPS service:                                                                                                                 [ DONE ]
[root@it cups]# for log in /var/log/cups/*;do > $log;done
[root@it cups]# service cups start
Starting CUPS service:                                                                                                                 [ DONE ]
[root@it cups]# 

> и попробуем создать через веб интерфейс принтер
> Приложите снова логи

Принтер не добавился. Логи прилагаю.
Comment 30 Motsyo Gennadi 2011-12-07 18:31:25 MSK
Created attachment 5247 [details]
Логи CUPS

07.12.2011
Comment 31 Lenar Shakirov 2011-12-07 19:11:54 MSK
/usr/lib/cups/daemon/cups-driverd) was terminated normally with signal 9.

Еще раз, что выводит команда:
/usr/lib/cups/daemon/cups-driverd list 1 0 requested-attributes='ppd-make' &>/tmp/out.log && echo TRUE || echo FALSE

Сожмите и прикрепите /tmp/out.log
Comment 32 Motsyo Gennadi 2011-12-08 10:36:32 MSK
(В ответ на комментарий №31)
> /usr/lib/cups/daemon/cups-driverd list 1 0 requested-attributes='ppd-make'
> &>/tmp/out.log && echo TRUE || echo FALSE
> 
> Сожмите и прикрепите /tmp/out.log

Пиркрепляю.
Comment 33 Motsyo Gennadi 2011-12-08 10:37:50 MSK
Created attachment 5248 [details]
Логи CUPS

out.log от 08.12.2011
Comment 34 Lenar Shakirov 2011-12-08 10:45:48 MSK
А что вывела предыдущая команда? TRUE или FALSE?
Comment 35 Lenar Shakirov 2011-12-08 10:48:34 MSK
Потому что последнем логе вижу:

ERROR: [cups-driverd] Unable to write "/var/cache/cups/ppds.dat" - Permission denied
Comment 36 Motsyo Gennadi 2011-12-08 12:20:38 MSK
(В ответ на комментарий №34)
> А что вывела предыдущая команда? TRUE или FALSE?

Ой... Проморгал:

# /usr/lib/cups/daemon/cups-driverd list 1 0 requested-attributes='ppd-make' &>/tmp/out.log && echo TRUE || echo FALSE
TRUE
Comment 37 Mikhail Efremov 2011-12-16 18:23:04 MSK
Видел эту багу в одной из тестовых установок Симпли, после добавления принтера с помощью system-config-printer (прошло успешно) - исчезла и больше не воспроизводится. Восстановление сохраненного /var/cache/cups не помогает, все равно не воспроизводится.
В других установках не воспроизводилась.
Как ловить и отлаживать не понятно.
Comment 38 Motsyo Gennadi 2012-02-29 04:36:20 MSK
У меня стабильно воспроизводится при попытке подключить сетевой samba-принтер.
Comment 39 Mike 2012-05-04 18:13:26 MSK
На cups-1.5.2-alt1.M60P.1 из p6 не воспроизводится.
Закрываю.