Intereting Posts

Не удается распечатать в PDF с помощью cups-pdf; используется для работы, теперь «не удалось установить режим файла» печать как не-root

Вот что-то действительно странное: что-то, что хорошо работало в Debian, а затем сломалось, даже без dist-upgrade.

Раньше я мог использовать виртуальный принтер CUPS PDF для печати чего-либо в PDF-файле. Теперь это не работает: ничего не отображается в ~ / PDF, когда я печатаю как обычный пользователь. Если я вхожу в интерфейс администрирования CUPS и использую его для печати тестовой страницы на принтер, это работает; PDF хорошо отображается в корне / PDF. Но я хочу, чтобы иметь возможность печатать в PDF как пользователь без полномочий root …

/ var / log / cups / cups-pdf_log имеет это сказать:

Fri Feb 7 18:31:57 2014 [STATUS] ***Experimental Option: DecodeHexStrings Fri Feb 7 18:31:57 2014 [ERROR] failed to set file mode for PDF file (non fatal) (/michael/home/PDF/PDF_-_CUPS_1_5.pdf) Fri Feb 7 18:31:57 2014 [STATUS] PDF creation successfully finished (michael) 

ОК, поэтому не failed to set file mode for PDF file . Однако Google для этого не очень помогает. Я нашел одну веб-страницу, которая предложила изменить каталог Out в /etc/cups/cups-pdf.conf, поэтому я сделал ( Out /tmp/${USER}.cups-pdf ) и перезапустил CUPS, и когда я пытаюсь печатать в PDF, это забирает это изменение, потому что оно создало такой каталог, но затем жаловалось на ту же ошибку в новом местоположении.

Несмотря на кажущуюся последнюю версию (CUPS 1.5.3-5 + deb7u1, CUPS-PDF 2.6.1-6, Debian Wheezy), я решил переустановить CUPS на случай, если он каким-то образом сломается.

 sudo apt-get --reinstall -u install cups cups-pdf cups-bsd cups-client cups-common cups-driver-gutenprint cups-filters cups-pk-helper cups-ppdc 

Тем не менее, я все еще получаю ту же ошибку.

