A linha parece estar errada, sua pasta da área de trabalho não está em /home
Exec=sudo /home/Desktop/mountServer.sh
e não há necessidade de usar sudo
duas vezes, uma vez no seu script e uma vez no arquivo da sua área de trabalho.
Use
Exec=/home/your_username/Desktop/mountServer.sh
, substitua your_username
pelo seu nome de usuário (a saída de echo $USER
)
E você deve usar
$HOME/capsule
em vez de
~/capsule
no seu script.
A melhor solução para você é instalar gksu
via
sudo apt-get install gksu
Um arquivo de desktop como este, substitua your_username
pelo seu nome de usuário (a saída de echo $USER
)
[Desktop Entry]
Name=Mount Server
Comment=Mounts the Server 1.5 from Apple Airport Extreme
Exec=gksu /home/your_username/Desktop/mountServer.sh
Icon=/paht/to/icon.png
Terminal=false
Type=Application
e um script como este
#!/usr/bin/env bash
mount -t cifs "//10.0.1.1/The Server 1.5" -o username=myusername,password=pwhere,sec=ntlm "$HOME"/capsule
Com esta solução você tem um prompt de senha graficamente, nenhum terminal desnecessário e se você quiser iniciar seu script diretamente em um terminal você pode usar
sudo ~/Desktop/mountServer.sh