Ubuntu как подключить сетевую папку windows

В офисной сети вы можете печатать напрямую с Linux устройств на общие сетевые принтеры, подключенные к Windows компьютерами. В этой статье мы покажем, как настроить печать из Linux на сетевой принтер, опубликованный на компьютере с Windows 10/11.

  1. Начнем с настройки Windows компьютера, к которому подключен принтер.Опубликуйте общий сетевой принтер в Windows. Откройте консоль управления принтерами (
    printmanagement.msc
    ), откройте свойства принтера, перейдите на вкладку Sharing, включите опцию Share this printer и задайте сетевое имя принтера (имя не должно содержать пробелы или спец символы);
  2. Создайте отдельного локального пользователя winusr1 с известным паролем. Можно удалить пользователя из локальной группы Users, сделать срок действия пароля не ограниченным и запретить менять пароль.

    Можно с помощью PowerShell создать локального пользователя с указанными настройками:
    $pass = ConvertTo-SecureString "p-0m-2024" -AsPlainText -Force
    New-LocalUser -Name winusr1 -Password $pass -PasswordNeverExpires -UserMayNotChangePassword
    Remove-LocalGroupMember -Group Users -Member winusr1

По умолчанию в Windows сетевые принтеры доступны по протоколу SMB. Чтобы проверить доступ к принтеру из Linux, установите smbclient:

В Ubuntu/Debian выполните команду:

$ sudo apt install smbclient

Чтобы вывести список SMB ресурсов на удаленном компьютере

$ smbclient -L \\192.168.31.94 -U winusr1

Где:

  • 192.168.31.94 – IP адрес или имя компьютера с Windows
  • winusr1 – имя пользователя Windows

Команда выведет список опубликованных сетевых папок (в том числе общих административных папок) и принтеров.

Из консоли вы можете проверить доступность SMB принтера и отправить файл на печать:

$ smbclient -W DOMAIN -U winusr1//192.168.31.94/HPM1530

Распечатать указанный файл:
smb: \> print /home/sysops/test.txt

printing file test.txt as test.txt (196,6 kb/s) (average 196,6 kb/s)

smb: \> quit

Для удобного доступа к сетевым принтерам и их управлением проще всего воспользоваться встроенным сервером печати для Linux – CUPS (Common UNIX Printing System). Для управления CUPS используется веб интерфейс system-config-printer.

В большинстве десктопных дистрибутивов Linux пакет CUPS и system-config-printer установлены по умолчанию. Проверьте это (если нужно, установите):
$ dpkg -l cups
$ dpkg -l system-config-printer
$ systemctl status cups

Теперь можно подключить сетевой принтер в Linux:

  1. Откройте веб-интерфейс CUPS, перейдя в браузере по URL
    localhost:631
    ;
  2. Перейдите в Administration -> Add printer -> Other network printers -> Windows Printer via SAMBA;
  3. Укажите параметры подключения к принтеру в формате
    smb://winusr1:[email protected]/HPM1530
    (строка содержит имя пользователя и пароль, имя/IP удаленного Windows хоста и имя принтера);

    Подключение SMB принтера с Windows компьютера в Linux

  4. Затем задайте имя и описание принтера;
  5. На следующем шаге CUPS предложит выбрать производителя принтера и модель (для установки соответствующего драйвера). Список драйверов может быть довольно большим. Для быстрого поиска названия драйвера по модели принтера воспользуйтесь командой:
    $ lpinfo -m| grep 1536

    lpinfo - список доступных драйверов cups

    Выберите найденный драйвер в CUPS.

  6. Установка принтера завершена.

Где найти драйвера для CUPS под Linux. Например, в случае с принтерами HP, в большинстве десктопных дистрибутивов Linux предустановлен пакет HP Linux Printing and Imaging System (HPLIP). В нем содержится драйвера для подавляющего большинства принтеров.

$ dpkg -l hplip

HP Linux Printing and Imaging System (HPLIP)

Можно установить пакет HPLIP вручную:

$ sudo apt install hplip hplip-gui

Аналогичные пакеты с драйверами выпускают и другие вендоры, либо вы можете самостоятельно найти готовый PPD файл для конкретного принтера. Также вы можете использовать огромную библиотеку PPD драйверов печати foomatic (автоматически устанавливается для ubuntu-desktop):

$ apt install foomatic-db-compressed-ppds

