Печать без буферизации в Linux

Остерегайтесь проблемы XY .

Вы хотите удалить пакеты, которые были установлены только как зависимости, что yumможет сделать. Что, если eclipse установил другие пакеты в качестве зависимостей, но в названии этих пакетов не было слова «eclipse»? Сопоставление строки -здесь не поможет.

Из man yum, yum autoremoveудалит все пакеты, которые не были установлены пользователем вручную и больше ничем не требуются. yum autoremove mypackageудалит только данный пакет и не будет -больше -необходимых зависимостей.

Для автоматического удаления каждый раз, когда вы используете yum remove, добавьте "clean_requirements_on_remove=1"к своему /etc/yum.conf.

1
18.09.2019, 11:40
2 ответа
  1. apt-get install a2ps

На этом шаге устанавливается GNU Anything -в -преобразователь PostScript . 1 Упомянутая вами команда установит его обычным способом, то есть загрузив бинарный пакет из репозитория Debian APT и распаковав его на вашем компьютере.

Итак, если эта команда установки не удалась или зависла 3 , вы можете безопасно прервать ее(нажать Ctrl+C)и повторить этот шаг пока не получится.

Тем не менее, дважды -проверьте доступ к Интернету перед тем, как повторять это. 2 Или, если вы выполняете установку с автономного носителя, убедитесь, что правильный установочный диск вставлен, читаем и установлен в правильном месте.

П.С. Кроме того, в качестве основной гарантии, если команда установки завершилась без каких-либо сообщений 3 , запустите ее сразу после завершения команды:4

echo $?

Если отображается 0, будьте уверены, что установка GNU Anything с -по -PostScript действительно выполнена успешно; и вы можете перейти к шагу 8.


Сноски

  • 1 Используется foomatic-ripдля преобразования простого текстового файла в PostScript, необходимого на шаге 8, поскольку вы собираетесь печатать обычный -текстовый /proc/cpuinfoфайл.
  • 2 Медленное/прерывистое подключение к Интернету — очень распространенная причина, по которой apt-get installне работает; но вы должны, по крайней мере, увидеть какое-то сообщение о статусе, пока он пытался — см. следующий пункт.
  • 3apt-get installкоманда будет нормально печатать по крайней мере что-то , даже если это сбивало с толку при полностью поврежденной системе или неработающей -сети. Но в необычном случае, когда ваша система явно настроила его на закрытие, используйте параметр -q0, чтобы переопределить директиву конфигурации заглушения...

    apt-get install -q0 a2ps
    
  • 4 Отображает код выхода предыдущей команды. В любой Unix -подобной системе значение 0означает успех,и другие значения означают, что что-то пошло не так.

1
27.01.2020, 23:40

Я просмотрел локальную страницу руководства foomatic-ripи обнаружил, что часть >создана намеренно из-за ограничений формата дескриптора PPD — они обрабатываются внутри самого foomatic-rip; так что исходная статья OpenPrinting была на самом деле правильной. Тем не менее, я все еще подчеркиваю, что вопрос в его первоначальной форме без кавычек вводил в заблуждение (, поскольку он неправильно переводил правильный >в неправильный>).

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

  1. Удалить файл /etc/foomatic/direct/Canon_MG3600_series.ppd.
  2. Запустите ls -lF /dev/usb/lp0, чтобы убедиться, что подключение к принтеру существует и что у вас есть необходимые права на запись в него.
  3. Выполнитьecho 'Hello Printer?' | foomatic-rip -P Canon_MG3600_series > /dev/usb/lp0

Если ваш принтер распечатал текст Hello Printer?, поздравляем! Затем вы можете выполнить следующие шаги:

  1. Повторите шаги 3 и 4 из вашего вопроса.
  2. Откройте /etc/foomatic/direct/Canon_MG3600_series.ppdв текстовом редакторе от имени пользователя root.
  3. Повторите шаг 5 из вашего вопроса (, поскольку он в настоящее время читается как ), но убедитесь, что вы вставили эту строку сразу после строки *PPD-Adobe: "4.3".
  4. Выполнитьfoomatic-rip -P Canon_MG3600_series /proc/cpuinfo

    • Обратите внимание, что -o docsбыл опущен, см. Объяснение ниже по какой-то причине.

Примечание:На всякий случай, что вещь все-таки застыла; нажмите Ctrl+Z, выполните ps fT, выполните kill -9 %1; затем добавьте вывод ps fTвместе с первыми 10 строками /etc/foomatic/direct/Canon_MG3600_series.ppdв конец вашего вопроса. (Не забудьте поставить табуляцию -с отступом перед добавлением)

Пояснение

У меня также возникли проблемы с моей собственной установкойfoomatic-rip(4.0.17.256 ), когда также было указано -o docs. По необъяснимой причине (, т.е. ошибка ), указание этой опции приводило к зависанию растрового процессора на шаге, где он пытался вызвать a2ps— он неправильно цитировал командную строку вызова...

При запуске с -o docsон пытался запустить что-то подобное в оболочке:

a2ps -1 --medium=A4dj --center-title=Documentation for the PRINTER/ENGINE (recommended) -o -
  • Вы могли заметить отсутствие кавычек вокруг параметра --center-title, открывающего оболочке круглые скобки, что приводит к синтаксической ошибке.

Когда оболочка отказалась работать a2ps;foomatic-ripзависнет надолго ; наверное ждет результата, который так и не наступит. Дайте ему минуту, и он в конечном итоге завершится с кодом выхода 9, не завершив задание на печать.

Если это окажется правильным, мне, возможно, придется проверить последнюю цепочку инструментов Foomatic; и сообщите об этой ошибке разработчику, если проблема не устранена.

П.С. Если эта оскорбительная опция -o docsбыла опущена,foomatic-ripпопросит оболочку запустить что-то подобное вместо этого:

a2ps -1 --medium=A4dj --center-title=USERNAME@HOSTNAME -o -
  • В этой командной строке нет проблем с кавычками, поэтому преобразование, растеризация и печать будут выполняться нормально.
0
27.01.2020, 23:40

Теги

Похожие вопросы