Установка LogType 7 в LogType 7 /etc/cups/cups-pdf.conf вызывает следующее:

 Fri Feb 7 19:01:29 2014 [DEBUG] switching to new gid (lpadmin) Fri Feb 7 19:01:29 2014 [DEBUG] initialization finished (v2.6.1) Fri Feb 7 19:01:29 2014 [DEBUG] user identified (michael) Fri Feb 7 19:01:29 2014 [DEBUG] output directory name generated (/tmp/michael.cups-pdf) Fri Feb 7 19:01:29 2014 [DEBUG] user information prepared Fri Feb 7 19:01:29 2014 [DEBUG] spoolfile name created (/var/spool/cups-pdf/SPOOL/cups2pdf-18015) Fri Feb 7 19:01:29 2014 [DEBUG] source stream ready Fri Feb 7 19:01:29 2014 [DEBUG] destination stream ready (/var/spool/cups-pdf/SPOOL/cups2pdf-18015) Fri Feb 7 19:01:29 2014 [DEBUG] owner set for spoolfile (/var/spool/cups-pdf/SPOOL/cups2pdf-18015) Fri Feb 7 19:01:29 2014 [DEBUG] using traditional fgets Fri Feb 7 19:01:30 2014 [DEBUG] found beginning of postscript code (%!PS-Adobe-3.0) Fri Feb 7 19:01:30 2014 [DEBUG] now extracting postscript code Fri Feb 7 19:01:30 2014 [DEBUG] found title in ps code ((What does the CUPS PDF printer need to be able to set file mode? - Unix & Linux Stack Exchange)) Fri Feb 7 19:01:30 2014 [DEBUG] found end of postscript code (%%EOF) Fri Feb 7 19:01:30 2014 [DEBUG] all data written to spoolfile (/var/spool/cups-pdf/SPOOL/cups2pdf-18015) Fri Feb 7 19:01:30 2014 [DEBUG] trying to use PS title ((What does the CUPS PDF printer need to be able to set file mode? - Unix & Linux Stack Exchange)) Fri Feb 7 19:01:30 2014 [DEBUG] removing trailing newlines from title ((What does the CUPS PDF printer need to be able to set file mode? - Unix & Linux Stack Exchange)) Fri Feb 7 19:01:30 2014 [STATUS] ***Experimental Option: DecodeHexStrings Fri Feb 7 19:01:30 2014 [DEBUG] checking for hex strings ((What does the CUPS PDF printer need to be able to set file mode? - Unix & Linux Stack Exchange)) Fri Feb 7 19:01:30 2014 [DEBUG] not a hex string, has no start marker ((What does the CUPS PDF printer need to be able to set file mode? - Unix & Linux Stack Exchange)) Fri Feb 7 19:01:30 2014 [DEBUG] removing enclosing parentheses () from full title ((What does the CUPS PDF printer need to be able to set file mode? - Unix & Linux Stack Exchange)) Fri Feb 7 19:01:30 2014 [DEBUG] calling alternate_replace_string Fri Feb 7 19:01:30 2014 [DEBUG] removing alternate special characters from title (What does the CUPS PDF printer need to be able to set file mode? - Unix & Linux Stack Exchange) Fri Feb 7 19:01:30 2014 [DEBUG] truncating title (What_does_the_CUPS_PDF_printer_need_to_be_able_to_set_file_mode_) Fri Feb 7 19:01:30 2014 [DEBUG] title successfully retrieved (What_does_the_CUPS_PDF_printer_need_to_be_able_to_set_file_mode_) Fri Feb 7 19:01:30 2014 [DEBUG] input data read from stdin Fri Feb 7 19:01:30 2014 [DEBUG] output filename created (/tmp/michael.cups-pdf/What_does_the_CUPS_PDF_printer_need_to_be_able_to_set_file_mode_.pdf) Fri Feb 7 19:01:30 2014 [DEBUG] ghostscript commandline built (/usr/bin/gs -q -dCompatibilityLevel=1.4 -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pdfwrite -sOutputFile="/tmp/michael.cups-pdf/What_does_the_CUPS_PDF_printer_need_to_be_able_to_set_file_mode_.pdf" -dAutoRotatePages=/PageByPage -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -dPDFSETTINGS=/prepress -c .setpdfwrite -f /var/spool/cups-pdf/SPOOL/cups2pdf-18015) Fri Feb 7 19:01:30 2014 [DEBUG] output file unlinked (/tmp/michael.cups-pdf/What_does_the_CUPS_PDF_printer_need_to_be_able_to_set_file_mode_.pdf) Fri Feb 7 19:01:30 2014 [DEBUG] TMPDIR set for GhostScript (/var/tmp) Fri Feb 7 19:01:30 2014 [DEBUG] waiting for child to exit Fri Feb 7 19:01:30 2014 [DEBUG] entering child process Fri Feb 7 19:01:30 2014 [DEBUG] GID set for current user Fri Feb 7 19:01:30 2014 [DEBUG] supplementary groups set for current user Fri Feb 7 19:01:30 2014 [DEBUG] UID set for current user (michael) Fri Feb 7 19:01:30 2014 [DEBUG] ghostscript has finished (256) Fri Feb 7 19:01:30 2014 [ERROR] failed to set file mode for PDF file (non fatal) (/tmp/michael.cups-pdf/What_does_the_CUPS_PDF_printer_need_to_be_able_to_set_file_mode_.pdf) Fri Feb 7 19:01:30 2014 [DEBUG] ERRNO: 2 Fri Feb 7 19:01:30 2014 [DEBUG] no postprocessing Fri Feb 7 19:01:30 2014 [DEBUG] spoolfile unlinked (/var/spool/cups-pdf/SPOOL/cups2pdf-18015) Fri Feb 7 19:01:30 2014 [DEBUG] all memory has been freed Fri Feb 7 19:01:30 2014 [STATUS] PDF creation successfully finished (michael) 

Я замечаю, что похоже, что Ghostscript выходит со статусом 256 ( [DEBUG] ghostscript has finished (256) ( [DEBUG] ghostscript has finished (256) ), но я не могу найти ничего, что говорит мне, почему именно он выйдет с этим кодом ошибки.

Моя учетная запись пользователя не является членом групп lp или lpadmin , но это не изменилось.

Печать на физическом принтере на моем столе отлично работает; Я сделал это совсем недавно, спустя много времени после того, как печать в формате PDF начала действовать так.

Что может быть моей проблемой?

Как вы можете видеть на этом посту: https://bugs.launchpad.net/ubuntu/+source/cups/+bug/270046/comments/28

РЕШЕНЫ самым простым способом (отключить профиль apparor чашек)

Запустите эти команды …

 sudo mv /etc/apparmor.d/usr.sbin.cupsd /etc/apparmor.d/disable sudo /etc/init.d/apparmor restart 

Глядя на ваши журналы, похоже, что есть проблема при настройке разрешений на файл в /tmp .

Fri Feb 7 19:01:30 2014 [ERROR] не удалось установить режим файла для файла PDF (не фатальный) (/tmp/michael.cups-pdf/What_does_the_CUPS_PDF_printer_need_to_be_able_to_set_file_mode_.pdf)

Я бы подтвердил, что вы в состоянии это сделать. Возможно, изменения в родительском каталоге /tmp были изменены.

У меня была та же проблема, и я исправил ее, изменив 2 строки в /etc/apparmor.d/usr.sbin.cupsd (вокруг строки 156) в /PDF/ rw и /PDF/* rw , на выходной каталог, который вы хотите, затем перезапуск apparmor & cups.