Bash

從桌面啟動器執行時出現 bash 腳本問題

  • February 13, 2015

我有一個執行以下操作的腳本:

  1. 通過 sshfs 連接到伺服器上的目錄
  2. 在該目錄中,有一個加密卷。打開它到設備映射器。
  3. 掛載到本地目錄(-o rw & -t ext4)

當我從終端執行此腳本時

sudo /.../myscript.sh

它以預期的行為執行。但是,當我從桌面快捷方式執行此腳本時,它會執行,但會出現問題。尤其:

  1. 它似乎已掛載,我可以“cd”到掛載的目錄並列出內容。但是,當我嘗試列出子目錄的內容時,會收到以下消息:

ls: 讀取目錄 .: 輸入/輸出錯誤 2. 我似乎沒有對該目錄的寫入權限。(我無法保存文件)

我的桌麵條目如下所示:(…再次為簡單起見)

[Desktop Entry]
Name=myscript
Exec=mate-terminal -e "sudo /.../myscript.sh"
Terminal=false
Type=Application

誰能建議為什麼從 shell 執行腳本似乎可行,但從桌面快捷方式執行會給我帶來問題?

gksudo /…/myscript.sh 不做你想做的一切(假設你正在執行 Gnome)?——肯·夏普

…實際上這似乎確實有效!看起來這是這裡提到的神秘問題的一個例子http://www.psychocats.net/ubuntu/graphicalsudo

引用自:https://unix.stackexchange.com/questions/184432