Первая попытка отправить документ из Linux на печать в Windows завершилась с ошибкой. Информация об ошибке печати есть логе /var/log/cups/error_log:

E [22/Jan/2024:11:38:35 +0400] [Job 13] SMB connection failed!
E [22/Jan/2024:11:38:35 +0400] [Job 13] Unable to connect to CIFS host:

CUPS: SMB connection failed

Эта ошибка указывает на то, что CUPS не может подключиться к SMB папке принтера на Linux. Причина в том, что по умолчанию для доступа к сетевой папке smbclient Linux использует протокол SMB 1.0, который по умолчанию отключен в Windows 10 и 11.

Чтобы клиент SMB в Linux использовал более безопасный SMB 2 или 3 для подключения, отредактируйте файл /etc/samba/smb.conf. Добавьте в секцию [global] строки:

client min protocol = SMB2
client max protocol = SMB3

Перезапустите CUPS:

$ sudo systemctl restart cups

Теперь клиент Linux сможет успешно отправить задание на общий принтер в Windows.

Также вы можете добавить принтер Windows из командной строки из командой строки CUPS:

Сначала нужно получить название драйвера для вашей модели принтера:

$ lpinfo --make-and-model '1536' -m

Скопируйте полное название драйвера и можете подключить SMB принтер:

$ sudo lpadmin -p HP1536mfp -v smb://winusr1:[email protected]/HPM1536 -m postscript-hp:0/ppd/hplip/HP/hp-laserjet_m1530_mfp_series-ps.ppd

Включить принтер:

$ cupsenable HP1536mfp

Вывести список принтеров:

$ lpsatat -v
$ lpstat -p

Список подключенных SMB принтеров содержимся в файле /etc/cups/printers.conf. Обратите внимание, что в файле в открытом виде содержатся пароль Windows пользователя, который вы используете для подключения к принтеру (поэтому не нужно назначать никаких прав этому пользователю на Window машине).

/etc/cups/printers.conf

February 27, 2021 | By the+gnu+linux+evangelist.

GNU/Linux Ubuntu 20.10 Sharing Printer with Windows Guide

Hi! This tutorial will guide you step-by-step on How to Share Network CUPS Wifi Printer with Windows XP/7/8/10/11 in Ubuntu 20.10 Groovy GNU/Linux Desktop.

And to Share Wifi Printer with Windows you may first see How to Setup a Network CUPS Printer in Ubuntu 20.10.

Then to achieve the Wireless Printing Share from Ubuntu you basically dispose of 2 ways:

  • The Bonjour IPP Driverless Setup

  • The Samba Network Setup

So now first you should try the Printer sharing with the Apple Bonjour because is the quickest and easiest way to achieve this Setup.

Because the IPP Protocol is supported from most Network Printers and the Zeroconf Bonjour Avahi Linux Service implementation is available on most GNU/Linux Systems.

Else as an alternative solution look to the CUPS Samba Network Printer Sharing Setup Guide.

How to Share Ubuntu 20.10 Printer with Windows Guide

  1. 1. Installing Network Printer

    How to Install Network Printer in GNU/Linux Desktops

    Installing Wi-fi CUPS Printer in Linux

Contents

Главная → Просто о сложном → Для веб-программистов → Расшаривание принтера в Ubuntu для Windows и наоборот

Расшариваем в Убунту для Виндовс СПОСОБ 1

В Ubuntu проделываем следующее: 
Заходим в Система — Администрирование — Печать… 
Затем в Сервер — Параметры 
Отмечаем галочкой «Публиковать общие принтеры, подключенные к этой системе»

В Windows проделываем следующее: 
Заходим в браузер по адресу http://ip-адрес-компьютера-с-принтером:631/printers/ 
Копируем адрес вида http://192.168.1.2:631/printers/hp-LaserJet-1010 
Заходим в раздел «Принтеры и другое оборудование» «Панели управления» 
Выбираем пункт «Установка принтера» 
Ставим галочку на «Сетевой принтер…». Жмем «Далее» 
Ставим галочку на «Подключиться к принтеру в интернете, в домашней сети или в интрасети», вставляем полученный ранее адрес принтера 
Выбираем драйвер и завершаем установку*

Расшариваем в Виндовс для Убунту СПОСОБ 2

