Su Ubuntu può capitare che l’app desktop di Microsoft Teams non permetta la condivisione dello schermo e mostri l’errore “couldn’t connect to camera”. Il messaggio è fuorviante: di solito il problema è la cattura dello schermo su Wayland. Qui trovi cause, diagnosi e soluzioni operative, rapide e definitive.
Sintesi del problema su Ubuntu
Quando avvii una riunione in Microsoft Teams su Ubuntu e provi a condividere lo schermo o una finestra, può apparire l’alert “couldn’t connect to camera”. Non è un guasto della webcam: quel messaggio in molti casi è un placeholder mostrato dall’app quando fallisce la cattura del display. La causa più frequente è l’esecuzione della sessione grafica su Wayland, il server grafico predefinito da Ubuntu dalla versione 21.04 in poi. Le build desktop tradizionali di Teams per Linux (pacchetto .deb e varianti in sandbox) supportano Wayland in modo parziale o soggetto a limitazioni, soprattutto nella funzione di cattura schermo tramite i portali desktop. Il risultato è l’impossibilità di presentare lo schermo o singole finestre.
Altri fattori che spesso concorrono al problema sono i permessi mancanti nelle sandbox (snap o Flatpak), componenti di sistema non attivi come i portali xdg-desktop-portal
e PipeWire, o un client Teams obsoleto con bug noti nella condivisione.
Perché accade su Wayland
Wayland porta un modello di sicurezza diverso: le applicazioni non possono leggere liberamente lo schermo. Per condividere serve passare da un “portale” di sistema (componenti xdg-desktop-portal
e backend del desktop) che media la richiesta e mostra all’utente un selettore. Se il client non parla correttamente con il portale o se la sandbox blocca i canali necessari, la condivisione fallisce. Le app basate su Electron, come Teams nelle sue varianti classiche, possono incontrare incompatibilità nei percorsi Wayland, soprattutto se le dipendenze sono datate o se l’ambiente non ha i servizi attesi.
Con Xorg il flusso è diverso: la cattura è più permissiva e consolidata. Ecco perché passare temporaneamente a una sessione Xorg risolve quasi sempre senza toccare altro.
Schema delle cause principali
- Wayland attivo: Ubuntu usa Wayland per impostazione predefinita; il client desktop di Teams può non catturare correttamente.
- Permessi e sandbox: pacchetti snap o Flatpak potrebbero non avere i permessi necessari o non dialogare con i portali.
- Client obsoleto: build meno recenti hanno bug sulla condivisione.
- Servizi di sistema non funzionanti: PipeWire o i portali
xdg-desktop-portal
non avviati o in errore. - Fattori grafici: accelerazione hardware, scaling frazionario o configurazioni multi monitor innescano glitch.
Soluzioni rapide e prioritarie
Applica gli step nell’ordine indicato. Spesso bastano i primi due per sbloccare definitivamente.
Priorità | Azione | Comandi e passaggi |
---|---|---|
Alta | Forzare una sessione Xorg | Esci dalla sessione utente. Nella schermata di accesso clicca sull’icona Ingranaggio. Seleziona Ubuntu on Xorg e accedi. |
Alta | Disattivare Wayland via GDM | sudoedit /etc/gdm3/custom.conf rimuovi il cancelletto e assicurati che sia: WaylandEnable=false salva e poi: sudo systemctl restart gdm3 in alternativa riavvia completamente la macchina |
Media | Aggiornare il client Teams | Scarica l’ultima build oppure aggiorna dai repo: sudo apt update sudo apt install --only-upgrade teams |
Media | Verificare i permessi della sandbox | Per pacchetto snap: snap connections teams collega eventuali interfacce mancanti se richiesto Per Flatpak: flatpak permission-show --app com.microsoft.Teams verifica che siano presenti le voci relative a screen-share e ipc |
Immediata | Usare la PWA di Teams nel browser | Apri Teams nel browser Chromium o Edge, effettua l’accesso, installa l’app web dal menu del browser e usa la condivisione direttamente da lì. |
Diagnostica essenziale
Verificare il tipo di sessione
Controlla se stai usando Wayland o Xorg:
echo $XDGSESSIONTYPE
output atteso: wayland oppure x11
Se vedi wayland
, confermi la condizione che può bloccare la cattura.
Controllare i portali desktop e PipeWire
Wayland richiede i portali e il servizio PipeWire per la cattura. Verifica che siano attivi:
systemctl --user status xdg-desktop-portal.service
systemctl --user status xdg-desktop-portal-gnome.service
systemctl --user status pipewire.service
Se uno dei servizi è inattivo o in errore, prova a riavviarli:
systemctl --user restart xdg-desktop-portal xdg-desktop-portal-gnome pipewire
E ispeziona rapidamente i log recenti:
journalctl --user -u xdg-desktop-portal -u xdg-desktop-portal-gnome -u pipewire --since "-30min" --no-pager
Verificare la versione del client
dpkg -l | grep -i teams
Se la build è datata, aggiorna come indicato sopra.
Guida passo per passo
Passare a Xorg dalla schermata di accesso
Uscendo dalla sessione e scegliendo l’opzione Ubuntu on Xorg, avvii l’ambiente Xorg senza modificare file di sistema. È la soluzione consigliata per chi non vuole cambiare configurazioni in modo permanente. Dopo l’accesso, riapri Teams e riprova a condividere lo schermo: nella grande maggioranza dei casi la condivisione torna subito operativa.
Disabilitare Wayland in modo permanente
Se preferisci una soluzione strutturale, modifica la configurazione di GDM come segue:
sudoedit /etc/gdm3/custom.conf
riga da attivare
WaylandEnable=false
Salva e riavvia il servizio GDM o la macchina. Alla successiva schermata di login verrà usato Xorg per impostazione predefinita. Questo approccio mantiene stabile la compatibilità con applicazioni che necessitano la cattura tradizionale del display.
Controllare permessi Snap e Flatpak
Snap. Elenca le interfacce collegate:
snap connections teams
Ingresso tipico: permessi desktop, wayland o x11, audio, camera. Se alcune interfacce richieste dalla tua build non sono connesse, verrà indicato. Collega manualmente se applicabile, poi riavvia Teams.
Flatpak. Visualizza le autorizzazioni dell’app:
flatpak permission-show --app com.microsoft.Teams
Nel caso servisse, puoi forzare alcune autorizzazioni a livello utente:
flatpak override --user --socket=wayland --socket=fallback-x11 com.microsoft.Teams
flatpak override --user --talk-name=org.freedesktop.portal.Desktop com.microsoft.Teams
Chiudi completamente l’app e riaprila dopo ogni modifica.
Aggiornare o reinstallare il client desktop
Mantieni il client aggiornato per beneficiare di fix alla condivisione:
sudo apt update
sudo apt install --only-upgrade teams
Se necessario, disinstalla e reinstalla il pacchetto .deb. Ricorda che in ambienti con policy aziendali l’aggiornamento potrebbe essere gestito centralmente.
Usare la PWA nel browser
La via più veloce se non vuoi toccare l’ambiente grafico: apri Teams nel browser basato su Chromium o Edge, accedi, e quando il browser propone l’installazione come app web, conferma. La condivisione dello schermo in PWA su Wayland è gestita nativamente dal browser e dai portali di sistema. Durante la prima presentazione, il selettore del portale chiederà quale schermo o finestra mostrare.
Ottimizzazioni e accorgimenti
Disattivare l’accelerazione hardware
Su alcune GPU o con driver specifici, l’accelerazione può interferire con la cattura. Dal menu impostazioni dell’app desktop disattiva l’opzione di accelerazione hardware e riavvia l’app. In alternativa, avvia una volta l’app con il flag che disabilita l’accelerazione:
teams --disable-gpu
Gestire scaling e monitor multipli
Scaling frazionario e configurazioni multi monitor possono causare finestre nere o cursori desincronizzati durante la condivisione. Per il test, imposta temporaneamente una scala a uno e riavvia la sessione. Se il problema scompare, reintroduci lo scaling in modo graduale.
Verificare conflitti con tool di sicurezza
AppArmor o altre policy possono limitare l’accesso ai socket dei portali o a PipeWire. Se stai in un ambiente aziendale, consulta il team di sicurezza per un profilo dedicato o per escludere l’app dai blocchi che impediscono lo screen capture.
Ambienti e casi speciali
Altri display manager
Se usi un display manager diverso da GDM (per esempio LightDM o SDDM), la chiave equivalente è riportata nei rispettivi file di configurazione. L’impostazione da cercare rimane quella che forza l’uso del server Xorg disabilitando Wayland.
Distribuzioni derivate
Su Pop!_OS, Linux Mint e molte altre derivate l’opzione per entrare in modalità Xorg può trovarsi con un nome diverso nel menu dell’ingranaggio della schermata di login. In generale, cerca la voce che richiama “Xorg” o “sessione classica”.
Macchine virtuali e accesso remoto
In ambienti virtualizzati o sessioni remote alcune piattaforme limitano per sicurezza la cattura del desktop. Se la condivisione fallisce solo da remoto, prova in locale o passa alla soluzione browser.
Politiche tenant e limiti organizzativi
Raramente, la condivisione può essere disattivata dall’amministratore di Teams a livello di criteri. In quel caso non vedrai proprio i pulsanti di presentazione o riceverai messaggi che citano restrizioni organizzative. Se il tuo caso è diverso e il messaggio è quello indicato qui, è verosimile che la causa sia locale.
Checklist rapida prima e dopo l’intervento
- Controlla il tipo di sessione con
echo $XDGSESSIONTYPE
. - Se sei su Wayland, prova subito la sessione Xorg dalla schermata di login.
- In alternativa, disabilita Wayland nel file di GDM per una soluzione permanente.
- Aggiorna il client desktop e riavvia l’app dopo ogni modifica.
- Verifica che i servizi
xdg-desktop-portal
epipewire
siano attivi. - Controlla i permessi di snap o Flatpak se usi una versione in sandbox.
- Se non vuoi toccare il sistema, passa alla PWA nel browser.
Tabella di confronto delle vie di uscita
Soluzione | Vantaggi | Svantaggi | Quando usarla |
---|---|---|---|
Sessione Xorg temporanea | Rapida, non modifica file di sistema | Richiede selezione manuale a ogni accesso | Per prove veloci o su PC condivisi |
Disabilitare Wayland via GDM | Stabile e definitiva | Cambio permanente di tecnologia grafica | Su postazioni di lavoro fisse |
Aggiornare Teams | Risoluzione pulita se il bug è noto | Dipende dalla disponibilità di una build corretta | Quando l’IT consente aggiornamenti |
Regolare sandbox | Nessun cambio di sessione | Richiede attenzione ai permessi | Se usi snap o Flatpak |
Usare la PWA nel browser | Compatibile con Wayland, zero installazioni | Funzioni offline limitate, dipende dal browser | Soluzione immediata e portabile |
Appendice di comandi utili
# verificare il tipo di sessione
echo $XDGSESSIONTYPE
mostrare info sulla sessione corrente
loginctl show-session $XDGSESSIONID -p Type -p Name -p Remote
stato dei servizi portale e pipewire
systemctl --user status xdg-desktop-portal xdg-desktop-portal-gnome pipewire
riavviare i servizi portale e pipewire
systemctl --user restart xdg-desktop-portal xdg-desktop-portal-gnome pipewire
log dei portali e pipewire nell’ultima ora
journalctl --user -u xdg-desktop-portal -u xdg-desktop-portal-gnome -u pipewire --since "-60min" --no-pager
verificare la versione di teams
dpkg -l | grep -i teams
aggiornare il client .deb
sudo apt update
sudo apt install --only-upgrade teams
permessi snap
snap connections teams
permessi flatpak
flatpak permission-show --app com.microsoft.Teams
Consigli per ambienti aziendali
- Documenta la modifica al display manager se decidi di forzare Xorg, così da mantenerla nel ciclo di hardening.
- Prepara un profilo desktop alternativo basato su PWA per gli utenti che devono restare su Wayland.
- Verifica policy e criteri di condivisione del tenant prima di aprire ticket di supporto: escludi restrizioni lato server.
- Aggiorna immagini di base e golden image includendo PipeWire e i portali desktop correttamente abilitati.
Ripristino e ritorno allo stato precedente
Hai disattivato Wayland e vuoi tornare com’era? Riapri /etc/gdm3/custom.conf
e rimetti il cancelletto davanti alla riga, quindi riavvia GDM:
sudoedit /etc/gdm3/custom.conf
#WaylandEnable=false
sudo systemctl restart gdm3
Se avevi solo selezionato Xorg dalla schermata di login, ti basta scegliere di nuovo la sessione predefinita al prossimo accesso.
Messaggio di errore e interpretazione pratica
Il testo “couldn’t connect to camera” non significa che la webcam sia guasta. Nel contesto di Teams su Ubuntu indica spesso che il meccanismo di cattura dello schermo non è riuscito a partire. Per questo la correzione non passa dalla fotocamera, ma dal sottosistema grafico, dai portali o dall’aggiornamento del client.
Conclusione e raccomandazioni finali
Se la condivisione schermo in Microsoft Teams su Ubuntu non funziona e incontri l’errore indicato, la strada più efficace è intervenire sulla sessione grafica: passare a Xorg o disattivare Wayland risolve nella grande maggioranza dei casi. In alternativa, la PWA nel browser fornisce una via perfettamente utilizzabile senza toccare il sistema, ideale quando non hai privilegi amministrativi o vuoi mantenere Wayland per altre ragioni. Completa l’intervento verificando i servizi dei portali desktop, PipeWire e l’aggiornamento del client. Con questo percorso otterrai una condivisione stabile e compatibile con l’ecosistema Ubuntu.
Domande frequenti
Come faccio a capire al volo se sono su Wayland
Apri un terminale e digita echo $XDGSESSIONTYPE
. Se compare wayland
, stai usando Wayland; se compare x11
, sei su Xorg. È rischioso disattivare Wayland
No, è un cambio legittimo del server grafico. Su molte postazioni di lavoro Xorg è ancora preferito per compatibilità con strumenti di cattura e presentazione. Puoi tornare indietro quando vuoi reimpostando la riga nel file di GDM. Se uso il browser, perdo funzioni
La PWA offre la quasi totalità delle funzioni usate in riunione, inclusa la condivisione. Alcune funzioni offline o integrazioni profonde possono restare appannaggio del client desktop, ma per presentare è più che sufficiente. Perché alcuni colleghi su Ubuntu non hanno problemi
Probabilmente stanno usando Xorg, una build più recente del client o un ambiente in cui i portali e PipeWire sono in piena efficienza. La configurazione locale fa la differenza.
In sintesi: la causa più probabile è Wayland. Passare a Xorg o disattivare Wayland con WaylandEnable=false
risolve nella quasi totalità dei casi. Se non vuoi modificare il sistema, usa la PWA di Teams o entra in riunione dal browser e condividi da lì.
Se segui questa guida in ordine, otterrai una diagnosi chiara e una soluzione ripetibile, sia in contesti domestici che aziendali.