R で shiny から runApp() を適用すると、Firefox への接続が失敗する

R で shiny から runApp() を適用すると、Firefox への接続が失敗する

私は説明されているように光沢のあるチュートリアルをやっていますhttps://shiny.rstudio.com/tutorial/written-tutorial/lesson1/

ある時点で、サンプルアプリを実行する必要があります。サンプルアプリはフォルダに保存されています/usr/local/lib/R/site-library/shiny/examples/01_helloターミナル内で実行したいので、次のように入力します

sudo -i R  # entering my password so that R is being started
library(shiny)
runApp("/usr/local/lib/R/site-library/shiny/examples/01_hello")

しかし、それは機能しません。

コンソールに次のエラー メッセージが表示されます。

Listening on http://127.0.0.1:3530 

Running Firefox as root in a
regular user's session is not supported.  ($XAUTHORITY is
/run/user/1000/gdm/Xauthority which is owned by tobias.) 

Running
Firefox as root in a regular user's session is not supported. 
($XAUTHORITY is /run/user/1000/gdm/Xauthority which is owned by
tobias.) 

Running Firefox as root in a regular user's session is not
supported.  ($XAUTHORITY is /run/user/1000/gdm/Xauthority which is
owned by tobias.) 

/usr/bin/xdg-open: 851: /usr/bin/xdg-open: iceweasel: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: seamonkey: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: mozilla: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: epiphany: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: konqueror: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: chromium: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: chromium-browser: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: google-chrome: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: www-browser: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: links2: not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: elinks:not found 
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: links: not found
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: lynx: not found
/usr/bin/xdg-open: 851: /usr/bin/xdg-open: w3m: not found 
xdg-open: no method available for opening 'http://127.0.0.1:3530'

ここ通常のユーザーのセッションで Firefox を root として実行することはサポートされていません。($XAUTHORITY は、radix が所有する /run/user/1000/gdm/Xauthority です。)Firefox の問題を見つけましたが、R とは関係ありません...

私の目標は、入力後にrunApp()Firefox がそれぞれ新しいタブを開き、光沢のあるアプリを表示して操作できるようにすることです。

また、私は Ubuntu の初心者なので、質問に答える際にはその点に留意してください。よろしくお願いします!

答え1

Shiny は高範囲 (>1024) の TCP ポートを使用するため、ここでは必要ありませんsudo

Xorg にアクセスできる通常のユーザーとしてすべてのコマンドを実行します。

R
library(shiny)
runApp("/usr/local/lib/R/site-library/shiny/examples/01_hello")

関連情報