Estou escrevendo um script para montar uma unidade removível e, em seguida, definir o plano de fundo da área de trabalho para um arquivo nessa unidade. O script precisa ser executado como root para usar cryptsetup e mount. Mas quando o script é executado como root, não consigo fazer com que o gsettings funcione para definir o plano de fundo da área de trabalho.
Se eu apenas escrever gsettings set org.gnome.desktop.background picture-uri file:///path/to/image.jpg
no script, o que significa que o gsettings também é executado como root, nada acontece.
Se, em vez disso, eu escrever sudo -u username gsettings set org.gnome.desktop.background picture-uri file:///path/to/image.jpg
, para que gsettings seja executado como nome de usuário, o script falhará com o seguinte erro:
(process:#####): dconf-CRITICAL **: unable to create file '/home/username/.cache/dconf/username': Permission denied. dconf will not work properly.
Então, como posso obter configurações para trabalhar a partir de um script executado como root?