Печать из Windows 10/11 на принтере HP LaserJet 1100 возможна и в 2025 году. Для этого достаточно иметь компьютер с LPT-портом. Это может быть PCI-плата с LPT, как у меня, или Ubuntu из коробки, которая не требует дополнительных настроек. После установки можно сразу приступать к печати, следуя описанным ниже шагам.
Это руководство описывает процесс установки и настройки принтера HP LaserJet 1100 на сервере Ubuntu 24.04, подключенного через LPT-порт, и превращения сервера в принт-сервер для сетевого доступа, включая печать с Windows 10. Используется драйвер Gutenprint для локальной печати и CUPS для сетевого доступа.
Предварительные требования
- Сервер Ubuntu 24.04 с root-доступом.
- Принтер HP LaserJet 1100, подключенный через LPT-порт (/dev/lp0).
- Сеть со статическим IP (например, 192.168.0.200).
- Клиент Windows 10 для сетевой печати.
Пошаговая инструкция
Шаг 1: Установка необходимых пакетов
Установите CUPS и драйверы принтера:
sudo apt update
sudo apt install cups cups-bsd printer-driver-hpijs printer-driver-gutenprint
Устанавливаются:
cups
: Система печати.cups-bsd
: Утилиты, такие какlpr
.printer-driver-hpijs
: Драйверы HP.printer-driver-gutenprint
: Драйверы Gutenprint для старых принтеров.
Шаг 2: Настройка LPT-порта
Проверьте доступность порта /dev/lp0:
ls -l /dev/lp*
Ожидаемый вывод:
crw-rw---- 1 root lp 6, 0 <дата> /dev/lp0
Если порт отсутствует, загрузите модули ядра:
sudo modprobe lp
sudo modprobe ppdev
Настройте права:
sudo chmod 660 /dev/lp0
sudo chown root:lp /dev/lp0
Добавьте модули для автозагрузки:
echo "lp" | sudo tee -a /etc/modules
echo "ppdev" | sudo tee -a /etc/modules
Шаг 3: Добавление принтера с драйвером Gutenprint
Добавьте принтер, используя драйвер Gutenprint:
sudo lpadmin -p HPLaserJet1100 -E -v parallel:/dev/lp0 -m gutenprint.5.3://hp-lj_1100/expert
Примечание: Может появиться предупреждение: "Printer drivers are deprecated...". Это нормально для CUPS 2.4.7 и не влияет на работу.
Установите принтер по умолчанию:
sudo lpoptions -d HPLaserJet1100
Шаг 4: Тест локальной печати
Проверьте печать:
echo "Тестовая страница" > test.txt
lp -d HPLaserJet1100 test.txt
lpq -P HPLaserJet1100
Если страница напечаталась, локальная настройка завершена. Проверьте статус принтера:
lpstat -p -d
Ожидаемый вывод:
принтер HPLaserJet1100 свободен. Включен с момента <дата>
назначение системы по умолчанию: HPLaserJet1100
Шаг 5: Включение автозапуска CUPS
Убедитесь, что CUPS запускается при загрузке:
sudo systemctl enable cups
Проверьте:
systemctl is-enabled cups
Ожидаемый вывод: enabled
.
Шаг 6: Настройка CUPS для сетевого доступа
Обновите конфигурацию CUPS для совместного доступа:
sudo cp /etc/cups/cupsd.conf /etc/cups/cupsd.conf.bak
echo -e "#\n# Configuration file for the CUPS scheduler\n#\n\nLogLevel debug\nPageLogFormat\nMaxLogSize 0\nErrorPolicy retry-job\n\nListen *:631\nListen /run/cups/cups.sock\n\nBrowsing Yes\nBrowseLocalProtocols dnssd\nBrowseAllow all\n\nDefaultAuthType Basic\nWebInterface Yes\nIdleExitTimeout 60\n\n\n Order allow,deny\n Allow all\n\n\n\n Order allow,deny\n Allow all\n\n\n\n AuthType Default\n Require user @SYSTEM\n Order allow,deny\n\n\n\n AuthType Default\n Require user @SYSTEM\n Order allow,deny\n\n\n\n AuthType Default\n Require user @SYSTEM\n Order allow,deny\n\n\n\n JobPrivateAccess default\n JobPrivateValues default\n SubscriptionPrivateAccess default\n SubscriptionPrivateValues default\n \n Order deny,allow\n \n \n Require user @OWNER @SYSTEM\n Order deny,allow\n \n \n AuthType Default\n Require user @OWNER @SYSTEM\n Order deny,allow\n \n \n AuthType Default\n Require user @SYSTEM\n Order deny,allow\n \n \n AuthType Default\n Require user @SYSTEM\n Order deny,allow\n \n \n Require user @OWNER @SYSTEM\n Order deny,allow\n \n \n AuthType Default\n Require user @OWNER @SYSTEM\n Order deny,allow\n \n \n Order deny,allow\n \n\n\n\n JobPrivateAccess default\n JobPrivateValues default\n SubscriptionPrivateAccess default\n SubscriptionPrivateValues default\n \n AuthType Default\n Order deny,allow\n \n \n AuthType Default\n Require user @OWNER @SYSTEM\n Order deny,allow\n \n \n AuthType Default\n Require user @SYSTEM\n Order deny,allow\n \n \n AuthType Default\n Require user @SYSTEM\n Order deny,allow\n \n \n AuthType Default\n Require user @OWNER @SYSTEM\n Order deny,allow\n \n \n Order deny,allow\n \n" | sudo tee /etc/cups/cupsd.conf
sudo systemctl restart cups
Включите совместный доступ для принтера:
sudo lpadmin -p HPLaserJet1100 -o printer-is-shared=true
sudo cupsctl --share-printers
Проверьте:
lpstat -a
Ожидаемый вывод:
HPLaserJet1100 принимает запросы с момента <дата>
Шаг 7: Разрешение сетевого доступа
Откройте порт 631 для CUPS:
sudo ufw allow 631
sudo ufw status
С компьютера Windows 10 проверьте доступность CUPS:
http://192.168.0.200:631
Если веб-интерфейс CUPS открывается, сетевая настройка верна.
Шаг 8: Настройка статического IP
Убедитесь, что IP сервера не меняется:
sudo nano /etc/netplan/01-netcfg.yaml
Добавьте:
network:
version: 2
ethernets:
enp3s0:
addresses:
- 192.168.0.200/24
gateway4: 192.168.0.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
Примените изменения:
sudo netplan apply
Шаг 9: Подключение принтера с Windows 10
Убедитесь, что сеть Windows 10 настроена как Частная:
- Перейдите в Настройки > Сеть и Интернет > Состояние > Свойства сети.
- Выберите Частная.
Добавьте принтер:
- Перейдите в Настройки > Устройства > Принтеры и сканеры > Добавить принтер или сканер.
- Нажмите Необходимый принтер отсутствует в списке.
- Выберите Выбрать общий принтер по имени и введите:
http://192.168.0.200:631/printers/HPLaserJet1100
- Выберите драйвер: HP > HP LaserJet 1100 (PCL5e) или HP LaserJet Series PCL 5. Если драйвер отсутствует, скачайте с сайта HP.
- Завершите настройку и напечатайте тестовую страницу (Управление > Напечатать тестовую страницу).
Шаг 10: Устранение неполадок
Если печать не работает:
- Проверьте статус CUPS:
systemctl status cups
- Проверьте логи CUPS:
cat /var/log/cups/error_log
- Проверьте порт LPT:
ls -l /dev/lp*
- Проверьте очередь печати:
lpq -P HPLaserJet1100
Если клиент Windows 10 не подключается:
- Убедитесь, что веб-интерфейс CUPS доступен (
http://192.168.0.200:631
). - Проверьте, открыт ли порт 631:
sudo ss -tuln | grep 631
Примечание по безопасности: Настройка Allow all
в cupsd.conf
подходит для доверенных сетей. Для публичных сетей ограничьте доступ:
<Location />
Order allow,deny
Allow 192.168.0.0/24
</Location>
<Location /printers>
Order allow,deny
Allow 192.168.0.0/24
</Location>
Перезапустите CUPS после изменений:
sudo systemctl restart cups
Заключение
Следуя этим шагам, вы успешно настроили принтер HP LaserJet 1100 на сервере Ubuntu 24.04 как принт-сервер. Принтер доступен локально через LPT-порт и в сети для клиентов Windows 10. Регулярное обслуживание включает проверку логов CUPS и стабильности IP-адреса сервера.