9

重複の可能性:
光沢のあるサーバー
R にパッケージ
がありません - Ubuntu

上記のすべてを試してみましたが、まだ Shiny Server をまったく動作させることができません。

http://www.rstudio.com/shiny/server/install-opensourceのインストール手順に従いました。これには、光沢のあるパッケージのシステム全体のインストールが含ま れます。

   $ sudo su - \
        -c "R -e \"install.packages('shiny', repos='http://cran.rstudio.com/')\""

Shiny Server が正しくインストールされ、実行されています。

~# sudo start shiny-server
start: Job is already running: shiny-server

しかし、ブラウズするdomain:3838と、光沢のあるページへようこそというエラーが表示されます

Error in eval(expr, envir, enclos) : The Shiny package was not found in the library. Ensure that Shiny is installed and is available in the Library of the user you're running this application as. Calls: local -> eval.parent -> eval -> eval -> eval -> eval Execution halted

R、、、またはその他のパッケージを開くinstall.packages('shiny', repos='http://cran.rstudio.com/')と、library(shiny)見つからないことがわかります。

パッケージをインストール/ロードできないだけでなく、どこに行くのかわからないようです。

編集:
install.packages(c("geonames"))
Installing package into ‘/usr/local/lib/R/site-library’ (as ‘lib’ is unspecified)

> library()
Warning message:
In library() :
libraries ‘/usr/local/lib/R/site-library’, ‘/usr/lib/R/site-library’ contain n o packages

> installed.packages()[,1:2]
           Package      LibPath
base       "base"       "/usr/lib/R/library"
boot       "boot"       "/usr/lib/R/library"
class      "class"      "/usr/lib/R/library"
cluster    "cluster"    "/usr/lib/R/library"
codetools  "codetools"  "/usr/lib/R/library"
compiler   "compiler"   "/usr/lib/R/library"
datasets   "datasets"   "/usr/lib/R/library"
foreign    "foreign"    "/usr/lib/R/library"
graphics   "graphics"   "/usr/lib/R/library"
grDevices  "grDevices"  "/usr/lib/R/library"
grid       "grid"       "/usr/lib/R/library"
KernSmooth "KernSmooth" "/usr/lib/R/library"
lattice    "lattice"    "/usr/lib/R/library"
MASS       "MASS"       "/usr/lib/R/library"
Matrix     "Matrix"     "/usr/lib/R/library"
methods    "methods"    "/usr/lib/R/library"
mgcv       "mgcv"       "/usr/lib/R/library"
nlme       "nlme"       "/usr/lib/R/library"
nnet       "nnet"       "/usr/lib/R/library"
parallel   "parallel"   "/usr/lib/R/library"
rpart      "rpart"      "/usr/lib/R/library"
spatial    "spatial"    "/usr/lib/R/library"
splines    "splines"    "/usr/lib/R/library"
stats      "stats"      "/usr/lib/R/library"
stats4     "stats4"     "/usr/lib/R/library"
survival   "survival"   "/usr/lib/R/library"
tcltk      "tcltk"      "/usr/lib/R/library"
tools      "tools"      "/usr/lib/R/library"
utils      "utils"      "/usr/lib/R/library"

どんな助けでも大歓迎です


セッション情報:

> .libPaths() [1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library" [3] "/usr/lib/R/library"

> sessionInfo()
R version 3.0.2 (2013-09-25)
Platform: x86_64-pc-linux-gnu (64-bit)

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C
 [9] LC_ADDRESS=C               LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base
4

4 に答える 4

12

問題は、shiny-server が という別のユーザーとしてそれらを実行するため、インストールしたパッケージを見つけることができないことですshiny。のインストール時に作成されるユーザーですshiny-server

この問題を解決する最も簡単な (そして最も安全な) 方法は、このユーザー アカウント (shiny) を使用して必要なパッケージをインストールすることです。これは、次の手順を使用して行うことができます。

  1. shinyを使用してユーザー アカウントのパスワードを設定し、パスワードをsudo passwd shiny入力して確認します
  2. 以下を使用して、光沢のあるアカウントに切り替えます。su - shiny
  3. Rを使用して呼び出しますR(sudo なし)
  4. この場合、必要なパッケージをインストールします。install.packages("shiny")

rstudio-server が同じマシンにインストールされている場合は、そのインターフェイスを使用して手順 2 ~ 4 を実行できます。同じドメイン/IP に移動し、rstudio-server インターフェースに :3838 の代わりに、shiny-server に :8787 を使用するだけです。

ここの私の答えから適応

于 2015-10-07T15:53:52.217 に答える
5

同様の問題がありました。管理者ガイドを読んだ後、ここに解決策があるかもしれません。

アプリにアクセスする人がshinyパッケージをインストールしていないため、このエラーが発生しています。実行するless /etc/shiny-server/shiny-server.confと、最初の 2 行で次のことがわかる場合があります。

# Instruct Shiny Server to run applications as the user "shiny"
run_as shiny;

この問題を解決するには、次のいずれかを実行してください。

  • ユーザーに切り替えてshiny、そこにすべてのパッケージをインストールします。例: su shiny。ただし、これにより、すべてのユーザーに対してインストール済みのライブラリが複製されます。
  • クリーンな方法は、 で編集してshiny、すべてのパッケージを使用して常に別のユーザーから実行することです。この場合、2 行目を に変更して、あなたの を検索してから、shiny の を検索することができます。ここで複数のユーザーを追加することもできます。run_as/etc/shiny-server/shiny-server.confrun_as your_username shiny;.libPaths().libPaths()
于 2014-09-02T20:37:05.843 に答える
0

私はUbuntuの初心者でもあり、同様の問題がありました。私の場合、問題はRパッケージがユーザー「ubuntu」に属するフォルダーにインストールされたことでした。ただし、ルートで利用できる必要があります。

適切なコマンドでユーザーを「root」に変更し、R から install.packages 関数を実行しました。

sudo -i
R

途中で役立つことを願っています。少なくともあなたの問題はユニークではありません。少しググるだけで、役立つヒントがたくさん見つかりました。例えば:

http://freigeist.devmag.net/r/773-deploying-shiny-server-on-amazon-some-troubleshoots-and-solutions.html

于 2014-07-21T21:14:08.620 に答える