Думаю как расшарить принтер в винде объяснять не нужно, главное попробуйте расшарить принтер, чтобы можно было печатать из другого виндового компьютера, убедитесь, что принтер действительно расшарен.

Включаем поддержку самбы в винде (как это сделать чуть позже напишу).

В убунту добавляем сетевой принтер, далее выбираем способ: виндовс принтер через самба,

Далее ищем, если не находит, то добавляем по форме: smb://guest@айпи-компьютера/имя_принтера_в_сети 
Например: smb://guest@192.168.1.127/Canon_MP250_2

Кстати в Лубунту и ЮнибиксЛубунту по умолчанию нет возможности добавить виндовс принтер через самба, но это легко включить, установив три пакета: libsmbclient, smbclient, pyton-smbc

Расшариваем в Убунту для Убунту СПОСОБ 3

Установить и настроить локальный принтер на том компьютере к которому он подключен

ОТкрываем localhost:631 и нажимаем напротив принтера: Разрешить совместный доступ и Разрешить печать из Интернета (если надо)

Узнаем наш айпи командой «ifconfig -a»

Далее идем на второй компьютер с линуксом, пуск-администрирование-епчать-добавить принтер-найти сетевой принтер.

Если нашел — отлично, если нет то вбиваем ручками, например так: ipp://192.168.0.234:631/printers/blackstar

Расшариваем в Виндовс для Виндовс СПОСОБ 4

Это самый простой и детский спобоб, поэтому его распишу как будет время.

Для всех случаев:

должны быть установлены пакеты samba и cups 
cups — интерфес печати для linux 
samba — сервер общих ресурсов для windows 
Команды установки для терминала 
sudo apt-get install cups 
sudo apt-get install samba 
Команда рестарта cups 
sudo /etc/init.d/cups restart 
команда рестарта samba 
sudo service smbd restart

Также есть хорошая инструкция для совсем нестандартных случаев: 
http://forum.ubuntu.ru/index.php?.0

This article explains how to connect and print from a Linux computer to a shared printer connected to a Windows host.

  1. The first step is to share the printer on a Windows computer to which it is connected. Open the printer properties, go to the Sharing tab, enable the Share this printer option, and specify the shared printer name (the name must not contain spaces or special characters);
  2. Create a new local user winusr1. Remove a user from the local Users group, set the password to never expire, and prevent password changes.

    You can use PowerShell to create a local user with the specified settings:
    $pass = ConvertTo-SecureString "pass2024W0rd-" -AsPlainText -Force
    New-LocalUser -Name winusr1 -Password $pass -PasswordNeverExpires -UserMayNotChangePassword
    Remove-LocalGroupMember -Group Users -Member winusr1

By default, the SMB protocol is used to connect shared Windows printers. Install the smbclient to check if the  shared printer on the Windows host can be remotely accessed from Linux:

On Ubuntu/Debian run the command:

$ sudo apt install smbclient

List SMB shares on a remote Windows machine

$ smbclient -L \\192.168.31.94 -U winusr1

  • 192.168.31.94 – IP address or hostname of the Windows computer
  • winusr1 – local Windows username

This command lists shared network folders (including administrative shares) and printers.

From the console, you can check the availability of an SMB printer and send a file to print:

$ smbclient -W DOMAIN -U winusr1//192.168.31.94/HPM1530
Print the specified file:
smb: \> print /home/sysops/test.txt
printing file test.txt as test.txt (856,2 kb/s)
smb: \> quit

The easiest way to access and manage network printers under Linux is to use the built-in Common UNIX Printing System (CUPS). The system-config-printer web interface is used to manage CUPS.

CUPS and system-config-printer are installed by default on most Linux desktop distros. Check and install if necessary:

$ dpkg -l cups
$ dpkg -l system-config-printer
$ systemctl status cups

Now connect a shared network printer from Linux:

  1. Navigate to the following URL in your browser to open the CUPS web interface localhost:631 ;
  2. Go to Administration -> Add printer -> Other network printers -> Windows Printer via SAMBA;
  3. Use the following format to specify the shared printer connection settings smb://winusr1:[email protected]/HPM1530 (This string includes the user name and password, the remote Windows hostname/IP and the shared printer name);
  4. Then set the printer name and description;
  5. Next, CUPS will ask you to select the printer manufacturer and model. The list of drivers can be quite long. Use the following command to find the driver name by printer model quickly: $ lpinfo -m| grep 1536
    lpinfo list available printer drivers on Linux

    Select the driver you found in CUPS.

  6. The shared printer installation is complete.

