Ricerca nel sito web

Problemi di trasmissione e soluzioni alternative su (K)Ubuntu 26.04


Transmission, il client BitTorrent predefinito, non funziona correttamente in Ubuntu 26.04. Ecco alcuni rimedi.

A causa della nuova versione del modulo di sicurezza AppArmor, alcune funzionalità del client BitTorrent Transmission non funzionano correttamente in Ubuntu dalla versione 25.04.

È perché AppArmor nelle nuove versioni di Ubuntu include un nuovo profilo che limita l'accesso ai file, l'uso della rete, l'esecuzione di comandi specifici ecc. per Transmission. Tuttavia, quel profilo NON è perfettamente definito, quindi alcune funzionalità smettono di funzionare!

Opzione 1: Passa il profilo alla modalità di reclamo

Il modo più semplice per "risolvere" tutti i problemi è semplicemente fermare la protezione AppArmor per Transmission. In questo caso, il client BitTorrent funzionerà esattamente come in Ubuntu 24.04 e versioni precedenti, anche se potrebbe essere meno sicuro.

Per prima cosa, premi Ctrl+Alt+T per aprire il terminale e esegui il comando seguente per installare le utilità per gestire i profili di AppArmor:

sudo apt install apparmor-utils

Puoi eseguire sudo apt update per aggiornare la cache prima se il comando sopra non funziona.

Quindi, esegui il comando qui sotto per passare il profilo Transmission alla modalità di lamentela:

sudo aa-complain /usr/bin/transmission-gtk

Qui puoi sostituire transmission-gtk con transmission-qt o transmission-daemon per l'interfaccia Qt o per il demone. In modalità di reclamo, la politica di sicurezza non viene applicata, ma scriverà le violazioni di accesso nel registro di sistema.

Oppure, puoi disabilitare il profilo, il che funziona per tutte le interfacce di Transmission.

sudo aa-disable /etc/apparmor.d/transmission

E, per tornare alla modalità enforce, usa il comando:

sudo aa-enforce /usr/bin/transmission-gtk

Sostituire anche transmission-gtk di conseguenza.

E, se hai disabilitato il profilo, allora usa il comando qui sotto per tornare indietro.

sudo aa-enforce /etc/apparmor.d/transmission

Opzione 2: Correggi il dialogo "Apri" torrent per Transmission-Qt in KUbuntu 26.04

NOTA: Finora non sono riuscito a capire come sistemare il pulsante “Apri” per l'interfaccia GTK. Ma puoi trascinare e rilasciare il file .torrent dalla cartella Download su Transmission come soluzione alternativa.

Come mostra lo screenshot sopra, il pulsante «Apri» (o Ctrl + O) apre la finestra di dialogo «.torrent» che NON funziona correttamente nell'interfaccia Qt. Mostra errore:

Impossibile creare il worker KIO. Impossibile creare un socket per l’avvio di un worker KIO per il protocollo 'tags'.

Per risolvere il problema, apri il terminale (konsole) ed esegui il comando:

sudo nano /etc/apparmor.d/local/transmission-qt

Questo comando creerà un file di configurazione locale per il profilo AppArmor di transmission-qt e lo modificherà tramite l'editor di testo da riga di comando nano.

Quando il file si apre, incolla il seguente contenuto (Ctrl+Shift+V):

  # Allow execution of xdg-open, kde-open, and KIO worker
  /usr/bin/xdg-open rix,
  /usr/bin/kde-open rix,
  /usr/lib/@{multiarch}/libexec/kf6/kioworker rix,
  # Wayland and ICE sockets
  owner /run/user/@{uid}/wayland-[0-1] rw,
  owner /run/user/@{uid}/iceauth_* r,
  owner /run/user/@{uid}/#* rwlk,

  # KIO worker sockets (read/write and linking)
  owner /run/user/@{uid}/kio* rw,
  owner /run/user/@{uid}/kioclient* rwlk,
  owner /run/user/@{uid}/kio*/** rwlk,
  owner /run/user/@{uid}/*.kioworker.socket rwlk,

  
  # Recent files and KIO cookie/state files
  owner @{HOME}/.local/share/recently-used.xbel rw,
  owner @{HOME}/.local/share/recently-used.xbel.lock rwk,
  owner @{HOME}/.local/share/#* rwlk,

  # KIO configuration
  owner @{HOME}/.cache/kio* rw,
  owner @{HOME}/.cache/kcookies* rw,
  owner @{HOME}/.local/share/kio/** rw,

Qui owner significa che la regola si applica all'utente durante l'esecuzione di transmission-qt (di solito il tuo account di login), r significa permesso di lettura, i significa ereditare, x=permesso di esecuzione, w permesso di scrittura, e k o lk significa consentire il blocco dei file.

Consulta la pagina dei rapporti di bug per il profilo originale transmission-qt.

Dopo aver aggiunto le regole sopra, premi Ctrl+S per salvare il file e Ctrl+X per uscire. Infine, riavvia il servizio AppArmor per applicare le modifiche.

sudo systemctl restart apparmor.service

Opzione 3: Aggiungi accesso in lettura/scrittura ad altre cartelle

Con il profilo AppArmor, transmission in (K)Ubuntu 26.04 ha accesso in sola lettura e scrittura solo alla cartella Download dell'utente di default!

Se vuoi caricare un file torrent da altre directory, o salvare il download in un'altra cartella, allora devi aggiungere regole simili qui sotto.

1. Per prima cosa, apri il terminale (o Konsole) ed esegui il comando per creare (se non esiste) e modificare il file di configurazione:

sudo nano /etc/apparmor.d/local/transmission

Qui uso transmission che funziona per tutte le interfacce utente, puoi sostituirlo con transmission-qt solo per l'interfaccia Qt, transmission-gtk per l'interfaccia GTK, o transmission-daemon per il webUI.

2. Quando il file si apre (nella console dei comandi), aggiungi le seguenti righe e modificale di conseguenza:

owner @{HOME}/** r,
owner @{HOME}/Videos/ r,
owner @{HOME}/Videos/** rw,

Ecco le regole:

  • owner @{HOME}/** r, aggiungi la possibilità di caricare un file torrent da qualsiasi cartella o sottocartella nella HOME dell'utente.
  • owner @{HOME}/Videos/** rw, - permette operazioni di lettura e scrittura nella cartella Video dell’utente e nelle sue sottocartelle.
  • owner @{HOME}/Videos/ r, - consente di leggere la cartella “Video” stessa, puoi saltarla mentre owner @{HOME}/** r, la copre.

3. Modifica le regole secondo le tue necessità, poi premi Ctrl+S per salvare e Ctrl+X per uscire dall'editor di testo da riga di comando nano.

Infine, esegui il comando seguente per riavviare il servizio AppArmor:

sudo systemctl restart apparmor.service

È meglio eseguire systemctl status apparmor.service per verificare se sta funzionando correttamente, poiché qualsiasi errata configurazione potrebbe interrompere il servizio.