web-dev-qa-db-ja.com

ブラウザーで「ssh:// user @ Host」リンクをクリックして、ターミナルでsshを開きます

I 素敵な方法が見つかりました このようなリンクをクリックすると、user@HostへのSSHでターミナルを開きます:

ssh://user@Host

上記の解決策はうまくいくと思います。それは素晴らしいです。

これを多くのPCで動作させる必要があります。 SSH URLを有効にするパッケージは既にありますか?

3
guettli

いいえ、既にサポートされているため、このパッケージはありません。有効にする必要があります。

Gnomeデスクトップで有効にするには:( ssh:// username @ hostnameリンクを開く方法

gconftool-2 --set --type=bool /desktop/gnome/url-handlers/ssh/enabled true
gconftool-2 --set --type=string /desktop/gnome/url-handlers/ssh/command 'gnome-terminal -e "%s"'
gconftool-2 --set --type=bool /desktop/gnome/url-handlers/ssh/needs_terminal false

ハンドラーアプリケーションをインストールするスクリプト:

#!/ bin/bash 
#インストールにはルートが必要です
 if ["$(id -u)"!= "0"]; then 
 echo "このスクリプトはrootとして実行する必要があります" 1>&2 
 exit 1 
 fi 
 
#ファイルが存在する場合
 if [-f "/ usr/local/bin/ssh-url-handler"] 
 then 
 echo "古いインストールを検出し、ssh-url-handler.oldに移動しました" 
 mv/usr/local/bin/ssh-url-handler /usr/local/bin/ssh-url-handler.old
fi

#ハンドラーのインストールファイル
 touch /usr/local/bin/ssh-url-handler
echo '#!/ bin/sh' >> /usr/local/bin/ssh-url-handler
 echo 'd = $ {1#ssh://}' >> /usr/local/bin/ssh-url-handler
echo 'x-terminal-emulator -x bash -c "ssh $ d "& '>> /usr/local/bin/ssh-url-handler
chmod a + x /usr/local/bin/ssh-url-handler

# 
 type ssh-url-handler>/dev/null 2>&1 || echo "警告:ssh-url-handlerが見つかりませんでした!/ usr/local/binがPATHにあることを確認してください" 
 
#今、デスクトップの部分:
 if [-f "/usr/share/applications/ssh-url-handler.desktop"] 
 then 
 echo "古いデスクトップハンドラーが見つかりました。oldに移動します" 
 mv /usr/share/applications/ssh-url-handler.desktop /usr/share/applications/ssh-url-handler.desktop.old
fi

touch/usr/share/applications/ssh-url-handler.desktop 
 echo "[デスクトップエントリ]" >> /usr/share/applications/ssh-url-handler.desktop
echo "Type =アプリケーション ">> /usr/share/applications/ssh-url-handler.desktop
echo"名前= SSH URLハンドラー ">> /usr/share/applications/ssh-url-handler.desktop
 echo "Exec = ssh-url-handler%u" >> /usr/share/applications/ssh-url-handler.desktop
echo "Icon = utilities-terminal" >>/usr/share/applications/ssh-url-handler.desktop 
 echo "StartupNotify = false" >> /usr/share/applications/ssh-url-handler.desktop
ec ho "MimeType = x-scheme-handler/ssh;" >> /usr/share/applications/ssh-url-handler.desktop
chmod a + x /usr/share/applications/ssh-url-handler.desktop

それをdebianパッケージのinstall.shにドロップするだけです。 https://github.com/jordansissel/fpm/wiki を使用して簡単にこれを行うことができ、独自のパッケージを作成して配布できます。

6
Robobenklein