Linux
作為不同的使用者,如何從另一個腳本呼叫 bash 腳本?
可能重複:
在編寫腳本以自動初始化 SVN 鏡像儲存庫 ( svnsync ) 時,我再次遇到了嘗試以另一個使用者的權限啟動另一個腳本的問題。
#!/bin/sh # This outer script is always run with root privileges ("sudo create-repo.sh") # Create repository, set privileges, etc [...] # Set up remote mirror; this works fine! (SSH key authentication) ssh svnsync@anotherserver /var/lib/svn/init-mirror.sh $REPO # Set up local mirror as "svnsync" user # ???
**如何以不同使用者的身份在同一台機器上呼叫其他腳本?**請注意,外部腳本始終以 root 身份執行,因此
su
以 anyuser 身份執行應該不是問題。我試過類似的東西:
su svnsync; /path/to/init-mirror.sh $REPO; exit
並得到奇怪的結果。你應該怎麼做?當遠端如此簡單時,它可能在本地是可能的,對吧?(現在,讓我們假設不能以相同的“svnsync”使用者執行外部腳本。)
我認為問題標題很爛,所以如果可以的話,請幫我改寫。
以不同使用者身份執行 shell 腳本的副本。我想你可以自己關閉它嗎?