Where can you find CUPS print drivers for Linux? In the case of HP printers, for example, most Linux distributions come with the HP Linux Printing and Imaging System (HPLIP) package pre-installed. It includes drivers for most HP printers.

$ dpkg -l hplip

HP Linux Printing and Imaging System (HPLIP) package

You can install the HPLIP package manually:

$ sudo apt install hplip hplip-gui

Other vendors may also release similar driver packages, or you may be able to find a pre-built PPD file for a specific printer. It is also possible to use the foomatic PPD printer driver library (automatically installed on ubuntu-desktop):

$ apt install foomatic-db-compressed-ppds

The first attempt to print a document from Linux to a shared Windows printer failed in my case with an error. Check /var/log/cups/error_log for errors:

E [Job 13] SMB connection failed!
E [Job 13] Unable to connect to CIFS host: NT_STATUS_IO_TIMEOUT

SMB/CIFS printer connection failed: SMB1 protocol

This indicates that CUPS cannot connect to the printer’s SMB folder on the Windows machine. In this case, the problem is that Linux smbclient tries to use SMB 1.0 protocol to access shared printers. The SMB 1.0 version is disabled on Windows 10 and 11, and such a connection will be rejected.

Edit the file /etc/samba/smb.conf to make the Linux SMB client use a more secure SMB 2 or 3 version for connections. In the [global] section, add the following lines:

client min protocol = SMB2
client max protocol = SMB3

Restart CUPS:

$ sudo systemctl restart cups

The Linux client can now successfully print to a shared printer on the Windows computer.

You can also connect to a shared Windows printer from the command line. The first step is to find the name of the driver for your printer model:

$ lpinfo --make-and-model '1536' -m

Copy the full name of the driver and connect the SMB printer:

$ sudo lpadmin -p HP1536mfp -v smb://winusr1:[email protected]/HPM1536 -m postscript-hp:0/ppd/hplip/HP/hp-laserjet_m1530_mfp_series-ps.ppd

Enable the CUPS printer on Linux:

$ cupsenable HP1536mfp

List printers:

$ lpsatat -v
$ lpstat -p

The list of connected SMB printers is stored in the /etc/cups/printers.conf file. Note that the Windows username and password you use to connect to the printer are stored here in plain text (so this user must have minimal permissions on the Windows machine).

Наш канал в Telegram

Одной из трудностей перехода на Linux является сложность работы компьютера, работающего под управлением свободного ПО в смешанной сети. Если в работе локальной сети используется технология «Интранет», то организовать отправку и получение информации менее проблематично. Однако одна из проблем — это отправка документов на печать. Проблема имеет решение, если принтер подключен непосредственно к Linux станции и настроен на работу под управлением данной системы. Однако как быть в том случае, если принтер подключен к рабочей станции, работающей под управлением ОС Windows?

Немного «погуглив» я нашел для себя следующее решение:

в командной строке вводим команду для просмотра открытых для доступа сетевых ресурсов на станциях, работающих под управлением ОС Windows — smbtree. Введем пароль который может служить для доступа к ресурсам (если используется анонимный доступ, то пароль можно не вводить).

У меня это выглядело, примерно, так:

$ smbtree
Password:
ADMINISTRATION
\\UVR
\\UVR\Xerox Phaser 3120 Xerox Phaser 3120
\\UVR\Epson Stylus C43 Series (M) Epson Stylus C43 Series (M)

Запускаем в браузере систему настройки печати (http://localhost:631/) и производим стандартную процедуру настройки принтера с небольшими изменениями.

Дойдя до раздела Device for [настраиваемый принтер] выбираем Windows Printer via Samba

В разделе Device URI for [настраиваемый принтер] вводим следующее: smb://[полный адрес принтера]. У меня это выглядело примерно так smb://UVR/Epson Stylus C43 Series (M).

Далее процедура настройки ничем не отличается от стандартной. Приятной работы. 

Интересная статья? Поделитесь ей с друзьями!

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Epson stylus c40ux драйвер windows 10
  • Как сделать плавный скролл в windows 10
  • Как включить службу печати принтера windows 10
  • Как повернуть нижнюю панель на рабочем столе windows 10
  • Как снять задачу antimalware service executable windows 10