Questo articolo spiega come connettersi e stampare da un computer Linux a una stampante condivisa connessa a un host Windows.
- Il primo passo è condividere la stampante su un computer Windows a cui è connessa. Apri le proprietà della stampante, vai al fileCondivisionescheda, abilitare ilCondividi questa stampanteopzione e specificare il nome della stampante condivisa (il nome non deve contenere spazi o caratteri speciali);


- Crea un nuovo utente localewinusr1. Rimuovere un utente dal gruppo Utenti locale, impostare la password in modo che non scada mai e impedire la modifica della password.


È possibile utilizzare PowerShell per creare un utente locale con le impostazioni specificate:$pass = ConvertTo-SecureString "pass2024W0rd-" -AsPlainText -Force
New-LocalUser -Name winusr1 -Password $pass -PasswordNeverExpires -UserMayNotChangePassword
Remove-LocalGroupMember -Group Users -Member winusr1
Per impostazione predefinita, per connettere le stampanti Windows condivise viene utilizzato il protocollo SMB. Installa ilsmbclientper verificare se è possibile accedere in remoto alla stampante condivisa sull'host Windows da Linux:
Su Ubuntu/Debian esegui il comando:
$ sudo apt install smbclient
Elenca le condivisioni SMB su un computer Windows remoto
$ smbclient -L \\192.168.31.94 -U winusr1
- 192.168.31.94 – Indirizzo IP o nome host del computer Windows
- winusr1: nome utente Windows locale


Questo comando elenca le cartelle di rete condivise (incluse le condivisioni amministrative) e le stampanti.
Dalla console è possibile verificare la disponibilità di una stampante SMB e inviare un file da stampare:
$ smbclient -W DOMAIN -U winusr1//192.168.31.94/HPM1530
Stampa il file specificato:smb: \> print /home/sysops/test.txt
printing file test.txt as test.txt (856,2 kb/s)
smb: \> quit
Il modo più semplice per accedere e gestire le stampanti di rete in Linux è utilizzare il sistema di stampa Common UNIX integrato (TAZZE). L'interfaccia web system-config-printer viene utilizzata per gestire CUPS.
CUPS e system-config-printer sono installati per impostazione predefinita sulla maggior parte delle distribuzioni desktop Linux. Controllare e installare se necessario:
$ dpkg -l cups
$ dpkg -l system-config-printer
$ systemctl status cups
Lettura consigliata:Come modificare la porta della stampante per risolvere i problemi di stampa in Windows 11
Ora collega una stampante di rete condivisa da Linux:
- Passare al seguente URL nel browser per aprire l'interfaccia web di CUPS
localhost:631; - Vai aAmministrazione->Aggiungi stampante->Altre stampanti di rete->Windows Printer via SAMBA;


- Utilizzare il seguente formato per specificare le impostazioni di connessione della stampante condivisa
smb://winusr1:[email protected]/HPM1530(Questa stringa include il nome utente e la password, il nome host/IP remoto di Windows e il nome della stampante condivisa);

- Quindi impostare il nome e la descrizione della stampante;


- Successivamente, CUPS ti chiederà di selezionare il produttore e il modello della stampante. L'elenco dei driver può essere piuttosto lungo. Utilizzare il comando seguente per trovare rapidamente il nome del driver in base al modello di stampante:
$ lpinfo -m| grep 1536

Seleziona il driver che hai trovato in CUPS.

- L'installazione della stampante condivisa è completata.
Dove puoi trovare i driver di stampa CUPS per Linux? Nel caso delle stampanti HP, ad esempio, la maggior parte delle distribuzioni Linux sono dotate del sistema di stampa e imaging HP Linux (HPLIP) pacchetto preinstallato. Include i driver per la maggior parte delle stampanti HP.
$ dpkg -l hplip


È possibile installare manualmente il pacchetto HPLIP:
$ sudo apt install hplip hplip-gui
Anche altri fornitori potrebbero rilasciare pacchetti driver simili oppure potresti riuscire a trovare un file PPD predefinito per una stampante specifica. È anche possibile utilizzare ilfoomaticLibreria dei driver della stampante PPD (installata automaticamente sul desktop Ubuntu):
$ apt install foomatic-db-compressed-ppds
Il primo tentativo di stampare un documento da Linux su una stampante Windows condivisa è fallito nel mio caso con un errore. Controlla la presenza di errori in /var/log/cups/error_log:
E [Job 13] SMB connection failed! E [Job 13] Unable to connect to CIFS host: NT_STATUS_IO_TIMEOUT


Ciò indica che CUPS non può connettersi alla cartella SMB della stampante sul computer Windows. In questo caso, il problema è che Linux smbclient tenta di utilizzare il protocollo SMB 1.0 per accedere alle stampanti condivise. La versione SMB 1.0 è disabilitata su Windows 10 e 11 e tale connessione verrà rifiutata.
Modifica il file/etc/samba/smb.confper fare in modo che il client SMB Linux utilizzi una versione SMB 2 o 3 più sicura per le connessioni. Nel[globale]sezione, aggiungere le seguenti righe:
client min protocol = SMB2 client max protocol = SMB3


Riavvia CUPS:
$ sudo systemctl restart cups
Il client Linux ora può stampare correttamente su una stampante condivisa sul computer Windows.
Puoi anche connetterti a una stampante Windows condivisa dalla riga di comando. Il primo passo è trovare il nome del driver per il modello della tua stampante:
$ lpinfo --make-and-model '1536' -m
Copia il nome completo del driver e collega la stampante 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
Abilita la stampante CUPS su Linux:
$ cupsenable HP1536mfp
Elenco stampanti:
$ lpsatat -v
$ lpstat -p


L'elenco delle stampanti SMB collegate è archiviato nel file/etc/cups/printers.conffile. Tieni presente che il nome utente e la password di Windows che utilizzi per connetterti alla stampante sono archiviati qui in formato testo normale (quindi questo utente deve disporre di autorizzazioni minime sul computer Windows).







![Trova Excel non funziona [fissare]](https://elsefix.com/tech/tejana/wp-content/uploads/2024/12/Excel-Find-is-not-working.jpg)







